Install a shared Claude Code baseline globally, then create a thin per-project .claude/ overlay with project-local memory.
claudecode-starterkit is a bootstrap package for Claude Code.
It installs in two layers:
- Global baseline — installed once into
~/.claude/ - Project overlay — installed into each repo you work on
Run once per machine:
npx claudecode-starterkitThis syncs into ~/.claude/:
| Directory | What goes there |
|---|---|
~/.claude/commands/ |
Shared slash commands (/init, /plan, /ship, /handoff, /resume, /pr, /review, /status, /research, /health) |
~/.claude/skills/ |
Shared skills (memory-system, context-management, verification-before-completion, systematic-debugging, incremental-implementation, test-driven-development) |
~/.claude/hooks/ |
Lifecycle hooks (post-edit, on-stop) |
~/.claude/settings.json |
Merged permissions and hooks config |
~/.claude/CLAUDE.md |
Global rules (only if not already present) |
Run in each repo:
npx claudecode-starterkit installThis creates in .claude/:
.claude/
├── settings.json — project-local config with memory file instructions
├── plans/ — plan files from /plan command
└── memory/
├── project/
│ ├── project.md — project identity and goals
│ ├── state.md — current position and active work
│ ├── tech-stack.md — detected stack and constraints
│ ├── roadmap.md — phases and milestones
│ ├── user.md — workflow preferences
│ └── gotchas.md — footguns and conventions
├── handoffs/ — session handoff files
├── research/ — research notes
└── _templates/ — templates for new memory files
Also creates CLAUDE.md at project root (if not already present).
After global install, these commands are available in every Claude Code session:
| Command | Description |
|---|---|
/init |
Create CLAUDE.md and detect tech stack |
/plan <task> |
Create implementation plan |
/start <task> |
Begin implementation |
/ship |
Verify, review, and finalize work |
/handoff |
Save session state for next session |
/resume |
Pick up from previous session |
/status |
Show current project status |
/review |
Code review |
/pr |
Create pull request |
/research <topic> |
Research and save findings |
/health |
Audit project health |
Skills are loaded by slash commands automatically. Available skills:
| Skill | Description |
|---|---|
memory-system |
Memory file structure and session workflow |
context-management |
Context health across long sessions |
verification-before-completion |
Verification protocol before claiming done |
systematic-debugging |
Root cause debugging protocol |
incremental-implementation |
Vertical slice implementation approach |
test-driven-development |
TDD workflow |
# Global install (default — no args)
npx claudecode-starterkit
# Project install
npx claudecode-starterkit install
# Force re-generate memory files
npx claudecode-starterkit install --force
# Skip creating CLAUDE.md
npx claudecode-starterkit install --skip-claude-md
# Explicit global install
npx claudecode-starterkit install-globalclaudecode-starterkit/
├── baseline/ — source of truth for all installed content
│ ├── CLAUDE.md — global rules
│ ├── settings.json — baseline permissions and hooks
│ ├── command/ — slash command definitions
│ ├── skill/ — skill definitions
│ ├── hooks/ — lifecycle hook scripts
│ └── memory/
│ ├── _templates/ — memory file templates
│ └── project/ — placeholder project memory files
├── src/
│ ├── constants.mjs — path constants
│ ├── fs-utils.mjs — file system utilities
│ ├── templates.mjs — memory file renderers
│ ├── install-global.mjs — global install logic
│ └── install-project.mjs — project overlay logic
└── bin/
└── claudecode-starterkit.mjs — CLI entry point
| opencode-starterkit | claudecode-starterkit |
|---|---|
~/.config/opencode/ |
~/.claude/ |
agents/*.md |
Built-in subagent types |
command/*.md |
~/.claude/commands/*.md |
skill/*.md |
~/.claude/skills/*.md |
opencode.json |
settings.json |
plugin/*.ts |
MCP server (mcp/memory/) + hooks in settings.json |
AGENTS.md |
CLAUDE.md |
.opencode/memory/ |
.claude/memory/ (markdown templates + memory.db SQLite) |
The cc-memory MCP server ports the 4-tier temporal memory from opencode-starterkit to Claude Code:
- Tier 1 — Capture:
UserPromptSubmit+PostToolUsehooks write totemporal_messages. - Tier 2 — Distillation:
Stophook runs TF-IDF distillation when ≥10 undistilled messages exist. - Tier 3 — Curation: Pattern-matching extracts observations (decision/bugfix/pattern/discovery/warning) from distillations.
- Tier 4 — Injection:
SessionStarthook injects BM25-scored knowledge asadditionalContext.
11 MCP tools become available: observation, memory-search, memory-get, memory-read, memory-update, memory-timeline, memory-graph-add, memory-graph-query, memory-graph-invalidate, memory-compact, memory-admin. Plus /checkpoint <text> for manual capture.
Data lives per-project at .claude/memory/memory.db (SQLite + FTS5).