agentsclimarketplace

Planning

Skill asong56/skills/02-define/planning

Create and manage implementation plans: Plans.md management for framework-driven workflows + comprehensive plan writing methodology for any project. Use before touching code.From its SKILL.md

Install
npx -y skills add asong56/skills --skill planning

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 22 days oldThe repository was created 22 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

18.9 KB, ~4.9k tokens by cl100k_base, as published. Nobody here has run it

Harness Plan

  • planning (plan-with-agent) — → Plans.md
  • plans-management
  • sync-status — Plans.md

Quick Reference

|------------|------------|------| | / /FRM-plan create | create | Spec delta / skip reason → Plans.md task | | / /FRM-plan add | add | Plans.md | | / /FRM-plan update | update | cc: | | / /FRM-plan sync | sync | Plans.md | | /FRM-sync | sync | sync surface | | /FRM-plan create | create | spec.md / Plans.md | | /FRM-plan list | list | plans/manifest.json named Plans | | /FRM-plan switch <name> | switch | active plan .claude/state/active-plan.json |

Literal companion commandsCC 2.1.108+

  • /undo: /rewind plan

See references/planning-quality.md

FRM-plan spec.md product contract and Plans.md task contract co-required planning output planning surface precedence spec.md > sub-spec > Plans.md Plans.md task ledgerroot spec.md product contract /FRM-plan create Spec delta Spec skip reason Plans.md task Spec delta Spec skip reason Spec delta / Spec skip reason Harness consumer

Non-trivial planning gate:

non-trivial task / file / session / product behavior / API / data model / / / / / Task tool Product / Architecture / Security / QA / Skeptic

non-trivial planning

  • team_validation_mode: not_required_lightweight / native / subagent / manual-pass / unavailable
  • spec.md / sub-spec / Plans.md
  • FRM-mem / FRM-recall / repo memory
  • lint / formatter baseline source code changes plan task setup task
  • test / smoke / CI / review / release gate task DoD

task team_validation_mode: not_required_lightweight non-trivial planning native / subagent / manual-pass unavailable Required Product / Architecture / Security / QA / Skeptic perspective agent_type TeamAgent / Task perspective agent spawn .env secret read Risk Gate guard / evidence

****:

  • create

  • add product behavior / API / / / / task

  • marker update

  • status sync

  • typoformatREADME/CHANGELOG

****: 3. root spec.mdPlans.mdREADMEdocsCLAUDE.md skill 4. FRM-mem / FRM-recall / .claude/agent-memory/ / .claude/state/ project-scoped 5. non-trivial planning TeamAgent / Task Product / Architecture / Security / QA / Skeptic 6. source code changes plan lint / formatter baseline setup task 7. Required / Recommended / Optional / Reject 9. root spec.md / Plans.md / test task

create —

See references/create.md

****: 4. WebSearch 6. **spec.md / Plans.md **Spec delta Spec skip reason + Plans.md task 7. Required / Recommended / Optional / Reject 9. Plans.md cc:TODO

spec.md / Plans.md

Plans.md task contractroot spec.md product contract co-required planning output precedence spec.md > sub-spec > Plans.md Plans.md root spec.md create product-impacting add root spec.md

  1. root spec.md
  2. consumer repo root spec.md project spec / architecture / product compass
  3. consumer repo root spec.md docs/spec/00-project-spec.md
  • product behavior task

  • typoformatdependency bumpREADME/CHANGELOG

  • refactor

  • Spec delta: product contract spec path

  • Spec skip reason: product contract

  • Spec delta / Spec skip reason Harness consumer

  • docs-only / mechanical task Spec skip reason task context / sprint contract

  • missing search resultunavailable memory absent not_observed != absent

  • docs/plans/spec-ssot.md

  • : claude

  • : /FRM-work <task>

  • : claude

  • : /breezing all

  • : /FRM-work all

  • : ENABLE_PROMPT_CACHING_1H=1 claude

  • : /FRM-loop all

  • : /breezing all

:

: /breezing all
: ENABLE_PROMPT_CACHING_1H=1 claude
: /FRM-loop all
  • scripts/claude-longrun.sh plugin install consumer
  • consumer ENABLE_PROMPT_CACHING_1H=1 claude 1
  • bash scripts/claude-longrun.sh checkout

**CI ** (--ci):

add —

product-impacting spec.md / Plans.md Spec delta Spec skip reason

/FRM-plan add : [--phase ]

update —

/FRM-plan update [|] [WIP||blocked]

