Skip to content

Commit 94e2b90

Browse files
axisrowclaude
andcommitted
feat(model): add sol/terra/luna aliases for gpt-5.6 family
Users had to know the exact model id (gpt-5.6-sol) to select a 5.6 variant; the plugin only aliased `spark`. Add short aliases sol/terra/luna -> gpt-5.6-{sol,terra,luna} by the same pattern, so `--model sol` works out of the box. Updates MODEL_ALIASES, the printUsage hints, the three command argument-hints, the rescue.md mapping rule, and the commands test that pins the hint shape. Co-Authored-By: Claude <[email protected]>
1 parent 15f6c0d commit 94e2b90

5 files changed

Lines changed: 17 additions & 11 deletions

File tree

‎plugins/codex/commands/adversarial-review.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
description: Run a Codex review that challenges the implementation approach and design choices
3-
argument-hint: '[--wait|--background] [--base <ref>] [--scope auto|working-tree|branch] [--model <model|spark>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [focus ...]'
3+
argument-hint: '[--wait|--background] [--base <ref>] [--scope auto|working-tree|branch] [--model <model|spark|sol|terra|luna>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [focus ...]'
44
disable-model-invocation: true
55
allowed-tools: Read, Glob, Grep, Bash(node:*), Bash(git:*), AskUserQuestion
66
---

‎plugins/codex/commands/rescue.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
description: Delegate investigation, an explicit fix request, or follow-up rescue work to the Codex rescue subagent
3-
argument-hint: "[--background|--wait] [--resume|--fresh] [--model <model|spark>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [what Codex should investigate, solve, or continue]"
3+
argument-hint: "[--background|--wait] [--resume|--fresh] [--model <model|spark|sol|terra|luna>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [what Codex should investigate, solve, or continue]"
44
allowed-tools: Bash(node:*), AskUserQuestion, Agent
55
---
66

@@ -43,7 +43,7 @@ Operating rules:
4343
- Do not paraphrase, summarize, rewrite, or add commentary before or after it.
4444
- Do not ask the subagent to inspect files, monitor progress, poll `/codex:status`, fetch `/codex:result`, call `/codex:cancel`, summarize output, or do follow-up work of its own.
4545
- Leave `--effort` unset unless the user explicitly asks for a specific reasoning effort.
46-
- Leave the model unset unless the user explicitly asks for one. If they ask for `spark`, map it to `gpt-5.3-codex-spark`.
46+
- Leave the model unset unless the user explicitly asks for one. If they ask for `spark`, map it to `gpt-5.3-codex-spark`. If they ask for `sol`/`terra`/`luna`, map to `gpt-5.6-sol`/`gpt-5.6-terra`/`gpt-5.6-luna` respectively.
4747
- Leave `--resume` and `--fresh` in the forwarded request. The subagent handles that routing when it builds the `task` command.
4848
- If the helper reports that Codex is missing or unauthenticated, stop and tell the user to run `/codex:setup`.
4949
- If the user did not supply a request, ask what Codex should investigate or fix.

‎plugins/codex/commands/review.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
description: Run a Codex code review against local git state
3-
argument-hint: '[--wait|--background] [--base <ref>] [--scope auto|working-tree|branch] [--model <model|spark>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>]'
3+
argument-hint: '[--wait|--background] [--base <ref>] [--scope auto|working-tree|branch] [--model <model|spark|sol|terra|luna>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>]'
44
disable-model-invocation: true
55
allowed-tools: Read, Glob, Grep, Bash(node:*), Bash(git:*), AskUserQuestion
66
---

‎plugins/codex/scripts/codex-companion.mjs‎

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,17 +68,22 @@ const DEFAULT_STATUS_WAIT_TIMEOUT_MS = 240000;
6868
const DEFAULT_STATUS_POLL_INTERVAL_MS = 2000;
6969
const REASONING_EFFORTS = ["none", "minimal", "low", "medium", "high", "xhigh", "max", "ultra"];
7070
const VALID_REASONING_EFFORTS = new Set(REASONING_EFFORTS);
71-
const MODEL_ALIASES = new Map([["spark", "gpt-5.3-codex-spark"]]);
71+
const MODEL_ALIASES = new Map([
72+
["spark", "gpt-5.3-codex-spark"],
73+
["sol", "gpt-5.6-sol"],
74+
["terra", "gpt-5.6-terra"],
75+
["luna", "gpt-5.6-luna"]
76+
]);
7277
const STOP_REVIEW_TASK_MARKER = "Run a stop-gate review of the previous Claude turn.";
7378

