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/taoidle/plan-cascade/resumegit clone --depth 1 https://github.com/Taoidle/plan-cascadeWhat 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.00032 | $0.02357 |
| Opus 5 | $0.00016 | $0.01179 |
| Sonnet 5 | $0.00006 | $0.00471 |
| Haiku 4.5 | $0.00003 | $0.00236 |
Grade A, and why
resume 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 — 350 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Plan Cascade - Universal Resume
Automatically detect and resume any interrupted Plan Cascade task.
Path Storage Modes
This command works with both new and legacy path storage modes and auto-detects which is active:
New Mode (Default)
Files are stored in user data directory:
- Windows:
%APPDATA%/plan-cascade/<project-id>/ - Unix/macOS:
~/.plan-cascade/<project-id>/
Detection checks:
<user-dir>/mega-plan.jsonfor mega-plan tasks<user-dir>/.worktree/*/for worktree tasks<user-dir>/prd.jsonfor hybrid-auto tasks
Legacy Mode
Files in project root:
<project-root>/mega-plan.json<project-root>/.worktree/*/<project-root>/prd.json
The command scans both locations for maximum compatibility.
Tool Usage Policy (CRITICAL)
To avoid command confirmation prompts:
- Use Read tool for file reading - NEVER use
catvia Bash - Use Glob tool for finding files - NEVER use
lsorfindvia Bash - Only use Bash for git commands
Step 1: Detect Task Context
Check for various planning files to determine what type of task was interrupted.
1.1: Check for Mega Plan
# Get mega-plan path from PathResolver
MEGA_PLAN_PATH = uv run python -c "from plan_cascade.state.path_resolver import PathResolver; from pathlib import Path; print(PathResolver(Path.cwd()).get_mega_plan_path())"
Use Read tool to check if mega-plan.json exists:
Read(MEGA_PLAN_PATH)
# Also check legacy location if different
If file not found and MEGA_PLAN_PATH != "mega-plan.json":
Read("mega-plan.json")
If file exists and is valid JSON:
CONTEXT = "mega-plan"
Extract: goal, target_branch, features count
1.2: Check for Hybrid Worktree
Use Read tool to check for worktree config:
Read(".planning-config.json")
If file exists and mode = "hybrid":
CONTEXT = "hybrid-worktree"
Extract: task_name, target_branch
1.3: Check for Worktrees Directory
# Get worktree base directory from PathResolver
WORKTREE_BASE = uv run python -c "from plan_cascade.state.path_resolver import PathResolver; from pathlib import Path; print(PathResolver(Path.cwd()).get_worktree_dir())"
Use Glob tool to find worktrees in new mode location:
Glob("{WORKTREE_BASE}/*/.planning-config.json")
Glob("{WORKTREE_BASE}/*/prd.json")
# Also check legacy location if different
If WORKTREE_BASE != ".worktree":
Glob(".worktree/*/.planning-config.json")
Glob(".worktree/*/prd.json")
If any worktrees found:
CONTEXT = "has-worktrees"
List all found worktrees
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 · 350 lines · 32 tokens per session scan A e8b91fa703bc
resume is a command published in the GitHub repository Taoidle/plan-cascade (131 stars, last pushed 5mo ago), licensed MIT. It adds 32 tokens to every session and 2,357 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-30.
Other commands, from other repositories
conv_release
Command "conv_release" from John-Wendell/Attention-MoA, covering chatbot arena conversations, all conversations and prompt distribution.
data_cleaning
Command "data_cleaning" from John-Wendell/Attention-MoA, covering data cleaning, requirements, steps, convert html to markdown and keep or remove specific languages.
pypi
Command "pypi" from John-Wendell/Attention-MoA, covering requirement and upload.
local_cluster
node-01.
webserver
Command "webserver" from John-Wendell/Attention-MoA, covering install, launch servers, check the launch time, increase the limit of max open files and gradio edit (3.35.2).
leaderboard
Command "leaderboard" from John-Wendell/Attention-MoA, covering get logs, clean battle data, run elo analysis, copy files to hf space and update files on webserver.