/** * Codex's rollout logs. * * ~/.codex/sessions////rollout--.jsonl, one JSON * object per line, each with a `type` and a `payload`. * * THIS FORMAT DOES NOT SAY WHICH CALLS FAILED. Claude Code stamps `is_error` on a * result; Codex returns the tool's own JSON, and whether it went wrong is inside * that -- an `exit_code` that is not zero, a `status` of rejected, an error string * where output was expected. So the failure test here is structural first and only * falls back to reading wording when the structure says nothing, which is the * opposite order from the wording-only guess it would be easy to settle for. * * The date directories are not a convenience to skip: a day's directory is the * only cheap way to honour `since` without opening every session ever recorded. */ import { AgentPlugin } from '../plugin.js'; /** What the tool's own reply says about how it went. */ interface Verdict { readonly failed: boolean; readonly reason: string; } /** * Read a Codex tool reply. * * The reply is a list of text parts, and a part is often itself JSON: an exec * result carries `exit_code`, a parallel batch carries `{status, value}` per * branch. Both are read structurally. Anything that is not JSON is left to the * wording test, and a reply that says nothing either way is a success -- treating * silence as failure would turn every tool without a status field into a fault. */ export declare function readCodexOutput(output: unknown): Verdict; export declare const codexPlugin: AgentPlugin; export {}; //# sourceMappingURL=codex.d.ts.map