Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add SpaiR/task-pipeline/plugin install taskWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/spair/task-pipeline/to-plan)<a href="https://agentmods.dev/skills/spair/task-pipeline/to-plan"><img src="https://agentmods.dev/badge/skills/spair/task-pipeline/to-plan.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00039 | $0.05962 |
| Opus 5 | $0.00019 | $0.02981 |
| Sonnet 5 | $0.00008 | $0.01192 |
| Haiku 4.5 | $0.00004 | $0.00596 |
Grade A, and why
to-plan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 236 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Distil the chat discussion so far (or a roadmap item) into .task/task/<slug>.md — ## Description and ## Plan (Goal/Touches/Logic steps), plus ## Tests when the testing policy calls for it, and the ## Execution pointer. The deepest of the three capture skills (to-task / to-plan / to-roadmap): use it when you know enough about the approach to hand straight to implementation, or run it again on a to-task-only file to add the Plan in place. The slug is the filename; the artifact path is the handle.
Input: $ARGUMENTS — optional. Recognized forms:
- (empty) — draft from the chat discussion so far, or continue a task this conversation is clearly about (see Step 1).
<slug>or a path to an existing.task/task/<slug>.md— target that file directly.<roadmap-slug>or<roadmap-slug>#<N>— open from that roadmap item instead of the chat.- anything else — free-form context to fold into the draft alongside the chat discussion.
Format contract: docs/contract.md is the single source of truth for the output structure — read it if anything below is ambiguous.
Step 0: Setup gate
Resolve the pipeline root, then check whether its CLAUDE.md exists:
source "${CLAUDE_PLUGIN_ROOT}/skills/_lib/resolve-ws.sh" # sourcing runs find_ai_dir → sets AI_DIR
echo "$AI_DIR" # the resolved root — use this value verbatim in every artifact path below
[[ -f "$AI_DIR/CLAUDE.md" ]] || echo "CLAUDE.md not found"
Use ${CLAUDE_PLUGIN_ROOT} — a bare skills/… path resolves against the user's project cwd, where it does not exist, and an unset $AI_DIR would send Step 7's mkdir -p "$AI_DIR/task" to the filesystem root.
Once .task/CLAUDE.md exists, every artifact path in this skill is under that resolved $AI_DIR, never the cwd (the inline setup below is the one exception — it runs before a root exists) — .task/task/<slug>.md below is shorthand for $AI_DIR/task/<slug>.md. A cwd-relative write from a subdirectory or a linked worktree would create a second .task/ that validate.sh (which resolves $AI_DIR itself) never sees.
- Absent → inline setup. Read
${CLAUDE_PLUGIN_ROOT}/skills/_lib/setup.mdand follow it (detect stack → write$AI_DIR/CLAUDE.mdfrom its template → recordgit config --local task.root→ exclude.task→ report what was written). No confirmation chip: the file is written first and edited afterwards if a detected value was wrong.setup.mdis the single source of truth for the sub-steps and for the file template; do not defer to a separate setup command and do not restate the template here. Then continue to Step 1 with the original$ARGUMENTSunchanged. - Present → leave it alone. It is user-owned; only
task.rootand the.git/info/excludeline are restored when missing.
There is no full-scan validate call here — the file this run writes is validated after the write (Step 7), and pre-existing artifacts are checked on demand with validate.sh all, never as an entry gate.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 236 lines · 39 tokens per session scan A 83d359114beb
to-plan is a skill published in the GitHub repository SpaiR/task-pipeline (7 stars, last pushed 2d ago), licensed MIT. It adds 39 tokens to every session and 5,962 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
work
Dispatch a tracker ticket into an isolated worktree and drive it autonomously to an open pull request, then stop for review. Pass interactive to brainstorm the ticket with a human before planning it, or a sentence of editorial direction as a rider. Use when asked to work a ticket end-to-end.
batch
Dispatch a night's batch of Todo tickets — one worktree and one pull request each — and leave a morning summary. Run explicitly; never inferred.
prep
Spec a ticket before it is dispatched. Brainstorms it, decides everything it can recommend an answer for, asks a present human about the little that survives, and leaves the spec, the decisions and anything still open as one ticket comment. No worktree, no branch, no pull request, and the ticket stays where it was.
daily-working
End-to-end pipeline: pull a task from Redmine by ID, sanity-check and impact-assess it against the codebase before touching anything, implement it with the Claude CLI, verify the result in a real browser via the Claude Chrome extension (claude-in-chrome), and keep the Redmine ticket in sync throughout (in-progress…
web-drift
Use for the live-website agent-readiness audit, "run the web-drift loop", "audit our websites", "are our sites still readable by an agent", "web drift sweep", "check the public sites", or a scheduled site-audit cadence run. Enumerates every site the consumer declared in WEBDRIFTSITES, probes each over read-only HTTP…
tasks
A task-breakdown tool that turns a plan, specification, feature brief, bug report, technical-debt item, or chore into small TASK-NNN work items. Technical debt means postponed cleanup or design work in a codebase.