# Compare agents on AgentSky

> A comparison runs the same task on two or more agent configurations — a harness such as Claude Code or Codex, plus a model — so a person can read the results side by side, pick the one they prefer, and keep working with it. This file tells an agent how to run one through the AgentSky developer API. It is read by the agent, not the person.

## What is available

- **Through the API:** creating agents, starting sessions with a task, reading a session's status and events, sending follow-up messages, and archiving sessions. Every one of those is documented in the API reference at https://platform.agentsky.dev/docs/api; use only the operations documented there, and do not infer endpoints from a browser URL.
- **Not available through the API:** a single "create a comparison" call, the anonymous (blind) labelling of results, the vote, and the community record. Those exist only in the web composer at https://agentsky.dev/compare. When the person wants them, send them there instead of imitating them.

## How to run one

1. **Authenticate.** Follow https://platform.agentsky.dev/docs/api#auth. A token is minted by a signed-in person in the console; if you do not have one, stop and ask the person for one that can write.
2. **Choose the configurations.** Pick two or more that differ (a different harness, or the same harness on a different model), or use the ones the person named, from the list below.
3. **Create one fresh agent per configuration** (https://platform.agentsky.dev/docs/api#group-agents), with only its harness, its model, the name `Comparison candidate` — the same name for every candidate, because the name is written into the agent's system prompt — and, when the comparison shares capabilities (tools), that same capabilities list on every candidate, since capabilities are granted on the agent. Nothing else: anything an existing agent carries (a prompt, instructions, skills, other tools) would make its results not comparable. Never reuse an agent that already exists. Keep which agent is which harness and model in your own notes.
4. **Start one session per agent** (https://platform.agentsky.dev/docs/api#group-sessions) with the identical task text as its first message, a spending limit the person has agreed to (the reference describes budgets and what happens at the limit), and, when a configuration names a thinking level, that level as the session's reasoning effort — it is a session setting, and the reference lists the values each harness accepts; a configuration that names none runs the harness default. Sessions are billed for compute time while awake plus model usage; rates are at https://agentsky.dev/pricing.
5. **Wait, then read.** Poll each session's status until its turn is over, then read its events for the reply (https://platform.agentsky.dev/docs/api#group-sessions and https://platform.agentsky.dev/docs/api#events). What each session cost is shown on its page in the console, not through this file.
6. **Report and continue.** Give the person one line per configuration — harness, model, session id, how the turn ended — a short comparison with your recommendation and the reason, and the preferred session's id. That session is long-lived and keeps taking messages (https://platform.agentsky.dev/docs/api#group-conversation); archive the ones the person does not keep. Never claim a result you did not read from the events.

Errors are documented at https://platform.agentsky.dev/docs/api#errors.

## Configurations this site offers

There is no endpoint that lists configurations; this list is generated from the same catalog the web composer uses. Each harness runs only the models listed for it. Agents that run a third-party CLI (Cursor, Gemini CLI and the like) need a provider account set up in the browser first and are not covered by this file.

- **Hermes** — `agentType: "hermes"`; models: `deepseek-v4-pro` (DeepSeek V4 Pro), `deepseek-flash` (DeepSeek V4.1 Flash), `gpt-5.6-sol` (GPT-5.6 Sol), `gpt-5.6-terra` (GPT-5.6 Terra), `gpt-5.6-luna` (GPT-5.6 Luna), `gpt-6-astra` (GPT-6 Astra), `gemini-3.8-flash` (Gemini 3.8 Flash), `glm-5.3` (GLM-5.3), `glm-5.3-flash` (GLM-5.3-Flash), `kimi-k3` (Kimi K3), `kimi-k2.7-code` (Kimi K2.7 Code), `grok-4.6` (Grok 4.6), `claude-opus-5` (Claude Opus 5), `claude-fable-5-1` (Claude Fable 5.1), `claude-sonnet-5` (Claude Sonnet 5), `claude-haiku-4-5` (Claude Haiku 4.5)
- **Claude Code** — `agentType: "claude_code"`; models: `claude-opus-5` (Claude Opus 5), `claude-fable-5-1` (Claude Fable 5.1), `claude-sonnet-5` (Claude Sonnet 5), `claude-haiku-4-5` (Claude Haiku 4.5)
- **Codex** — `agentType: "codex"`; models: `gpt-5.6-sol` (GPT-5.6 Sol), `gpt-5.6-terra` (GPT-5.6 Terra), `gpt-5.6-luna` (GPT-5.6 Luna), `gpt-6-astra` (GPT-6 Astra), `deepseek-v4-pro` (DeepSeek V4 Pro), `deepseek-flash` (DeepSeek V4.1 Flash)
- **OpenClaw** — `agentType: "openclaw"`; models: `gpt-5.6-sol` (GPT-5.6 Sol), `gpt-5.6-terra` (GPT-5.6 Terra), `gpt-5.6-luna` (GPT-5.6 Luna), `gpt-6-astra` (GPT-6 Astra), `deepseek-v4-pro` (DeepSeek V4 Pro), `deepseek-flash` (DeepSeek V4.1 Flash), `gemini-3.8-flash` (Gemini 3.8 Flash), `glm-5.3` (GLM-5.3), `glm-5.3-flash` (GLM-5.3-Flash), `kimi-k3` (Kimi K3), `kimi-k2.7-code` (Kimi K2.7 Code), `grok-4.6` (Grok 4.6), `claude-opus-5` (Claude Opus 5), `claude-fable-5-1` (Claude Fable 5.1), `claude-sonnet-5` (Claude Sonnet 5), `claude-haiku-4-5` (Claude Haiku 4.5)
- **pi** — `agentType: "pi"`; models: `gpt-5.6-sol` (GPT-5.6 Sol), `gpt-5.6-terra` (GPT-5.6 Terra), `gpt-5.6-luna` (GPT-5.6 Luna), `gpt-6-astra` (GPT-6 Astra), `deepseek-v4-pro` (DeepSeek V4 Pro), `deepseek-flash` (DeepSeek V4.1 Flash), `glm-5.3` (GLM-5.3), `glm-5.3-flash` (GLM-5.3-Flash), `kimi-k3` (Kimi K3), `kimi-k2.7-code` (Kimi K2.7 Code), `grok-4.6` (Grok 4.6), `claude-opus-5` (Claude Opus 5), `claude-fable-5-1` (Claude Fable 5.1), `claude-sonnet-5` (Claude Sonnet 5), `claude-haiku-4-5` (Claude Haiku 4.5)
- **DeepSeek Harness** — `agentType: "dsh"`; models: `deepseek-v4-pro` (DeepSeek V4 Pro), `deepseek-flash` (DeepSeek V4.1 Flash), `kimi-k3` (Kimi K3), `kimi-k2.7-code` (Kimi K2.7 Code), `glm-5.3` (GLM-5.3), `glm-5.3-flash` (GLM-5.3-Flash), `grok-4.6` (Grok 4.6)
- **Kimi Code** — `agentType: "kimi_code"`; models: `kimi-k3` (Kimi K3), `kimi-k2.7-code` (Kimi K2.7 Code), `deepseek-v4-pro` (DeepSeek V4 Pro), `deepseek-flash` (DeepSeek V4.1 Flash), `gpt-5.6-sol` (GPT-5.6 Sol), `gpt-5.6-terra` (GPT-5.6 Terra), `gpt-5.6-luna` (GPT-5.6 Luna), `gpt-6-astra` (GPT-6 Astra), `glm-5.3` (GLM-5.3), `glm-5.3-flash` (GLM-5.3-Flash), `grok-4.6` (Grok 4.6), `claude-opus-5` (Claude Opus 5), `claude-fable-5-1` (Claude Fable 5.1), `claude-sonnet-5` (Claude Sonnet 5), `claude-haiku-4-5` (Claude Haiku 4.5)
- **OpenCode** — `agentType: "opencode"`; models: `gpt-5.6-sol` (GPT-5.6 Sol), `gpt-5.6-terra` (GPT-5.6 Terra), `gpt-5.6-luna` (GPT-5.6 Luna), `gpt-6-astra` (GPT-6 Astra), `deepseek-v4-pro` (DeepSeek V4 Pro), `deepseek-flash` (DeepSeek V4.1 Flash), `glm-5.3` (GLM-5.3), `glm-5.3-flash` (GLM-5.3-Flash), `kimi-k3` (Kimi K3), `kimi-k2.7-code` (Kimi K2.7 Code), `grok-4.6` (Grok 4.6), `claude-opus-5` (Claude Opus 5), `claude-fable-5-1` (Claude Fable 5.1), `claude-sonnet-5` (Claude Sonnet 5), `claude-haiku-4-5` (Claude Haiku 4.5)

## References

- API reference: https://platform.agentsky.dev/docs/api
- Developer documentation index for agents: https://platform.agentsky.dev/docs/llms.txt
- Site map for agents: https://agentsky.dev/llms.txt
- The web composer, with blind results and the vote: https://agentsky.dev/compare
