Skip to content

Spec Lifecycle Tools (Stream B)

Stream B contains all tools that manage the complete spec lifecycle — from the first clarification question to handing off a production-ready spec to an AI agent.

Quick Reference

ToolDescriptionAvailability
facilitateZero-knowledge entry point — describe what you want to buildIncluded
clarify_requirementsInteractively clarify requirements before creating a specIncluded
elicit_requirementsAdvanced interactive requirements elicitationIncluded
create_specCreate a full SDD spec from a descriptionIncluded
list_specsList all specs in a project, filter by statusIncluded
update_statusMove a spec through its lifecycle stagesIncluded
summarize_specGenerate a short, readable summary of a specIncluded
spec_historyView the changelog history of a specIncluded
reconcile_specUpdate a spec to match what was actually builtIncluded
branch_specCreate a spec branch for experimentationIncluded
merge_spec_branchMerge an experimental spec branch back into the main specIncluded
version_specCreate a tagged version snapshot of a specIncluded
spec_diffCompare two spec versions and show differencesIncluded
export_specExport a spec to an external format (spec-kit)Included
check_readinessCheck if a spec has enough detail to start buildingIncluded
challenge_specStress-test a spec by simulating failures and edge casesIncluded
red_teamAdversarial review — argues against the spec from first principlesIncluded
detect_contradictionsDetect contradictions and inconsistencies within or across specsIncluded
manage_scopeManage and control scope to prevent scope creepIncluded
package_handoffPackage a spec and its dependencies for agent or team handoffIncluded
decompose_specAuto-decompose a spec into independent agent tasksIncluded
analyze_spec_dependenciesAnalyze dependency graph: critical path, circular deps, wavesIncluded
generate_checklistGenerate an implementation checklist from a specIncluded
check_spec_accuracyValidate a spec against the actual codebase implementationIncluded
spec_coverageGenerate a coverage report showing specs vs. implementationIncluded
spec_usage_reportReport showing which specs agents are actively usingIncluded
semantic_searchSearch specs and project knowledge by meaningIncluded
list_templatesBrowse the built-in and custom spec template catalogIncluded
apply_templateCreate spec files from a spec templateIncluded
capture_ideaCapture a lightweight idea without creating a full specIncluded
list_backlogList all captured ideas in the project backlogIncluded
promote_ideaPromote a backlog idea to a full specIncluded
discard_ideaMark a backlog idea as discardedIncluded
session_checkpointSave a session checkpoint with current contextIncluded
planu_statusGet a compact world-snapshot of the current project stateIncluded
log_lessonLog a lesson learned from a spec or project experienceIncluded
list_lessonsList lessons learned for a projectIncluded
delete_specDelete one or more specs from a projectIncluded
delete_projectDelete all data for a projectIncluded
delete_patternDelete one or more learned patternsIncluded
delete_decisionDelete one or more decisions/ADRsIncluded
manage_trashManage the trash: list, restore, or purgeIncluded
generate_spec_dashboardRegenerate the planu/index.html dashboardIncluded

Core Workflow

facilitate

Zero-knowledge entry point — describe what you want to build and Planu figures out the next steps.

When to use: When you are not sure where to start. Just describe your idea or goal in plain language and facilitate will determine whether to clarify requirements, create a spec, or suggest the next action.

Prompt: "I want to add Stripe payments to my app"
Prompt: "Help me plan a multi-tenant permission system"

TIP

facilitate is the best starting point for new users. It removes the need to know any tool names — just describe what you want to build.


clarify_requirements

Generate targeted clarification questions before creating a spec.

When to use: Before create_spec when requirements are ambiguous, came from a quick verbal conversation, or touch multiple systems.

What it produces: A prioritized list of questions covering scope boundaries, edge cases, non-functional requirements, error handling, and external dependencies.

Prompt: "Use planu to clarify requirements for adding Stripe payments to project proj_abc123"

TIP

Running clarify_requirements first leads to significantly more complete acceptance criteria and fewer spec revisions. It's a 30-second investment that saves hours.


elicit_requirements Pro

Advanced interactive requirements elicitation — a structured interview mode that goes deeper than clarify_requirements.

When to use: For complex features, platform migrations, or integrations involving multiple stakeholders. The tool guides the conversation with follow-up questions based on your answers rather than presenting a flat list.

Prompt: "Elicit requirements for the new reporting module in project proj_abc123"

create_spec

Create a full SDD spec with auto-generated sections.

What it generates:

SectionDescription
User StoryWho, what, why in standard format
Acceptance CriteriaTestable, unambiguous criteria numbered for traceability
DoR ChecklistDefinition of Ready gates
Database Schema hintsTables, columns, relations, indexes
UI ContractsComponent contracts, data flow, state management
ADR hintsArchitecture Decision Records
PLAN.mdStep-by-step RED/GREEN/VERIFY execution plan

