Skip to main content

Module cli_provider

Module cli_provider 

Source
Expand description

Completions from whichever agent CLI the user already pays for.

Every agent CLI worth using has the same headless shape: a binary, a way to hand it a prompt, optional model and output-format flags, and an answer on stdout. So there is one implementation here, and a vendor is a CliPreset — a set of defaults for the same CliSpec fields a user can set by hand in [llm.cli]. Supporting a CLI nobody has heard of yet is config, not a release.

preset defaults ──▶ [llm.cli] overrides ──▶ CliSpec ──▶ argv + stdin
                                                    └─▶ OutputMode ──▶ answer

What the vendors do not agree on is stdout: one JSON object, one JSON object per line, or prose. That is an OutputMode, not a code path.

Structs§

CliProvider
Completes by spawning an agent CLI described by a CliSpec.
CliSpec
Everything needed to call one agent CLI once.
Invocation
One resolved call: the exact argv, and what to write to stdin.