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/hybrid-completegit clone --depth 1 https://github.com/Taoidle/plan-cascadeWrote 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/commands/taoidle/plan-cascade/hybrid-complete)<a href="https://agentmods.dev/commands/taoidle/plan-cascade/hybrid-complete"><img src="https://agentmods.dev/badge/commands/taoidle/plan-cascade/hybrid-complete.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 | $0.00039 | $0.03649 |
| Opus 5 | $0.00019 | $0.01825 |
| Sonnet 5 | $0.00008 | $0.00730 |
| Haiku 4.5 | $0.00004 | $0.00365 |
Grade C, and why
hybrid-complete scanned grade C with 1 finding 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 4d 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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
rm -rf .agent-outputs How it starts
The opening of the file, as written. The whole thing — 453 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Hybrid Ralph - Complete Worktree Task
You are completing a Hybrid Ralph task in a worktree and merging it to the target branch.
Path Storage Modes
This command works with both new and legacy path storage modes:
New Mode (Default)
- Worktrees located in:
~/.plan-cascade/<project-id>/.worktree/(Unix) or%APPDATA%/plan-cascade/<project-id>/.worktree/(Windows) - State files in:
~/.plan-cascade/<project-id>/.state/ - Cleanup removes files from user data directory
Legacy Mode
- Worktrees located in:
<project-root>/.worktree/ - State files in project root
- Cleanup removes files from project root
The command auto-detects which mode is active based on .planning-config.json contents.
Step 1: Detect Current Location
Check if we're in a worktree or the root directory:
if [ -f ".planning-config.json" ]; then
# We're in a worktree directory
echo "Currently in worktree directory: $(pwd)"
IN_WORKTREE=true
else
# We're not in a worktree, check if there are any worktrees
IN_WORKTREE=false
# Check for worktrees
WORKTREES=$(git worktree list 2>/dev/null | grep -v "\bare$" | wc -l)
if [ "$WORKTREES" -eq 0 ]; then
echo "ERROR: No worktrees found."
echo "This command requires an existing hybrid worktree."
echo ""
echo "Create one first with:"
echo " /plan-cascade:hybrid-worktree <task-name> <branch> <description>"
exit 1
fi
echo "Not in a worktree directory. Found $WORKTREES worktree(s):"
echo ""
git worktree list
echo ""
# Find all hybrid worktrees (check both new mode user directory and legacy project root)
echo "Scanning for hybrid worktrees..."
HYBRID_WORKTREES=()
# Get worktree base directory from PathResolver (handles new vs legacy mode)
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())" 2>/dev/null || echo ".worktree")
while IFS= read -r line; do
worktree_path=$(echo "$line" | awk '{print $1}')
worktree_branch=$(echo "$line" | awk '{print $2}')
# Check if this is a hybrid worktree
if [ -f "$worktree_path/.planning-config.json" ]; then
mode=$(jq -r '.mode // empty' "$worktree_path/.planning-config.json" 2>/dev/null)
if [ "$mode" = "hybrid" ]; then
task_name=$(jq -r '.task_name // empty' "$worktree_path/.planning-config.json" 2>/dev/null)
HYBRID_WORKTREES+=("$worktree_path|$task_name|$worktree_branch")
fi
fi
done < <(git worktree list 2>/dev/null | grep -v "\bare$")
if [ ${#HYBRID_WORKTREES[@]} -eq 0 ]; then
echo "ERROR: No hybrid worktrees found."
echo "Found worktrees but none are in hybrid mode."
exit 1
fi
echo "Found ${#HYBRID_WORKTREES[@]} hybrid worktree(s):"
echo ""
# Display options
for i in "${!HYBRID_WORKTREES[@]}"; do
IFS='|' read -r path name branch <<< "$i"
echo " [$((i+1))] $name"
echo " Path: $path"
echo " Branch: $branch"
echo ""
done
# Ask user to select
echo "Which worktree would you like to complete?"
read -p "Enter number (or 0 to cancel): " selection
if [ "$selection" = "0" ]; then
echo "Cancelled."
exit 0
fi
if [ "$selection" -lt 1 ] || [ "$selection" -gt ${#HYBRID_WORKTREES[@]} ]; then
echo "Invalid selection."
exit 1
fi
# Get the selected worktree
selected="${HYBRID_WORKTREES[$((selection-1))]}"
IFS='|' read -r WORKTREE_PATH TASK_NAME TASK_BRANCH <<< "$selected"
echo ""
echo "Selected: $TASK_NAME"
echo "Navigating to worktree: $WORKTREE_PATH"
# Change to worktree directory
cd "$WORKTREE_PATH" || {
echo "ERROR: Failed to navigate to worktree: $WORKTREE_PATH"
exit 1
}
echo "✓ Now in worktree: $(pwd)"
IN_WORKTREE=true
fi
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.
- 4d ago First seen · 453 lines · 39 tokens per session scan C c2f5615d23af
hybrid-complete is a command published in the GitHub repository Taoidle/plan-cascade (131 stars, last pushed 5mo ago), licensed MIT. It adds 39 tokens to every session and 3,649 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other commands, from other repositories
pm
Invoke Robert (CPO) to run feature discovery, produce specs, and make product decisions.
bigproject
Large-scale project orchestration with Himawari (Atlas).
pm-agent-retire
Mark a great-pm agent as deprecated. Adds a deprecation banner to the agent file, files a Beads issue to remove dependent commands/workflows, and logs the rationale. NEVER deletes the file (history preserved).
pm-agent-review
Review a great-pm agent's recent verdict history. Shows verdict distribution (PASS/FAIL/NEEDS-WORK), trend over time, and whether the agent is drifting.
pm-audit
Run the great-pm PM-health audit on a product, an initiative, or great-pm itself. 15 dimensions, severity-rated findings, Top-5 + Quick-Wins + Things-Look-Bad-But-Fine + Open Questions. Files findings as Beads tasks unless --read-only.
pm-board
Open the great-pm board — a native, zero-dependency project board (hybrid stage×status Kanban + artifact panels + verdict metrics) served from the great-pm plugin itself. Self-contained, no npm packages.