|---------|---------| | WIP | cc:WIP | | `` / done | cc: | | blocked | blocked | | TODO | cc:TODO |

sync —

See references/sync.md

****:

  1. Plans.md
  2. Plans.md v1: 3 / v2: 5
  3. git status / git log
  4. .claude/state/agent-trace.jsonl
  5. Plans.md

sync --no-retro

team mode / issue bridge

Plans.md GitHub Issue opt-in team mode

  • solo bridge

  • team mode tracking issue 1 task sub-issue payload dry-run

  • scripts/plans-issue-bridge.sh GitHub dry-run payload

  • Plans.md bridge

  • docs/plans/team-mode.md

named Plans

Plans.md plans/manifest.json

scripts/plan-registry.sh list
scripts/plan-registry.sh switch roadmap
scripts/plans-issue-bridge.sh --plan roadmap --format markdown
node scripts/generate-sprint-contract.js --plan roadmap 9.1.1
  • 1 run 1 named plan

  • long-running / CI / issue bridge active pointer --plan <name>

  • manifest path project root ..repo symlink

  • docs/plans/named-plans.md

Plans.md

# [] Plans.md

: YYYY-MM-DD

---

## Phase N:

| Task | | DoD | Depends | Status |
|------|------|-----|---------|--------|
| N.1 | | | - | cc:TODO |
| N.2 | | lint 0 | N.1 | cc:WIP |
| N.3 | | | N.1, N.2 | cc: |

Depends: -``N.1``N.1, N.2``Phase N

TDD tags

tdd_required
[tdd:required]tasktrue
[tdd:skip:<reason>]task TDDfalse, skip_tdd_reason=<reason>

<reason> : [tdd:skip:docs-only]``[tdd:skip:no-test-framework-detected]

  1. Plans.md tag: [tdd:required] / [tdd:skip:<reason>]
  2. files: src/, app/, cmd/, lib/, pkg/, internal/, go/ source required
  3. TDD : docs-only test framework skip reason not required

optional briefs / manifest

FRM-plan create brief

  • project spec SSOT project

  • UI design brief

  • API contract brief

  • skill frontmatter scripts/generate-skill-manifest.sh machine-readable JSON

  • docs/plans/briefs-manifest.md

  • docs/plans/spec-ssot.md

|---------|------| | pm: | PM | | cc:TODO | | | cc:WIP | | | cc: | Worker | | pm: | PM | | blocked | |

  • FRM-sync — Plans.md
  • FRM-work
  • FRM-review
  • FRM-setup

writing-plans

Writing Plans

Overview

Write comprehensive implementation plans assuming the engineer has zero context for our codebase and questionable taste. Document everything they need to know: which files to touch for each task, code, testing, docs they might need to check, how to test it. Give them the whole plan as bite-sized tasks. DRY. YAGNI. TDD. Frequent commits.

Assume they are a skilled developer, but know almost nothing about our toolset or problem domain. Assume they don't know good test design very well.

Announce at start: "I'm using the writing-plans skill to create the implementation plan."

Context: If working in an isolated worktree, it should have been created via the using-git-worktrees skill at execution time.

Save plans to: docs/skills/plans/YYYY-MM-DD-<feature-name>.md

  • (User preferences for plan location override this default)

Scope Check

If the spec covers multiple independent subsystems, it should have been broken into sub-project specs during brainstorming. If it wasn't, suggest breaking this into separate plans — one per subsystem. Each plan should produce working, testable software on its own.

File Structure

Before defining tasks, map out which files will be created or modified and what each one is responsible for. This is where decomposition decisions get locked in.

  • Design units with clear boundaries and well-defined interfaces. Each file should have one clear responsibility.
  • You reason best about code you can hold in context at once, and your edits are more reliable when files are focused. Prefer smaller, focused files over large ones that do too much.
  • Files that change together should live together. Split by responsibility, not by technical layer.
  • In existing codebases, follow established patterns. If the codebase uses large files, don't unilaterally restructure - but if a file you're modifying has grown unwieldy, including a split in the plan is reasonable.

This structure informs the task decomposition. Each task should produce self-contained changes that make sense independently.

Bite-Sized Task Granularity

Each step is one action (2-5 minutes):

  • "Write the failing test" - step
  • "Run it to make sure it fails" - step
  • "Implement the minimal code to make the test pass" - step
  • "Run the tests and make sure they pass" - step
  • "Commit" - step

Plan Document Header

Every plan MUST start with this header:

# [Feature Name] Implementation Plan

> **For agentic workers:** REQUIRED SUB-SKILL: Use subagent-driven-development (recommended) or skills:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.

