@kontextmind/kxm 0.7.184 → 0.7.185

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,7 +11,7 @@
11
11
  "name": "kxm",
12
12
  "source": "./plugins/kxm",
13
13
  "description": "Durable workflows, peer agents, and kxm tui",
14
- "version": "0.7.184",
14
+ "version": "0.7.185",
15
15
  "category": "development",
16
16
  "tags": ["kxm", "multi-agent", "workflows", "mcp"]
17
17
  }
@@ -3,9 +3,12 @@ id: reviewer-cli
3
3
  purpose: reviewer-cli
4
4
  permission: read-only
5
5
  description: Independent CLI and docs critic.
6
- # codex-gpt-5-6-sol is the required cli critic. The Pi fallback is a different vendor.
6
+ # codex-gpt-6-1-sol is the required cli critic. The Pi fallback is a different vendor.
7
+ # codex-gpt-5-6-sol stays admitted as the last fallback.
7
8
  roster:
8
- - route: codex-gpt-5-6-sol
9
+ - route: codex-gpt-6-1-sol
9
10
  effort: low
10
11
  - route: pi-qwen3-8-flash-openrouter
11
12
  effort: low
13
+ - route: codex-gpt-5-6-sol
14
+ effort: low
package/CHANGELOG.md CHANGED
@@ -216,6 +216,15 @@ All notable user-facing changes are documented here. The project follows [Semant
216
216
 
217
217
  ### Changed
218
218
 
219
+ - **The CLI critic is Codex GPT-6.1 Sol.** `codex-gpt-6-1-sol` is the
220
+ `reviewer-cli` primary (`codex` / `gpt-6.1-sol`, effort `low`).
221
+ `pi-qwen3-8-flash-openrouter` stays the other-vendor fallback, and
222
+ `codex-gpt-5-6-sol` stays admitted as the last fallback. Architecture
223
+ review stays `claude-fable`, then `pi-glm-5-3-flash-openrouter`. Pro is
224
+ the same model with reasoning mode `pro`, not a separate route. List
225
+ price is $2 / $10 per 1M tokens through 272,000 prompt tokens ($0.10
226
+ cached input, $2.50 cache write), then $4 / $15.
227
+
219
228
  - **The writer rotation's agy routes are Gemini 4 Argon.** `agy-gemini-4-argon-high`
220
229
  (alias `gemini-agy`) and `agy-gemini-4-argon-medium` are writer #3 and #4.
221
230
  `agy-gemini-3-8-flash-medium` stays #5 because Argon needs a paid Google AI
@@ -37,7 +37,7 @@ admits each route for specific roles and permissions:
37
37
  | `writer` | `grok` / `grok-4.7`; relief: `pi` / `openrouter/qwen/qwen3-coder-plus`; `agy` / `gemini-4-argon-high`, then `gemini-4-argon-medium`, then `gemini-3.8-flash-medium`, then `gemini-3.8-flash-high` | `xai`; `alibaba`; `google` | `edit` |
38
38
  | `planner` | `claude` / `fable` | `anthropic` | `read-only` |
39
39
  | `reviewer-arch` | `claude` / `fable` | `anthropic` | `read-only` |
40
- | `reviewer-cli` | `codex` / `gpt-5.6-sol` | `openai` | `read-only` |
40
+ | `reviewer-cli` | `codex` / `gpt-6.1-sol`; fallback `pi` / `openrouter/qwen/qwen3.8-flash`, then `codex` / `gpt-5.6-sol` | `openai`; `alibaba`; `openai` | `read-only` |
41
41
 
42
42
  The policy itself enforces three rules. Critics are read-only. The two
43
43
  designated critics have different vendors. No admitted writer shares a vendor
@@ -9,7 +9,7 @@ This page records how the KXM repository applies [harness routing](../reference/
9
9
 
10
10
  The files use one id shape per kind. A route id is `<harness>-<model-slug>[-<provider>]`, with `.` written as `-`. An agent id equals its role. A workflow id is `default`, `land`, or `<role>-only`. An agent step id equals that role.
11
11
 
12
- This checkout's routes are `grok-grok-4-7`, `pi-qwen3-coder-plus-openrouter`, `agy-gemini-4-argon-high`, `agy-gemini-4-argon-medium`, `agy-gemini-3-8-flash-medium`, `agy-gemini-3-8-flash-high`, `claude-fable`, `codex-gpt-5-6-sol`, `pi-qwen3-8-flash-openrouter`, and `pi-glm-5-3-flash-openrouter`. Agents are `planner`, `writer`, `reviewer-arch`, and `reviewer-cli`. `opus-claude` was removed because `opus` is not an admitted selector. `qwen-token-plan/*` and `zai-coding-cn/*` left the admitted list because those harnesses are not allowlisted; their `prices.yaml` rows stay. Old ids resolve as aliases. Every roster entry names an effort. `reviewer-arch` dispatches `claude-fable`. #343's architecture critic ran on opus because the justfile recipe review-arch hardcoded that model; the role file on that commit listed only `fable-claude`. The helper now refuses `opus`.
12
+ This checkout's routes are `grok-grok-4-7`, `pi-qwen3-coder-plus-openrouter`, `agy-gemini-4-argon-high`, `agy-gemini-4-argon-medium`, `agy-gemini-3-8-flash-medium`, `agy-gemini-3-8-flash-high`, `claude-fable`, `codex-gpt-6-1-sol`, `codex-gpt-5-6-sol`, `pi-qwen3-8-flash-openrouter`, and `pi-glm-5-3-flash-openrouter`. Agents are `planner`, `writer`, `reviewer-arch`, and `reviewer-cli`. `opus-claude` was removed because `opus` is not an admitted selector. `qwen-token-plan/*` and `zai-coding-cn/*` left the admitted list because those harnesses are not allowlisted; their `prices.yaml` rows stay. Old ids resolve as aliases. Every roster entry names an effort. `reviewer-arch` dispatches `claude-fable`. #343's architecture critic ran on opus because the justfile recipe review-arch hardcoded that model; the role file on that commit listed only `fable-claude`. The helper now refuses `opus`.
13
13
 
14
14
  ## This checkout's routes and roster
15
15
 
@@ -37,7 +37,7 @@ roster:
37
37
  effort: medium
38
38
  ```
39
39
 
40
- The writer role lists route ids, in order: `grok-grok-4-7`, then `pi-qwen3-coder-plus-openrouter`, then `agy-gemini-4-argon-high`, `agy-gemini-4-argon-medium`, `agy-gemini-3-8-flash-medium`, and `agy-gemini-3-8-flash-high`. `grok-grok-4-7` is harness `grok`, model `grok-4.7`, vendor `xai`. An agent file does not declare `harness:`. Argon is writer #3 and #4. Flash medium is the safety net because Argon needs a paid Google AI Pro, Ultra, or Enterprise plan and `agy -p` exits when the pinned model is missing. Flash high stays on the roster so that admitted model file is still used. Planner and reviewer primaries stay `claude-fable` and `codex-gpt-5-6-sol`. Argon can serve as a planner or architecture-review fallback; it is not on those rosters.
40
+ The writer role lists route ids, in order: `grok-grok-4-7`, then `pi-qwen3-coder-plus-openrouter`, then `agy-gemini-4-argon-high`, `agy-gemini-4-argon-medium`, `agy-gemini-3-8-flash-medium`, and `agy-gemini-3-8-flash-high`. `grok-grok-4-7` is harness `grok`, model `grok-4.7`, vendor `xai`. An agent file does not declare `harness:`. Argon is writer #3 and #4. Flash medium is the safety net because Argon needs a paid Google AI Pro, Ultra, or Enterprise plan and `agy -p` exits when the pinned model is missing. Flash high stays on the roster so that admitted model file is still used. The planner primary stays `claude-fable`. The CLI critic primary is `codex-gpt-6-1-sol`, then `pi-qwen3-8-flash-openrouter`, then `codex-gpt-5-6-sol`. The architecture critic primary stays `claude-fable`, then `pi-glm-5-3-flash-openrouter`. Argon can serve as a planner or architecture-review fallback; it is not on those rosters. GPT-6.1 Sol Pro is the same model with reasoning mode `pro`. The route id does not carry a reasoning mode, role effort has no `pro` value, and codex is limited to `reviewer-cli`, so that mode is not an architecture fallback.
41
41
 
42
42
  `node scripts/kxm.mjs routes list`:
43
43
 
@@ -48,6 +48,7 @@ admitted google/gemini-3.8-flash-medium
48
48
  admitted google/gemini-4-argon-high
49
49
  admitted google/gemini-4-argon-medium
50
50
  admitted openai/gpt-5.6-sol
51
+ admitted openai/gpt-6.1-sol
51
52
  admitted openrouter/qwen/qwen3-coder-plus
52
53
  admitted openrouter/qwen/qwen3.8-flash
53
54
  admitted openrouter/z-ai/glm-5.3-flash
@@ -56,8 +57,9 @@ planner claude-fable
56
57
  planner pi-qwen3-8-flash-openrouter
57
58
  reviewer-arch claude-fable
58
59
  reviewer-arch pi-glm-5-3-flash-openrouter
59
- reviewer-cli codex-gpt-5-6-sol
60
+ reviewer-cli codex-gpt-6-1-sol
60
61
  reviewer-cli pi-qwen3-8-flash-openrouter
62
+ reviewer-cli codex-gpt-5-6-sol
61
63
  writer grok-grok-4-7
62
64
  writer pi-qwen3-coder-plus-openrouter
63
65
  writer agy-gemini-4-argon-high
@@ -129,16 +131,16 @@ These extend the generic examples on the reference page with this checkout's adm
129
131
 
130
132
  Pi's own `xai` provider reported `ready` (OAuth) on the capture machine. When the grok quota runs out, the next writer in the lineup is `pi-qwen3-coder-plus-openrouter`, a different vendor.
131
133
 
132
- ### GPT-5.6 Sol
134
+ ### GPT-6.1 Sol
133
135
 
134
136
  | | Native `codex` | Pi + OpenRouter |
135
137
  |---|---|---|
136
- | Selector | `openai/gpt-5.6-sol`: admitted, the CLI critic | `openrouter/openai/gpt-5.6-sol`: not admitted |
137
- | Developer roster | `codex-gpt-5-6-sol`: `reviewer-cli`, `read-only` | Refused |
138
- | Billing | ChatGPT subscription | $4.00 input, $20.00 output, $0.40 cached input |
139
- | Context | Pi's `openai-codex` row, the same ChatGPT backend, lists 272K | 1,050,000 |
138
+ | Selector | `openai/gpt-6.1-sol`: admitted, the CLI critic | `openrouter/openai/gpt-6.1-sol`: not admitted |
139
+ | Developer roster | `codex-gpt-6-1-sol`: `reviewer-cli` primary, `read-only`, effort `low` | Refused |
140
+ | Billing | ChatGPT subscription. List price $2.00 input, $10.00 output, $0.10 cached input, $2.50 cache write through 272,000 prompt tokens, then $4.00 / $15.00 | Same per-token list price. OpenRouter's `openai/gpt-6.1-sol-pro` row is reasoning mode `pro`, not a second model |
141
+ | Context | 1,050,000 (922,000 max input, 128,000 max output). Reasoning is mandatory | 1,050,000 |
140
142
 
141
- In the inventory, `openai/gpt-5.6-sol` has sources `openrouter+nous` and carries OpenRouter prices. `pi auth check --provider openai-codex` reported `ready` on the capture machine.
143
+ `codex-gpt-5-6-sol` stays on the `reviewer-cli` roster after the Qwen fallback. Its selector `openai/gpt-5.6-sol` stays admitted. OpenRouter lists that model at $4.00 input, $20.00 output, and $0.40 cached input. `pi auth check --provider openai-codex` reported `ready` on the capture machine. That readiness is not permission to bill OpenAI through Pi.
142
144
 
143
145
  ### Claude Fable
144
146
 
@@ -1156,6 +1156,7 @@ admitted google/gemini-3.8-flash-medium
1156
1156
  admitted google/gemini-4-argon-high
1157
1157
  admitted google/gemini-4-argon-medium
1158
1158
  admitted openai/gpt-5.6-sol
1159
+ admitted openai/gpt-6.1-sol
1159
1160
  admitted openrouter/qwen/qwen3-coder-plus
1160
1161
  admitted openrouter/qwen/qwen3.8-flash
1161
1162
  admitted openrouter/z-ai/glm-5.3-flash
@@ -1164,8 +1165,9 @@ planner claude-fable
1164
1165
  planner pi-qwen3-8-flash-openrouter
1165
1166
  reviewer-arch claude-fable
1166
1167
  reviewer-arch pi-glm-5-3-flash-openrouter
1167
- reviewer-cli codex-gpt-5-6-sol
1168
+ reviewer-cli codex-gpt-6-1-sol
1168
1169
  reviewer-cli pi-qwen3-8-flash-openrouter
1170
+ reviewer-cli codex-gpt-5-6-sol
1169
1171
  writer grok-grok-4-7
1170
1172
  writer pi-qwen3-coder-plus-openrouter
1171
1173
  writer agy-gemini-4-argon-high
@@ -1179,7 +1181,7 @@ kxm routes list --json
1179
1181
  ```
1180
1182
 
1181
1183
  ```text
1182
- {"schema":"kxm.cli-result.v1","ok":true,"command":"routes list","policy":{"schema":"kxm.routes.v2","updatedAt":"2026-10-17T00:00:00.000Z","admitted":["anthropic/fable","google/gemini-3.8-flash-high","google/gemini-3.8-flash-medium","google/gemini-4-argon-high","google/gemini-4-argon-medium","openai/gpt-5.6-sol","openrouter/qwen/qwen3-coder-plus","openrouter/qwen/qwen3.8-flash","openrouter/z-ai/glm-5.3-flash","xai/grok-4.7"],"disabled":[]},"membership":["planner claude-fable","planner pi-qwen3-8-flash-openrouter","reviewer-arch claude-fable","reviewer-arch pi-glm-5-3-flash-openrouter","reviewer-cli codex-gpt-5-6-sol","reviewer-cli pi-qwen3-8-flash-openrouter","writer grok-grok-4-7","writer pi-qwen3-coder-plus-openrouter","writer agy-gemini-4-argon-high","writer agy-gemini-4-argon-medium","writer agy-gemini-3-8-flash-medium","writer agy-gemini-3-8-flash-high"]}
1184
+ {"schema":"kxm.cli-result.v1","ok":true,"command":"routes list","policy":{"schema":"kxm.routes.v2","updatedAt":"2026-10-17T14:30:00.000Z","admitted":["anthropic/fable","google/gemini-3.8-flash-high","google/gemini-3.8-flash-medium","google/gemini-4-argon-high","google/gemini-4-argon-medium","openai/gpt-5.6-sol","openai/gpt-6.1-sol","openrouter/qwen/qwen3-coder-plus","openrouter/qwen/qwen3.8-flash","openrouter/z-ai/glm-5.3-flash","xai/grok-4.7"],"disabled":[]},"membership":["planner claude-fable","planner pi-qwen3-8-flash-openrouter","reviewer-arch claude-fable","reviewer-arch pi-glm-5-3-flash-openrouter","reviewer-cli codex-gpt-6-1-sol","reviewer-cli pi-qwen3-8-flash-openrouter","reviewer-cli codex-gpt-5-6-sol","writer grok-grok-4-7","writer pi-qwen3-coder-plus-openrouter","writer agy-gemini-4-argon-high","writer agy-gemini-4-argon-medium","writer agy-gemini-3-8-flash-medium","writer agy-gemini-3-8-flash-high"]}
1183
1185
  ```
1184
1186
 
1185
1187
  ### `kxm routes count`
@@ -686,7 +686,7 @@ Example (validated with `kxm init --json` and compiled with
686
686
  the `critic-claude` profile shown above, it needs a `planner` agent (the
687
687
  workflow coordinator; `coordinator` still resolves as an alias), a
688
688
  `reviewer-cli` agent, and a second profile tagged `critic`, `critic-sol`
689
- (`openai/gpt-5.6-sol`). Routes, not agent files, name the harness and model.
689
+ (`openai/gpt-6.1-sol`). Routes, not agent files, name the harness and model.
690
690
  The two providers among the `critic` candidates satisfy
691
691
  `distinctBy: [provider]` with `target: 2`.
692
692
 
@@ -1011,6 +1011,7 @@ updatedAt: '2026-09-23T00:00:00.000Z'
1011
1011
  admitted:
1012
1012
  - anthropic/fable
1013
1013
  - openai/gpt-5.6-sol
1014
+ - openai/gpt-6.1-sol
1014
1015
  - xai/grok-4.6
1015
1016
  - openrouter/qwen/qwen3-coder-plus
1016
1017
  disabled: []
@@ -1081,6 +1082,13 @@ routes:
1081
1082
  roles: [planner, reviewer-arch]
1082
1083
  permissions: [read-only]
1083
1084
  status: admitted
1085
+ codex-gpt-6-1-sol:
1086
+ harness: codex
1087
+ model: gpt-6.1-sol
1088
+ vendor: openai
1089
+ roles: [reviewer-cli]
1090
+ permissions: [read-only]
1091
+ status: admitted
1084
1092
  codex-gpt-5-6-sol:
1085
1093
  harness: codex
1086
1094
  model: gpt-5.6-sol
@@ -1092,10 +1100,10 @@ lineup: # routes admitted for each role, preference orde
1092
1100
  writer: [grok-grok-4-7, pi-qwen3-coder-plus-openrouter, agy-gemini-4-argon-high, agy-gemini-4-argon-medium, agy-gemini-3-8-flash-medium, agy-gemini-3-8-flash-high]
1093
1101
  planner: [claude-fable, pi-qwen3-8-flash-openrouter]
1094
1102
  reviewer-arch: [claude-fable, pi-glm-5-3-flash-openrouter]
1095
- reviewer-cli: [codex-gpt-5-6-sol, pi-qwen3-8-flash-openrouter]
1103
+ reviewer-cli: [codex-gpt-6-1-sol, pi-qwen3-8-flash-openrouter, codex-gpt-5-6-sol]
1096
1104
  required_critics:
1097
1105
  review-arch: claude-fable
1098
- review-cli: codex-gpt-5-6-sol
1106
+ review-cli: codex-gpt-6-1-sol
1099
1107
  model_origins: # required for every Pi route model
1100
1108
  openrouter/qwen/qwen3-coder-plus:
1101
1109
  vendor: alibaba
@@ -232,7 +232,7 @@ The same model shows up under different ids depending on the file:
232
232
  | `.kxm/models/inventory.yaml`, source `openrouter` | `x-ai/grok-4.7` | The OpenRouter catalog slug. The inventory stores OpenRouter ids without an `openrouter/` prefix. |
233
233
  | `.kxm/prices.yaml` | `id: xai/grok-4.7`, `provider: xai`, alias `x-ai/grok-4.7` | A list price that applies only to provider `xai`, because price lookup filters by provider. `xai/grok-4.6` remains a separate row. |
234
234
 
235
- An inventory id can also mean something else in `.kxm/routes.yaml`. For example, the inventory can list `openai/gpt-5.6-sol` from the OpenRouter feed with OpenRouter prices, while in `.kxm/routes.yaml` the same string means provider `openai` through native `codex`.
235
+ An inventory id can also mean something else in `.kxm/routes.yaml`. For example, the inventory can list `openai/gpt-6.1-sol` from the OpenRouter feed with OpenRouter prices, while in `.kxm/routes.yaml` the same string means provider `openai` through native `codex`. `openai/gpt-5.6-sol` is the same kind of selector and stays admitted.
236
236
 
237
237
  ### What the brake refuses
238
238
 
@@ -249,7 +249,7 @@ The brake runs wherever KXM starts Pi on a model: in the dispatch probe that eac
249
249
  | How the id names the vendor | Refused examples | Message |
250
250
  |---|---|---|
251
251
  | The provider is the vendor | `anthropic/…`, `openai/…`, `xai/…`, `moonshot/…`, `google/…`, `deepseek/…` | `pi must not impersonate native provider xai; use the native harness` |
252
- | A Pi provider that belongs to the vendor | `openai-codex/…`, `moonshotai/…`, `moonshotai-cn/…`, `kimi-coding/…`, `google-vertex/…`, `claude-bridge/…`, and `antigravity/…` except Gemini ids | `pi provider openai-codex bills native vendor openai for gpt-5.6-sol; use the native harness` |
252
+ | A Pi provider that belongs to the vendor | `openai-codex/…`, `moonshotai/…`, `moonshotai-cn/…`, `kimi-coding/…`, `google-vertex/…`, `claude-bridge/…`, and `antigravity/…` except Gemini ids | `pi provider openai-codex bills native vendor openai for gpt-6.1-sol; use the native harness` |
253
253
  | The vendor segment of an aggregator id, including the aliases `x-ai`, `moonshotai` and `google-ai` | `openrouter/x-ai/grok-4.6`, `openrouter/anthropic/claude-fable-5.1`, `nous-portal/google/…` | `pi must not bill native vendor xai through openrouter; use the native harness` |
254
254
 
255
255
  The brake accepts `antigravity/gemini-…` and any id whose vendor has no native harness, such as `openrouter/qwen/qwen3-coder-plus`, `zai-coding-cn/glm-5.3` or `qwen-token-plan/qwen3.8-flash`. Passing the brake is not admission: the route must still be admitted. The hosting refusal at dispatch reads `grok_not_authenticated: grok harness not detected (harness_unhosted_model)`.
@@ -367,18 +367,22 @@ pi auth check --provider xai --json --no-refresh
367
367
  {"status":"ready","provider":"xai","authType":"oauth"}
368
368
  ```
369
369
 
370
- ### GPT-5.6 Sol
370
+ ### GPT-6.1 Sol
371
371
 
372
372
  | | Native `codex` | Pi + OpenRouter |
373
373
  |---|---|---|
374
- | Model file | `harness: codex`, `model: gpt-5.6-sol`, `vendor: openai` | `harness: pi`, `model: openrouter/openai/gpt-5.6-sol`, `vendor: openai` |
375
- | Selector | `openai/gpt-5.6-sol` | `openrouter/openai/gpt-5.6-sol` |
374
+ | Model file | `harness: codex`, `model: gpt-6.1-sol`, `vendor: openai` | `harness: pi`, `model: openrouter/openai/gpt-6.1-sol`, `vendor: openai` |
375
+ | Selector | `openai/gpt-6.1-sol`: admitted, the CLI critic | `openrouter/openai/gpt-6.1-sol` |
376
376
  | Readiness | Needs `codex` auth `yes` with `authMethod: ChatGPT` | Never reached: the brake refuses it first |
377
- | Billing | ChatGPT subscription | OpenRouter credit |
377
+ | Billing | ChatGPT subscription. List price $2 / $10 per 1M tokens through 272,000 prompt tokens ($0.10 cached input, $2.50 cache write), then $4 / $15 | OpenRouter credit, same per-token list price |
378
378
  | Recorded `costBasis` | `unmetered`, `priceRef: subscription:codex` | None: refused before dispatch |
379
- | Mode | One-shot `codex exec --json -` | Refused |
379
+ | Mode | One-shot `codex exec --json -`. Reasoning is mandatory (`low`, `medium`, `high`, `xhigh`, `max`) | Refused |
380
380
 
381
- **KXM picks the native route.** Two traps apply here. The first is `openai-codex/gpt-5.6-sol`, which is the same ChatGPT subscription driven through Pi. `pi auth check --provider openai-codex` can report `ready`, but readiness is not permission: the brake refuses `openai-codex` as OpenAI's own Pi provider. The second is a codex login made with an API key: the row shows `API key`, and the run records `unknown`.
381
+ `codex-gpt-6-1-sol` is the `reviewer-cli` primary at effort `low`. `pi-qwen3-8-flash-openrouter` is the other-vendor fallback. `codex-gpt-5-6-sol` stays admitted as the last fallback. Architecture review stays `claude-fable`, then `pi-glm-5-3-flash-openrouter`.
382
+
383
+ Pro is not a separate model. It is `gpt-6.1-sol` with reasoning mode `pro`. OpenRouter lists that mode as `openai/gpt-6.1-sol-pro` at the same per-token price. A route id is `<harness>-<model-slug>`, role `effort` has no `pro` value, and the codex harness ceiling is `reviewer-cli` only. There is no pro architecture-review fallback.
384
+
385
+ **KXM picks the native route.** Two traps apply here. The first is `openai-codex/gpt-6.1-sol`, which is the same ChatGPT subscription driven through Pi. `pi auth check --provider openai-codex` can report `ready`, but readiness is not permission: the brake refuses `openai-codex` as OpenAI's own Pi provider. The second is a codex login made with an API key: the row shows `API key`, and the run records `unknown`. `openai/gpt-5.6-sol` is the same shape of selector and stays admitted. On OpenRouter it now lists at $4 / $20 per 1M tokens.
382
386
 
383
387
  ```bash
384
388
  pi auth check --provider openai-codex --json --no-refresh
@@ -26,7 +26,7 @@ details:
26
26
  - kind: "review-cli"
27
27
  role: "reviewer-cli"
28
28
  harness: "codex"
29
- model: "gpt-5.6-sol"
29
+ model: "gpt-6.1-sol"
30
30
  verdict: "PASS" # PASS | BLOCK
31
31
  ---
32
32
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kontextmind/kxm",
3
- "version": "0.7.184",
3
+ "version": "0.7.185",
4
4
  "description": "KXM local-first multi-agent orchestration and operator dashboard",
5
5
  "type": "module",
6
6
  "author": "KontextMind",
@@ -2,7 +2,7 @@
2
2
  "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3
3
  "name": "kxm",
4
4
  "displayName": "KXM",
5
- "version": "0.7.184",
5
+ "version": "0.7.185",
6
6
  "description": "Headless multi-agent orchestration, durable workflows, and a live operator dashboard for Pi and Claude Code",
7
7
  "author": {
8
8
  "name": "KontextMind",
@@ -18617,6 +18617,7 @@ var init_workforce_names = __esm({
18617
18617
  ["qwen-openrouter-pi", "pi-qwen3-coder-plus-openrouter"],
18618
18618
  ["gemini-agy", "agy-gemini-4-argon-high"],
18619
18619
  ["fable-claude", "claude-fable"],
18620
+ // sol-codex stays the GPT-5.6 route. codex-gpt-6-1-sol is a separate route.
18620
18621
  ["sol-codex", "codex-gpt-5-6-sol"],
18621
18622
  ["grok-default", "grok-grok-4-6"],
18622
18623
  ["fable-default", "claude-fable"]
@@ -25462,7 +25462,7 @@ function sessionTokenFixHint(policy) {
25462
25462
  }
25463
25463
 
25464
25464
  // plugins/kxm/src/mcp-server.ts
25465
- var VERSION = "0.7.184";
25465
+ var VERSION = "0.7.185";
25466
25466
  var CONFIGURE_PLUGIN = "/plugin configure kxm@kxm";
25467
25467
  var inbox = /* @__PURE__ */ new Map();
25468
25468
  var notifiedInbox = /* @__PURE__ */ new Set();
@@ -15546,6 +15546,7 @@ var ROUTE_RENAMES = Object.freeze([
15546
15546
  ["qwen-openrouter-pi", "pi-qwen3-coder-plus-openrouter"],
15547
15547
  ["gemini-agy", "agy-gemini-4-argon-high"],
15548
15548
  ["fable-claude", "claude-fable"],
15549
+ // sol-codex stays the GPT-5.6 route. codex-gpt-6-1-sol is a separate route.
15549
15550
  ["sol-codex", "codex-gpt-5-6-sol"],
15550
15551
  ["grok-default", "grok-grok-4-6"],
15551
15552
  ["fable-default", "claude-fable"]
@@ -15519,6 +15519,7 @@ var ROUTE_RENAMES = Object.freeze([
15519
15519
  ["qwen-openrouter-pi", "pi-qwen3-coder-plus-openrouter"],
15520
15520
  ["gemini-agy", "agy-gemini-4-argon-high"],
15521
15521
  ["fable-claude", "claude-fable"],
15522
+ // sol-codex stays the GPT-5.6 route. codex-gpt-6-1-sol is a separate route.
15522
15523
  ["sol-codex", "codex-gpt-5-6-sol"],
15523
15524
  ["grok-default", "grok-grok-4-6"],
15524
15525
  ["fable-default", "claude-fable"]
@@ -15011,6 +15011,7 @@ var ROUTE_RENAMES = Object.freeze([
15011
15011
  ["qwen-openrouter-pi", "pi-qwen3-coder-plus-openrouter"],
15012
15012
  ["gemini-agy", "agy-gemini-4-argon-high"],
15013
15013
  ["fable-claude", "claude-fable"],
15014
+ // sol-codex stays the GPT-5.6 route. codex-gpt-6-1-sol is a separate route.
15014
15015
  ["sol-codex", "codex-gpt-5-6-sol"],
15015
15016
  ["grok-default", "grok-grok-4-6"],
15016
15017
  ["fable-default", "claude-fable"]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-plugin",
3
- "version": "0.7.184",
3
+ "version": "0.7.185",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "engines": {
@@ -11,7 +11,7 @@ import { deliverInboxNotification } from "./inbox.ts";
11
11
  import type { HubEvent, MessageRecord } from "./protocol.ts";
12
12
  import { sessionTokenFixHint } from "./session-token-hint.ts";
13
13
 
14
- const VERSION = "0.7.184";
14
+ const VERSION = "0.7.185";
15
15
  const CONFIGURE_PLUGIN = "/plugin configure kxm@kxm";
16
16
  const inbox = new Map<string, MessageRecord>();
17
17
  const notifiedInbox = new Set<string>();
@@ -35,6 +35,7 @@ export const ROUTE_RENAMES = Object.freeze([
35
35
  ["qwen-openrouter-pi", "pi-qwen3-coder-plus-openrouter"],
36
36
  ["gemini-agy", "agy-gemini-4-argon-high"],
37
37
  ["fable-claude", "claude-fable"],
38
+ // sol-codex stays the GPT-5.6 route. codex-gpt-6-1-sol is a separate route.
38
39
  ["sol-codex", "codex-gpt-5-6-sol"],
39
40
  ["grok-default", "grok-grok-4-6"],
40
41
  ["fable-default", "claude-fable"],
@@ -141,7 +141,7 @@ export const ATTRIBUTION_CLASSES = Object.freeze(["orchestration", "model", "env
141
141
  export const ACCEPTED_NOTE = "developer record; not human approval, hub peer evidence, CI success, or merged/released status";
142
142
  export const REQUIRED_ACCEPT_CRITICS = Object.freeze({
143
143
  "review-arch": Object.freeze({ harness: "claude", model: "fable", role: "reviewer-arch" }),
144
- "review-cli": Object.freeze({ harness: "codex", model: "gpt-5.6-sol", role: "reviewer-cli" }),
144
+ "review-cli": Object.freeze({ harness: "codex", model: "gpt-6.1-sol", role: "reviewer-cli" }),
145
145
  });
146
146
  export const ASSIGNMENT_KINDS = Object.freeze([
147
147
  "plan",
@@ -164,7 +164,7 @@ export const ROUTES = Object.freeze({
164
164
  provider: "openai",
165
165
  roles: Object.freeze(["reviewer-cli"]),
166
166
  permissions: Object.freeze(["read-only"]),
167
- models: Object.freeze(["gpt-5.6-sol"]),
167
+ models: Object.freeze(["gpt-6.1-sol", "gpt-5.6-sol"]),
168
168
  efforts: Object.freeze(["low", "medium", "high"]),
169
169
  auth: Object.freeze({ args: ["login", "status"], loginHint: "codex login" }),
170
170
  },