Separate Gemini model names and effort choices

This commit is contained in:
Ian Gulliver
2026-10-23 20:16:32 -07:00
parent 78a715954e
commit 6434eee45c
11 changed files with 408 additions and 382 deletions
+3 -2
View File
@@ -7,11 +7,12 @@ How `internal/antigravity` drives the Antigravity CLI, `agy` (`brew install --ca
```
agy --input-format stream-json --output-format stream-json \
--dangerously-skip-permissions --add-dir <session dir> \
[--model M] [--effort E] [--conversation ID] --print ""
[--model M] [--conversation ID] --print ""
```
- `--print ""` puts the CLI in print mode; with `--input-format stream-json` it reads one message per line from stdin and runs a turn for each, in one conversation, until stdin closes. A bare `-p` takes the next flag as its prompt, so the empty prompt is passed explicitly.
- `--dangerously-skip-permissions` sets the permission mode to `always-proceed`; without it the mode is `request-review` and tool calls wait for approvals print mode can't give.
- Gemini model IDs include their reasoning level, such as `gemini-4-argon-high`. Pass the selected level in that ID, without a separate `--effort`; an unspecified level uses medium.
- `--conversation ID` resumes a conversation with its history; the model comes from `--model`, not from the conversation.
- Commands the agent runs (`run_command`) inherit the CLI's environment.
@@ -48,7 +49,7 @@ Stdout, one JSON object per line, each `{"event": E, E: {...}}`:
SIGINT ends the running turn: the CLI prints `error: interrupted` on stderr, sends a `result` with `status` `ERROR` and `error` `interrupted`, and exits. A tool step cut off this way gets no `DONE` update. Resume with `--conversation` after the old process exits to keep using the conversation.
There is no way to switch the model or effort of a running process. Close the idle process's stdin, wait for it to exit, and restart with the new `--model` and `--effort` and the same `--conversation`.
There is no way to switch the model or effort of a running process. Close the idle process's stdin, wait for it to exit, and restart with the new full `--model` ID and the same `--conversation`.
## Hooks