Model-agnostic AI-human collaboration state management CLI
Project description
vibe-state-cli
Your AI forgets everything the moment you close the terminal. This tool fixes that.
What it does
Creates a .vibe/ directory in your project that acts as a shared brain across all your AI coding tools. What you did in Claude Code, Cursor or Gemini picks up seamlessly.
Five commands:
vibe init # Scan project, create .vibe/, detect your AI tools
vibe start # Begin session: load state, refresh config files, AI sees latest progress
vibe sync # End session: capture git changes, update all AI config files
vibe status # Check project state anytime
vibe adapt # Add or remove AI tool adapters
Why you need it
- AI forgets every session. You spent two hours explaining your architecture yesterday — today you start over.
- You use multiple tools but they don't talk to each other. Claude doesn't know what you did in Cursor.
- Each tool has a different config format (CLAUDE.md, .cursorrules, GEMINI.md). Your rules are scattered, duplicated, eating tokens.
vibe-state-cli unifies memory into .vibe/state/, rules into AGENTS.md, then auto-generates each tool's native config file.
What it does NOT do
- Does not replace your existing setup. Got a CLAUDE.md? vibe imports your rules and archives the original to
.vibe/archive/legacy/. - Does not require an API key. Runs 100% offline. No telemetry.
- Does not lock you in.
.vibe/is plain Markdown. Read, edit, or delete anytime. - Does not touch your git. Only reads git status — never commits or pushes.
Install
pipx install vibe-state-cli
Migrating existing projects
Already have AI config files? vibe init handles it:
- Detects your CLAUDE.md, .cursorrules, AGENTS.md, etc.
- Extracts rules into
.vibe/state/standards.md - Archives originals to
.vibe/archive/legacy/(not deleted — fully traceable) - Generates fresh, standardized config files
If your rules aren't in - bullet format, vibe warns you and preserves originals untouched for manual migration.
How cross-tool sync works
Work with Claude → checkpoint writes to .vibe/state/
↓
vibe sync → captures git log + compresses summary → injects into all config files
↓
Switch to Gemini/Cursor → auto-loads config → sees Claude's progress
Core mechanism: vibe sync and vibe start write a compressed state summary into every tool's config file. Each tool auto-loads its own config — no extra steps.
Git is the only reliable record. AI checkpoints (updating tasks.md) are best-effort with ~40-60% compliance. vibe sync captures git log deterministically.
Supported tools
| Tool | What vibe generates | Sync depth |
|---|---|---|
| Claude Code | CLAUDE.md + .claude/rules/ + 5 slash commands |
Full |
| Cursor | .cursor/rules/vibe-standards.mdc (inline rules) |
Full (compact) |
| Windsurf | .windsurf/rules/vibe-standards.md |
Full (compact) |
| Cline | .clinerules/01-vibe-standards.md |
Full (compact) |
| Roo Code | .roo/rules/01-vibe-standards.md |
Full (compact) |
| Antigravity/Gemini | GEMINI.md (with fallback body) |
Full |
| GitHub Copilot | .github/copilot-instructions.md |
Summary only |
| AGENTS.md | AGENTS.md (cross-tool standard) |
Varies by tool |
Sync depth:
- Full: Tool receives rules + state summary. Some can read full
.vibe/state/files. - Compact: Rules and standards inlined directly in config (no dependency on AI reading other files).
- Summary only: Receives compressed 5-line digest only (Copilot limitation, not vibe's).
Safety
- Adapter removal defaults to dry-run — requires
--confirmto execute - Migration is two-phase: copy all → verify → then delete originals
- File writes are atomic (temp + rename) with Windows retry for antivirus locks
- Symlink and NTFS Junction traversal blocked
- Corrupt config.toml halts with error — no silent defaults
- Advisory lock protects concurrent writes (CI environments)
License
MIT
Project details
Release history Release notifications | RSS feed
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 vibe_state_cli-0.3.1.tar.gz.
File metadata
- Download URL: vibe_state_cli-0.3.1.tar.gz
- Upload date:
- Size: 31.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c4edd879de59133daceb5d999088013ad89f63e0d938a0e305fb02341c748b65
|
|
| MD5 |
868fbac240cc4229a6e220bb0a85570c
|
|
| BLAKE2b-256 |
ad91bde64e38031f9eb83d234b622f10c4132a77a256cdd4e722ab963f88f401
|
Provenance
The following attestation bundles were made for vibe_state_cli-0.3.1.tar.gz:
Publisher:
publish.yml on liyoncso-Theone/vibe-state-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vibe_state_cli-0.3.1.tar.gz -
Subject digest:
c4edd879de59133daceb5d999088013ad89f63e0d938a0e305fb02341c748b65 - Sigstore transparency entry: 1255529191
- Sigstore integration time:
-
Permalink:
liyoncso-Theone/vibe-state-cli@a3e7579454d2888a4da350b4a801718fbc15dff5 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/liyoncso-Theone
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a3e7579454d2888a4da350b4a801718fbc15dff5 -
Trigger Event:
release
-
Statement type:
File details
Details for the file vibe_state_cli-0.3.1-py3-none-any.whl.
File metadata
- Download URL: vibe_state_cli-0.3.1-py3-none-any.whl
- Upload date:
- Size: 49.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
918918ac8ece36d377efaa448985768dc706207177e1c633567cf421478f524d
|
|
| MD5 |
c40614eda08067bb4801cf8dace2d970
|
|
| BLAKE2b-256 |
bbafc126f78e1d26ba704bc0951ea305dd84399113377516f4361445bb3f7e00
|
Provenance
The following attestation bundles were made for vibe_state_cli-0.3.1-py3-none-any.whl:
Publisher:
publish.yml on liyoncso-Theone/vibe-state-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vibe_state_cli-0.3.1-py3-none-any.whl -
Subject digest:
918918ac8ece36d377efaa448985768dc706207177e1c633567cf421478f524d - Sigstore transparency entry: 1255529307
- Sigstore integration time:
-
Permalink:
liyoncso-Theone/vibe-state-cli@a3e7579454d2888a4da350b4a801718fbc15dff5 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/liyoncso-Theone
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a3e7579454d2888a4da350b4a801718fbc15dff5 -
Trigger Event:
release
-
Statement type: