aeonaeon

Harnesses

Run skills across nine coding-agent CLIs including Claude Code, Grok, Codex, Pi, Vibe, Kimi, fx, Cursor, and Hermes.

While an LLM gateway swaps the model endpoint behind Claude Code, a harness swaps the entire coding-agent CLI that executes your skill. Aeon ships nine harnesses behind harness-adapter/run-harness, all returning the same {result, usage, session_id} contract.

Selecting a Harness

Set the default harness at the top of aeon.yml, override per skill (single-line flow map), or pick one at dispatch time in Aeon Connect:

harness: claude          # global default: claude | grok | codex | pi | vibe | kimi | fx | cursor | hermes

skills:
  digest: { enabled: true, schedule: "0 9 * * *", harness: "grok" }

Supported Harnesses

Harness IDCLIAuth Secrets / Fallbacks
claudeClaude Code (claude -p, default)CLAUDE_CODE_OAUTH_TOKEN, ANTHROPIC_API_KEY, or any LLM gateway
grokGrok Build (grok -p)GROK_CREDENTIALS (grok login --device-auth) or XAI_API_KEY
codexOpenAI Codex CLI (openai/*)Native ChatGPT login (CODEX_AUTH) or OPENROUTER_API_KEY
piPi Coding Agent (deepseek/*)Native key or OPENROUTER_API_KEY
vibeMistral Vibe (mistralai/*)MISTRAL_API_KEY or OPENROUTER_API_KEY
kimiMoonshot Kimi (moonshotai/*)Native Kimi login or OPENROUTER_API_KEY
fxVercel fx.shAI_GATEWAY_API_KEY or VERCEL_OIDC_TOKEN (no OpenRouter fallback)
cursorCursor CLI (agent -p)CURSOR_API_KEY (no OpenRouter fallback)
hermesNous Portal HermesHERMES_AUTH or OPENROUTER_API_KEY

Grok Authentication & Run-Shaping

Grok Build (grok) authenticates directly via GROK_CREDENTIALS or XAI_API_KEY and logs token counts and cost to memory/token-usage.csv. Optional SKILL.md frontmatter keys shape Grok runs (ignored by other harnesses):

max_turns: 120      # agentic-turn cap (default 60)
best_of_n: 3        # run 3 ways in parallel and keep the best
verify: true        # append a self-verification pass before finishing
effort: high        # low | medium | high | xhigh | max

Cross-Harness Parity

SurfaceBehavior across harnesses
Standing instructionsReads CLAUDE.md and generated AGENTS.md (carrying STRATEGY.md).
Read-only modeEnforced by the Linux bwrap --ro-bind OS sandbox in run-harness.
MCP serversProject .mcp.json is expanded with ${VAR} secrets before launch (except pi, which disables MCP).
Chains & scoringInbound chat replies, skill chains, and the post-run quality scorer work across all nine harnesses.

Full harness reference: docs/harnesses.md.

On this page