to-plan

to-plan is a skill for Claude Code from SpaiR/task-pipeline. It costs 39 tokens per session (5,962 once invoked), scanned A, original, MIT.

A task-planning tool that turns a discussion or roadmap item into a Markdown file describing one piece of work. The file includes the goal, affected areas, implementation logic, tests when needed, and an execution reference.

In plain words
What is it for?
Use it to document a single task in the .task/task/ folder, either from the current conversation, a roadmap item, or an existing task file. It can add a detailed plan to a simpler task description.
Why use it?
It gives developers a concrete handoff instead of leaving the implementation approach buried in chat. It is intended for work that is understood well enough to start building.

Skill for Claude Code

Written for Claude Code: disable-model-invocation in frontmatter. Also seen: mentions CLAUDE.md; names the AskUserQuestion tool.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the task plugin — 8 skills, 8 agents shipped together

Good fit Use it to document a single task in the .task/task/ folder, either from the current conversation, a roadmap item, or an existing task file. It can add a detailed plan to a simpler task description.

Compare 6 skills from other repositories ↓
Install

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.

Claude Code
/plugin marketplace add SpaiR/task-pipeline
Claude Code
/plugin install task

Made for: Claude Code.

Or install task, the plugin that ships this one along with the rest of its 8 skills, 8 agents.

Wrote 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.

agentmods badge for to-plan

README.md
[![agentmods](https://agentmods.dev/badge/skills/spair/task-pipeline/to-plan.svg)](https://agentmods.dev/skills/spair/task-pipeline/to-plan)
Your own site
<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>
Per session 39 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,962 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce 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

Measured 8d ago against content hash 83d359114beb, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

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.

skills/to-plan/SKILL.md · 236 lines

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.md and follow it (detect stack → write $AI_DIR/CLAUDE.md from its template → record git 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.md is 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 $ARGUMENTS unchanged.
  • Present → leave it alone. It is user-owned; only task.root and the .git/info/exclude line 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.

Read the full file on GitHub · 236 lines

Changes

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.

  1. 8d ago First seen · 236 lines · 39 tokens per session scan A 83d359114beb

Subscribe to this mod's changes

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.

Related

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.

mikestankavich/claude-ship-workflow · 0 tokens

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.

mikestankavich/claude-ship-workflow · 31 tokens

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.

mikestankavich/claude-ship-workflow · 0 tokens

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…

tms-tungnguyen3/daily_working · 81 tokens

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…

dwarvesf/dwarves-kit · 230 tokens

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.

cryndoc/polisade-orchestrator · 127 tokens