Agent skill

manage-lifecycle

Manage plan lifecycle with status.toon and phase operations

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/manage-lifecycle

SKILL.md

Manage Lifecycle Skill

Manage plan lifecycle with status.toon and phase operations. Replaces plan.md and absorbs phase-management skill functionality.

What This Skill Provides

  • Status.toon CRUD operations
  • Phase management (transitions, progress)
  • Plan discovery (list all plans)
  • Phase routing (skill mapping)
  • Delete operations (via manage-files)
  • Archive operations

When to Activate This Skill

Activate this skill when:

  • Creating or updating plan status
  • Transitioning between phases
  • Discovering all plans
  • Deleting plans (to replace or abandon)
  • Archiving completed plans

Storage Location

Status is stored in the plan directory:

.plan/plans/{plan_id}/status.toon

Archived plans:

.plan/archived-plans/{yyyy-mm-dd}-{plan-name}/

File Format

TOON format with phases table:

toon
title: Implement JWT Authentication
current_phase: 4-execute

phases[5]{name,status}:
1-init,done
2-outline,done
3-plan,done
4-execute,in_progress
5-finalize,pending

created: 2025-12-02T10:00:00Z
updated: 2025-12-02T14:30:00Z

Status Fields

Field Description
title Plan title
current_phase Current active phase
phases Table of phase names and statuses
created ISO timestamp when created
updated ISO timestamp of last update

Note: Domain information is stored in config.toon (as a domains array), not in status.toon.

Phase Statuses

Status Meaning
pending Not started
in_progress Currently active
done Completed

Status Operations

Script: pm-workflow:manage-lifecycle:manage-lifecycle

read

Read plan status.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle read \
  --plan-id {plan_id}

Output (TOON):

toon
status: success
plan_id: my-feature

plan:
  title: Implement JWT Authentication
  current_phase: 4-execute
  phases[5]{name,status}:
  1-init,done
  2-outline,done
  3-plan,done
  4-execute,in_progress
  5-finalize,pending

create

Initialize status.toon for a new plan.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle create \
  --plan-id {plan_id} \
  --title "Feature Title" \
  --phases 1-init,2-outline,3-plan,4-execute,5-finalize \
  [--force]

Parameters:

  • --plan-id (required): Plan identifier (kebab-case)
  • --title (required): Plan title
  • --phases (required): Comma-separated phase names
  • --force: Overwrite existing status.toon

Output (TOON):

toon
status: success
plan_id: my-feature
file: status.toon
created: true

plan:
  title: Feature Title
  current_phase: 1-init

set-phase

Set the current phase.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle set-phase \
  --plan-id {plan_id} \
  --phase 4-execute

Output (TOON):

toon
status: success
plan_id: my-feature
current_phase: 4-execute
previous_phase: 3-plan

update-phase

Update a specific phase status.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle update-phase \
  --plan-id {plan_id} \
  --phase 1-init \
  --status done

Output (TOON):

toon
status: success
plan_id: my-feature
phase: 1-init
phase_status: done

progress

Calculate plan progress.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle progress \
  --plan-id {plan_id}

Output (TOON):

toon
status: success
plan_id: my-feature

progress:
  total_phases: 5
  completed_phases: 3
  current_phase: 4-execute
  percent: 60

Phase Management Operations

list

Discover all plans.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle list \
  [--filter 1-init,4-execute]

Parameters:

  • --filter: Filter by phases (comma-separated)

Output (TOON):

toon
status: success
total: 2
plans:
  - id: my-feature
    current_phase: 4-execute
    status: in_progress
  - id: bug-fix-123
    current_phase: 1-init
    status: in_progress

transition

Transition to next phase.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle transition \
  --plan-id {plan_id} \
  --completed 1-init

Output (TOON):

toon
status: success
plan_id: my-feature
completed_phase: 1-init
next_phase: 2-outline

archive

Archive a completed plan.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle archive \
  --plan-id {plan_id} \
  [--dry-run]

Output (TOON):

toon
status: success
plan_id: my-feature
archived_to: .plan/archived-plans/2025-12-02-my-feature/

Delete Operations

Delete operations use pm-workflow:manage-files:manage-files (not manage-lifecycle) because deletion involves removing plan directories, not just status management.

delete-plan

Delete an entire plan directory. Use when:

  • Replacing an existing plan with a fresh one
  • Abandoning a plan that's no longer needed
  • Cleaning up failed or corrupted plans
bash
python3 .plan/execute-script.py pm-workflow:manage-files:manage-files delete-plan \
  --plan-id {plan_id}

Parameters:

  • --plan-id (required): Plan identifier to delete

Output (TOON):

toon
status: success
plan_id: my-feature
action: deleted
path: .plan/plans/my-feature
files_removed: 7

Error Output:

toon
status: error
plan_id: my-feature
error: plan_not_found
message: Plan directory does not exist

Safety Notes:

  • Only deletes directories under .plan/plans/
  • Validates plan_id format (kebab-case)
  • Does NOT prompt for confirmation (caller handles user confirmation)
  • Cannot be undone - ensure user confirms before calling

Delete vs Archive

Operation Use Case Recoverable
delete-plan Replace, abandon, cleanup No
archive Completed plans for reference Yes (moved to archived-plans)

route

Get skill for a phase.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle route \
  --phase 4-execute

Parameters:

  • --phase (required): Phase name (e.g., 1-init, 2-outline, 3-plan, 4-execute, 5-finalize)

Output (TOON):

toon
status: success
phase: 4-execute
skill: plan-execute
description: Execute implementation tasks

get-routing-context

Get combined routing context (phase, skill, and progress) in one call.

bash
python3 .plan/execute-script.py pm-workflow:manage-lifecycle:manage-lifecycle get-routing-context \
  --plan-id {plan_id}

Parameters:

  • --plan-id (required): Plan identifier

Output (TOON):

toon
status: success
plan_id: my-feature
title: Implement JWT Authentication
current_phase: 4-execute
skill: plan-execute
skill_description: Execute implementation tasks
total_phases: 5
completed_phases: 3
phases:
  - name: 1-init
    status: done
  - name: 2-outline
    status: done
  - name: 3-plan
    status: done
  - name: 4-execute
    status: in_progress
  - name: 5-finalize
    status: pending

Scripts

Script: pm-workflow:manage-lifecycle:manage-lifecycle

Command Parameters Description
read --plan-id Read plan status
create --plan-id --title --phases [--force] Initialize status.toon
set-phase --plan-id --phase Set current phase
update-phase --plan-id --phase --status Update phase status
progress --plan-id Calculate plan progress
list [--filter] Discover all plans
transition --plan-id --completed Transition to next phase
archive --plan-id [--dry-run] Archive completed plan
route --phase Get skill for phase
get-routing-context --plan-id Get combined routing context

Script: pm-workflow:manage-files:manage-files (delete operations)

Command Parameters Description
delete-plan --plan-id Delete entire plan directory

Phase Routing

The route command returns skill names for each phase (from script PHASE_ROUTING):

Phase Skill Description
init plan-init Initialize plan structure
outline solution-outline Create solution outline with deliverables
plan task-plan Create tasks from deliverables
execute plan-execute Execute implementation tasks
finalize plan-finalize Finalize with commit/PR

Note: These are skill names, not full bundle:skill notation.

Note: Domain information is managed in config.toon (via domains array), not in status.toon. Domains are detected during the outline phase.


Error Handling

toon
status: error
plan_id: my-feature
error: invalid_transition
message: Cannot transition from 'init' to 'execute' - must complete phases in order

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results