grilling · pandoscope — скилл для Claude Code: что делает и как установить
Скилл устраивает стресс-тест планов и технических идей через структурированное интервью с вариантами ответа. Пригодится, когда перед реализацией нужно разобрать неочевидные развилки.
npx skills add pandoscope/skills --skill grilling -a claude-codeЧто делает grilling
Скилл опрашивает разработчика строго по одному вопросу за шаг, перебирая ветви дерева решений и зависимости. Факты из рабочего окружения агент проверяет сам и не спрашивает их лишний раз. Каждая развилка оформляется в JSON-файле сессии, из которого генератор на Node.js собирает веб-страницу session.html или текстовую версию session.md прямо в чат.
Отвечать можно в чате или вставлять JSON со страницы опроса. Для рендеринга потребуется среда Node.js с поддержкой флага --experimental-strip-types. Без локального скрипта resolve-store.sh скилл откажется начинать сессию или сохранять результаты.
После завершения интервью скилл фиксирует принятые правила в хранилище решений, а причины отказа от альтернатив встраивает в целевой документ. Проверка check.sh следит, чтобы в сессии не осталось несведённых записей.
Какие задачи решает
- проверить устойчивость архитектурного плана перед написанием кода
- выявить скрытые допущения через опрос с вариантами ответов
- зафиксировать причины отказа от альтернативных решений
- выгрузить сессию обсуждения в интерактивный HTML или Markdown
Примеры запросов агенту
- Устрой мне grilling по архитектуре модуля авторизации
- Проверь мой план миграции базы данных через grilling
- 1, but actually because нам нужна поддержка старых клиентов
Как установить grilling
1Через Skills CLI (Vercel)
npx skills add pandoscope/skills --skill grilling -a claude-code2Вручную: положить файлы
~/.claude/skills/grilling/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/grilling/
1Через Skills CLI (Vercel)
npx skills add pandoscope/skills --skill grilling -a codex2Вручную: положить файлы
.agents/skills/grilling/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add pandoscope/skills --skill grilling -a cursor2Вручную: положить файлы
.cursor/skills/grilling/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install pandoscope/skills grilling2Вручную: положить файлы
.github/skills/grilling/SKILL.md1Через Skills CLI (Vercel)
npx skills add pandoscope/skills --skill grilling -a gemini-cli2Командой платформы
gemini skills install https://github.com/pandoscope/skills --path derived/grillingВручную: положить файлы
.devin/skills/grilling/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add pandoscope/skills --skill grilling -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о grilling
Как установить grilling в Claude Code?
Выполните команду npx skills add pandoscope/skills --skill grilling -a claude-code. Также файл скилла можно положить напрямую в ~/.claude/skills/grilling/SKILL.md.
Что делает скилл grilling?
Он проводит структурированное интервью по вашему плану или идее, задавая по одному вопросу с вариантами ответов. По итогам обсуждения инструмент сохраняет принятые решения и аргументы против отклонённых вариантов.
Что требуется для рендеринга вопросов?
Для сборки формы опроса нужен Node.js с ключом --experimental-strip-types, запускающий скрипт render.ts. Если интерактивная страница недоступна, вопросы выводятся простым текстом session.md прямо в диалог.
Исходный текст
SKILL.md · MIT
---
name: grilling
description: >
Grill the user about a plan, decision, or idea via scored
multiple-choice questions. Use when the user wants to stress-test
their thinking or uses any 'grill' trigger phrase.
metadata.derived-from: https://github.com/mattpocock/skills/blob/e9fcdf95b402d360f90f1db8d776d5dd450f9234/skills/productivity/grilling/SKILL.md
metadata.derivation-note: Adds scored multiple-choice format rendered from session JSON to an interactive page or text fallback, ruling + rejection-reason recording to a decision store, artifact embedding of alternatives. Detached from upstream — no sync.
---
# Grilling
Interview user until shared understanding. Walk every branch of decision tree, dependencies one by one. ONE question at a time — wait for answer before next. *Facts* findable in environment: look up, never ask. *Decisions* are user's — put each to user, wait. Do not act until user confirms.
Naming: question `S«s»Q«q»`, answer `S«s»Q«q»A«n»`.
## Steps
1. `resolve-store.sh path` — locates store harness already cloned. Resolve, never clone. Exits non-zero naming its own fix when store is unnamed, unresolved or absent; unnamed → say so out loud and record nothing (silent skip is indistinguishable from successful record). Store URL lives in environment only — never hardcoded, never echoed into artifacts.
2. `resolve-store.sh unmerged` — any records → refuse to open session until principal merges previous one, per [recording.md](recording.md).
3. `resolve-store.sh preferences` — emits active set as JSON array for session's `preferences`: copied, never retyped. Inject that set ONLY, never decision history.
4. Author every decision point as session JSON — whole session so far, answers included. Contract: `render/decision-context.ts` beside this file; semantics: [format.md](format.md). NEVER hand-format a question; renderer appends free-text slot itself.
5. Render both user-facing forms — validation failure names offending field; fix JSON, re-run:
```bash
node --experimental-strip-types <skill-dir>/render/render.ts <session.json> --out <dir>
```
6. Publish `session.html` as artifact, redeploying same URL as session grows; unavailable → print `session.md` into chat verbatim — never as file attachment, never as timed dialog (dialogs close while user still typing).
7. Answers arrive as page's copied JSON pasted into chat, or as chat replies: answer id ("S1Q2A1" or "1"), correction via "N, but actually because …" — shorthand "N, BAB …". No live page-to-agent channel yet (pandoscope/skills#139). What answers mean: [reading.md](reading.md). Follow-ups: append new questions plus answers received, re-render; user may revisit earlier answers.
8. Session end: record every ruling to store, embed rejection reasons in session's target artifact, per [recording.md](recording.md).
9. `check.sh <session.json>` — re-validates session, verifies citations are verbatim store lines, fails while records stay unmerged, prints residue to verify by hand.
## Question rules
- Slot 1 carries prediction: preference-driven when active rules match (named in `matches`), else cold pick. Diverging recommendation sits at slot 2, if-clause arguing when it beats slot 1.
- Wildcard ONLY when genuinely plausible unexplored branch exists.
- If-clause = when option beats recommendation. Add "why not recommended" only when it differs from negated if-clause.
- Near-ties MUST be marked; never fabricate weaknesses for close calls, and never score them as misses.
- Correction ("N, but actually because …", shorthand "N, BAB …") accepts option, overrides its stated reason — highest-signal event; flag in record.
- Drill down with ONE follow-up (2-3 ranked guesses + free text) only when free-text answer leaves rejection reasons unstated. Guesses count as predictions.
## Non-goals
No automatic preference-rule acceptance — human in loop always. No embedding/RAG tooling. No upstream sync.
© pandoscope · MIT · pandoscope/skills
Похожие скиллы
Все скиллы по теме «Настройка агента: память, контекст, субагенты» →Сначала — grilling от других авторов.