AI-native extras (when AI architecture is detected):

  • Latency budgets and fallback chains
  • Prompt versioning criteria
  • LLM observability requirements

Frontend extras (when performance setup is detected):

  • Core Web Vitals criteria
  • SSR hydration requirements
  • MFE boundary definitions
Prompt: "Create a spec for adding Google OAuth authentication to my project proj_abc123"

list_specs

List all specs for a project, optionally filtering by status.

When to use: To see what's in the backlog, what's in progress, or what needs review.

Prompt: "List all specs for project proj_abc123"
Prompt: "Show me specs in progress for project proj_abc123"
Prompt: "What specs are blocked in project proj_abc123?"

update_status

Transition a spec through its lifecycle with DoR/DoD validation at each step.

Status flow: draftreadyin_progressreviewdone

Each transition validates the appropriate checklist. You cannot mark a spec done without satisfying its DoD criteria.

Prompt: "Update status of spec SPEC-003 to in_progress in project proj_abc123"
Prompt: "Mark spec SPEC-007 as done in project proj_abc123"

summarize_spec

Generate a concise summary of a spec — useful for team updates, PR descriptions, or standup notes.

Prompt: "Summarize spec SPEC-005 for project proj_abc123"

Spec Lifecycle Management

spec_history Pro

View the change history of a spec — who changed what, when, and why.

When to use: When investigating why a spec changed, during audits, or when resolving spec disputes.

Prompt: "Show history for spec SPEC-003 in project proj_abc123"

reconcile_spec Pro

Reconcile a spec with implementation changes, with per-change approval and Constitution compliance check.

When to use: When the implementation diverged intentionally from the spec and you need to update the spec to match reality.

The tool presents each change for approval — you decide what becomes the new spec truth.

Prompt: "Reconcile spec SPEC-004 with the implementation changes in project proj_abc123"

branch_spec Pro

Create a spec branch for experimentation — lets you explore a major spec change without touching the main spec.

When to use: When you want to prototype an alternative approach to a spec (different architecture, different scope) before committing to it.

Prompt: "Create a branch of spec SPEC-012 called 'microservices-approach' in project proj_abc123"

merge_spec_branch Pro

Merge an experimental spec branch back into the main spec after validation.

Prompt: "Merge the 'microservices-approach' branch of spec SPEC-012 into main in project proj_abc123"

version_spec Pro

Create a tagged version snapshot of a spec — useful for milestone tracking and external handoffs.

When to use: Before a major release, before handing off to an external team, or to lock in a baseline before a large refactor.

Prompt: "Create version v1.0 snapshot of spec SPEC-008 in project proj_abc123"

spec_diff Pro

Compare two spec versions and show a structured diff of what changed.

Prompt: "Show the diff between v1.0 and v2.0 of spec SPEC-008 in project proj_abc123"

export_spec Pro

Export a spec to an external format (spec-kit) for sharing outside Planu.

Prompt: "Export spec SPEC-010 to spec-kit format for project proj_abc123"

Quality Gates

check_readiness Pro

Evaluate if a spec is ready for implementation — completeness, criteria quality, and dependency status.

Checks performed:

  • Are all acceptance criteria testable and unambiguous?
  • Are all blocking dependencies resolved?
  • Is the DoR checklist complete?
  • Does the spec pass Constitution compliance?
Prompt: "Check if spec SPEC-006 is ready for implementation in project proj_abc123"

challenge_spec Pro

Stress-test a spec by simulating failures, high traffic, edge cases, and adversarial conditions.

When to use: Before approving a spec for a critical system, or after a major spec revision.

Prompt: "Challenge spec SPEC-009 in project proj_abc123"

red_team Pro

Adversarial review — argues against the spec from first principles before approval.

When to use: For high-stakes specs (billing, auth, data migration) where you want a devil's advocate review before locking in the design.

Prompt: "Red team spec SPEC-011 in project proj_abc123"

detect_contradictions Pro

Analyze all specs in a project for semantic contradictions.

When to use: Before starting a sprint, after a major product pivot, or when specs have been updated independently by different team members.

Prompt: "Detect contradictions in the specs for project proj_abc123"

Example output: "SPEC-002 says users can delete accounts. SPEC-008 says account data is immutable for audit purposes."


Scope & Packaging

manage_scope Pro

Manage the project scope definition and backlog — add items, remove, reprioritize, or export as a structured backlog.

Prompt: "Add 'dark mode support' to the backlog for project proj_abc123 with priority high"
Prompt: "Show the current backlog for project proj_abc123"

package_handoff Pro

Generate a structured handoff package for an AI agent to implement a spec.

What it produces:

  • Implementation objective
  • Numbered acceptance criteria
  • File list with ownership
  • Constraints and guardrails
  • Ready-to-paste prompt for Claude or any AI agent

When to use: When delegating implementation to an autonomous AI agent session or a team member who wasn't involved in spec creation.