**Goal:** [One sentence describing what this builds]

**Architecture:** [2-3 sentences about approach]

**Tech Stack:** [Key technologies/libraries]

---

Task Structure

### Task N: [Component Name]

**Files:**
- Create: `exact/path/to/file.py`
- Modify: `exact/path/to/existing.py:123-145`
- Test: `tests/exact/path/to/test.py`

- [ ] **Step 1: Write the failing test**

```python
def test_specific_behavior():
    result = function(input)
    assert result == expected
```

- [ ] **Step 2: Run test to verify it fails**

Run: `pytest tests/path/test.py::test_name -v`
Expected: FAIL with "function not defined"

- [ ] **Step 3: Write minimal implementation**

```python
def function(input):
    return expected
```

- [ ] **Step 4: Run test to verify it passes**

Run: `pytest tests/path/test.py::test_name -v`
Expected: PASS

- [ ] **Step 5: Commit**

```bash
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
```

No Placeholders

Every step must contain the actual content an engineer needs. These are plan failures — never write them:

  • "TBD", "TODO", "implement later", "fill in details"
  • "Add appropriate error handling" / "add validation" / "handle edge cases"
  • "Write tests for the above" (without actual test code)
  • "Similar to Task N" (repeat the code — the engineer may be reading tasks out of order)
  • Steps that describe what to do without showing how (code blocks required for code steps)
  • References to types, functions, or methods not defined in any task

Remember

  • Exact file paths always
  • Complete code in every step — if a step changes code, show the code
  • Exact commands with expected output
  • DRY, YAGNI, TDD, frequent commits

Self-Review

After writing the complete plan, look at the spec with fresh eyes and check the plan against it. This is a checklist you run yourself — not a subagent dispatch.

1. Spec coverage: Skim each section/requirement in the spec. Can you point to a task that implements it? List any gaps.

2. Placeholder scan: Search your plan for red flags — any of the patterns from the "No Placeholders" section above. Fix them.

3. Type consistency: Do the types, method signatures, and property names you used in later tasks match what you defined in earlier tasks? A function called clearLayers() in Task 3 but clearFullLayers() in Task 7 is a bug.

If you find issues, fix them inline. No need to re-review — just fix and move on. If you find a spec requirement with no task, add the task.

Execution Handoff

After saving the plan, offer execution choice:

"Plan complete and saved to docs/skills/plans/<filename>.md. Two execution options:

1. Subagent-Driven (recommended) - I dispatch a fresh subagent per task, review between tasks, fast iteration

2. Inline Execution - Execute tasks in this session using executing-plans, batch execution with checkpoints

Which approach?"

If Subagent-Driven chosen:

  • REQUIRED SUB-SKILL: Use subagent-driven-development
  • Fresh subagent per task + two-stage review

If Inline Execution chosen:

  • REQUIRED SUB-SKILL: Use skills:executing-plans
  • Batch execution with checkpoints for review

Task Breakdown Methodology (agent-skills)

Planning and Task Breakdown

Overview

Decompose work into small, verifiable tasks with explicit acceptance criteria. Good task breakdown is the difference between an agent that completes work reliably and one that produces a tangled mess. Every task should be small enough to implement, test, and verify in a single focused session.

When to Use

  • You have a spec and need to break it into implementable units
  • A task feels too large or vague to start
  • Work needs to be parallelized across multiple agents or sessions
  • You need to communicate scope to a human
  • The implementation order isn't obvious

When NOT to use: Single-file changes with obvious scope, or when the spec already contains well-defined tasks.

The Planning Process

Step 1: Enter Plan Mode

Before writing any code, operate in read-only mode:

  • Read the spec and relevant codebase sections
  • Identify existing patterns and conventions
  • Map dependencies between components
  • Note risks and unknowns

Do NOT write code during planning. The output is a plan document, not implementation.

Step 2: Identify the Dependency Graph

Map what depends on what:

Database schema
    │
    ├── API models/types
    │       │
    │       ├── API endpoints
    │       │       │
    │       │       └── Frontend API client
    │       │               │
    │       │               └── UI components
    │       │
    │       └── Validation logic
    │
    └── Seed data / migrations

Implementation order follows the dependency graph bottom-up: build foundations first.

Step 3: Slice Vertically

Instead of building all the database, then all the API, then all the UI — build one complete feature path at a time:

Bad (horizontal slicing):

Task 1: Build entire database schema
Task 2: Build all API endpoints
Task 3: Build all UI components
Task 4: Connect everything

