Anubis
AI-native version control. Semantic commits and reasoning traces on top of git.
Anubis helps AI coding assistants (Claude, Cursor, Copilot) preserve context across sessions. Create checkpoints that capture not just code state, but why changes were made.
The Problem
When working with AI coding assistants:
- Sessions end and context is lost
- You can't resume exactly where you left off
- There's no record of the reasoning behind changes
- Code review lacks the "why"
The Solution
Anubis wraps git and adds:
- Checkpoints with reasoning traces ("I'm trying approach A because...")
- File snapshots capturing content and diffs at each checkpoint
- Semantic analysis detecting what changed (added function, renamed class)
- AI-friendly output for injecting context into new sessions
Installation
pip install anubis-vcs
Requires Python 3.11+ and git.
Quick Start
# One-command setup (initializes + configures Claude Code)
cd your-project
anubis setup
# Or initialize manually
anubis init
# Create a checkpoint with reasoning
anubis checkpoint "Refactoring auth" -r "Trying JWT approach, moving from sessions"
# View checkpoint history
anubis log
# Resume with AI-optimized output (perfect for pasting into Claude/ChatGPT)
anubis resume abc123 --format=prompt
# See semantic analysis of changes
anubis analyze
Commands
| Command | Description |
|---|---|
anubis setup |
One-command setup (init + MCP + hooks) |
anubis init |
Initialize Anubis in a git repo |
anubis checkpoint "msg" -r "reasoning" |
Create checkpoint with reasoning |
anubis status |
Show current state and recent checkpoints |
anubis log |
View checkpoint history |
anubis resume <id> |
View checkpoint details |
anubis resume <id> --format=prompt |
AI-optimized output for context injection |
anubis resume <id> --format=json |
Machine-readable output |
anubis analyze |
Semantic analysis of current changes |
anubis commit "msg" -r "reasoning" |
Semantic commit (wraps git commit) |
anubis hooks setup |
Set up Claude Code integration |
Example: AI-Friendly Resume
$ anubis resume abc123 --format=prompt
Output:
# Checkpoint: abc123
**Message:** Refactoring auth system
**Created:** 2024-01-15T10:30:00
## Reasoning
Trying JWT approach. Sessions were causing issues with horizontal scaling.
Planning to add refresh token rotation next.
## Changed Files
### src/auth.py (modified)
diff
- from flask import session
+ import jwt
+
+ def create_token(user_id: str) -> str:
+ return jwt.encode({"user_id": user_id}, SECRET_KEY)
Copy this into your AI assistant to resume exactly where you left off.
Claude Code Integration
MCP Server (Recommended)
Connect Anubis directly to Claude Code via MCP for seamless checkpoint access:
# Add Anubis MCP server to Claude Code
claude mcp add anubis -- anubis-mcp
# Verify connection
claude mcp list
Once connected, Claude Code can:
- List and resume from checkpoints automatically
- Create checkpoints with reasoning during coding
- Access semantic analysis of changes
Hooks (Auto-checkpoint)
Auto-checkpoint when Claude Code makes changes:
anubis hooks setup
Add the output to ~/.claude/settings.json to enable automatic checkpoints on file edits.
How It Works
- Metadata stored in
.anubis/directory (gitignored) - Wraps git for file versioning
- SQLite database for checkpoints and semantic data
- AST parsing for Python/JavaScript semantic analysis
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file anubis_vcs-0.3.4.tar.gz.
File metadata
- Download URL: anubis_vcs-0.3.4.tar.gz
- Upload date:
- Size: 380.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ace38333f152ebcac7381c01203c8e98199f6d007bac9c7e6a20ce36ae21b82c
|
|
| MD5 |
758d33f88c4b67cca83218bc5a8fa860
|
|
| BLAKE2b-256 |
87ca8f6212443dfe37488a048c3ff82dd4da656b508b3de23f52612628daa751
|
File details
Details for the file anubis_vcs-0.3.4-py3-none-any.whl.
File metadata
- Download URL: anubis_vcs-0.3.4-py3-none-any.whl
- Upload date:
- Size: 22.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b153c98cbe04e5f55f72246bb630895d0e5c5af45c6fd707cbe71733df06bb6
|
|
| MD5 |
66d6dfb3a0ce09d4ddc180176456588d
|
|
| BLAKE2b-256 |
883e3c7cdc9ad3a703f107c97b180991d4ef26cfc6ed1ba01a203227bbebd7f2
|