Skip to main content

ai-baton

中文

Portable, auditable, file-first handoff protocol for AI assistants.

Lets you move between AI tools — Claude Code, Codex CLI, Cursor, or anything else that reads/writes files — on the same long-running project without re-explaining context every time. State lives in plain Markdown + YAML files in your own repo: a memory/ for durable facts and decisions, a status/CURRENT_STATUS.md for what's happening right now, an append-only evidence/ trail, handover/ snapshots, and archive/ for superseded plans. No server, no vector DB, no vendor plugin required — every change is just a git diff.

Requires local filesystem access — this works with tools that run on your machine or have been given access to a folder (Claude Code, Codex CLI, Cursor, Windsurf, Claude Desktop with a filesystem connector, etc.). Plain web ChatGPT or web Claude.ai chat, without file access, can't read PROTOCOL.md at all, regardless of Agent Skills support.

Not the first system aiming at cross-tool AI memory — Mem0, OpenMemory, and Letta solve overlapping problems with a vector store and/or an agent runtime. This makes the opposite trade-off: zero infrastructure and git-native auditability, at the cost of semantic search and automatic extraction. See docs/comparison.md.

Status

Pre-alpha. pip install ai-baton-tool (PyPI distribution name differs from the ai-baton command — an existing unrelated package blocked that name). Working: the spec (SPEC.md), the init / validate / status / list / workspace set / skill install CLI, a default workspace convention (~/ai-baton-workspace/<project-name>/, its root chosen once and remembered via ~/.ai-baton/config.json, discoverable across tools/sessions via ai-baton list), a full worked example (examples/demo-project/), and an Agent Skills skill — ai-baton skill install puts it where Claude Code and Codex CLI look for it, confirmed triggering live in both (a real user test in Codex CLI discovered and ran the skill correctly, though full compliance with every rule — e.g. the canary tag, guided-question UI — wasn't confirmed there). Not yet tested in Cursor. validate also flags well-known credential formats (AWS/GitHub/Slack keys, private key blocks) as a heuristic safety net, not a full secrets scanner, and warns (per-project configurable via .ai-baton.json) when memory/ gets large enough to be a real token cost every session. Bad paths now fail with a plain error message instead of a Python traceback. 40 tests pass locally. Not built: semantic search (by design) and any automated measurement of handoff effectiveness (methodology sketched in docs/metrics.md, nothing wired up).

Quick orientation

License

MIT — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ai_baton_tool-0.0.16.tar.gz (42.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ai_baton_tool-0.0.16-py3-none-any.whl (23.0 kB view details)

Uploaded Python 3

File details

Details for the file ai_baton_tool-0.0.16.tar.gz.

File metadata

  • Download URL: ai_baton_tool-0.0.16.tar.gz
  • Upload date:
  • Size: 42.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ai_baton_tool-0.0.16.tar.gz
Algorithm Hash digest
SHA256 ff7dba6f3695f528869e9db15641c6ab8ceeb4046603d0074b558fa0d172e24a
MD5 cb2dcf847de8c161bb782354241e2acc
BLAKE2b-256 3540ac734521be249be4814794b8f9aced5af5d96b0dc8cec1de487339f99fcf

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_baton_tool-0.0.16.tar.gz:

Publisher: publish.yml on CilantroFanatic/ai-baton

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ai_baton_tool-0.0.16-py3-none-any.whl.

File metadata

  • Download URL: ai_baton_tool-0.0.16-py3-none-any.whl
  • Upload date:
  • Size: 23.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ai_baton_tool-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 f1da68284a4cee39a19861cb4fc51d9f58b689c2864aa720c5598223b642d050
MD5 058b90f4096102d1b8dcd8a382ca6f42
BLAKE2b-256 d5338d819491e7977fbaf6c302534c30aae17f0c49324766c48524cf37290ead

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_baton_tool-0.0.16-py3-none-any.whl:

Publisher: publish.yml on CilantroFanatic/ai-baton

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page