Good (vertical slicing):

Task 1: User can create an account (schema + API + UI for registration)
Task 2: User can log in (auth schema + API + UI for login)
Task 3: User can create a task (task schema + API + UI for creation)
Task 4: User can view task list (query + API + UI for list view)

Each vertical slice delivers working, testable functionality.

Step 4: Write Tasks

Each task follows this structure:

## Task [N]: [Short descriptive title]

**Description:** One paragraph explaining what this task accomplishes.

**Acceptance criteria:**
- [ ] [Specific, testable condition]
- [ ] [Specific, testable condition]

**Verification:**
- [ ] Tests pass: `npm test -- --grep "feature-name"`
- [ ] Build succeeds: `npm run build`
- [ ] Manual check: [description of what to verify]

**Dependencies:** [Task numbers this depends on, or "None"]

**Files likely touched:**
- `src/path/to/file.ts`
- `tests/path/to/test.ts`

**Estimated scope:** [Small: 1-2 files | Medium: 3-5 files | Large: 5+ files]

Step 5: Order and Checkpoint

Arrange tasks so that:

  1. Dependencies are satisfied (build foundation first)
  2. Each task leaves the system in a working state
  3. Verification checkpoints occur after every 2-3 tasks
  4. High-risk tasks are early (fail fast)

Add explicit checkpoints:

## Checkpoint: After Tasks 1-3
- [ ] All tests pass
- [ ] Application builds without errors
- [ ] Core user flow works end-to-end
- [ ] Review with human before proceeding

Task Sizing Guidelines

SizeFilesScopeExample
XS1Single function or config changeAdd a validation rule
S1-2One component or endpointAdd a new API endpoint
M3-5One feature sliceUser registration flow
L5-8Multi-component featureSearch with filtering and pagination
XL8+Too large — break it down further

If a task is L or larger, it should be broken into smaller tasks. An agent performs best on S and M tasks.

When to break a task down further:

  • It would take more than one focused session (roughly 2+ hours of agent work)
  • You cannot describe the acceptance criteria in 3 or fewer bullet points
  • It touches two or more independent subsystems (e.g., auth and billing)
  • You find yourself writing "and" in the task title (a sign it is two tasks)

Plan Document Template

# Implementation Plan: [Feature/Project Name]

## Overview
[One paragraph summary of what we're building]

## Architecture Decisions
- [Key decision 1 and rationale]
- [Key decision 2 and rationale]

## Task List

### Phase 1: Foundation
- [ ] Task 1: ...
- [ ] Task 2: ...

### Checkpoint: Foundation
- [ ] Tests pass, builds clean

### Phase 2: Core Features
- [ ] Task 3: ...
- [ ] Task 4: ...

### Checkpoint: Core Features
- [ ] End-to-end flow works

### Phase 3: Polish
- [ ] Task 5: ...
- [ ] Task 6: ...

### Checkpoint: Complete
- [ ] All acceptance criteria met
- [ ] Ready for review

## Risks and Mitigations
| Risk | Impact | Mitigation |
|------|--------|------------|
| [Risk] | [High/Med/Low] | [Strategy] |

## Open Questions
- [Question needing human input]

Parallelization Opportunities

When multiple agents or sessions are available:

  • Safe to parallelize: Independent feature slices, tests for already-implemented features, documentation
  • Must be sequential: Database migrations, shared state changes, dependency chains
  • Needs coordination: Features that share an API contract (define the contract first, then parallelize)

Common Rationalizations

RationalizationReality
"I'll figure it out as I go"That's how you end up with a tangled mess and rework. 10 minutes of planning saves hours.
"The tasks are obvious"Write them down anyway. Explicit tasks surface hidden dependencies and forgotten edge cases.
"Planning is overhead"Planning is the task. Implementation without a plan is just typing.
"I can hold it all in my head"Context windows are finite. Written plans survive session boundaries and compaction.

Red Flags

  • Starting implementation without a written task list
  • Tasks that say "implement the feature" without acceptance criteria
  • No verification steps in the plan
  • All tasks are XL-sized
  • No checkpoints between tasks
  • Dependency order isn't considered

Verification

Before starting implementation, confirm:

  • Every task has acceptance criteria
  • Every task has a verification step
  • Task dependencies are identified and ordered correctly
  • No task touches more than ~5 files
  • Checkpoints exist between major phases
  • The human has reviewed and approved the plan

What ships with it: 3 files

12.9 KB alongside SKILL.md

FRM-plan-references/

Keep looking

Skills are one crate of 326,782. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.