diff --git a/README.md b/README.md index 691ad33..1ce190e 100644 --- a/README.md +++ b/README.md @@ -122,6 +122,7 @@ an explicit `adapted-from` marker in its frontmatter. | `code-review` | `adapted-from: mattpocock/skills @ 84fdeffd` (MIT) — two-axis + Fowler baseline; output: caveman-review format | | `writing-skills` | `adapted-from: obra/superpowers @ 6.2.0` (MIT) — TDD-for-skills core + ideya 8 self-skill-authoring | | `web-search` | `author: ours` — search_web tool (pi-extension) + policy: when to search, «без поиска» session-off | +| `review-subagent` | `author: ours` — review_subagent tool (pi-extension): clean-context review by your own model, optional `model` override | | all other `skills/*` | `author: ours` | Adaptation policy: a clone is rewritten to our conventions (`.tasks/` boards, diff --git a/dist/review-subagent.skill b/dist/review-subagent.skill new file mode 100644 index 0000000..0574120 Binary files /dev/null and b/dist/review-subagent.skill differ diff --git a/skills/review-subagent/SKILL.md b/skills/review-subagent/SKILL.md new file mode 100644 index 0000000..08d5945 --- /dev/null +++ b/skills/review-subagent/SKILL.md @@ -0,0 +1,81 @@ +--- +name: review-subagent +author: ours +version: 0.1.0 +description: > + Use when you need an independent review of code, a diff, or a spec by a + reviewer subagent in a clean isolated context — invoke the `review_subagent` + tool (default reviewer is your own model; pass `model` to request a specific + one). Triggers: «отревьюй через субагента», «прогони на <модель>», «дай + второй модели посмотреть», "review with a subagent", "have a second model + review this", "review this on ". NOT for the two-axis Standards/Spec + review method (→ code-review) and NOT for spawning fully-isolated processes + (→ review-kit-pi-method). +--- + +# Review Subagent + +Когда нужно независимое ревью кода/диффа/спеки — делегируй его субагенту +через тул `review_subagent`. Ревьюер видит ТОЛЬКО то, что ты передал +(критерий + код): ни истории сессии, ни файловой системы, ни намерений +имплементера. Это убивает «я только что это написал» bias. + +## Когда вызывать + +- Пользователь просит «отревьюй через субагента», «прогони на X-модели», + «пусть вторая модель посмотрит». +- Тебе нужно независимое ревью своего же кода/диффа перед закрытием таски + или перед коммитом — глаза, не знающие замысла. +- Дифф/код лежит в файле (`paths`) или в тексте (`code`), а критерий — что + именно проверить (баги, соответствие спеке, типизация, безопасность…). + +## Как вызывать + +``` +review_subagent: + question: "Критерий: найди баги и проблемы корректности в этом коде." + code: "function sum(a,b){return a-b;}" # inline-текст ИЛИ + paths: ["C:\\abs\\path\\file.ts"] # файлы (тул прочитает сам) + model: "routerai/deepseek/deepseek-v4-pro-0813" # опционально — конкретная +``` + +Правила выбора модели: +- **Дефолт — твоя же модель** (та, что писала код). Пользователь сам решает, + кем ревьюить. +- **Конкретная модель — только по явному запросу** («отревьюй claude», + «прогони на deepseek-pro»): передай `model` как `provider/model`. + Невалидный `model` → ошибка, без авто-фолбэков. +- Не подбирай модель «поумнее» по своей инициативе — это решение пользователя. + +## Правила + +1. **Не ревьюй сам, если просят субагента.** Не подменяй `review_subagent` + собственным анализом — смысл в независимом контексте. +2. **Точечный критерий.** Не «посмотри код», а «проверь X против критерия Y». + Если вердикт не покрыл вопрос — вызови ещё раз с уточнением. +3. **Передавай ровно скоуп.** Файлы/текст, которые относятся к ревью; не тяни + весь репозиторий. Лимиты тула: 20 файлов, 80KB суммарно, 40KB на файл. +4. **Если тул упал** (нет модели, сеть, лимит) — честно скажи пользователю, + что субагент-ревью сейчас недоступен, и предложи путь (передать `model` + явно / уменьшить скоуп). Не «успешно отревьюено». + +## Отношения с другими скиллами + +- `review-kit-pi-method` — spawn ПОЛНОСТЬЮ изолированных процессов + (`pi -p -nc -ns -nt`) для trigger-тестов и чистых вердиктов. Этот тул — + быстрый in-process вариант той же идеи (чистый контекст через + modelRegistry.complete). Для методик с несколькими субагентами — читай + review-kit-pi-method. +- `code-review` — двухосная МЕТОДИКА (Standards + Spec субагенты, отчёт по + диффу с коммита). Этот скилл — МЕХАНИЗМ одного ревью; code-review может + использовать его как исполнителя. +- `caveman-review` — формат комментариев (однострочные L:line). Формат тула — + свободный; форматируй вердикт как требует задача. + +## Реализация тула + +Тул `review_subagent` — pi-расширение: +`~/projects/pi-extensions/extensions/review-subagent.ts` (репо +`OpeItcLoc03/pi-extensions`, дом pi-расширений). Правки — в клоне репо → +`commit + push` → `just install` (затирает home-копию) → `/reload` сессии. +Тот же паттерн, что `describe_image` (vision) и `search_web` (поиск).