Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/catlog22/claude-code-workflow/plangit clone --depth 1 https://github.com/catlog22/Claude-Code-WorkflowWhat 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 | $0.00018 | $0.03137 |
| Opus 5 | $0.00009 | $0.01569 |
| Sonnet 5 | $0.00004 | $0.00627 |
| Haiku 4.5 | $0.00002 | $0.00314 |
Grade A, and why
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 2d 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 — 344 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Auto Mode
When --yes or -y: Auto-bind solutions without confirmation, use recommended settings.
Issue Plan Command (/issue:plan)
Overview
Unified planning command using issue-plan-agent that combines exploration and planning into a single closed-loop workflow.
Behavior:
- Single solution per issue → auto-bind
- Multiple solutions → return for user selection
- Agent handles file generation
Core Guidelines
⚠️ Data Access Principle: Issues and solutions files can grow very large. To avoid context overflow:
| Operation | Correct | Incorrect |
|---|---|---|
| List issues (brief) | ccw issue list --status pending --brief |
Read('issues.jsonl') |
| Read issue details | ccw issue status <id> --json |
Read('issues.jsonl') |
| Update status | ccw issue update <id> --status ... |
Direct file edit |
| Bind solution | ccw issue bind <id> <sol-id> |
Direct file edit |
Output Options:
--brief: JSON with minimal fields (id, title, status, priority, tags)--json: Full JSON (agent use only)
Orchestration vs Execution:
- Command (orchestrator): Use
--brieffor minimal context - Agent (executor): Fetch full details →
ccw issue status <id> --json
ALWAYS use CLI commands for CRUD operations. NEVER read entire issues.jsonl or solutions/*.jsonl directly.
Usage
/issue:plan [<issue-id>[,<issue-id>,...]] [FLAGS]
# Examples
/issue:plan # Default: --all-pending
/issue:plan GH-123 # Single issue
/issue:plan GH-123,GH-124,GH-125 # Batch (up to 3)
/issue:plan --all-pending # All pending issues (explicit)
# Flags
--batch-size <n> Max issues per agent batch (default: 3)
Execution Process
Phase 1: Issue Loading & Intelligent Grouping
├─ Parse input (single, comma-separated, or --all-pending)
├─ Fetch issue metadata (ID, title, tags)
├─ Validate issues exist (create if needed)
└─ Intelligent grouping via Gemini (semantic similarity, max 3 per batch)
Phase 2: Unified Explore + Plan (issue-plan-agent)
├─ Launch issue-plan-agent per batch
├─ Agent performs:
│ ├─ ACE semantic search for each issue
│ ├─ Codebase exploration (files, patterns, dependencies)
│ ├─ Solution generation with task breakdown
│ └─ Conflict detection across issues
└─ Output: solution JSON per issue
Phase 3: Solution Registration & Binding
├─ Append solutions to solutions/{issue-id}.jsonl
├─ Single solution per issue → auto-bind
├─ Multiple candidates → AskUserQuestion to select
└─ Update issues.jsonl with bound_solution_id
Phase 4: Summary
├─ Display bound solutions
├─ Show task counts per issue
└─ Display next steps (/issue:queue)
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.
- 2d ago First seen · 344 lines · 18 tokens per session scan A f39e10bd66ba
plan is a command published in the GitHub repository catlog22/Claude-Code-Workflow (2,135 stars, last pushed 2mo ago), licensed MIT. It adds 18 tokens to every session and 3,137 once invoked, about $0.0001 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-30.
Other commands, from other repositories
verify-claim
Walk a claim through the SIFT method (Stop, Investigate, Find better coverage, Trace).
beat-brief
Draft a daily beat briefing from the files in sample-docs/.
cross-review
Run GitHub Copilot CLI and OpenAI Codex against the current git diff for cross-model review.
step-research
Always research before proposing a fix. The Untether bug you're chasing is often a known upstream engine quirk, a previously-fixed regression, or a documented config gotcha.
whats-next
Show current project status and suggest next steps.
ox-session-pause
belongs in the ox CLI JSON output (guidance field), not here. Skills are agent-specific wrappers; ox serves all agents (Codex, etc.). --> Suspend the current session recording. Local cache continues to receive entries, but the upload at stop time will exclude the suspended range.