Problem
When working in a different project directory (e.g., ~/my-project), there is no way to capture an insight to the vault without switching to the vault directory first. The current workflow requires:
cd ~/kb
claude
/remember "description"
This breaks the flow of work. Insights emerge while working on other projects — that's exactly when capture friction should be lowest.
Current Architecture
The infrastructure for cross-directory support partially exists:
| Layer |
CLAUDE_PROJECT_DIR support |
Cross-directory capable |
Hook scripts (read_config.sh, auto-commit.sh) |
Yes |
Yes |
Generated skills (/remember, /reduce, etc.) |
No — all relative paths |
No |
Plugin-level skills (/arscontexta:health, etc.) |
No — all relative paths |
No |
Hook scripts already use ${CLAUDE_PROJECT_DIR:-$(pwd)}, but skills use bare relative paths like ops/methodology/, assuming pwd is the vault root.
Proposed Solution
A vault registry + path resolution layer.
-
Vault registry — a global file (e.g., ~/.arscontexta/vaults.json) that maps vault names to paths:
{
"default": "/Users/hw/kb",
"work": "/Users/hw/work-vault"
}
/arscontexta:setup registers the vault automatically on creation.
-
Path resolution in skills — a "Step 0" block that resolves the vault root before any file I/O:
1. If pwd contains .arscontexta marker → use pwd (current behavior)
2. Else if CLAUDE_PROJECT_DIR contains marker → use CLAUDE_PROJECT_DIR
3. Else if ~/.arscontexta/vaults.json has a "default" → use that path
4. Else → error: no vault found
-
Cross-directory capture skill — either extend /remember or create a plugin-level arscontexta:capture that:
- Resolves vault from registry
- Accepts a description or topic keyword
- Writes to the vault's
ops/methodology/ or inbox/
- Runs auto-commit on the vault
Use Case
~/my-project $ claude
> (working on code...)
> /remember "structured output prevents parsing errors in inter-agent data transfer"
→ resolves default vault at ~/kb
→ creates ops/methodology/note.md in ~/kb
→ auto-commits in ~/kb
> (continues working in ~/my-project)
Why This Matters
The README says: "Most AI tools start every session blank." The same applies to capture — if insights can only be recorded when you're already inside the vault, many insights from actual project work are lost. The lowest-friction capture point is the moment of discovery, regardless of which directory you're in.
Scope
This is specifically about capture (writing to the vault from outside). Full pipeline operations (/extract, /connect, /ralph) are complex enough that running them from the vault directory makes sense. But /remember and quick inbox capture should work from anywhere.
Problem
When working in a different project directory (e.g.,
~/my-project), there is no way to capture an insight to the vault without switching to the vault directory first. The current workflow requires:This breaks the flow of work. Insights emerge while working on other projects — that's exactly when capture friction should be lowest.
Current Architecture
The infrastructure for cross-directory support partially exists:
CLAUDE_PROJECT_DIRsupportread_config.sh,auto-commit.sh)/remember,/reduce, etc.)/arscontexta:health, etc.)Hook scripts already use
${CLAUDE_PROJECT_DIR:-$(pwd)}, but skills use bare relative paths likeops/methodology/, assumingpwdis the vault root.Proposed Solution
A vault registry + path resolution layer.
Vault registry — a global file (e.g.,
~/.arscontexta/vaults.json) that maps vault names to paths:{ "default": "/Users/hw/kb", "work": "/Users/hw/work-vault" }/arscontexta:setupregisters the vault automatically on creation.Path resolution in skills — a "Step 0" block that resolves the vault root before any file I/O:
Cross-directory capture skill — either extend
/rememberor create a plugin-levelarscontexta:capturethat:ops/methodology/orinbox/Use Case
Why This Matters
The README says: "Most AI tools start every session blank." The same applies to capture — if insights can only be recorded when you're already inside the vault, many insights from actual project work are lost. The lowest-friction capture point is the moment of discovery, regardless of which directory you're in.
Scope
This is specifically about capture (writing to the vault from outside). Full pipeline operations (
/extract,/connect,/ralph) are complex enough that running them from the vault directory makes sense. But/rememberand quick inbox capture should work from anywhere.