Grok, Codex and Google Antigravity each ship an official CLI with a documented headless mode
(grok -p, codex exec, agy -p) that can make images (and, on Grok, video) for a user who is
signed in to it. The media-clients
branch drove grok and codex headless and pinned their output shapes live. A consumer (Spot) hit
two problems: aspectRatio raised "argument not supported" on the CLI clients, and Grok's output
carries a watermark nobody had mentioned.
ADR 0041 removed vendor CLI agents because their flags rot faster than we release. Media is narrower: one prompt in, one file out, three small parsers, all pinned by a fake CLI in conformance.
loadMediaStyle(MediaStyle.XaiGrokCli | OpenAICodexCli | GoogleAgyCli) (spelled per port), accepted by createMedia like an HTTP style. One-shot:
generateMedia(style, verb, args). Shell: toolnexus media <verb> --style xai-grok-cli ….
The Grok/Codex client classes stay underneath (and stay public, undocumented).supports(verb)): Grok image + video,
Codex image, agy image. A verb no style declares fails with media: no style supports "<verb>"
before any process starts; the tool face does not list it.width, height, seconds, aspectRatio) are folded into the prompt with a
byte-pinned rule (SPEC §7G.10) instead of being rejected.createMedia.-mock twin (no process, a fixed file) so code written against a preset
can be tested without a CLI.unavailable.--yolo and agy --dangerously-skip-permissions run with no prompt; Codex
stays sandboxed (-s workspace-write) because that is enough to save its image.Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |