continuity_ledger
About
The continuity_ledger skill creates or updates a persistent ledger file that preserves state across `/clear` commands within long-running sessions. It's designed for complex, multi-day implementations where context usage approaches 70%+ to maintain full signal with fresh context. Unlike handoffs for cross-session transfer, this ledger specifically preserves state within a single session that would otherwise be lost during clearing.
Quick Install
Claude Code
Recommended/plugin add https://github.com/majiayu000/claude-skill-registrygit clone https://github.com/majiayu000/claude-skill-registry.git ~/.claude/skills/continuity_ledgerCopy and paste this command in Claude Code to install this skill
Documentation
Continuity Ledger
Maintain a ledger file that survives /clear for long-running sessions. Unlike handoffs (cross-session), ledgers preserve state within a session.
Why clear instead of compact? Each compaction is lossy compression—after several compactions, you're working with degraded context. Clearing + loading the ledger gives you fresh context with full signal.
When to Use
- Before running
/clear - Context usage approaching 70%+
- Multi-day implementations
- Complex refactors you pick up/put down
- Any session expected to hit 85%+ context
When NOT to Use
- Quick tasks (< 30 min)
- Simple bug fixes
- Single-file changes
- Already using handoffs for cross-session transfer
Process
1. Determine Ledger File
Check if a ledger already exists:
ls thoughts/ledgers/CONTINUITY_CLAUDE-*.md 2>/dev/null
- If exists: Update the existing ledger
- If not: Create new file:
thoughts/ledgers/CONTINUITY_CLAUDE-<session-name>.md- First ensure directory exists:
mkdir -p thoughts/ledgers - Use kebab-case for session name (e.g.,
auth-refactor,api-migration)
- First ensure directory exists:
2. Create/Update Ledger
Use this template structure:
# Session: <name>
Updated: <ISO timestamp>
## Goal
<Success criteria - what does "done" look like?>
## Constraints
<Tech requirements, patterns to follow, things to avoid>
## Key Decisions
<Choices made with brief rationale>
- Decision 1: Chose X over Y because...
- Decision 2: ...
## State
- Done: <completed items>
- Now: <current focus - ONE thing only>
- Next: <queued items in priority order>
## Open Questions
- UNCONFIRMED: <things needing verification after clear>
- UNCONFIRMED: <assumptions that should be validated>
## Working Set
<Active files, branch, test commands>
- Branch: `feature/xyz`
- Key files: `src/auth/`, `tests/auth/`
- Test cmd: `npm test -- --grep auth`
- Build cmd: `npm run build`
3. Update Guidelines
When to update the ledger:
- Session start: Read and refresh
- After major decisions
- Before
/clear - At natural breakpoints
- When context usage >70%
What to update:
- Move completed items from "Now" to "Done"
- Update "Now" with current focus
- Add new decisions as they're made
- Mark items as UNCONFIRMED if uncertain
4. After Clear Recovery
When resuming after /clear:
- Ledger loads automatically (SessionStart hook)
- Review UNCONFIRMED items
- Ask 1-3 targeted questions to validate assumptions
- Update ledger with clarifications
- Continue work with fresh context
Template Response
After creating/updating the ledger, respond:
Continuity ledger updated: thoughts/ledgers/CONTINUITY_CLAUDE-<name>.md
Current state:
- Done: <summary>
- Now: <current focus>
- Next: <upcoming>
Ready for /clear - ledger will reload on resume.
Comparison with Other Tools
| Tool | Scope | Fidelity |
|---|---|---|
| CLAUDE.md | Project | Always fresh, stable patterns |
| TodoWrite | Turn | Survives compaction, but understanding degrades |
| CONTINUITY_CLAUDE-*.md | Session | External file—never compressed, full fidelity |
| Handoffs | Cross-session | External file—detailed context for new session |
Example
# Session: auth-refactor
Updated: 2025-01-15T14:30:00Z
## Goal
Replace JWT auth with session-based auth. Done when all tests pass and no JWT imports remain.
## Constraints
- Must maintain backward compat for 2 weeks (migration period)
- Use existing Redis for session storage
- No new dependencies
## Key Decisions
- Session tokens: UUID v4 (simpler than signed tokens for our use case)
- Storage: Redis with 24h TTL (matches current JWT expiry)
- Migration: Dual-auth period, feature flag controlled
## State
- Done: Session model, Redis integration, login endpoint
- Now: Logout endpoint and session invalidation
- Next: Middleware swap, remove JWT, update tests
## Open Questions
- UNCONFIRMED: Does rate limiter need session awareness?
## Working Set
- Branch: `feature/session-auth`
- Key files: `src/auth/session.ts`, `src/middleware/auth.ts`
- Test cmd: `npm test -- --grep session`
Additional Notes
- Keep it concise - Brevity matters for context
- One "Now" item - Forces focus, prevents sprawl
- UNCONFIRMED prefix - Signals what to verify after clear
- Update frequently - Stale ledgers lose value quickly
- Clear > compact - Fresh context beats degraded context
GitHub Repository
Related Skills
content-collections
MetaThis skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.
creating-opencode-plugins
MetaThis skill provides the structure and API specifications for creating OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It offers implementation patterns for JavaScript/TypeScript modules that intercept and extend the AI assistant's lifecycle. Use it when you need to build event-driven plugins for monitoring, custom handling, or extending OpenCode's capabilities.
langchain
MetaLangChain is a framework for building LLM applications using agents, chains, and RAG pipelines. It supports multiple LLM providers, offers 500+ integrations, and includes features like tool calling and memory management. Use it for rapid prototyping and deploying production systems like chatbots, autonomous agents, and question-answering services.
Algorithmic Art Generation
MetaThis skill helps developers create algorithmic art using p5.js, focusing on generative art, computational aesthetics, and interactive visualizations. It automatically activates for topics like "generative art" or "p5.js visualization" and guides you through creating unique algorithms with features like seeded randomness, flow fields, and particle systems. Use it when you need to build reproducible, code-driven artistic patterns.
