Captures Claude Code plans and execution summaries to Obsidian
npx claudepluginhub kriswill/capture-planCaptures Claude Code plans and execution summaries to an Obsidian vault with daily journal integration
Warning: This project is under heavy development churn. Interfaces and features are evolving rapidly and may be unstable from version to version.
A Claude Code plugin that captures plans and execution summaries to an Obsidian vault.
The plugin captures three types of Claude Code sessions:
source: superpowers metadata. Specs and plans get separate sibling notes.capture_skills are captured as standalone sessions; skills used during plan-mode or superpowers sessions are always captured as sibling notes.Notes are organized as (default calendar scheme):
Claude/Plans/
└── <yyyy>/
└── <mm-Month>/
└── <dd-Day>/
└── <counter>-<slug>/
├── plan.md
├── summary.md
├── tools-stats.md
├── tools-log.md
└── agents/ (if subagents used)
Bun runtime (v1.0+)
bun --version
Obsidian CLI — the obsidian command must be available on PATH
obsidian --help # should print "Obsidian CLI" and a list of commands
An Obsidian vault — verify yours is visible to the CLI:
obsidian vaults # should list your vault names
Add the marketplace:
claude plugin marketplace add kriswill/capture-plan
Install the plugin:
claude plugin install capture-plan@kriswill
Add both the marketplace and the enabled flag to ~/.claude/settings.json:
{
"extraKnownMarketplaces": {
"kriswill": {
"source": {
"source": "github",
"repo": "kriswill/capture-plan"
}
}
},
"enabledPlugins": {
"capture-plan@kriswill": true
}
}
Restart Claude Code, or run /reload-plugins inside an active session.
After installation, confirm the hooks are active:
/reload-plugins output should include the capture-plan hooks in its count.Claude/Plans/ in your vault.Debug logs with ISO timestamps are written to two files:
/tmp/capture-plan-debug.log — ExitPlanMode hook: plan extraction, Haiku summarization, vault note creation, journal appends/tmp/capture-done-debug.log — Stop hook: transcript parsing, session type detection, summary/tools-stats/tools-log generationLogs accumulate across sessions. To start fresh:
rm /tmp/capture-plan-debug.log /tmp/capture-done-debug.log
The plugin ships with a default config. Override settings at any of these locations (highest priority wins):
$PROJECT/.claude/capture-plan.toml~/.config/capture-plan/config.tomlcapture-plan.toml (shipped with plugin)# Obsidian vault name (run `obsidian vaults` to list available vaults)
vault = "Personal"
# Plan notes configuration
[plan]
path = "Claude/Plans"
date_scheme = "calendar" # calendar | compact | monthly | flat
# Journal entries configuration
[journal]
path = "Journal"
date_scheme = "calendar" # calendar | compact | monthly | flat
# Context window cap in tokens (auto-detected, override if needed)
# Standard: 200000, Max/Enterprise: 1000000
# context_cap = 1000000
# Superpowers integration — auto-detected from transcript at session end.
# Override patterns if superpowers writes to non-default directories.
# superpowers_spec_pattern = "/superpowers/specs/"
# superpowers_plan_pattern = "/superpowers/plans/"
# Skills to capture as standalone sessions (whitelist).
# Only skill-only sessions matching this list are captured.
# Skills during plan-mode/superpowers sessions are always captured.
# capture_skills = ["simplify"]
The date_scheme setting controls how date segments are formatted in vault paths. Four schemes are available: