{"slug":"setup-matt-pocock-skills-2","title":"setup-matt-pocock-skills","summary":"Sets up an `## Agent skills` block in AGENTS.md/CLAUDE.md and `docs/agents/` so the engineering skills know this repo's issue tracker (GitHub or local markdown), triage label vocabulary, and domain doc layout. Run before first use of `to-issues`, `to-prd`, `triage`, `diagnose`, `","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-10-05T21:53:09.453766Z","repo":{"url":"https://github.com/VoDaiLocz/kilo-kit-mcp","stars":27,"forks":3,"license":"Apache-2.0","updatedAt":"2026-09-13T09:11:19Z"},"bodyHtml":"<hr>\n<h2>name: setup-matt-pocock-skills\ndescription: Sets up an <code>## Agent skills</code> block in AGENTS.md/CLAUDE.md and <code>docs/agents/</code> so the engineering skills know this repo's issue tracker (GitHub or local markdown), triage label vocabulary, and domain doc layout. Run before first use of <code>to-issues</code>, <code>to-prd</code>, <code>triage</code>, <code>diagnose</code>, <code>tdd</code>, <code>improve-codebase-architecture</code>, or <code>zoom-out</code> — or if those skills appear to be missing context about the issue tracker, triage labels, or domain docs.\ndisable-model-invocation: true</h2>\n<h1>Setup Matt Pocock's Skills</h1>\n<p>Scaffold the per-repo configuration that the engineering skills assume:</p>\n<ul>\n<li><strong>Issue tracker</strong> — where issues live (GitHub by default; local markdown is also supported out of the box)</li>\n<li><strong>Triage labels</strong> — the strings used for the five canonical triage roles</li>\n<li><strong>Domain docs</strong> — where <code>CONTEXT.md</code> and ADRs live, and the consumer rules for reading them</li>\n</ul>\n<p>This is a prompt-driven skill, not a deterministic script. Explore, present what you found, confirm with the user, then write.</p>\n<h2>Process</h2>\n<h3>1. Explore</h3>\n<p>Look at the current repo to understand its starting state. Read whatever exists; don't assume:</p>\n<ul>\n<li><code>git remote -v</code> and <code>.git/config</code> — is this a GitHub repo? Which one?</li>\n<li><code>AGENTS.md</code> and <code>CLAUDE.md</code> at the repo root — does either exist? Is there already an <code>## Agent skills</code> section in either?</li>\n<li><code>CONTEXT.md</code> and <code>CONTEXT-MAP.md</code> at the repo root</li>\n<li><code>docs/adr/</code> and any <code>src/*/docs/adr/</code> directories</li>\n<li><code>docs/agents/</code> — does this skill's prior output already exist?</li>\n<li><code>.scratch/</code> — sign that a local-markdown issue tracker convention is already in use</li>\n</ul>\n<h3>2. Present findings and ask</h3>\n<p>Summarise what's present and what's missing. Then walk the user through the three decisions <strong>one at a time</strong> — present a section, get the user's answer, then move to the next. Don't dump all three at once.</p>\n<p>Assume the user does not know what these terms mean. Each section starts with a short explainer (what it is, why these skills need it, what changes if they pick differently). Then show the choices and the default.</p>\n<p><strong>Section A — Issue tracker.</strong></p>\n<blockquote>\n<p>Explainer: The \"issue tracker\" is where issues live for this repo. Skills like <code>to-issues</code>, <code>triage</code>, <code>to-prd</code>, and <code>qa</code> read from and write to it — they need to know whether to call <code>gh issue create</code>, write a markdown file under <code>.scratch/</code>, or follow some other workflow you describe. Pick the place you actually track work for this repo.</p>\n</blockquote>\n<p>Default posture: these skills were designed for GitHub. If a <code>git remote</code> points at GitHub, propose that. If a <code>git remote</code> points at GitLab (<code>gitlab.com</code> or a self-hosted host), propose GitLab. Otherwise (or if the user prefers), offer:</p>\n<ul>\n<li><strong>GitHub</strong> — issues live in the repo's GitHub Issues (uses the <code>gh</code> CLI)</li>\n<li><strong>GitLab</strong> — issues live in the repo's GitLab Issues (uses the <a href=\"https://gitlab.com/gitlab-org/cli\"><code>glab</code></a> CLI)</li>\n<li><strong>Local markdown</strong> — issues live as files under <code>.scratch/&lt;feature&gt;/</code> in this repo (good for solo projects or repos without a remote)</li>\n<li><strong>Other</strong> (Jira, Linear, etc.) — ask the user to describe the workflow in one paragraph; the skill will record it as freeform prose</li>\n</ul>\n<p><strong>Section B — Triage label vocabulary.</strong></p>\n<blockquote>\n<p>Explainer: When the <code>triage</code> skill processes an incoming issue, it moves it through a state machine — needs evaluation, waiting on reporter, ready for an AFK agent to pick up, ready for a human, or won't fix. To do that, it needs to apply labels (or the equivalent in your issue tracker) that match strings <em>you've actually configured</em>. If your repo already uses different label names (e.g. <code>bug:triage</code> instead of <code>needs-triage</code>), map them here so the skill applies the right ones instead of creating duplicates.</p>\n</blockquote>\n<p>The five canonical roles:</p>\n<ul>\n<li><code>needs-triage</code> — maintainer needs to evaluate</li>\n<li><code>needs-info</code> — waiting on reporter</li>\n<li><code>ready-for-agent</code> — fully specified, AFK-ready (an agent can pick it up with no human context)</li>\n<li><code>ready-for-human</code> — needs human implementation</li>\n<li><code>wontfix</code> — will not be actioned</li>\n</ul>\n<p>Default: each role's string equals its name. Ask the user if they want to override any. If their issue tracker has no existing labels, the defaults are fine.</p>\n<p><strong>Section C — Domain docs.</strong></p>\n<blockquote>\n<p>Explainer: Some skills (<code>improve-codebase-architecture</code>, <code>diagnose</code>, <code>tdd</code>) read a <code>CONTEXT.md</code> file to learn the project's domain language, and <code>docs/adr/</code> for past architectural decisions. They need to know whether the repo has one global context or multiple (e.g. a monorepo with separate frontend/backend contexts) so they look in the right place.</p>\n</blockquote>\n<p>Confirm the layout:</p>\n<ul>\n<li><strong>Single-context</strong> — one <code>CONTEXT.md</code> + <code>docs/adr/</code> at the repo root. Most repos are this.</li>\n<li><strong>Multi-context</strong> — <code>CONTEXT-MAP.md</code> at the root pointing to per-context <code>CONTEXT.md</code> files (typically a monorepo).</li>\n</ul>\n<h3>3. Confirm and edit</h3>\n<p>Show the user a draft of:</p>\n<ul>\n<li>The <code>## Agent skills</code> block to add to whichever of <code>CLAUDE.md</code> / <code>AGENTS.md</code> is being edited (see step 4 for selection rules)</li>\n<li>The contents of <code>docs/agents/issue-tracker.md</code>, <code>docs/agents/triage-labels.md</code>, <code>docs/agents/domain.md</code></li>\n</ul>\n<p>Let them edit before writing.</p>\n<h3>4. Write</h3>\n<p><strong>Pick the file to edit:</strong></p>\n<ul>\n<li>If <code>CLAUDE.md</code> exists, edit it.</li>\n<li>Else if <code>AGENTS.md</code> exists, edit it.</li>\n<li>If neither exists, ask the user which one to create — don't pick for them.</li>\n</ul>\n<p>Never create <code>AGENTS.md</code> when <code>CLAUDE.md</code> already exists (or vice versa) — always edit the one that's already there.</p>\n<p>If an <code>## Agent skills</code> block already exists in the chosen file, update its contents in-place rather than appending a duplicate. Don't overwrite user edits to the surrounding sections.</p>\n<p>The block:</p>\n<pre><code>## Agent skills\n\n### Issue tracker\n\n[one-line summary of where issues are tracked]. See `docs/agents/issue-tracker.md`.\n\n### Triage labels\n\n[one-line summary of the label vocabulary]. See `docs/agents/triage-labels.md`.\n\n### Domain docs\n\n[one-line summary of layout — \"single-context\" or \"multi-context\"]. See `docs/agents/domain.md`.\n</code></pre>\n<p>Then write the three docs files using the seed templates in this skill folder as a starting point:</p>\n<ul>\n<li><a href=\"./issue-tracker-github.md\">issue-tracker-github.md</a> — GitHub issue tracker</li>\n<li><a href=\"./issue-tracker-gitlab.md\">issue-tracker-gitlab.md</a> — GitLab issue tracker</li>\n<li><a href=\"./issue-tracker-local.md\">issue-tracker-local.md</a> — local-markdown issue tracker</li>\n<li><a href=\"./triage-labels.md\">triage-labels.md</a> — label mapping</li>\n<li><a href=\"./domain.md\">domain.md</a> — domain doc consumer rules + layout</li>\n</ul>\n<p>For \"other\" issue trackers, write <code>docs/agents/issue-tracker.md</code> from scratch using the user's description.</p>\n<h3>5. Done</h3>\n<p>Tell the user the setup is complete and which engineering skills will now read from these files. Mention they can edit <code>docs/agents/*.md</code> directly later — re-running this skill is only necessary if they want to switch issue trackers or restart from scratch.</p>\n","files":[{"path":"domain.md","sizeBytes":1986,"isText":true},{"path":"issue-tracker-github.md","sizeBytes":1065,"isText":true},{"path":"issue-tracker-gitlab.md","sizeBytes":1545,"isText":true},{"path":"issue-tracker-local.md","sizeBytes":838,"isText":true},{"path":"SKILL.md","sizeBytes":6861,"isText":true},{"path":"triage-labels.md","sizeBytes":1045,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"notes-only","suspicious":0,"notes":2,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-10-05T22:01:14.843102Z","sha256":"F0A81CCBB14C480BC0D550E35FC40D74AA1FBA0A0B53DEB86B5B133E0053A298","sizeBytes":6544},"review":null,"source":{"repositoryUrl":"https://github.com/VoDaiLocz/kilo-kit-mcp","path":"skills/engineering/setup-matt-pocock-skills","license":"Apache-2.0","commit":"0448e6c050b84e0c0be0030593bd51cabbce3c81","subtreeSha":"2720DF0604E4C8A15666C823FF2ED612D6E9A779FA11BD9D950461E9E5E102C4","lastSyncedAt":"2026-10-05T21:52:59.855581Z"},"reviewedAt":"2026-10-05T22:18:37.960781Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/VoDaiLocz/kilo-kit-mcp/tree/main/skills/engineering/setup-matt-pocock-skills"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install vodailocz-kilo-kit-mcp@llmmart"},{"target":"git","command":"git clone https://github.com/VoDaiLocz/kilo-kit-mcp.git"}]}