feat(skills): переработать AI-скиллы

- добавлены синхронные английские и русские инструкции для агентов
- расширена сборка документов из Markdown-фрагментов
- артефакты перенесены в игнорируемый release output
- обновлены README и проверки скиллов
This commit is contained in:
2026-07-11 14:50:09 +03:00
parent 38068d7c9f
commit 4833b31516
78 changed files with 3632 additions and 5344 deletions

View File

@@ -1,35 +1,54 @@
const references = [
{ from: '../../README.md', to: 'references/README.md' },
{ from: '../../README_RU.md', to: 'references/README_RU.md' },
{ from: '../../docs/en/react-vite.md', to: 'references/docs/en/react-vite.md' },
{ from: '../../docs/en/react-webpack.md', to: 'references/docs/en/react-webpack.md' },
{ from: '../../docs/en/next-app.md', to: 'references/docs/en/next-app.md' },
{ from: '../../docs/en/next-pages.md', to: 'references/docs/en/next-pages.md' },
{ from: '../../docs/en/legacy.md', to: 'references/docs/en/legacy.md' },
{ from: '../../docs/en/migration-1.md', to: 'references/docs/en/migration-1.md' },
{ from: '../../docs/en/programmatic-api.md', to: 'references/docs/en/programmatic-api.md' },
{ from: '../../docs/ru/react-vite.md', to: 'references/docs/ru/react-vite.md' },
{ from: '../../docs/ru/react-webpack.md', to: 'references/docs/ru/react-webpack.md' },
{ from: '../../docs/ru/next-app.md', to: 'references/docs/ru/next-app.md' },
{ from: '../../docs/ru/next-pages.md', to: 'references/docs/ru/next-pages.md' },
{ from: '../../docs/ru/legacy.md', to: 'references/docs/ru/legacy.md' },
{ from: '../../docs/ru/migration-1.md', to: 'references/docs/ru/migration-1.md' },
{ from: '../../docs/ru/programmatic-api.md', to: 'references/docs/ru/programmatic-api.md' },
const agentReferences = [
'react-vite.md',
'react-webpack.md',
'next-app.md',
'next-pages.md',
'legacy.md',
'migration-1.md',
'programmatic-api.md',
'complex-svg.md',
]
function documents(language) {
return [
{ entry: `src/${language}/SKILL.md`, to: 'SKILL.md', skill: true },
...agentReferences.map((file) => ({
entry: `src/${language}/references/${file}`,
to: `references/${file}`,
})),
]
}
const upstream = [
{ from: '../../README.md', to: 'references/upstream/README.md' },
{ from: '../../README_RU.md', to: 'references/upstream/README_RU.md' },
{
fromDirectory: '../../docs/en',
toDirectory: 'references/upstream/docs/en',
extensions: ['.md'],
},
{
fromDirectory: '../../docs/ru',
toDirectory: 'references/upstream/docs/ru',
extensions: ['.md'],
},
]
export default [
{
name: 'svg-sprites',
description: 'Use when configuring, generating, migrating, or troubleshooting SVG sprites with @gromlab/svg-sprites. Triggers: SVG sprite, svg-sprites, svg-sprite.config.ts, svg-sprites.config.ts, defineReactSpriteConfig, defineNextSpriteConfig, react@vite, react@webpack, next@app, next@pages, inputFiles, SpriteViewer, icon="...", --icon-color-N, generated component, or an icon missing from preview or autocomplete. Do NOT use for favicons, raster images, icon fonts, choosing an icon set, or inline SVG without sprites.',
source: 'src/SKILL.md',
description: 'Use only when configuring, generating, migrating, or troubleshooting @gromlab/svg-sprites. Triggers: @gromlab/svg-sprites, svg-sprite.config.ts, svg-sprites.config.ts, defineReactSpriteConfig, defineNextSpriteConfig, defineLegacyConfig, react@vite, react@webpack, next@app, next@pages, inputFiles, SpriteViewer, or --icon-color-N. Do NOT use for custom SVG sprites, favicons, raster images, icon fonts, choosing an icon set, or inline SVG without this package.',
output: '../artifacts/svg-sprites',
references,
maxSkillBytes: 48_000,
documents: documents('en'),
copy: upstream,
},
{
name: 'svg-sprites-ru',
description: 'Используй при настройке, генерации, миграции или диагностике SVG-спрайтов через @gromlab/svg-sprites. Триггеры: SVG sprite, SVG-спрайт, svg-sprites, svg-sprite.config.ts, svg-sprites.config.ts, defineReactSpriteConfig, defineNextSpriteConfig, react@vite, react@webpack, next@app, next@pages, inputFiles, SpriteViewer, icon="...", --icon-color-N, generated-компонент или иконка не появилась в превью и автодополнении. НЕ используй для favicon, растровых изображений, icon fonts, выбора набора иконок или inline SVG без спрайтов.',
source: 'src/SKILL_RU.md',
description: 'Используй только при настройке, изменении, миграции или диагностике @gromlab/svg-sprites. Триггеры: @gromlab/svg-sprites, svg-sprite.config.ts, svg-sprites.config.ts, defineReactSpriteConfig, defineNextSpriteConfig, defineLegacyConfig, react@vite, react@webpack, next@app, next@pages, inputFiles, SpriteViewer и --icon-color-N. НЕ используй для самописных SVG-спрайтов, inline SVG, favicon, растровых изображений, icon fonts или выбора библиотеки иконок.',
output: '../artifacts/svg-sprites-ru',
references,
maxSkillBytes: 48_000,
documents: documents('ru'),
copy: upstream,
},
]