AIHero
    01 / 25为真正的工程师打造的 AI 技能 · 7 分钟阅读

    /setup-matt-pocock-skills 技能

    配置一个仓库,让其他技能了解它的运作方式。

    Matt Pocock
    Matt Pocock
    下一页

    安装此技能

    npx skills@latest add mattpocock/skills --skill=setup-matt-pocock-skills

    然后输入 /setup-matt-pocock-skills 来调用它。

    本页内容

    它的作用

    setup-matt-pocock-skills 回答关于一个仓库的三个问题——issue 存在哪里、分流标签叫什么、领域文档放在哪——并把答案以 markdown 文件记录在 docs/agents/.

    那些文件是仓库之间唯一变化的东西。技能本身处处相同;它们读取 docs/agents/issue-tracker.md 在运行时并照它说的做。这就是为什么这套技能不绑定 GitHub,也为什么没有任何技能文件需要编辑来指向别处。用「把技能链接到自定义 issue 追踪器」来调用它,适用于任何你能以编程方式连接的东西,技能零改动。

    它是一个提示词驱动的技能,不是确定性的脚本。它读取你的 git remote,你现有的 CLAUDE.md,你现有的 CONTEXT.md,提出它的发现,并在写入任何内容前等你确认。

    何时使用

    你通过输入 /setup-matt-pocock-skills ——这个 agent 不会自动调用它。它被刻意标记为不可调用,所以其他技能无法替你触发它。

    每个仓库使用一次,在任何其他工程技能首次使用之前。如果 triage, to-spec, to-tickets or wayfinder 开始猜你的 issue 该放哪里,或应用你的追踪器没有的标签,说明它们还没有在这里配置过。一个项目进行到一半的仓库是运行它的好地方;技能会读取已有内容,先前的工作不会浪费。

    前置条件

    它写入你运行它的仓库:

    它写入哪里
    issue-tracker.mddocs/agents/
    domain.mddocs/agents/
    triage-labels.mddocs/agents/,只有当 triage 技能已安装
    一个 ## Agent skills block无论 CLAUDE.md / AGENTS.md 已经存在

    全部都是已提交的 markdown。没有用户级或全局模式:配置住在仓库里,所以每个仓库都有自己的副本。

    三个决策

    每个小节先给出推荐答案,并跳过已经敲定的探索。大多数运行是两次确认就完成。

    决策它提议什么它实际提问的时机
    Issue 追踪器与你 git remote始终——这是唯一真正的选择
    分流标签保留五个标准名称(needs-triage, needs-info, ready-for-agent, ready-for-human, wontfix)只有当 triage 技能已安装
    领域文档单上下文:一个 CONTEXT.md plus docs/adr/ 在根目录只有发现 monorepo 信号时才这样,然后它提供一个多上下文 CONTEXT-MAP.md

    追踪器选项:

    选项issue 在哪里需要
    GitHub仓库的 GitHub Issuesthe gh CLI
    GitLab仓库的 GitLab Issuesthe glab CLI
    本地 Markdown位于 .scratch/<feature>/ 在这个仓库中什么都没有——根本没有远程
    其他无论你说哪里你描述工作流的一段话

    前三个以模板形式随技能发布,开箱即用。本地 markdown 是一等选项,不是兜底:没有远程的个人项目完全支持。一个值得重复的提醒:如果你在用 GitHub,就不要用本地 markdown。它们是替代关系,不是分层。

    「其他」也不是一个占位符。它是 Jira、Linear、Azure DevOps 和 Beads 都能工作的原因:你描述工作流,技能把你的描述记录在 docs/agents/issue-tracker.md,而下游技能跟随这段描述。社区已经这样做过——一个基于 Jira 的MCP 变体,一个形似 gh,一个手工搭建的本地看板。

    常见问题

    我必须使用 GitHub 吗?

    不。GitHub、GitLab 和 .scratch/ 都作为现成模板提供,其他一切通过「其他」路径工作。这是记录中被重复最多的问题,大致是这样问的: 「硬锁定到 github」, 「我可以用 GitLab / Jira 吗」, 「那 Azure DevOps 呢」。每次的答案都是:追踪器是配置层面的答案,不是技能属性。

    更新技能后我需要重跑它吗?

    在 v1.1 之后被直接问到这个问题时,Matt 说可以。技能自己的收尾信息则更温和——它告诉你只有切换追踪器或重新开始时才需要重跑。两者都说得通,差距存在的原因也是真实的:种子模板在版本之间会变化,所以 docs/agents/issue-tracker.md 由旧版本写下的内容,对照现在读取它的技能可能会过时。如果下游技能开始做与文档描述不同的事,重跑就是便宜的修复。

    它写入了 CLAUDE.md,但我用的是 Codex。

    已知缺口,仍然开放。文件选择规则是「编辑 CLAUDE.md 如果存在,否则 AGENTS.md「——它检查哪个文件存在,而不是哪个 运行框架 正在运行。一个带有 CLAUDE.md 从 Claude Code 遗留下来的会得到它的 ## Agent skills 块放在 Codex 永远不会读取的地方。有两种变通方案在流传:把块移到 AGENTS.md 手动,或者保持 AGENTS.md 标准,并让 CLAUDE.md 一个指向它的一行指针。如果两个文件都不存在,技能会问你创建哪个,而不是自己选——这让那些期望它直接决定的人感到困惑。

    它没有创建我的分流标签。

    它不会。 docs/agents/triage-labels.md 是一个 mapping ——它告诉 /triage 你的追踪器中哪些字符串对应五个标准角色。它不会运行 gh label create。在一个全新的 GitHub 仓库里,标签确实还不存在,这已被不止一次地当作 bug 上报。两个后续:

    • 如果你的追踪器已经使用标准名称,映射就是一张恒等表,无需配置任何东西。这是预期的常见情况,不是缺失的步骤。
    • wayfinderwayfinder:map and wayfinder:<type> 标签在这里也不会被创建,而 gh issue create --label <missing> 直接失败,而不是创建标签。在 GitHub 仓库上第一次运行 wayfinder 之前,请手动创建它们。

    我能在这里配置其他技能的行为吗—— 追问审视 节奏、提问格式、语气?

    不。它配置三样东西:追踪器、标签、文档布局。一直有直接请求让它成为每用户偏好的家,而一贯的回答是技能保持有主张: 「配置即死亡。」 偏好属于你的 CLAUDE.md 作为纯文本指令,每个技能都已经在读取。

    我能把配置保存在 ~/.claude 而不是把它提交到每个仓库?

    目前没有。有一个来自跨多个仓库运行技能的人的开放请求,而用户级模式不存在。每个仓库都带着自己的 docs/agents/.

    让一个技能配置其他技能,不奇怪吗?

    一个长期存在的抱怨说是的,原话如下: 「用一个技能来设置另一个技能,我感觉不太对——这意味着 LLM 在配置它自己的技能。」 权衡真实且被承认:配置步骤的替代方案是把追踪器指令复制进每个接触 issue 的技能。输出是可检查、可编辑的 markdown,这正是缓解措施——你可以阅读它写的每个文件并手动修改,日常调整正是这样,而不是再跑一次。

    做到以下就算成功

    • docs/agents/issue-tracker.md and docs/agents/domain.md 存在,加上 triage-labels.md if triage 已安装。
    • 一个 ## Agent skills 部分出现在你的运行框架实际读取的指令文件中,每一行摘要指向那些文件中的一个。
    • 它提议的追踪器与你真正使用的远程匹配,标签字符串与追踪器中真实存在的标签匹配。
    • 之后, /to-tickets 发布时不问你在哪里管 issue,而 /triage 应用现有标签,而不是发明标签。
    • 技能文件本身没有任何改变。如果配置修改了 SKILL.md,出问题了。

    在流程中的位置

    setup-matt-pocock-skills一次性的配置 对于工程流程来说,它是其他一切的前提假设,而不是链上的一步。它的邻居就是它的读者: triage,它应用了这里写下的标签词汇; to-spec and to-tickets,它们发布到此处指定的追踪器;而 wayfinder,它读取同一追踪器文件中的「Wayfinding 操作」部分,以了解地图和子 tickets 存储。它记录的领域文档布局,正是 domain-modeling 稍后填写——它创建 CONTEXT.md 和 ADR 是惰性的,在术语或决策真正被解决时才记录,所以配置后仓库为空是预期状态。接下来该用哪个技能, ask-matt 路由整个技能集。

    技能操作

    安装技能

    Live Skills.sh install count
    npx skills@latest add mattpocock/skills

    安装整套技能,然后在智能体中输入 /setup-matt-pocock-skills 来调用它。

    用以下命令更新: npx skills updateSkills.sh