Skill: Plan
Skill: Plan
Start a new structured plan session. Plans are stored in pal-e-docs as queryable notes. This skill fetches the plan template, carries forward Vision and Seeds from the most recent active plan, and stores the new plan as a pal-e-docs note.
Steps
- Get the plan template —
mcp__pal-e-docs__get_note(slug="template-plan"). Read it carefully — it defines required sections and the phase granularity rule. - Find the most recent active plan —
mcp__pal-e-docs__list_notes(tags="plan,active", project="<current-project-slug>"). If no results, try without project filter:mcp__pal-e-docs__list_notes(tags="plan,active"). If multiple active plans, pick the one with the most recentupdated_at. If none exist, this is the first plan — start the Vision from scratch. - Read the previous plan's Vision and Next Plan Seeds —
mcp__pal-e-docs__get_note(slug="<previous-plan-slug>"). Vision should be stable across 5+ plans (refine, don't rewrite). Next Plan Seeds are candidate work items — the user decides which to pursue. - Check for a project page —
mcp__pal-e-docs__list_notes(tags="project-page,active", project="<current-project-slug>"). Read it for current state, open bugs/TODOs, and relevant SOPs. - Explore and design — Use Read, Glob, Grep to understand the codebase. Design the plan following the template. Remember: phases must be independently deployable. If phase N can't ship without phase N+1, combine them.
- Present the plan to the user — Show the complete plan for review before creating. Wait for approval or adjustments.
- Create the plan as a pal-e-docs note —
mcp__pal-e-docs__create_note(title="Plan: <title>", slug="plan-YYYY-MM-DD-short-title", html_content="<plan as HTML>", tags="plan,active", project_slug="<project>") - Archive the previous plan (if one exists) — Read the previous plan's current tags. Replace
activewithcompleted. Do NOT drop existing tags. Example:plan,active,claude-config→plan,completed,claude-config. Then:mcp__pal-e-docs__update_note(slug="<previous-plan-slug>", tags="<updated-tags>") - Update the project page — Read the current project page first, then update only the Roadmap table to reflect the new plan while preserving all other content.
- Create/reference issues — For each agent-owned phase, create a Forgejo issue:
mcp__forgejo__create_issue(). Include issue numbers in the plan. Main-session phases don't need issues.
MCP Tools
| Step | Tool | Purpose |
|---|---|---|
| 1 | <code>mcp__pal-e-docs__get_note</code> | Read plan template |
| 2 | <code>mcp__pal-e-docs__list_notes</code> | Find active plans |
| 3 | <code>mcp__pal-e-docs__get_note</code> | Read previous plan |
| 4 | <code>mcp__pal-e-docs__list_notes</code> | Find project page |
| 7 | <code>mcp__pal-e-docs__create_note</code> | Store the plan |
| 8 | <code>mcp__pal-e-docs__update_note</code> | Archive previous plan |
| 9 | <code>mcp__pal-e-docs__update_note</code> | Update project page |
| 10 | <code>mcp__forgejo__create_issue</code> | Create issues for phases |
Carrying Forward Context
- Vision persists across plans, refined but never abandoned
- Next Plan Seeds from the previous plan become candidate Phase items
- Decisions Made accumulate — they form the project's decision log
- Each plan links to its predecessor via Previous Plan slug
- Plans are pal-e-docs notes tagged
plan,active(orplan,completed) - The plan template is a queryable note:
get_note(slug="template-plan")
Related
template-plan— the template this skill followsskill-create-issue— creates issues for individual phasesskill-implement-phase— dev agent picks up after issues are createdagent-workflow— the operating model