Skip to main content
Glama

ccx

CI

A typed, append-only event log and resume system for Claude Code. Instead of asking an agent to maintain a free-form Session.md — which drifts, because prose always does — ccx records schema-validated events to Postgres, so resuming a session means querying ground truth rather than trusting a freshly generated self-summary. Its drift command reconciles the agent's completion claims against actual git state, which is the direct answer to "I already did that."

The design principle, from docs/design.md: prose drifts, schemas don't. Validation happens server-side and bad payloads are rejected.

How events get captured

  • Mechanical — session start/end, task created/completed, and file writes are posted by Claude Code hooks invoking ccx hook <event> with the hook JSON on stdin. No agent cooperation required.

  • Semantic — Plan, Decision, Question, and HumanFeedback are posted by the agent through the stdio MCP server.

Completion events carry evidence or they don't validate: a commit SHA if the intent produced code, a test command and exit code if tests ran.

Related MCP server: AgentLens

Layout

  • packages/schema — Zod envelope + payload schemas

  • packages/storage — Drizzle client, event append/query, digest, drift check

  • packages/mcp-server — stdio MCP server (8 tools)

  • packages/cliccx init|digest|tail|blocked|drift|replay|projects|hook

Proof

  • 147 tests across 25 filespnpm test

  • Requires Docker: the storage suite spins up an ephemeral postgres:16-alpine testcontainer and applies migrations per run. Coverage is concentrated in schema (73) and storage (45); the MCP tool handlers are the thin spot.

Status

Phase 1 revised (hooks-based capture). 8 event types are implemented; Assumption, Discovery, Issue, Revert, and PlanComplete are reserved names deferred to Phase 2 — validating a payload for those throws. Plan 3 adds a SQLite local fallback.

Quick start

pnpm install && pnpm build

# 1. Create a Postgres database called `ccx`, then point ccx at it
printf 'database_url = "postgresql://user:pass@host:5432/ccx"\n' > ~/.ccx/config.toml
chmod 600 ~/.ccx/config.toml     # hooks read from here, not the environment

# 2. Apply migrations
psql "$(python3 -c "import tomllib,os;print(tomllib.load(open(os.path.expanduser('~/.ccx/config.toml'),'rb'))['database_url'])")" \
  -f packages/storage/drizzle/0001_*.sql

# 3. In any project repo
node <path-to-ccx>/packages/cli/dist/index.js init   # creates .ccx/project.toml

Then register the five hooks (SessionStart, SessionEnd, TaskCreated, TaskCompleted, and PostToolUse matching Write|Edit|MultiEdit|NotebookEdit) in ~/.claude/settings.json, each running node <path-to-ccx>/packages/cli/dist/index.js hook <event> with a 10s timeout and reading hook JSON from stdin. For the semantic tools, register the MCP server in ~/.claude.json.

License

MIT

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    A
    maintenance
    Tamper-evident audit logging for AI agents. Append-only, hash-chained, optionally Ed25519-signed log. The MCP server lets an agent keep and verify a record of what it actually did.
    Last updated
    5
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    AI-agent observability server whose distinguishing feature is a SHA-256 hash-chained, tamper-evident audit log with chain verification and signed export. Works with Claude Desktop, Cursor, and any MCP client.
    Last updated
    22
    2
    13
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    MCP server providing structured continuity memory for AI coding agents, tracking decisions, open loops, and session state in local SQLite. Enables agents to resume work from verified state across sessions without replaying transcripts.
    Last updated
    16
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.

  • Hash-chained HMAC-signed audit log MCP for A2A (agent-to-agent) calls. Every tool-call, agent-ha...

  • Persistent memory and cross-session learning for AI coding assistants (hosted remote MCP).

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/garyld1962/ccx'

If you have feedback or need assistance with the MCP directory API, please join our Discord server