ask-matt
vinvcn/mattpocock-skills-zh-cn
Router skill to ask which technique or flow suits your current situation across the Matt Pocock skills collection.
What is ask-matt?
Ask Matt is a meta-skill that guides you to the right skill or workflow for your current task. Rather than memorizing every skill, you ask which one applies—it routes you through the main idea-to-ship flow, on-ramps for bugs and large efforts, codebase health tasks, and standalone utilities.
- Routes you to the correct skill based on your current situation (idea refinement, prototyping, implementation, bug diagnosis, triage, or codebase maintenance)
- Describes the main flow from idea to shipped feature, including branching decisions for prototyping and multi-session builds
- Explains on-ramps for incoming bugs, feature requests, and large greenfield efforts
- Documents phase boundaries and context-hygiene rules to keep reasoning sharp across session windows
- Maps standalone skills like prototyping, research, merge-conflict resolution, and infrastructure setup
How to install ask-matt
npx skills add https://github.com/vinvcn/mattpocock-skills-zh-cn --skill ask-matt- Familiarity with the Matt Pocock skills collection (or willingness to learn by asking)
- A working directory with git and issue tracker (or standalone use for stateless grilling)
- Understanding of context windows and token budgets for multi-session work
How to use ask-matt
- 1.Ask 'Which skill should I use for [your situation]?' and reference the flow description
- 2.Follow the main flow: `/grill-with-docs` → branch on prototype need → branch on multi-session → `/to-spec` → `/to-tickets` → `/implement`
- 3.Use on-ramps (`/triage`, `/diagnosing-bugs`, `/wayfinder`) when starting from bugs, requests, or large efforts
- 4.Consult phase boundaries (Continue, `/clear`, `/handoff`, subagent, `/compact`) when transitioning between phases
- 5.Refer to standalone skills (`/grill-me`, `/prototype`, `/research`, `/wizard`) for tasks outside the main flow
Use cases
- You have an idea and want to know whether to start with `/grill-with-docs` or another entry point
- You're unsure whether a bug needs `/diagnosing-bugs` or should go straight to `/implement`
- You're managing a large feature and need to decide between `/wayfinder` for exploration or `/to-spec` for a known scope
- You need to understand when to use `/handoff` vs. `/clear` vs. `/compact` at phase boundaries
- You're triaging incoming issues and need to route them to `/triage` or directly to `/implement`
- Developers using the Matt Pocock skills collection as their primary agent workflow
- Teams coordinating multi-session builds with clear ticket and blocking-edge dependencies
- Anyone working with coding agents (Claude Code, Cursor) who need a mental model for when to use each skill
ask-matt FAQ
Use `/grill-with-docs` when working in a repository—it saves learning to `CONTEXT.md` and ADRs. Use `/grill-me` when you have no working directory (refining a plan, design, or text outside a repo).
`/to-spec` turns a single-session idea into a spec and tickets. `/wayfinder` is for large, foggy efforts where the path isn't visible yet; it plots decision tickets on a shared map, then hands off to `/to-spec` once the fog clears.
Use `/handoff` when moving to a new harness, directory, or colleague—it exports a portable markdown file. Use `/clear` when the current context is irrelevant to what comes next. Use `/compact` (the default) when approaching token limits before a fresh session.
No. Triage is only for issues you didn't create (bug reports, incoming requests). Tickets from `/to-tickets` are already agent-ready.
Use `/diagnosing-bugs` for hard-to-reproduce bugs, intermittent flakes, or regressions between known-good states. Use `/implement` for clear, reproducible bugs with a tight feedback loop.
Full instructions (SKILL.md)
Source of truth, from vinvcn/mattpocock-skills-zh-cn.
name: ask-matt description: 询问当前情境适合哪个技能或流程;它是本仓库所有 skills 的路由器。 disable-model-invocation: true
Ask Matt
你不需要记住每个 skill,所以直接问。
Flow 是穿过 skills 的一条路径。大多数路径沿着一条 main flow 前进,两个 on-ramps 会并入它。其他内容要么是 standalone,要么是在下层运行的 vocabulary layer。
The main flow: idea -> ship
这是大多数工作的路线:你有一个想法,并希望把它构建出来。
-
/grill-with-docs- 通过访谈打磨想法。在 working directory 中工作时从这里开始:它是 stateful 的,会把学到的内容保存在CONTEXT.md和 ADRs 中。(没有 working directory?用/grill-me,见 Standalone。两者都运行同一个/grillingprimitive;grill-with-docs是会留下文档痕迹的版本,只要有 repo 可记录,它就是两者中更好的那个。) -
分支 - 能否在对话中解决所有问题? 如果某个问题需要可运行的答案(state、business logic,或必须亲眼看到的 UI),就通过 prototype 绕行,并用
/handoff在两个方向桥接(prototype 住在自己的目录里,这正是/handoff的用途,见 Phase boundaries):/handoff导出,然后基于该文件打开 fresh session;/prototype用 throwaway code 回答问题;/handoff把学到的内容带回来,并在原始 idea thread 中引用它。
-
分支 - 这是 multi-session build 吗?
- 是 ->
/to-spec(把 thread 变成 spec),再用/to-tickets拆成 tracer-bullet tickets,每个 ticket 声明 blocking edges。Local tracker 在.scratch/<feature>/issues/下每 ticket 一个文件,手动按 blockers-first 处理;真实 tracker 用 native blocking links,因此 blockers 已完成的 ticket 都可领取。每 ticket 启动一次/implement,并在 tickets 之间用/clear清空 context。每个 ticket 都是自包含的,因此最后一个 ticket 的 context 可以丢弃。 - 否 -> 在当前 context window 里直接运行
/implement。
无论哪种方式,
/implement都会在内部驱动/tdd构建每个 issue:一次一个 red-green slice;然后用/code-review收尾,对 diff 做 Standards + Spec 双轴 review,再提交。只想在没有完整 spec 的情况下 test-first 构建一个具体 behavior 时,单独用/tdd;想按固定点 review branch 或 PR 时,单独用/code-review。 - 是 ->
Context hygiene
步骤 1 到 /to-tickets 要留在 同一个未中断的 context window 中;不要 compact 或 clear,这样 grilling、spec 和 tickets 才能建立在同一组思考之上。之后每个 /implement 都从 fresh session 开始,只基于对应 ticket 工作。
限制来自 smart zone:在该窗口(最新模型大约 150k tokens)内,模型还能保持敏锐推理。如果 session 在 /to-tickets 前接近这个区间,不要硬撑降级状态;在最近的 phase boundary 用 /compact,然后继续(见 Phase boundaries)。
On-ramps
起点会生成工作,然后并入 main flow。
-
Bugs 和 requests 堆积 ->
/triage。它通过 triage roles 推进 issues,并产出 agent-ready issues,之后由/implement领取。Triage 只用于 不是你创建的 issues:bug reports、incoming feature requests,以及任何原始进入的内容。
/to-tickets产出的 tickets 已经是 agent-ready,不要再 triage。 -
Something's broken ->
/diagnosing-bugs。用于难处理的问题:第一眼看不出的 bug、间歇性 flake、夹在两个 known-good states 之间的 regression。它在拥有 tight feedback loop 前拒绝空想,也就是一个已经能在 这个 bug 上变红的命令;然后用 regression test 修复。如果复盘发现真正问题是没有好 seam 能锁住 bug,它会把后续交给/improve-codebase-architecture。 -
巨大而模糊的 effort——greenfield project 或巨大 feature build,一个 session 装不下 ->
/wayfinder,这是这里认知负担最重的 flow。当从当前位置到 destination 的路还看不见时,它在 issue tracker 上绘制 decision tickets 的 shared map,逐个解决,产出 decisions, not deliverables,直到 fog 被推开、路径清晰。/grill-with-docs用于一个 session 能装下的想法,wayfinder 用于装不下的想法;它更慢、更密集,所以只应留给确实如此的 effort,绝不要用于范围明确的 feature。Map 清晰后,它会 hand off,而不是 build:先进入
/to-spec,把 map 中相互链接的 decisions 收束成可构建计划,然后照常使用/to-tickets和/implement。让 map 直接循环进入/implement会跳过这次收束并丢掉相互链接的细节;只有当 effort 后来发现确实很小时,才直接进入/implement。
Codebase health
这不是 feature work,而是维护。
/improve-codebase-architecture- 有空时运行,保持 codebase 适合 agents 操作。它会暴露 deepening opportunities;选择其中一个会生成一个 idea,可以带入 main flow 的/grill-with-docs。它负责找候选项;/codebase-design(见下文)是你设计已选候选项时使用的工作台。
Vocabulary underneath
两个 model-invoked references 在其他 skills 下层运行,分别是自己词汇的 single source of truth。问题在于词语而不是流程时直接用它们;也可以让上面的 skills 自动拉起它们。
/domain-modeling- 打磨项目的 domain language:挑战模糊术语、解决 overloaded word(例如一个 "account" 承担三件事)、把难以逆转的决策记录为 ADR。它是/grill-with-docs用来保持CONTEXT.mdglossary 干净的主动纪律。/codebase-design- deep-module vocabulary(module、interface、depth、seam、adapter、leverage、locality),用于设计 module 的 shape:把大量 behavior 放在 clean seam 上的小 interface 后面。/tdd和/improve-codebase-architecture都使用这套语言。
Phase boundaries
phase 是 session 内的一段工作——grilling、implementation、QA。在它们之间的 boundary 处你有五个选项,而在这整张 map 中,选哪个是最模糊的决定:
- Continue - 原地不动。不花成本,也不丢失任何东西。
/clear- 清空 context window,当这里的内容对接下来什么都不重要时。/handoff- 写一个便携 markdown 文件。范围很窄:只用于 new harness、new directory、colleague,或在 阶段中途 分叉一个 side task。它买到的是 portability。- Subagent - 把 tightly-scoped task 送到它自己的 context window,并拿回一份报告。
/compact- 压缩这个 context,并用 summary 播种 fresh session。它是 default,位于树的底部,而不是最先伸手可及的地方。
关于有序的树,阅读 PHASE-BOUNDARIES.md:五个问题、每个分支背后的推理,以及为什么 primary-source 成本让 Continue 成为第一个要排除的选项。在 boundary 处做决定;阶段中途,要么继续,要么把剩余的工作拆成 subagents。
Standalone
完全在 main flow 之外。
/grill-me- 与/grill-with-docs一样的持续访谈,但 stateless:不在本地保存任何内容,也不构建CONTEXT.md。当你 不在 working directory 中工作时使用它——打磨一个计划、一个设计、一段文字,任何没有 repo 承载的东西。如果你在 working directory 中,改用/grill-with-docs:它运行同样的访谈并留下文档痕迹,因此严格来说是更好的选择。/grilling- 访谈 primitive 本身:rounds、frontier,facts 是 agent 的工作,decisions 是你的。/grill-me和/grill-with-docs是两个命名的入口,/triage、/wayfinder和/improve-codebase-architecture都在内部运行它。只有在你想要不带任何 wrapper 的访谈时才直接使用它。/resolving-merge-conflicts- hunk by hunk 处理进行中的 merge 或 rebase conflict,依据能追溯到每一侧 primary source 的 intent 来解决,而不是挑选行,然后完成操作。它从不运行--abort。完全 standalone,不属于任何 flow:当你已身处 conflict 中时使用它。/prototype- 一个小型 throwaway program,用来回答一个设计问题:这个 state model 感觉对吗,或者这个 UI 应该是什么样。Throwaway 是对代码编写方式的约束,而不是销毁它的承诺:答案会折进真实代码,prototype 本身则作为 primary source 保留在 main 之外的prototype/<name>branch 上,并由 implementation issue 指向。它是 main flow 第 2 步的绕行,但任何难以纸面解决的 design question 都可以直接用它。/research- 把阅读工作委托给 background agent:它对照 primary sources 调研问题,然后在 repo 中留下带引用的 Markdown 文件。你可以在它阅读时继续工作。产物应带入/grill-with-docs的 main flow;research 提供思考材料,但不取代思考。/to-questionnaire- 当阻塞你的东西不在你的头脑或 codebase 里,而在 别人的 头脑里时,这个 skill 会写一份问卷让他们填写。它是/grill-me的反向:它不访问你关于 subject,而是访问你关于 send——发给谁、你需要拿回什么——并把问题对准 gap。拿回来的东西是/grill-with-docs或/to-spec的素材。/wizard- 用于只有 human 能完成的步骤:provisioning infrastructure、设置 credentials 或 CI secrets、在陌生的第三方 dashboard 中点击操作、运行一次性 migration 或 cutover。它生成一个交互式 bash script,打开每个 URL、捕获每个值,并写入.env和 GitHub secrets——这样该过程就不再需要你每次向 agent 重新解释。它是 model-invoked 的,所以 agent 一遇到只有你能通过的墙就会伸手够它。如果 agent 自己能做,它就应该自己做;这个 skill 用于 human 真正在 loop 中的场景。/wait-what- 对没有落地的消息的纠正。在对话中途、任何其他 skill 内部使用它,agent 会用你缺失的 context、以平实的语言、用CONTEXT.mdvocabulary 重新表述它刚说的话。它事后生效;/grill-with-docs是前置的解法,因为早早就共同约定的共享语言才是阻止 jargon 出现的根本。/teach- 使用当前目录作为 stateful workspace,跨多个 sessions 学习一个概念。/writing-for-agents- 编写 agents 消费的文档的 reference:skills、AGENTS.md、被指向的 docs。
Precondition
/setup-matt-pocock-skills - 第一次运行 engineering flow 前先执行,用来配置其他 skills 所依赖的 issue tracker、triage labels 和 docs layout。自定义 issue trackers 也可以。
Related skills
More from vinvcn/mattpocock-skills-zh-cn and the wider catalog.

claude-handoff
Hand off the current conversation to a new background agent for continued work.

code-review
Dual-axis code review: check changes against repo standards and spec requirements in parallel.

codebase-design
Shared vocabulary for designing deep modules with small interfaces and hidden complexity.

design-an-interface
Generate multiple radically different interface designs for a module using parallel sub-agents.

diagnose
Disciplined debugging loop: reproduce → minimize → hypothesize → instrument → fix → regression-test for tricky bugs and performance regressions.

diagnosing-bugs
Structured diagnostic loop for tricky bugs and performance regressions.