skills/compound-v-plan/SKILL.md
Autonomous planning with internal reasoning. Researches, evaluates ideas, presents a plan. Minimizes user round-trips. Use before making non-trivial changes.
npx skillsauth add shermanhuman/compound-v compound-v-planInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Announce at start: "I'm using the planning skill to work through this."
Planning is LLM-driven, not turn-by-turn. Follow these phases:
Determine the desired end result — the single sentence that defines success.
Read .agents/rules/stack.md if it exists; otherwise read legacy .agent/rules/stack.md. If neither exists, infer versions from go.mod, mix.exs, package.json, or equivalent. These versions scope all subsequent web searches.
If stack.md is missing from both locations, print: "No stack.md found. Run /stack to pin your versions — this improves web search accuracy." Then continue planning.
Do all of this in parallel (invoke multiple tool calls in the same response):
stack.md..promptherder/future-tasks.md if it exists — check if any deferred ideas are relevant..promptherder/hard-rules.md if it exists — all rules must be respected.For each approach you consider, evaluate:
Apply these filters yourself:
Reject bad ideas yourself. Only surface ideas with verdict ask to the user.
Write the full decisions table to decisions.md. The calling workflow determines the full path (typically .promptherder/convos/<slug>/decisions.md):
# Decisions: <title>
| # | Idea | Verdict | Pros | Cons | Rationale |
| --- | ---- | -------- | ---- | ---- | --------- |
| 1 | ... | accepted | ... | ... | ... |
| 2 | ... | rejected | ... | ... | ... |
| 3 | ... | ask | ... | ... | ... |
Update this file whenever decisions change (feedback, re-planning, etc.).
Verdicts:
accepted — you're confident this is right. Include in plan.rejected — you've killed it. Visible when user says SHOW DECISIONS.ask — you genuinely can't decide without user input. Surface as a batch question.Present the plan in a single response:
# Plan: <title>
> **Status**: draft
## Goal
<one sentence>
## Plan
### 1. Step name
- **Files:** `path/to/file`
- **Change:** what changes (1-2 bullets)
- Test → Code → Verify order
- **Verify:** command to verify
## What this builds
### Happy path
1. [numbered walkthrough of user-facing flow after implementation]
### Filesystem tree
[tree showing files created/modified]
## Risks & mitigations
- Risk → mitigation
## Rollback plan
<how to undo>
## References
- Full plan: `.promptherder/convos/<slug>/plan.md`
- Decisions: `.promptherder/convos/<slug>/decisions.md`
After the plan, present all decisions you need input on in one block:
**I need your input on:**
1. <question> — I recommend (A) because ...
- (A) option
- (B) option
2. <question>
- (A) ...
- (B) ...
If the path is clear, skip this section.
If you identified ideas with future value, list them:
**Ideas I'd defer to future tasks:**
- <idea> — <brief rationale>
Add these to
future-tasks.md?yes/no
Only append after the user confirms.
future-tasks.mdstack.md without user approval.### 1. Step name
- **Files:** `path/to/file.ext`, `...`
- **Change:** (1–2 bullets)
- Test: what test to write first
- Code: what to implement
- **Verify:** (exact commands or checks)
development
Mandatory checklist before claiming a task is done. Ensures verification, clean code, and accurate reporting. Use before saying "done" or "complete".
development
Applies tests-first discipline (red/green/refactor) and adds regression tests for bugs. Use when implementing features, fixing bugs, or refactoring.
testing
Reviews changes for correctness, edge cases, style, security, and maintainability with severity levels. 10 parallel checks with version-specific research. Use before finalizing changes.
data-ai
Resolves target repository and storage location for conversation artifacts. Guarantees organized, time-sorted history.