
Plan
Turn an approved BDD intent into wave-validated vertical slices, `.agents/plans` markdown, and trackable `bd` issues before implementation starts.
Install
npx skills add https://github.com/boshu2/agentops --skill planWhat is this skill?
- Mandatory workflow: decompose goals into trackable issues with waves, not ad-hoc task lists
- Produces `.agents/plans/*.md`, `execution-packet.json`, and beads via `bd create`
- Maps operating-loop moves 3 (vertical slice decomposition) and 5 (wave validity check)
- One slice per Given/When/Then row with first-failing-test, write-scope, bounded context, and owner
- Parallel waves only when wave-validity rows pass; default sequential when in doubt
Adoption & trust: 849 installs on skills.sh; 384 GitHub stars; 3/3 security scanners passed (skills.sh audits).
Recommended Skills
Journey fit
Canonical shelf is build/pm because the skill’s primary artifact is decomposition into executable slices and issues right before coding, even though upstream intent work may start in validate. PM subphase fits issue planning, wave validity checks, and ownership boundaries—not UI or infra implementation.
Common Questions / FAQ
Is Plan safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Plan
# Plan Skill > **Quick Ref:** Decompose goal into trackable issues with waves. Output: `.agents/plans/*.md` + bd issues. **YOU MUST EXECUTE THIS WORKFLOW. Do not just describe it.** ## Loop position Moves **3 (vertical slice decomposition)** and **5 (wave validity check)** of the [operating loop](../../docs/architecture/operating-loop.md). Consumes the [BDD intent issue](../../docs/templates/intent-issue.md); produces a [slice validation plan](../../docs/templates/slice-validation.md) — one slice per Given/When/Then row with a first-failing-test target, write-scope, bounded context, and ownership. Slices group into a wave only when every row of the wave-validity check passes (distinct write scopes, no shared migration/contract/CLI surface, declared integration order, owner per slice, discard path per slice). Default to sequential when in doubt — parallel waves are an optimization, not a default. **CLI dependencies:** bd (issue creation). If bd is unavailable, write the plan to `.agents/plans/` as markdown with issue descriptions, and use TaskList for tracking instead. The plan document is always created regardless of bd availability. ## Discovery Boundary Use the [Skill Ports and Adapters](../../docs/contracts/skill-ports-and-adapters.md) vocabulary and the [Intent-to-Loop Hexagon](../../docs/architecture/intent-to-loop-hexagon.md) for the boundary from Discovery into Plan: | Boundary piece | Plan contract | |---|---| | Inbound port | `plan_slices` from BDD intent, bead, research artifact, or execution packet | | Outbound ports | `persist_issue`, `verify_symbols`, `retrieve_context`, `seed_execution_packet` | | Driving adapter | `/plan` skill invocation | | Driven adapters | bd, `rg`, `.agents/findings`, `.agents/plans`, execution-packet writer | | Context packet | slice plan, file dependency matrix, acceptance criteria, test levels | | Guard adapter | stale-scope verification, symbol verification, wave-validity check | ```gherkin Feature: Plan converts dense intent into executable slices Scenario: Plan consumes Discovery output Given Discovery provides density fields and artifact links When Plan receives the `plan_slices` port request Then each slice has acceptance criteria, write scope, test levels, and ownership And no slice depends on raw Discovery chat context ``` ## Flags | Flag | Default | Description | |------|---------|-------------| | `--auto` | off | Skip human approval gate. Used by `/rpi --auto` for fully autonomous lifecycle. | | `--fast-path` | off | Force Minimal detail template (see Step 3.2) | | `--skip-symbol-check` | off | Skip symbol verification in Step 3.6 (for greenfield plans) | | `--skip-audit-gate` | off | Skip baseline audit gate in Step 6 (for documentation-only plans) | ## Execution Steps Given `/plan <goal> [--auto]`: ### Step 0: Bead-Input Pre-Flight (Stale-Scope Gate) When the input to `/plan` is a bead ID (matches pattern `[a-z]{2,6}-[0-9a-z.]+`) AND **any** of the following conditions hold, automatically run `ao beads verify <bead-id>` as the **very first action** before any other planning step: - complexity is `"full"` - the bead is older than 7 days - the bead description was filed by a prior session (e.g., handoff-sourced, deferred, or reopened) ```bash # Example guard — run before Step 1 if [[ "$INPUT" =~ ^[a-z]{2,6}-[0-9a-z.]+$ ]]; then ao beads verify "$INPUT" || true fi ``` If `ao beads verify` reports any STALE