From vault
Load vault context for role sessions (developer, architect, researcher, etc.). Replaces 10+ sequential tool calls with 2 parallel batches. Use at session start or after context recovery. Not for Nikola (/dashboard) or Cowork (/cowork). Includes agent team preparation for orchestration-first workflows and context packet detection for self-contained session handoff.
How this skill is triggered — by the user, by Claude, or both
Slash command
/vault:vault-bootThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Loads vault context for role sessions (developer, architect, researcher, e2e-tester,
Loads vault context for role sessions (developer, architect, researcher, e2e-tester, doc-specialist, housekeeper). Replaces 10+ sequential tool calls with 2 parallel batches. Supports context packet-driven sessions for orchestration-first workflows.
/role <name> when vault context is needed/dashboard (Jarvis-powered, 7 modes including Orchestrate)/cowork (delegation-focused, .memory-based)/jarvis skill)| Tool | Actor | Use |
|---|---|---|
/vault (this) | Role sessions | Generic vault context loader |
/dashboard | Nikola (Claude Code) | Interactive command center, orchestration |
/cowork | Cowork (Claude Desktop) | Delegation-focused briefing, decisions |
00_Dashboard/dashboard.html | Human (browser) | Visual Kanban, zero AI cost |
Before loading generic vault context, check if this session has a context packet:
.worktrees/{name}/, this is a worktree session.worktrees/s86-p1-catalog/ → s86-p1)coordination/context-packets/{id}.md (case-insensitive match)coordination/context-packets/ for any packet with worktree_path matching current worktreeIf no context packet found: Continue with Steps 1-4 (generic vault boot).
Fire ALL of these in one parallel batch (Obsidian MCP or direct reads):
| # | File | Purpose |
|---|---|---|
| 1 | TASKS.md | Active/waiting/someday tasks |
| 2 | PROJECT_STATE.md | Goal status, active projects, KRs, constraints |
| 3 | AGENTS.md | Vault conventions, PARA structure, edit rules |
| 4 | coordination/harness-control.md | Thread control, active threads |
| 5 | coordination/improvement-queue.md | Pending improvements |
| 6 | coordination/policies/policies.index.yaml | Active policy catalog |
6 parallel calls in a single message — replaces 6 sequential round-trips.
After Step 1, fire these in parallel:
| # | Call | Purpose |
|---|---|---|
| 7 | List coordination/threads/ | Active thread specs |
| 8 | List coordination/agent-state/ | Agent state files |
| 9 | List 00_Inbox/ | Inbox item count |
| 10 | List coordination/context-packets/ | Active context packets (for team awareness) |
If drone is likely running (Claude Code session), check health:
pnpm health
Skip in environments where drone is unavailable (Cowork, standalone).
After loading vault context, prepare for orchestration-first workflows:
4a. Check for active worktrees:
ls -d .worktrees/*/ 2>/dev/null
If worktrees exist, gather their status:
| Worktree | Branch | Status | Relevance |
|---|---|---|---|
| [name] | [branch] | [clean/dirty] | [related to current role?] |
4b. Check for pending context packets:
Scan coordination/context-packets/*.md frontmatter for status: pending or status: active.
List packets relevant to the current role (matching role: field in packet frontmatter).
4c. Check for team specs:
Read coordination/dashboard-sessions.json for active team compositions.
If a team is active and this role is part of it, note the team context.
4d. Render team awareness section:
### Agent Team Status
- **Active worktrees:** [N] ([names])
- **My context packets:** [list of packets assigned to this role]
- **Team:** [team-name or "none"]
- **Dispatch queue:** [N] pending items
This section gives every role session awareness of the broader orchestration context without requiring Nikola-level orchestration access.
## Vault Status — {date}
**Goal Q1 2026:** {goal_description}
| KR | Status | Project |
|----|--------|---------|
| {kr} | {status} | {project_link} |
**Active Tasks:** {bullet list from TASKS.md}
**Blocked:** {list with reasons}
**Inbox:** {N} items
**Threads:** {N} active
**Context Packets:** {N} active, {N} pending
**Services:** {drone: up/down, rc_watcher: up/down, plugin: up/down}
When a context packet is detected in Step 0, render this instead of the generic briefing:
## Context Packet Session — {work_item_id}
**Role:** {role} | **Autonomy:** {autonomy_level} | **Model:** {model}
**Worktree:** {worktree_path} | **Branch:** {branch}
**Objective:** {objective from packet}
**Expires:** {expires timestamp}
### Task Progress
| # | Task | Status | Commit |
|---|------|--------|--------|
| {N} | {task} | {status} | {commit or "-"} |
### Relevant Files
{list from packet}
### Policies
{list from packet}
### How to Start
1. Verify worktree: `git status`
2. Begin next pending task
3. After each task: commit + update this packet's task table
Key difference: This briefing is self-contained — no vault-wide context loading needed. The executor can start working immediately from the packet alone.
When a session completes work (all tasks done or session ending), produce a self-contained context packet update for handoff:
6a. On task completion within a context packet session:
Update the packet's task table via direct file edit:
status: donecommit: {hash} with the commit that completed the taskstatus: done6b. On session end (any session with uncommitted progress):
Generate a handoff summary for the next session:
### Session Handoff — {date} {time}
**Session:** {session_id or "ad-hoc"}
**Role:** {role}
**Branch:** {branch}
**Commits this session:** {list of commit hashes + messages}
**Work completed:** {summary of what was done}
**Work remaining:** {summary of what's left}
**Blockers:** {any blockers encountered}
**Files modified:** {list of files changed}
This handoff is written to:
## Session Log sectionEnd in user's language (German for Christian):
Kontext geladen. Womit moechtest du weitermachen?
Surface P0/P1 alerts prominently before the ready prompt if they exist.
For context packet sessions, use a targeted ready prompt:
Kontext-Paket geladen ({work_item_id}). Naechste Aufgabe: {next_pending_task}
The vault-boot skill supports three data sources with automatic fallback:
obsidian_get_file_contents when Obsidian is running — provides live view of current vault statevault_read, vault_list via vault-mcp server with dual-transport support:
pnpm mcp:bg to start the servercoordination/vault-mcp/src/stdio.ts; automatically configured in claude_desktop_config.jsonNote for Cowork sessions: Claude Desktop uses stdio transport — no HTTP server startup needed. The stdio connection is independent and automatically configured.
Server health verification: Use server_health MCP tool to verify vault-mcp server availability before attempting vault operations. This is particularly useful in Cowork sessions running in Claude Desktop (Hyper-V VM) where filesystem access is unavailable.
obsidian_get_file_contents calls (requires Obsidian running)vault_read calls via vault-mcp server (port 3838, filesystem-based, no Obsidian needed)2 tool-call turns (parallel batches) + 1 rendering turn. Target: < 15 seconds. Context packet sessions: 1 tool-call turn + 1 rendering turn. Target: < 5 seconds.
pnpm <script> commands (VOP-001), see package.jsoncoordination/context-packets/{id}.md — self-contained work item context.worktrees/{name}/ — isolated execution environmentsnpx claudepluginhub teslasoft-de/claude-skills-marketplace --plugin vaultGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.
Dispatches multiple subagents concurrently for independent tasks without shared state. Use when facing 2+ unrelated failures or subsystems that can be investigated in parallel.