April 28, 2026·4 min·Nima Nejat
The Fix Packet: a repair contract for AI coding agents.
Most agent self-repair loops rely on free-form error parsing. The Fix Packet is the structured alternative — a deterministic JSON contract Axint emits whenever validation fails, designed for any agent to consume.
Most "AI fixes its own bugs" demos rely on the agent reading a stack trace and guessing.
The guess works occasionally. It fails often. And when it fails, you don't always know — because the agent confidently rewrites code, claims the bug is fixed, and the user finds out two builds later that nothing actually changed.
We built the Fix Packet to take the guessing out.
What a Fix Packet is
A Fix Packet is a deterministic JSON artifact Axint emits whenever validation fails. Every entry in the packet shares the same shape: a diagnostic code (e.g. AX112), the file and line where the failure was detected, the failure reason in human-readable text, a structured proposal describing the exact change Axint believes will resolve the failure, a verdict — verified, likely, or exploratory — explaining how strongly Axint trusts that proposal, and a reference link to the canonical rule documentation.
The packet is the contract between the validation layer and whatever agent picks up the repair work.
Why a packet, not an error message
Error messages are unstructured. Agents reading them have to parse free-form English, infer what file the issue lives in, guess at the fix, and apply it through whatever editing primitive they have available.
That's three places to fail before any code changes. The Fix Packet collapses all three into structured data the agent can act on directly.
What a proposal looks like
A real proposal entry has three fields: a kind (annotation_add, parameter_rename, import_insert, signature_replace, and so on), a patch containing the literal Swift the agent should write, and an anchor — a regex or stable AST locator describing where the patch should land.
The agent reads the file. It runs the anchor against the source. It splices in the patch. It re-runs validation. If the verdict was "verified," the run is now green. If it was "likely" or "exploratory," the agent re-validates and reports back.
No prose interpretation. No editor heuristics. The packet IS the instruction.
Verdicts matter
Not every fix is mechanical. Some require judgment — naming a parameter, choosing between two valid signatures, deciding which framework version to target. Axint tags those entries "exploratory" and emits multiple proposals.
The agent picks one, tries it, and reports the outcome back into the packet history. If the choice was wrong, the next run picks the next proposal. The system improves through iteration instead of through the agent re-reasoning from scratch each time.
Why this generalizes
Fix Packets are emitted by the compiler, by the validator, and by the Cloud Check service. The schema is identical. That means an agent built on Cursor can repair output from a Codex-generated codebase by reading the same packet format. The protocol is portable.
We stabilized the schema in v0.4. It's documented at axint.ai/fix-packet, and the JSON schema lives in the repo under schemas/fix-packet.schema.json.
What the packet enables
Three things the industry doesn't have without it.
Agent-to-agent handoff: one agent generates, validation fails, a repair-specialized agent reads the packet and emits the exact patch. No prose round-trip in between.
IDE-neutral repair: the same packet drives Xcode's Issue Navigator, Cursor's inline fix, Claude Code's session, and the CLI repair command. The user picks the surface; the protocol stays the same.
Cumulative diagnosis: every Axint run writes packets to the project's .axint/packets/ history, building a record of what went wrong and what fixed it. Across runs this becomes a training signal for project-specific agent behavior.
The bigger arc is straightforward. Agents are going to write more Apple-native code. The repair surface needs to be a protocol, not a guess. The Fix Packet is what we're proposing.
If you're building agent tooling and want to consume or emit Fix Packets, the schema and reference implementation are open source. If your tool would benefit from speaking this format and you want help integrating, we're easy to find.