Якість skill залежить від актуального контексту
Dynamic context — це дані, які skill отримує з поточного issue та стану репозиторію: аргументи, результати пошуку, релевантні файли, уривки коду, diff, тести й шаблон майбутнього документа.
Сильний skill не передає весь репозиторій без потреби. Він добирає мінімально достатній контекст і зберігає повторюваний формат результату.
| Джерело контексту | Роль |
|---|---|
| Issue та аргументи | Опис поточної потреби |
| Результати пошуку | Кандидати на повʼязані модулі |
| Файли й уривки коду | Підтвердження фактичної поведінки |
| Diff і тести | Стан зміни та докази результату |
| Шаблон | Стабільна структура вихідного артефакту |
Потік dynamic context
- Прийняти issue як вхід.
- Знайти кілька найбільш повʼязаних файлів.
- Зібрати підтвердження з коду та тестів.
- Використати шаблон специфікації.
- Відокремити факти від assumptions.
- Створити
TASK_SPEC.mdі додати відкриті питання. - Зупинитися до реалізації.
grep -R 'refund' support/ orders/ Файли поруч із skill
SKILL.md— процедура та контракт;templates/— формат артефактів;examples/— зразки очікуваного результату;references/— довідкові матеріали.
.claude/skills/issue-analysis/
├── SKILL.md
├── templates/
│ ├── TASK_SPEC.template.md
│ └── EVIDENCE_LOG.template.md
├── examples/
│ └── refund-sorting-bugfix.md
└── references/
└── risk-notes.md Перевірка якості перед комітом
- Переконайтеся, що skill описує конкретний сценарій.
- Перевірте однозначність входу й виходу.
- Зʼясуйте, чи не змішані факти та припущення.
- Перевірте мінімальність інструментів і прав.
- Переконайтеся, що завантажується лише потрібний контекст.
- Запустіть процедуру на реальному кейсі та перегляньте результат.
Антипатерни dynamic context
- передавати весь репозиторій без потреби;
- додавати великі застарілі логи та обговорення;
- перетворювати
SKILL.mdна енциклопедію; - надавати аналітичному skill зайві права;
- покладатися на непідтверджені деталі;
- жорстко привʼязувати дизайн до нестабільної назви службового поля.
Канонічне джерело уроку · JavaRush
Відкрити матеріал JavaRush