Prompt: "Package spec SPEC-009 for handoff in project proj_abc123"

decompose_spec Pro

Auto-decompose a spec into independent agent tasks with non-overlapping file ownership — ready to run in parallel.

When to use: For large specs that can be split across multiple agents or team members. The tool enforces exclusive file ownership per task to prevent conflicts.

Prompt: "Decompose spec SPEC-015 into parallel agent tasks in project proj_abc123"

analyze_spec_dependencies Pro

Analyze the spec dependency graph: find the critical path, detect circular dependencies, and compute execution waves.

Prompt: "Analyze spec dependencies for project proj_abc123"
Prompt: "What is the critical path to ship SPEC-020 in project proj_abc123?"

Quality & Coverage

generate_checklist Pro

Generate a quality checklist for a spec — covers implementation readiness, test coverage, documentation, security, and performance.

Prompt: "Generate a quality checklist for spec SPEC-002 in project proj_abc123"

check_spec_accuracy Pro

Verify the accuracy of a spec against implementation reality — checks that acceptance criteria, file references, and technical details are still correct.

When to use: After significant code changes, before a release, or when a spec hasn't been reviewed in a while.

Prompt: "Check accuracy of spec SPEC-005 for project proj_abc123"

spec_coverage Pro

Analyze spec coverage across the project — identifies areas of the codebase without specs and specs without corresponding implementation.

When to use: During sprint planning, quarterly reviews, or when onboarding to understand documentation gaps.

Prompt: "Show spec coverage for project proj_abc123"

spec_usage_report Pro

Generate a spec observability report showing which specs agents are actively using, which are stale, and which are referenced most often.

Prompt: "Show spec usage report for project proj_abc123"

Search your project knowledge (specs, patterns, decisions, learned knowledge) by meaning — not just keyword matching.

When to use: When you remember something was decided but can't find it by keyword, or when looking for specs related to a topic across a large project.

Prompt: "Search for anything related to rate limiting in project proj_abc123"
Prompt: "Find specs about user permissions in project proj_abc123"

Templates

list_templates

List all available spec templates with their descriptions and use cases.

Prompt: "List available spec templates"

apply_template Pro

Apply a spec template to quickly create specs for common patterns (CRUD, auth, integration, etc.).

When to use: When creating a spec that follows a well-known pattern and you want a head start with pre-filled sections.

Prompt: "Apply the CRUD template for a users resource in project proj_abc123"

Backlog Management

capture_idea

Capture a lightweight idea or future possibility without creating a full spec. Ideas live in the backlog until promoted or discarded.

Prompt: "Capture idea: add offline mode support to project proj_abc123"

list_backlog

List all captured ideas in the project backlog.

Prompt: "Show backlog for project proj_abc123"

promote_idea

Promote a backlog idea to a full spec, triggering the normal spec creation flow.

Prompt: "Promote idea IDEA-003 to a spec in project proj_abc123"

discard_idea

Mark a backlog idea as discarded with an optional reason.

Prompt: "Discard idea IDEA-005 in project proj_abc123 — not aligned with roadmap"

Sessions & Lessons

session_checkpoint

Save a session checkpoint with the current context, progress, and open questions — useful for resuming long sessions.

Prompt: "Save a session checkpoint for project proj_abc123"

planu_status

Get a compact world-snapshot of the current Planu project state — active spec, git state, queue, and recent activity. Designed to fit in ~150 tokens.

Prompt: "What's the current status of project proj_abc123?"

log_lesson

Log a lesson learned from a spec or project experience — stored as searchable project knowledge.

Prompt: "Log lesson: always run detect_contradictions before sprint planning in project proj_abc123"

list_lessons

List all lessons learned for a project.

Prompt: "Show lessons learned for project proj_abc123"

Cleanup

delete_spec

Delete one or more specs from a project. Deleted specs are moved to trash and can be restored.

Prompt: "Delete spec SPEC-017 from project proj_abc123"

delete_project

Delete all data for a project. This action moves all data to trash before permanent removal.

Prompt: "Delete project proj_abc123"

delete_pattern

Delete one or more learned patterns from a project.

Prompt: "Delete pattern PAT-002 from project proj_abc123"

delete_decision

Delete one or more decisions/ADRs from a project.

Prompt: "Delete decision DEC-005 from project proj_abc123"

manage_trash

Manage the trash: list trashed items, restore a specific item, or permanently purge the trash.

Prompt: "List trash for project proj_abc123"
Prompt: "Restore spec SPEC-017 from trash in project proj_abc123"
Prompt: "Purge trash for project proj_abc123"

generate_spec_dashboard

Regenerate the planu/index.html dashboard — an HTML overview of all specs, their statuses, and key metrics for the project.

Prompt: "Regenerate the spec dashboard for project proj_abc123"

See Also

Join the communityAsk questions, share feedback, and connect with other developers using Planu.
Join Discord