Add claude-vault-capture plugin#5
Open
alukach wants to merge 1 commit into
Open
Conversation
Repackage claude-vault-capture as a Claude Code marketplace plugin under skills/claude-vault-capture/. It auto-captures Claude Code sessions into an Obsidian vault on SessionEnd (scrub secrets → summarize with Sonnet → write a curated note to Inbox/auto/) and ships the /vault-save skill for on-demand exports to claude-docs/. Adapted from https://github.com/lhoupert/claude-vault-capture (MIT, © Loïc Houpert). Changes made for marketplace distribution: - plugin.json with userConfig (vault path + sensitive API/OAuth tokens) replaces install.sh's interactive prompt and capture.env. - hooks/hooks.json registers the SessionEnd hook via ${CLAUDE_PLUGIN_ROOT}, replacing the manual settings.json edit. - vault-save becomes skills/vault-save/SKILL.md; its auto-trigger lives in the skill description, so the old global CLAUDE.md injection is gone. - curate.py carries PEP 723 inline deps and the hook launches it with `uv run` (subscription mode adds claude-agent-sdk via `uv run --with`), so there is no separate `uv sync` step. A pre-built .venv is still preferred when present, so standalone/dev use and the existing test suite are unchanged. - Runtime state (dedup index, logs) moves to ${CLAUDE_PLUGIN_DATA} via CAPTURE_STATE_DIR / SCRUB_FAILURES_PATH, surviving plugin updates. - LICENSE and a provenance note are preserved; the pytest suite travels along. Register the plugin in marketplace.json and list it in the README. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds claude-vault-capture to the marketplace under
skills/claude-vault-capture/— a Claude Code plugin that automatically turns Claude Code sessions into curated Obsidian notes. OnSessionEnda backgrounded worker scrubs secrets, summarizes the session with Sonnet, and writes a single durable artifact (decision / runbook / gotcha / spec, or nothing if low-signal) to<vault>/Inbox/auto/. Also ships the/vault-saveskill for on-demand exports to<vault>/claude-docs/.Why a plugin (vs. the upstream
install.sh)Upstream installs via
git clone+uv sync+./install.sh --vault …(plus a multi-step ritual for subscription/keychain auth). Repackaged as a marketplace plugin, install becomes:The plugin system absorbs nearly all of
install.sh:install.shdid~/.claude/settings.jsonto register the hookhooks/hooks.jsonvia${CLAUDE_PLUGIN_ROOT}~/.claude/skills/skills/vault-save/SKILL.md(auto-discovered)~/.claude/CLAUDE.mddescriptioncapture.envuserConfig(vault_dir), prompted at enableuserConfigsensitivefields → OS keychaineval/state/runtime files in-repo${CLAUDE_PLUGIN_DATA}(survives updates)uv syncto build.venvuv run+ PEP 723 inline deps incurate.pyNet new prerequisite: only
uvonPATH(plugins can't install system tools). The hook still prefers a pre-built.venvwhen present, so upstream/standalone use and the existing test suite are unchanged.Attribution
Adapted from lhoupert/claude-vault-capture, MIT-licensed, © Loïc Houpert. The original
LICENSEand a provenance note are kept in the plugin folder, and the import commit is authored by Loïc Houpert (committer: @alukach) to preserve credit in this repo's history.Notes for reviewers
SessionEndhook). Flagging in case that affects how you want to scope/label it.skills/claude-vault-capture/tests/, no network/API key needed):cd skills/claude-vault-capture && uv sync && uv run pytest. There's no CI in this repo to run it automatically, and I was unable to execute it in my sandbox — please run it locally before merge. I validated structure, JSON, bash syntax, and the plugin manifest statically.🤖 Generated with Claude Code