claude: back up custom skills, memory, and settings with symlink pattern

The ~/.claude/ directory was previously local-only — a machine wipe
would have lost the accumulated memory, custom skills, and settings.
This commit moves the durable parts into dotfiles with the same
symlink-to-home pattern used for CLAUDE.md, PENDING.md, REVIEWED.md,
and L2-BOOTSTRAP.md.

Preserved (symlinked from ~/.claude/* into here):
  skills/audit/              — thinking-folder drift scanner
  skills/symmetria/          — practice-of-return discipline
  skills/vault-update-people/ — Obsidian People-file maintainer
  skills/wake-up/            — session restoration
  skills/wrap-up/            — session state capture
  memory/                    — 55+ memory files (MEMORY.md, sessions,
                               ledgers, project state, feedback, etc.)
  settings/settings.json     — user preferences (hooks, flags, no secrets)

Deliberately NOT backed up:
  settings.local.json   — contains operational secrets (HF_TOKEN,
                           SSH password in expect scripts); by naming
                           convention, *.local.* is not synced.
                           Needs separate review and probable rotation.
  sessions/, history.jsonl, caches, telemetry — ephemeral
  plugins/, marketplace skills and agents — reinstallable

The working copies at ~/.claude/skills/* and
~/.claude/projects/-Users-davidglidden/memory are symlinks into this
directory, so every write flows here automatically. install.sh
recreates the symlinks on a fresh machine.

FOLLOW-ON (flagged, not in this commit):
  settings.local.json contains a HuggingFace token and an SSH password
  as plaintext strings inside allowed Bash command patterns. These
  should be rotated and moved to secure storage (keychain / pass /
  env file outside the settings file).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
David F Glidden
2026-04-17 13:51:04 +02:00
co-authored by Claude Opus 4.7
parent dcbba606ea
commit 119285cf43
64 changed files with 4330 additions and 0 deletions
+61
View File
@@ -0,0 +1,61 @@
# Context Efficiency Discipline
## Purpose
Practices for preserving reasoning continuity across context compactions and sessions.
This is my working method — not governance theory, just practical habits.
## Core Principle
The bottleneck isn't memory storage. It's memory loading. Write what matters before it compacts. Read what's needed, not everything available.
## Pre-Compaction Saves
When context is growing long during complex work:
1. **Write the reasoning state** to the relevant topic file — not just decisions, but tensions, rejected alternatives, and open questions
2. **Do it before compaction**, not after — once compressed, the structure of reasoning is lost
3. **Name the file by topic**: `l2-governance.md`, `chamber-reasoning.md`, `bmf-architecture.md`
Template for reasoning state:
```
## Current Position
[What we've established]
## Active Tensions
[Unresolved questions, competing approaches]
## Rejected Alternatives
[What we considered and why we set it aside]
## Next Steps
[What to pick up when resuming]
```
## Session Start Protocol
1. Read MEMORY.md for orientation (auto-loaded)
2. Read the topic-specific file for current work (manual — I should do this proactively)
3. Only use BMF recall for open-ended questions, not for focused continuation
4. Load context selectively — don't dump everything
## Context Isolation
For detail-heavy subtasks (spec review, codebase analysis, architectural comparison):
- Spawn a subagent with exactly the context it needs
- Bring back a summary to the main conversation
- Keep the main context window clean for the reasoning that needs continuity
## What Goes Where
| Content | Destination | Why |
|---------|-------------|-----|
| Decisions, project state, key paths | MEMORY.md | Orientation — loaded every session |
| Active reasoning chains, tensions, open questions | Topic files (e.g., `l2-governance.md`) | Continuity — loaded on demand |
| Bug state, connector paths, issue details | `bmf-details.md` | Reference — loaded when working on BMF |
| Session-specific status, handoff notes | Session handoff (startup hook) | Ephemeral — replaced each session |
| Architectural reviews, analysis outputs | Project repo (e.g., `docs/reviews/`) | Durable — shared with collaborators |
## When to Write
- After establishing something non-obvious during complex reasoning
- Before switching topics (the old topic's state may not survive)
- When I notice the conversation is getting long
- After any significant deliberative conclusion — especially rejected alternatives