shuttle-rs
shuttle-rs is a local-first event log for agent memory, messaging, repository
context, and coordination. The stl CLI stores data in .shuttle/shuttle.db
under the current Git repository.
Agent Onboarding
Use AGENTS.md as the canonical workflow guide for coding agents. Tool-specific setup paths are available for opencode, Claude Code, and Codex. Claude Code can also use CLAUDE.md as its conventional entrypoint.
Phase 1 Commands
Initialize local storage:
Capture generic and typed memories:
Recall entries with ranked results:
Read repository context:
Coordinate tasks and handoffs:
Expose Shuttle over HTTP MCP:
Configure MCP clients to use the /mcp endpoint:
Set SHUTTLE_MCP_BEARER_TOKEN before starting stl app serve to require
Authorization: Bearer <token> on MCP requests. When the variable is unset,
local MCP remains unauthenticated.
Expose Shuttle as a remote MCP server for web chat clients with a Cloudflare Named Tunnel:
SHUTTLE_OAUTH_ADMIN_TOKEN=<admin-token> \
CLOUDFLARE_TUNNEL_TOKEN=<cloudflare-tunnel-token> \
stl
Configure ChatGPT or Claude with https://shuttle.example.com/mcp. The tunnel
token is read only from the environment, so use a secret manager or runtime
injection instead of putting it in shell history. The public URL must match the
Cloudflare Tunnel hostname that forwards to http://127.0.0.1:8787.
Synchronize event logs between Shuttle instances:
When commands run inside a Git repository, Shuttle attaches repository metadata to captured events: repository path, remote-derived repository id when present, branch, commit, dirty status, and dirty file names.
Task and handoff state is projected from append-only events. No separate task table is required, and JSON output remains suitable for MCP clients.
Mesh synchronization imports events by stable event id and skips duplicates, so re-running a sync after an offline period only transfers events that the other store has not seen yet. The CLI normalizes imported events to the receiving workspace id and records the source workspace in event metadata, which keeps synced tasks, handoffs, messages, and memories visible to local commands.
Acknowledgements
Shuttle is inspired by kioku-mesh, a shared memory system for AI coding agents across tools and machines.