Optional layers.
The last build phase. Three independent opt-ins that connect your vault to the outside world: automation hooks, off-machine backup, and cross-environment paths. Pick any subset, or skip entirely. The core vault works without any of them.
Claude hooks
Claude Code onlyThree shell scripts registered in ~/.claude/settings.json: session-start (prints compass on session open), load-memory (injects the last 30 lines of memory.md before every prompt), save-session (logs a one-line session summary to today's daily note via local Ollama).
Why
Automates the context-loading you would otherwise type at the start of every session. The LLM always opens with your current priority filter visible.
Requires
~/.claude/ directory exists (Claude Code installed)
Lock file
00-agentic-OS/optional-claude-hooks.lock.md
GitHub backup
Any harnessCreates a private GitHub repo for the vault and pushes the initial baseline. No CI/CD, no public access -- pure backup and cross-device sync.
Why
Vaults accumulate years of identity context. A private repo is the simplest off-machine backup that also lets you pull to a second computer.
Requires
GitHub CLI (gh) authenticated
Lock file
00-agentic-OS/optional-github.lock.md
WSL paths
Windows + WSLFills the platforms.wsl block in paths.json with your Linux-side vault root, workspace root, and shell. Skills that detect the platform via uname will use this block automatically.
Why
If you use the vault from both Windows and WSL (e.g., running Node scripts in bash), the two environments need separate absolute paths. Without this block, skills default to the Windows path and break in Linux.
Requires
WSL installed and accessible
Lock file
00-agentic-OS/optional-wsl.lock.md
Detection first. Lock file before mutation.
The build interview probes your environment before asking anything. It only offers layers your system can actually support.
detect: ~/.claude/ exists? -> offer Claude hooks gh auth status? -> offer GitHub backup WSL_DISTRO_NAME set? -> offer WSL paths interview: "Which layers to enable? (all / none / pick)" for each chosen layer: compile proposed changes -> write .lock.md show diff -> confirm promote lock -> apply
Order when picking all three: WSL paths first (local only), then Claude hooks (mutates ~/.claude/), then GitHub backup (external state). If one fails, the others complete independently.
- GitHub backup defaults to private. You must explicitly request a public repo.
- Git init is skipped if a .git/ directory already exists in the vault.
- A .gitignore check runs before any push -- you review what will be committed.
- Claude hooks chain with existing hooks by default rather than replacing them.
- All three layers write a lock file for your review before any mutation applies.
# after phases 1-4 are complete: /ideaverse-os build --phase=optional-layers # or run all five phases at once: /ideaverse-os build