7479
function printUsage() {
7580
console.log(
7681
[
7782
"Usage:",
7883
" node scripts/codex-companion.mjs setup [--enable-review-gate|--disable-review-gate] [--json]",
79-
" node scripts/codex-companion.mjs review [--wait|--background] [--base <ref>] [--scope <auto|working-tree|branch>] [--model <model|spark>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>]",
80-
" node scripts/codex-companion.mjs adversarial-review [--wait|--background] [--base <ref>] [--scope <auto|working-tree|branch>] [--model <model|spark>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [focus text]",
81-
" node scripts/codex-companion.mjs task [--background] [--write] [--resume-last|--resume|--fresh] [--model <model|spark>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [prompt]",
84+
" node scripts/codex-companion.mjs review [--wait|--background] [--base <ref>] [--scope <auto|working-tree|branch>] [--model <model|spark|sol|terra|luna>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>]",
85+
" node scripts/codex-companion.mjs adversarial-review [--wait|--background] [--base <ref>] [--scope <auto|working-tree|branch>] [--model <model|spark|sol|terra|luna>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [focus text]",
86+
" node scripts/codex-companion.mjs task [--background] [--write] [--resume-last|--resume|--fresh] [--model <model|spark|sol|terra|luna>] [--effort <none|minimal|low|medium|high|xhigh|max|ultra>] [prompt]",
8287
" node scripts/codex-companion.mjs transfer [--source <claude-jsonl>] [--json]",
8388
" node scripts/codex-companion.mjs status [job-id] [--all] [--json]",
8489
" node scripts/codex-companion.mjs result [job-id] [--json]",

‎tests/commands.test.mjs‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ test("review command uses AskUserQuestion and background Bash while staying revi
2222
assert.match(source, /```typescript/);
2323
assert.match(source, /review "\$ARGUMENTS"/);
2424
assert.match(source, /\[--scope auto\|working-tree\|branch\]/);
25-
assert.match(source, /--model <model\|spark>/);
25+
assert.match(source, /--model <model\|spark\|sol\|terra\|luna>/);
2626
assert.match(source, /--effort <none\|minimal\|low\|medium\|high\|xhigh\|max\|ultra>/);
2727
assert.match(source, /are not focus text/i);
2828
assert.match(source, /run_in_background:\s*true/);
@@ -53,7 +53,7 @@ test("adversarial review command uses AskUserQuestion and background Bash while
5353
assert.match(source, /```typescript/);
5454
assert.match(source, /adversarial-review "\$ARGUMENTS"/);
5555
assert.match(source, /\[--scope auto\|working-tree\|branch\].*\[focus \.\.\.\]/);
56-
assert.match(source, /--model <model\|spark>/);
56+
assert.match(source, /--model <model\|spark\|sol\|terra\|luna>/);
5757
assert.match(source, /--effort <none\|minimal\|low\|medium\|high\|xhigh\|max\|ultra>/);
5858
assert.match(source, /must not become part of the focus text/i);
5959
assert.match(source, /run_in_background:\s*true/);
@@ -109,7 +109,7 @@ test("rescue command absorbs continue semantics", () => {
109109
assert.doesNotMatch(rescue, /^context:\s*fork\b/m);
110110
assert.match(rescue, /--background\|--wait/);
111111
assert.match(rescue, /--resume\|--fresh/);
112-
assert.match(rescue, /--model <model\|spark>/);
112+
assert.match(rescue, /--model <model\|spark\|sol\|terra\|luna>/);
113113
assert.match(rescue, /--effort <none\|minimal\|low\|medium\|high\|xhigh\|max\|ultra>/);
114114
assert.match(rescue, /task-resume-candidate --json/);
115115
assert.match(rescue, /AskUserQuestion/);
@@ -121,6 +121,7 @@ test("rescue command absorbs continue semantics", () => {
121121
assert.match(rescue, /`--model` and `--effort` are runtime-selection flags/i);
122122
assert.match(rescue, /Leave `--effort` unset unless the user explicitly asks for a specific reasoning effort/i);
123123
assert.match(rescue, /If they ask for `spark`, map it to `gpt-5\.3-codex-spark`/i);
124+
assert.match(rescue, /If they ask for `sol`\/`terra`\/`luna`, map to `gpt-5\.6-sol`\/`gpt-5\.6-terra`\/`gpt-5\.6-luna`/i);
124125
assert.match(rescue, /If the request includes `--resume`, do not ask whether to continue/i);
125126
assert.match(rescue, /If the request includes `--fresh`, do not ask whether to continue/i);
126127
assert.match(rescue, /If the user chooses continue, add `--resume`/i);

0 commit comments

Comments
 (0)