setup-tonomo-task
Set up the Matt Pocock skills for one Tonomo Jira task only, with the docs in a tracked task folder and the instructions in the git-ignored .claude/CLAUDE.md, then route the skills to run next.
- License 许可
- MIT
- 所属仓库
- hareki/dotfiles
- 最近更新
- 2026-11-15
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- setup-tonomo-task
- description
- Set up the Matt Pocock skills for one Tonomo Jira task only, with the docs in a tracked task folder and the instructions in the git-ignored .claude/CLAUDE.md, then route the skills to run next.
- allowed-tools
- Read(~/.claude/skills/**), Bash(git branch:*), Bash(git rev-parse:*), Bash(git check-ignore:*), Bash(git status:*), Bash(git add:*), Bash(git commit:*), mcp__plugin_atlassian_atlassian__getJiraIssue, mcp__plugin_atlassian_atlassian__listJiraIssueComments
- argument-hint
- [jira-url | jira-key]
- disable-model-invocation
- true
03 SKILL.md 正文
Setup Tonomo Task
Run /setup-matt-pocock-skills scoped to one Jira task, so the engineering skills work from the task's own docs and the repo keeps no setup once the PR is up:
<KEY>-docs/holds everything the skills read and write. It's tracked so the user can follow what changes, and the user removes it when creating the PR..claude/CLAUDE.mdholds the## Agent skillsblock and stays out of git.
Everything outside those two paths stays as it is. <KEY> is the Jira key, such as DEV-1723.
1. Identify the task
Take <KEY> from the argument (a Jira URL or key, uppercased), else from the branch name (hv/DEV-1723-settings-page-layout), else ask the user.
Read the ticket on getautonomo.atlassian.net, using getJiraIssue with view: "evidence" (the default view omits links) and listJiraIssueComments. Open each issue its links or description point to, far enough to know what that issue owns. If Jira can't be reached, ask the user what the task covers.
Then read what the tree already holds:
<KEY>-docs/, if it has content. The setup builds around those docs.- Every other
*-docs/folder at the repo root. These are the related docs: task folders leave the tree when their PR is created, so one that's still here is the parent epic's docs or, for any other key, a task this branch stacks on. docs/GLOSSARY.md, the repo-wide glossary, in the repos that have one.
Done when you can name the task in a few words, in the glossaries' terms, and say which parts of any related docs bear on it and what the ticket and those docs state about how it ships.
2. Load the setup
Read setup-matt-pocock-skills/SKILL.md and the seeds beside it: issue-tracker-local.md, triage-labels.md, and domain.md. It's user-invoked, so read the files rather than calling it as a skill.
It defines the outputs. The steps here replace its process, and the baseline commit gives the user a diff to review in place of its draft-and-confirm step. Its choices are settled:
- Issue tracker: local markdown in
<KEY>-docs/. - Triage labels: the defaults.
- Domain docs: single-context, scoped to the task.
- Output paths:
<KEY>-docs/agents/in place ofdocs/agents/, and.claude/CLAUDE.mdin place of the rootCLAUDE.md/AGENTS.md.
If it has grown an output or a question these answers don't cover, scope that to the task the same way and mention it in the report.
3. Write <KEY>-docs/agents/
Build each file from its seed, tuned to this task. SPEC.md, MAP.md, GLOSSARY.md, ADR.md, and issues/ stay unwritten: the skills that use them create them.
issue-tracker.md (seed: issue-tracker-local.md)
- Point every
.scratch/path at<KEY>-docs/, with no slug directory below it: the task is the one directory. The spec isSPEC.md, the map isMAP.md, and tickets stay inissues/. - Replace the intro: the spec and tickets for the task live as markdown files in
<KEY>-docs/, beside the task's other docs, and<KEY>stays the only Jira issue for them. - Add these conventions:
- These paths win over any default path a skill names for local tickets.
- A finished ticket gets
Status: done. - A done ticket records what was built, so its description and criteria aren't rewritten afterwards, though a criterion checked by hand later can still be ticked. When later work changes what it built, add a dated line under its
## Commentsthat points to the ticket making the change. - An unbuilt ticket is edited in place. A change to built behavior gets a new ticket that names the built ticket and says what changes.
SPEC.mddescribes the target, so it can be ahead of the code until its tickets are done.
- Add a convention for what the ticket or related docs state about shipping and boundaries: how many PRs, what the task stacks on or waits for, and which pieces another Jira issue owns, so they get no ticket here. What they leave open goes in the report instead.
triage-labels.md (seed: same name)
Keep the default table. Reword the prose around it for a local tracker: the strings go on each ticket's Status: line, and the closing invitation to edit the column goes.
domain.md (seed: same name)
- Replace the intro: how the engineering skills consume
<KEY>'s domain documentation, in one context scoped to this task, with the files in<KEY>-docs/in place of a rootGLOSSARY.mdanddocs/adr/. - Build "Before exploring, read these" from step 1: the related-doc files that bear on this task, each with a line on what it holds for this task, naming sections where that helps, then
docs/GLOSSARY.mdwhen it exists, then<KEY>-docs/GLOSSARY.mdand<KEY>-docs/ADR.md. Keep the proceed-silently rule for all of them, since related docs can leave the tree later. - Replace "File structure" with a "Where new entries go" section:
- A resolved term goes into
<KEY>-docs/GLOSSARY.md, in/domain-modeling's glossary format.docs/GLOSSARY.mdstays read-only for this task. - A new decision becomes the next
## ADR-n: <title>section in<KEY>-docs/ADR.md, with a status line (**Status**: accepted, <date>.), plus### Considered optionsand### Consequenceswhen they add value. This replaces thedocs/adr/NNNN-slug.mdfiles/domain-modelingdescribes. - An amended decision is updated in place, in the file that holds it, and its status line records the amendment (
Amended <date>: <what changed>.). - With related docs on the tree, add: a term a related doc defines stays there. With a related
ADR.md, add: both files number from ADR-1, so its decisions are always cited with their file, as inDEV-1689-docs/ADR.md, ADR-1.
- A resolved term goes into
- Reword the remaining sections for tickets and for however many glossaries the list names, and change the
ADR-0007example toADR-n.
Done when no .scratch/ path or bare docs/agents/ path remains in the three files, and every file in "Before exploring" exists on this tree, apart from <KEY>-docs/GLOSSARY.md and <KEY>-docs/ADR.md.
4. Add the block to .claude/CLAUDE.md
Run git check-ignore -q .claude/CLAUDE.md. If it fails, append **/.claude/CLAUDE.md to $(git rev-parse --git-common-dir)/info/exclude, which every worktree shares and which stays local. Done when the check passes.
Add this block, or update an existing one in place, keeping the rest of the file:
## Agent skills
Scoped to <KEY> (<the task in a few words>) on this branch only: when `<KEY>-docs/` isn't on the tree, this section doesn't apply. `<KEY>-docs/` is working material that's removed when the PR is created, so reviews leave it out.
### Issue tracker
Local markdown in `<KEY>-docs/` (spec in `SPEC.md`, tickets in `issues/`); <KEY> stays the only Jira issue. See `<KEY>-docs/agents/issue-tracker.md`.
### Triage labels
The five default role strings, written on each ticket's `Status:` line. See `<KEY>-docs/agents/triage-labels.md`.
### Domain docs
Single-context, scoped to the task: `<KEY>-docs/GLOSSARY.md` and `<KEY>-docs/ADR.md`, plus <the related docs and `docs/GLOSSARY.md`, whichever exist>. See `<KEY>-docs/agents/domain.md`.
5. Commit the baseline
Stage <KEY>-docs/agents/ alone and commit it as docs(<KEY>): setup mattpocock skills. The docs change throughout the task, and this commit is what those diffs read against.
If the branch name doesn't carry <KEY>, the task's branch isn't checked out: leave the commit to the user and say so in the report.
6. Route the next skills
Read ask-matt/SKILL.md and the PHASE-BOUNDARIES.md beside it (user-invoked too, so read them as in step 2), and ask it about this task: the situation is what step 1 found, and the precondition it names is this setup, now done.
- Start where the task stands: when
<KEY>-docs/already holds a spec or tickets, the route picks up after them, such as at the first ticket notStatus: done. - Give each skill on the route a line on what it does for this task, in the glossaries' terms and with
<KEY>-docs/paths in place of.scratch/ones. - Where ask-matt offers a choice, such as
/implementper ticket or/implement-spec, recommend one from what step 1 found about how the task ships, and name the other. - Make the context call at every boundary with the PHASE-BOUNDARIES.md tree. The first is
/clear, because.claude/CLAUDE.mdis read at session start.
Done when the route runs from the next skill through /retro, you've read the SKILL.md of every skill on it, and every boundary names one of the five options with its reason.
7. Report
State what was written and the commit, then add:
- What was tuned beyond the seeds: the related docs, and any convention added for this task.
- Anything the ticket and related docs disagree on, which one you followed, and what they leave open.
- The route from step 6 as a numbered list, each item giving the context call and its reason, then the skill and its line.
04 同仓库更多 Skills
writing-for-agents
Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.
wizard
Generate an interactive bash wizard that walks a human through steps only they can perform. Use when provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, or running a one-off migration or cutover. Don't invoke this for steps the agent can perform itself.
wayfinder
Plan a huge chunk of work (more than one agent session can hold) as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.
wait-what
Stop. That last message did not land: re-pitch it.
triage
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
to-tickets
Break a plan, spec, or the current conversation into a set of tracer-bullet tickets, each declaring its blocking edges, published to the configured tracker (edges as text in one file per ticket locally, or native blocking links on a real tracker).