save-plan
Save a Claude Code plan (from ExitPlanMode, design discussion, or multi-step task) to persistent storage.
Skill by danielrosehill
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/danielrosehill-save-plan
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, productivity, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/save-plan
What's inside
- Skill name
save-plan- Description
- Save a Claude Code plan (from ExitPlanMode, design discussion, or multi-step task) to persistent storage. ONLY invoke when the user explicitly asks to save/stash/store a plan (e.g. "save this plan", "stash the plan", "store the plan in the planning repo"). Do NOT auto-invoke after planning. Routes to the active project's `planning/` folder when one exists, else to the user's configured central planning repo.
- License
- MIT
- Instructions
- 70 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Save Plan
Persist a written plan so it survives the session.
## Trigger discipline
**ONLY** run when the user explicitly asks. Phrases that trigger:
- "save this plan", "save the plan"
- "stash the plan", "store the plan"
- "put this in the planning repo", "park this plan"
Do **not** invoke automatically after writing or exiting a plan. Plans live in conversation context by default; persistence is opt-in.
## Routing
1. Check the current working directory's repo (walk up to the git root if needed).
2. If a `planning/` folder exists in that repo → save there.
3. Otherwise → save to the user's configured **central planning repo** (see config below).
If the user explicitly says "save to the planning repo" or "central planning repo", skip step 2 and go straight to the central repo.
## Configuration
Read central-repo path from `rudder` plugin config per `rudder:plugin-data-storage`:
1. Resolve config dir in this priority: `$CLAUDE_USER_DATA` → `$XDG_DATA_HOME/claude-plugins` → `~/.local/share/claude-plugins`.
2. Read `<config-dir>/claude-rudder/config.json`, key `planning.central_repo` (an absolute path or `~`-prefixed path).
3. If unset, prompt the user once for the path, write it back to the config, then proceed.
Example config:
```json
{ "planning": { "central_repo": "~/repos/Planning-Files" } }
```
## File naming
`DD-MM-YY--<slug>.md`
- `DD-MM-YY` — today's date, hyphens not slashes.
- `<slug>` — short kebab-case description of the plan subject.
- Example: `19-04-26--refactor-snapcast-skills.md`
## File body
```markdown
---
title: <one-line plan title>
created: DD-MM-YY
status: pending
source: <repo or context the plan came from, or "ad-hoc">
---
# <Title>
<full plan content — preserve structure, code blocks, decision points>
```
## After writing
- **Central repo**: `git add`, commit (`Add plan: <title>`), `git push` immediately so the plan is durable across machines.
- **In-repo `planning/`**: do NOT auto-commit. The plan is part of the project's working tree and the user will commit it with related work.
## Marking a plan done
When the user says a plan is complete:
- Move file from `pending/` → `done/` (central repo) or leave in place (in-repo).
- Update frontmatter `status: done`.
- Commit and push if in the central repo.From danielrosehill/Claude-Rudder, MIT.
More from danielrosehill/Claude-Rudder
- 0.470score
context-gate
danielrosehill
One-shot context-checkpoint workflow — when the current session is getting cluttered, write a structured handover plan capturing what's done and what's…
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
plugin-data-storage
danielrosehill
Canonical reference for where Claude Code plugins should persist user data.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
context-workflow-reference
danielrosehill
Reference and worked example for the CONTEXT.md / CLAUDE.md two-file workflow.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
scaffold-planning
danielrosehill
Create a lightweight `planning/` folder in the current repo with leftover-tasks.md, blockers.md, session-logs/, and handovers/.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
install-from-github
danielrosehill
Use when the user points at a GitHub repo (an agent skill, MCP server, or "Claude plugin"-ish project) and wants to install or register it.
SkillAFreshness: A★ 2Claude Code +9 - 0.467score
setup-agent-logs
danielrosehill
First-run setup for the session log archive.
SkillAFreshness: A★ 2Claude Code +9 - 0.467score
extract-skill
danielrosehill
Synthesize a new SKILL.md from the procedure that was just followed in this session, so the next session can replay it without being briefed from scratch.
SkillAFreshness: A★ 2Claude Code +9 - 0.348score
log-blocker
danielrosehill
Append a known blocker to `<repo>/planning/blockers.md` (auto-scaffolds if missing).
SkillDFreshness: D★ 2Claude Code +9 - 0.348score
fork-new-direction
danielrosehill
Create a new repo that starts from the current repo's state but takes a new direction — copy the code, seed CLAUDE.md with the revised approach, and push.
SkillDFreshness: D★ 2Claude Code +9 - 0.348score
capture-leftover
danielrosehill
Capture a follow-up task that surfaced mid-flow but shouldn't distract from the current focus.
SkillDFreshness: D★ 2Claude Code +9 - 0.348score
mirror-to-private
danielrosehill
Create a private GitHub repo that mirrors the current public repo.
SkillDFreshness: D★ 2Claude Code +9 - 0.348score
repo-from-thread
danielrosehill
Create a new GitHub repo seeded with context from the current conversation.
SkillDFreshness: D★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 15, 2026 (14 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/danielrosehill/Claude-Rudder
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from danielrosehill
- 0.470score
plugin-data-storage
danielrosehill
Canonical reference for where Claude Code plugins should persist user data.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
scaffold-planning
danielrosehill
Create a lightweight `planning/` folder in the current repo with leftover-tasks.md, blockers.md, session-logs/, and handovers/.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
onboard
danielrosehill
First-run onboarding for the adb-ops plugin.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
context-gate
danielrosehill
One-shot context-checkpoint workflow — when the current session is getting cluttered, write a structured handover plan capturing what's done and what's…
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
context-workflow-reference
danielrosehill
Reference and worked example for the CONTEXT.md / CLAUDE.md two-file workflow.
SkillAFreshness: A★ 2Claude Code +9 - 0.470score
install-from-github
danielrosehill
Use when the user points at a GitHub repo (an agent skill, MCP server, or "Claude plugin"-ish project) and wants to install or register it.
SkillAFreshness: A★ 2Claude Code +9
Cite this page
save-plan skill. Agent Mart. https://agentmart.dev/skills/danielrosehill-save-plan (last updated 2026-10-24)