idea-analogist
想法群聊室 — 类比者角色。被 idea-team 主编排器调用,或用户单独说"类比一下"、"别的行业有没有"、"yes-and 扩展"、"X 让你想到什么"、"跨界启示"时触发。**专门做跨界类比 + yes-and…
Review whether a repository's coding-agent harness can reliably carry work from intent through controlled execution, verification, delivery, and learning. Use when asked to assess agent readiness, repeated agent failures, Rules/Skills/Hooks/Memory effectiveness, missing
Claude Code
$ npx -y skills add majiayu000/spellbook --skill review-agent-harness --agent claude-code
Codex
$ npx skills add majiayu000/spellbook --skill review-agent-harness -a codex -y
Cursor
$ npx skills add majiayu000/spellbook --skill review-agent-harness -a cursor -y
Gemini CLI
$ npx skills add majiayu000/spellbook --skill review-agent-harness -a gemini-cli -y
GitHub Copilot
$ npx skills add majiayu000/spellbook --skill review-agent-harness -a github-copilot -y
OpenCode
$ npx skills add majiayu000/spellbook --skill review-agent-harness -a opencode -y
Windsurf
$ npx skills add majiayu000/spellbook --skill review-agent-harness -a windsurf -y
name: review-agent-harness description: Review whether a repository's coding-agent harness can reliably carry work from intent through controlled execution, verification, delivery, and learning. Use when asked to assess agent readiness, repeated agent failures, Rules/Skills/Hooks/Memory effectiveness, missing validation or recovery loops, or whether a harness repair improved later outcomes. Do not use for code-only audits, AGENTS-only audits, individual skill reliability reviews, or executing the task itself.
Review the operating system around coding agents, not only its files. Separate declared assets, reachable routes, observed task use, and later outcomes.
Resolve the directory containing this `SKILL.md` before running its scripts. Select one mode:
Default to inline, read-only output. Write a durable report under the target only when the user explicitly requests an artifact or historical tracking. Never discover user-home Sessions, read Memory bodies, or inspect another provider merely because its files are available.
Use adjacent skills instead when their narrower owner is sufficient:
Record target, mode, provider, locale, decision, acceptance boundary, output mode, included sources, excluded sources, and unavailable evidence. Treat a missing required source as `unobserved`; do not substitute a broader directory, another provider, or remembered results.
Resolve the target before interpreting assets or assigning scores. The collector classifies it as `exact_git_root`, `inside_git_worktree`, `contains_nested_git_root`, or `non_git_directory`. If the supplied directory contains a nested Git root, stop and retarget that exact repository; do not score the parent as though it were the project. For a Git target, the collector uses Git's tracked and untracked inventory and excludes ignored worktrees and prior review output from repository evidence.
Run static collection from the installed Skill directory:
python3 scripts/collect_evidence.py \ --target /absolute/target \ --mode static \ --locale zh-CN \ --decision "assess agent-harness readiness" \ --acceptance-boundary "resolve all five dimensions" \ --output-mode inline \ --output /temporary/evidence.json
For Session-informed review, require the user to authorize exact files or an exact root. Use one provider per evidence envelope:
python3 scripts/collect_evidence.py \ --target /absolute/target \ --mode episode \ --provider codex \ --session-file /explicit/session.jsonl \ --locale zh-CN \ --decision "explain the observed verification gap" \ --acceptance-boundary "separate configured and exercised routes" \ --output-mode inline \ --output /temporary/evidence.json
Use `--session-root` only when that exact recursive scope was authorized. Add `--include-request-summaries` only when sanitized request summaries are needed for the decision. Read [Privacy Boundary](references/privacy-boundary.md) and [Session Adapters](references/session-adapters.md) before Session-informed work.
Omit `--output` to stream evidence to stdout. Inline means no target writes; environment-owned scratch remains allowed. `validate_findings.py --input -` accepts findings JSON from stdin when the caller already has a stream.
Checkpoint: collection must return `agent-harness-evidence`; every stage must be `available`, `constrained`, `not_authorized`, `not_applicable`, `unavailable`, or `unobserved`. A depth-limited scan is `constrained`, never silently complete. Stop on malformed output or an unexplained missing stage.
Copy the collector-owned `scope.target_id` and complete `scope.snapshot` (`baseline`, `target_relation`, and `id`) into the findings document. Never author these values manually. The renderer and ledger updater recompute the binding from `--target` and reject a different local directory or any target state that changed after collection. A previous report, ledger row, branch name, or remembered result is a historical lead only. Recheck any retained claim against the frozen current snapshot and label genuinely historical evidence as such.
Keep the passes logically independent even when one agent runs them in sequence:
1. **Task pass**: use the current goal, corrections, acceptance boundary, and authorized Episode facts. Do not infer repository mechanisms. 2. **Project pass**: use static startup, commands, tests, CI, Git, delivery, and recovery evidence. Do not infer Session behavior. 3. **Agent-assets pass**: use project Rules, Skills, Hooks, settings, and other configured surfaces. Presence and counts are navigation facts only.
Do not launch parallel agents by default. If the user explicitly requests threads, use `threads` with read-only lanes and bounded evidence packets. A specialist proposes candidates; it does not assign final severity or claim effectiveness.
Read [Review Model](references/review-model.md) before classifying the five dimensions. Use `present -> reachable -> exercised -> outcome_supported` only when each stronger state has direct evidence.
Resolve all 15 stable checks, three per dimension. Assign a score to each dimension only after resolving its checks. The score is an evidence-bounded summary, not a finding: `present` caps a dimension at 74, `reachable` at 84, `exercised` at 94, and `outcome_supported` at 100; `missing` or `unobserved` caps
想法群聊室 — 类比者角色。被 idea-team 主编排器调用,或用户单独说"类比一下"、"别的行业有没有"、"yes-and 扩展"、"X 让你想到什么"、"跨界启示"时触发。**专门做跨界类比 + yes-and…
想法群聊室 — 反方角色。被 idea-team 主编排器调用,或用户单独说"反方意见"、"挑这个想法的刺"、"为什么会失败"、"找漏洞 / 反例"、"devil's…
想法群聊室 — 调研员角色。被 idea-team 主编排器调用,或用户单独说"调研一下 X"、"X 的现状/竞品/数据"、"找 2026 数据"、"事实底"时触发。**用 WebSearch 拉真实 2026…
想法群聊室主持人 — 把一句话想法丢给多角色 AI 团队(调研员/反方/类比者)做查漏补缺。每个角色有自己的 voice,他们互相 @ 接话;你随时插话。**这是创意扩展工具,不打分、不否决、不堵路**。Use when…
端到端产品教练 — 把一句话想法走到 PRD + 可点击 HTML 原型。会顶嘴、强制砍功能、用 Nielsen + Norman 做友好性硬检。Use when user 说"我有一个想法"、"想做一个产品"、"做 MVP"、"写…
Mobile app UI design expert for iOS and Android. Use when designing app interfaces, creating design systems, ensuring…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.