Claude Code Plugins

Community-maintained marketplace

Feedback

Manage planning documents (ADRs, FDPs, action plans, reports). Use when creating, archiving, or listing planning docs. Enforces proper numbering and structure.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name planning
description Manage planning documents (ADRs, FDPs, action plans, reports). Use when creating, archiving, or listing planning docs. Enforces proper numbering and structure.
allowed-tools Read, Write, Bash, Glob, Grep

Planning Skill

Manage planning documents with proper structure, numbering, and lifecycle.

Document Types

Type Purpose ID Format Default Directory
ADR Architecture Decision Record ADR-001 decisions/
FDP Feature Design Proposal FDP-001 designs/
AP Action Plan AP-001 action-plans/
Report Reports and analysis RPT-001 reports/
Roadmap Project goals and vision N/A roadmap.md

Document Format (v0.2.1)

All documents have YAML frontmatter for structured metadata:

---
type: adr
id: ADR-001
status: proposed
created: 2025-12-13
modified: 2025-12-13
supersedes: null
superseded_by: null
obsoleted_by: null
related: []
---

# ADR-001: Title Here

## Status
Proposed

...content...

---

## Addenda

Frontmatter Fields

Field Description
type Document type (adr, fdp, ap, report)
id Display ID (ADR-001, FDP-002, etc.)
status Current lifecycle status
created ISO date of creation
modified ISO date of last modification
supersedes ID of document this replaces
superseded_by ID of document that replaced this
obsoleted_by ID or reason for obsolescence
related List of related document IDs

Addenda Section

Documents have an append-only addenda section at the bottom. This allows adding notes, clarifications, and updates to locked documents without modifying the original content.

Configuration

Configure planning in .claude/vibe-hacker.json:

{
  "planning": {
    "version": "0.2.1",
    "subdirs": {
      "adr": "decisions",
      "fdp": "designs",
      "ap": "action-plans",
      "report": "reports"
    }
  },
  "protected_paths": {
    "planning_root": "docs/planning"
  }
}
Setting Default Description
planning.version 0.1.0 Schema version
planning.subdirs.adr decisions Subdirectory for ADRs
planning.subdirs.fdp designs Subdirectory for FDPs
planning.subdirs.ap action-plans Subdirectory for Action Plans
planning.subdirs.report reports Subdirectory for Reports
protected_paths.planning_root docs/planning Root directory for all planning docs

When to Use This Skill

Use the planning scripts when:

  • Creating a new planning document (ensures proper numbering and frontmatter)
  • Updating a document's status (e.g., Proposed → Accepted)
  • Adding an addendum to a locked document
  • Creating a document that supersedes another
  • Archiving a completed or superseded document
  • Listing active planning documents

Do NOT manually create or renumber planning documents. Always use the scripts.

Available Scripts

All scripts are in ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/.

Create New Document

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/new.py <type> "<title>"

Types: adr, fdp, ap, report

Examples:

python3 scripts/new.py adr "Use PostgreSQL for persistence"
python3 scripts/new.py fdp "User Authentication System"
python3 scripts/new.py ap "Implement login flow"
python3 scripts/new.py report "Q4 Performance Analysis"

Add Addendum

Add notes or updates to any document, even locked ones:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/append.py <doc-id> "<title>" [--body "<content>"]

Examples:

python3 scripts/append.py ADR-001 "Performance Clarification"
python3 scripts/append.py ADR-001 "Migration note" --body "Use pg_dump for best results"

Supersede Document

Create a new document that supersedes an existing one:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/supersede.py <old-doc-id> "<new-title>"

This will:

  1. Create a new document of the same type
  2. Link the new document to the old (supersedes field)
  3. Update the old document (superseded_by field, status)
  4. Add an addendum to the old document

Example:

python3 scripts/supersede.py ADR-001 "Revised Database Strategy"

Add Related Links

Link documents together:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/relate.py <doc-id> <related-ids...> [--bidirectional]

Examples:

python3 scripts/relate.py ADR-001 FDP-003
python3 scripts/relate.py ADR-001 FDP-003 ADR-002 --bidirectional

Update Status

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/update-status.py <doc-id> <new-status>

Examples:

python3 scripts/update-status.py ADR-001 accepted
python3 scripts/update-status.py FDP-002 "in progress"
python3 scripts/update-status.py RPT-001 published

Valid statuses by type:

  • ADR: proposed, accepted, deprecated, superseded
  • FDP: proposed, in progress, implemented, abandoned
  • AP: active, completed, abandoned
  • Report: draft, published, superseded, obsoleted

Archive Document

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/archive.py <doc-id>

Examples:

python3 scripts/archive.py ADR-001
python3 scripts/archive.py FDP-002

Check Edit Permission

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/edit.py <doc-id> [--force] [--quiet]

Checks if a document can be edited based on its status. Outputs the file path if editable.

Locked statuses (require --force to edit):

  • ADR: accepted, deprecated, superseded
  • FDP: implemented, abandoned
  • AP: completed, abandoned
  • Report: published, superseded, obsoleted

Tip: Use append.py to add an addendum instead of force-editing locked documents.

List Documents

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/list.py [--type TYPE] [--status STATUS] [--include-archived]

Examples:

python3 scripts/list.py
python3 scripts/list.py --type adr
python3 scripts/list.py --type report
python3 scripts/list.py --status proposed
python3 scripts/list.py --include-archived

Migration (vibe-doc)

Upgrade existing documents to the latest format:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/vibe-doc.py status
python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/vibe-doc.py upgrade --dry-run
python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/vibe-doc.py upgrade
python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/vibe-doc.py changelog 0.2.0

Document Lifecycle

ADR Lifecycle

Proposed → Accepted → [Superseded | Deprecated]
  • Proposed: Under discussion, can be edited
  • Accepted: Decision made, becomes read-only (use addenda for updates)
  • Superseded: Replaced by newer ADR, archived
  • Deprecated: No longer applicable, archived

FDP Lifecycle

Proposed → In Progress → [Implemented | Abandoned]
  • Proposed: Design under review
  • In Progress: Actively being implemented
  • Implemented: Complete, archived
  • Abandoned: Not pursued, archived

Action Plan Lifecycle

Active → [Completed | Abandoned]
  • Active: Work in progress
  • Completed: All tasks done, archived
  • Abandoned: Work stopped, archived

Report Lifecycle

Draft → Published → [Superseded | Obsoleted]
  • Draft: Being written, can be edited
  • Published: Final, read-only (use addenda for updates)
  • Superseded: Replaced by newer report
  • Obsoleted: No longer relevant

Roadmap

The roadmap is a single markdown file tracking project goals at different time horizons:

  • Immediate (This Week) - Current focus
  • Medium Term (This Month) - Coming up next
  • Long Term (This Quarter+) - Vision and direction
  • Recently Completed - What was just finished

Initialize Roadmap

python3 ${CLAUDE_PLUGIN_ROOT}/skills/planning/scripts/init-roadmap.py

A PreCompact hook reminds you to update the roadmap before context compaction.

Protected Paths

Planning documents are configured with protection rules:

  • Archived documents (readonly tier): Cannot be edited
  • Active planning documents (remind tier): Editable with a warning suggesting skill scripts

The edit.py script provides additional validation based on document status.

Templates

Templates are in ${CLAUDE_PLUGIN_ROOT}/skills/planning/templates/:

  • adr.md - Architecture Decision Record
  • fdp.md - Feature Design Proposal
  • action-plan.md - Action Plan
  • report.md - Report
  • roadmap.md - Project Roadmap

All templates include frontmatter and an addenda section.