For AI agents: a documentation index is available at /llms.txt — markdown versions of all pages are available by appending index.md to any URL path.
v0.4.0

agentsummons

Go library + CLI for invoking agent harnesses (Antigravity CLI, Claude Code, Codex CLI, GitHub Copilot CLI) in headless mode. One API, one CLI, every harness quirk owned once.

Open Source MIT Licensed.

agentsummons$agentsummons doctorantigravityagy 1.2.11✓ validatedclaude-codeclaude 2.1.274✓ validatedcodexcodex 0.157.0✓ validatedcopilotcopilot 1.0.88✓ validated$agentsummons run --harness claude-code \-p "Summarize this repo" --json{"schema_version": 1, "harness": "claude-code","harness_version": "2.1.274", "exit_code": 0,"session_id": "9f2c…", "output": {…}}$█

Why agentsummons?

Every headless-agent experiment rediscovers the same lore about binaries, permission-bypass flags, and argument ordering. agentsummons owns that knowledge once, so your scripts and experiments don’t have to.

hub

One API, four harnesses

Invoke Antigravity CLI, Claude Code, Codex CLI, or GitHub Copilot CLI through one Go API and one CLI. Per-harness quirks (argument ordering, flag names, exec subcommands) are implemented once, behind the interface.

forum

Multi-turn sessions

Resume conversations across discrete invocations on all four harnesses, with session refs carried in-band in JSON output.

deployed_code

Container-ready

Static binaries (CGO_ENABLED=0) bake into eval images with a single COPY. Run agentsummons in JSON mode as the container command and stdout carries exactly one envelope.

monitor_heart

Drift detection

Harness flags drift. The doctor command compares installed harness versions against the validated flag surface before an experiment burns tokens on a broken invocation.

data_object

JSON envelope contract

All JSON output carries a schema_version and is a cross-language contract. The npm and PyPI wrappers expose run/build over the same envelope.

campaign

Loud, not silent

Setting a field a harness can’t express is an explicit UnsupportedError, never a silent drop. A nonzero harness exit is data, and timeouts return the partial result for archiving.