Stop copying CLAUDE.md. Start syncing it.
Synchronize your Claude Code contexts (CLAUDE.md, rules, skills) across all your projects and machines - like EnvMark for your AI contexts.
Managing Claude Code contexts across 20+ repositories and 2 machines:
~/projects/
├── reposentinel/
│ └── CLAUDE.md ← copied from backmark, modified since
├── backmark/
│ └── CLAUDE.md ← "original" version but which one?
├── shipmark/
│ └── CLAUDE.md ← outdated, forgot to update
├── new-project/
│ └── ??? ← start from scratch again
└── ~/.claude/
├── CLAUDE.md ← global config, only on this machine
└── rules/ ← lost if machine dies
Daily frustrations:
- Global config (
~/.claude/) only exists on this machine - Copy-paste between repos = inevitable divergence
- Two machines = double maintenance, guaranteed drift
- No backup of your carefully crafted Claude instructions
# Install globally
npm install -g @grazulex/contextmark
# Initialize your context library
contextmark init-library
# Save your global Claude config to the library
contextmark push --global
# Register and save a project
cd ~/projects/my-project
contextmark init
contextmark push
# Sync to Git remote (backup + cross-machine sync)
contextmark sync setup git@github.com:user/claude-configs.git
contextmark sync pushOn another machine:
contextmark init-library
contextmark sync setup git@github.com:user/claude-configs.git
contextmark sync pull
contextmark pull --global # Restore your global config→ Complete Getting Started Guide
|
Like EnvMark for your Claude configs:
|
Git-based synchronization keeps your library in sync across all your development machines. |
|
Back up everything:
|
Standard Markdown and YAML files. No proprietary formats. Your context will be readable forever. |
# Global config (~/.claude/)
contextmark push --global # Save to library
contextmark pull --global # Restore from library
contextmark diff --global # Compare
# Per-project config
cd ~/projects/my-project
contextmark init # Register project
contextmark push # Save to library
contextmark pull # Restore from library
contextmark diff # Compare
contextmark status # Check sync status
# Sync with Git remote
contextmark sync setup <url> # Configure remote
contextmark sync push # Push to remote
contextmark sync pull # Pull from remote
contextmark sync status # Check remote statusFor power users managing 50+ projects with shared conventions:
# Create reusable blocks
contextmark block create laravel/base
contextmark blocks
# Create profiles (combinations of blocks)
contextmark profile create my-stack
contextmark profiles
# Initialize project with profile (generates CLAUDE.md)
contextmark init --profile my-stack
contextmark status # Check for block updates
contextmark update # Update from blocks~/.contextmark/
├── config.yml # Global configuration
├── global/ # Your ~/.claude/ backup
│ ├── CLAUDE.md
│ ├── rules/
│ │ ├── backmark.md
│ │ └── git-commits.md
│ └── skills/
│ └── backmark/
├── projects/ # Per-project configs
│ ├── my-app/
│ │ └── CLAUDE.md
│ └── another-project/
│ └── CLAUDE.md
├── blocks/ # [Advanced] Reusable blocks
├── profiles/ # [Advanced] Block combinations
├── agents/ # [Advanced] Reusable agents
└── commands/ # [Advanced] Custom commands
default_profile: default
sync:
method: git
remote: git@github.com:user/claude-configs.git
auto_pull: true
auto_push: false
cli:
colors: true
confirm_destructive: true
global:
enabled: trueproject: my-project
profile: null # null = simple mode, or profile name
blocks: []
generated_at: 2025-01-15T10:30:00Z
last_push: 2025-01-15T10:35:00Z| Tool | Purpose |
|---|---|
| Backmark | AI-powered task management |
| Stackmark | Docker environment management |
| Shipmark | Release and versioning automation |
| EnvMark | Environment variable management |
| ContextMark | Claude Code context management |
MIT © Jean-Marc Strauven
Documentation • Report Bug • Request Feature
Made with 💜 for the Claude Code community