Agent-First HTTP v0.8.0: Every Build Says Exactly What It Is

by Agent-First Kit Contributors

v0.8.0 makes `afhttp --version` a structured event an agent can branch on — `name`, `display_name`, `version`, and a `build` field carrying the exact commit SHA the binary was built from, so a bug report or a capability check pins the precise tree, not just `0.8.0`. Under the hood it moves onto agent-first-data 0.22 and its protocol-v1 CLI contract, folds in the retired agent-first-config crate, and refreshes the stealth backends (chrome-for-testing 151, camoufox 152). The embedded skill moves to the standard `SKILL.md` layout and installs to Hermes alongside Codex, Claude Code, and opencode. And the README is now the single canonical guide — coverage map, host/driver roles, and worked examples end to end.

The last few releases were about reaching hard pages and being honest about what came back. v0.8.0 is quieter and points inward: make it trivial to know exactly what you’re running, and keep the machinery underneath current. When an agent files a bug, or a supervisor checks a fleet of hosts, “afhttp 0.8.0” isn’t enough — you want the exact build.

--version is a structured event that pins the build

afhttp --version no longer prints afhttp 0.8.0 as a line of text an agent has to scrape. It comes back as an AFDATA protocol-v1 event like every other command, and it carries the commit the binary was built from:

afhttp --version
{
  "kind": "result",
  "result": {
    "code": "version",
    "name": "afhttp",
    "display_name": "Agent-First HTTP",
    "version": "0.8.0",
    "build": "a1b2c3d"
  },
  "trace": {}
}

The build field is the short SHA of the source tree, stamped in at compile time by build.rs. Build from a local checkout and it identifies your exact tree; install the published crate from a source tarball with no .git reachable and it falls back to "unknown" — honestly, rather than pretending. The upshot: a version check is now something an agent branches on, and a bug report pins the precise commit instead of a version number that spans dozens of builds.

afdata 0.22, and one fewer crate to think about

afhttp rides on agent-first-data for its protocol envelopes, redaction, and field conventions. v0.8.0 moves onto afdata 0.22 and its L1–L8 API surface — the redaction policy, output style, and infallible event builders — so afhttp’s output stays lockstep with the shared contract every spore in the kit speaks. The retired agent-first-config crate is gone too, folded back into afdata, so there’s one dependency where there used to be two. None of this changes what a fetch returns; it keeps the plumbing under it consistent.

Fresher engines for the sites that fight back

The stealth backends only work if they keep pace with the browsers they imitate. v0.8.0 bumps the pinned direct-download engines — chrome-for-testing to 151 and camoufox to 152 beta — and re-verifies both container images build with them. The full spectrum behind --browser is unchanged: chromium, fingerprint-chromium, camoufox, lightpanda, edge, brave. They’re just current.

The skill installs to one more host

The embedded Agent Skill — the behavior rules for when to escalate --render, when to reach for takeover, how to read the artifacts — moves to the standard skills/agent-first-http/SKILL.md layout and adds Hermes as an install target alongside Codex, Claude Code, and opencode:

afhttp skill install
afhttp skill status

One guide, not a scattered set

The README is now the canonical, top-to-bottom guide: a coverage map (plain HTTP, browser-backed fetch, deep network capture, raw CDP, human takeover, host tools), the two-role split between afhttp host and the driver commands, and worked examples for every one of them — a one-shot fetch, a long-running host with a remote fetch, the raw CDP escape hatch, health and capabilities checks, a human takeover handoff, and profile management. The standalone overview doc it used to point at is gone; there’s one place to look now.

brew install agentfirstkit/tap/afhttp        # macOS / Linux
scoop bucket add agentfirstkit https://github.com/agentfirstkit/scoop-bucket
scoop install afhttp                          # Windows
cargo install agent-first-http                # any platform