Skip to content

Introduction

APX is a daemon + CLI that brings the APC convention to life. APC (Agent Project Context) is a protocol — a convention for how agent definitions, memory, and project context live on disk. APX is its reference implementation:

APX is to APC what a language SDK is to a protocol spec.

  • Daemon — a local HTTP server that manages projects, agents, sessions, and message logs.
  • CLI (apx) — commands for running agents, reading memory, tailing messages, managing sessions.
  • Runtimes — bridges to external coding CLIs: Claude Code, Codex, OpenCode, Aider, Cursor.
  • Engines — direct LLM calls via Anthropic, OpenAI, Gemini, Ollama, or a mock.
  • Plugins — Telegram bot integration out of the box.
  • MCP support — each agent can expose or consume MCP servers.

APX is opinionated about storage. Project definitions and curated memory live in your repo. Runtime state — sessions, conversations, messages, caches — lives in ~/.apx/ and is never committed.

Lives in the repo (committed)Lives in ~/.apx/ (local only)
AGENTS.md agent definitionsSessions & conversation threads
.apc/agents/<slug>.mdAgent memory, message history / logs
.apc/mcps.json (no secrets)MCP runtime tokens
.apc/skills/, .apc/commands/MCP runtime tokens

This split means your agents and their roles are versioned alongside your code, while machine-specific runtime noise stays out of git.

The APC specification defines the on-disk layout. APX provides the tooling to use it: the daemon, the CLI, and every surface built on top. If you follow the APC convention, any APC-aware tool (Codex, Antigravity, others that read AGENTS.md) can discover your agents — APX just makes them runnable, observable, and reachable from many surfaces.