@dreb/coding-agent 2.60.1 → 2.61.1
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.
- package/README.md +6 -4
- package/dist/cli/args.d.ts +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +2 -2
- package/dist/cli/args.js.map +1 -1
- package/dist/core/agent-session.d.ts +49 -6
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +122 -25
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/dispatch-arbiter.d.ts.map +1 -1
- package/dist/core/dispatch-arbiter.js +2 -2
- package/dist/core/dispatch-arbiter.js.map +1 -1
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +1 -0
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/settings-manager.d.ts +4 -4
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/thinking.d.ts.map +1 -1
- package/dist/core/thinking.js +9 -1
- package/dist/core/thinking.js.map +1 -1
- package/dist/core/tools/index.d.ts +6 -6
- package/dist/core/tools/subagent.d.ts +9 -9
- package/dist/core/tools/subagent.d.ts.map +1 -1
- package/dist/core/tools/subagent.js +4 -2
- package/dist/core/tools/subagent.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +6 -1
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +3 -2
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +2 -1
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts +7 -2
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js +19 -12
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +27 -12
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/theme/dark.json +1 -6
- package/dist/modes/interactive/theme/light.json +1 -6
- package/dist/modes/interactive/theme/theme-schema.json +10 -2
- package/dist/modes/interactive/theme/theme.d.ts +2 -2
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +9 -3
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts +1 -0
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +2 -1
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +2 -1
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-types.d.ts +3 -0
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-types.js.map +1 -1
- package/docs/agent-models.md +1 -1
- package/docs/custom-provider.md +2 -2
- package/docs/extensions.md +1 -1
- package/docs/models.md +3 -1
- package/docs/rpc.md +21 -10
- package/docs/sdk.md +1 -1
- package/docs/settings.md +2 -2
- package/docs/themes.md +3 -1
- package/docs/tree.md +1 -1
- package/docs/tui.md +1 -1
- package/examples/extensions/dynamic-resources/dynamic.json +1 -0
- package/examples/extensions/preset.ts +1 -1
- package/package.json +1 -1
package/docs/rpc.md
CHANGED
|
@@ -225,6 +225,7 @@ Response:
|
|
|
225
225
|
{"id": "inspect", "title": "Inspect the implementation", "status": "in_progress"}
|
|
226
226
|
],
|
|
227
227
|
"thinkingLevel": "medium",
|
|
228
|
+
"availableThinkingLevels": ["off", "minimal", "low", "medium", "high", "xhigh"],
|
|
228
229
|
"isStreaming": false,
|
|
229
230
|
"isRetrying": false,
|
|
230
231
|
"retryAttempt": 0,
|
|
@@ -486,9 +487,9 @@ Set the reasoning/thinking level for models that support it.
|
|
|
486
487
|
{"type": "set_thinking_level", "level": "high"}
|
|
487
488
|
```
|
|
488
489
|
|
|
489
|
-
Levels: `"off"`, `"minimal"`, `"low"`, `"medium"`, `"high"`, `"xhigh"`
|
|
490
|
+
Levels: `"off"`, `"minimal"`, `"low"`, `"medium"`, `"high"`, `"xhigh"`, `"max"`
|
|
490
491
|
|
|
491
|
-
Note: `"xhigh"` is supported by GPT-5.2 through GPT-5.6 model families, Claude Opus 4.6–4.x and Claude 5 families (where it maps to adaptive effort `"max"`), and Kimi Code K3.
|
|
492
|
+
Note: `"xhigh"` is supported by GPT-5.2 through GPT-5.6 model families, Claude Opus 4.6–4.x and Claude 5 families (where it maps to adaptive effort `"max"`), and Kimi Code K3. The separate normalized `"max"` tier is model-aware and currently supported by GPT-5.6 aliases and Sol/Terra/Luna variants.
|
|
492
493
|
|
|
493
494
|
Response:
|
|
494
495
|
```json
|
|
@@ -906,13 +907,13 @@ The path uses the same unrestricted, cross-project addressing as [`switch_sessio
|
|
|
906
907
|
|
|
907
908
|
#### fork
|
|
908
909
|
|
|
909
|
-
Create a new fork from
|
|
910
|
+
Create a new fork from any user or assistant message in the transcript. Can be cancelled by a `session_before_fork` extension event handler. For a **user** message the response `text` is that message's text (offered as editor pre-fill for re-asking) and the branch rewinds to before it; for an **assistant** message the branch *includes* that response (continue from that answer) and `text` is empty. Assistant turns that were interrupted (`error`/`aborted`) or are still waiting on tool results are not valid fork points and are rejected.
|
|
910
911
|
|
|
911
912
|
```json
|
|
912
913
|
{"type": "fork", "entryId": "abc123"}
|
|
913
914
|
```
|
|
914
915
|
|
|
915
|
-
Response:
|
|
916
|
+
Response (forking at a user message — text is offered as editor pre-fill):
|
|
916
917
|
```json
|
|
917
918
|
{
|
|
918
919
|
"type": "response",
|
|
@@ -922,7 +923,17 @@ Response:
|
|
|
922
923
|
}
|
|
923
924
|
```
|
|
924
925
|
|
|
925
|
-
|
|
926
|
+
Response (forking at an assistant message — no pre-fill):
|
|
927
|
+
```json
|
|
928
|
+
{
|
|
929
|
+
"type": "response",
|
|
930
|
+
"command": "fork",
|
|
931
|
+
"success": true,
|
|
932
|
+
"data": {"text": "", "cancelled": false}
|
|
933
|
+
}
|
|
934
|
+
```
|
|
935
|
+
|
|
936
|
+
If an extension cancelled the fork, `text` still mirrors what the corresponding successful fork would have returned — the user message's text for a user-message fork, or `""` for an assistant-message fork:
|
|
926
937
|
```json
|
|
927
938
|
{
|
|
928
939
|
"type": "response",
|
|
@@ -934,7 +945,7 @@ If an extension cancelled the fork:
|
|
|
934
945
|
|
|
935
946
|
#### get_fork_messages
|
|
936
947
|
|
|
937
|
-
Get
|
|
948
|
+
Get the messages available for forking (both user and assistant). Each entry carries its `role` so callers can label it and choose the right fork semantics.
|
|
938
949
|
|
|
939
950
|
```json
|
|
940
951
|
{"type": "get_fork_messages"}
|
|
@@ -948,8 +959,8 @@ Response:
|
|
|
948
959
|
"success": true,
|
|
949
960
|
"data": {
|
|
950
961
|
"messages": [
|
|
951
|
-
{"entryId": "abc123", "text": "First prompt..."},
|
|
952
|
-
{"entryId": "def456", "text": "
|
|
962
|
+
{"entryId": "abc123", "text": "First prompt...", "role": "user"},
|
|
963
|
+
{"entryId": "def456", "text": "The answer...", "role": "assistant"}
|
|
953
964
|
]
|
|
954
965
|
}
|
|
955
966
|
}
|
|
@@ -1510,7 +1521,7 @@ Valid keys and values:
|
|
|
1510
1521
|
| Key | Values |
|
|
1511
1522
|
|-----|--------|
|
|
1512
1523
|
| `defaultProvider` + `defaultModel` | Must be supplied together; must match a model from `get_available_models` |
|
|
1513
|
-
| `defaultThinkingLevel` | `"off"`, `"minimal"`, `"low"`, `"medium"`, `"high"`, `"xhigh"` (validated against the full set — a stored default is not tied to the current model's capabilities) |
|
|
1524
|
+
| `defaultThinkingLevel` | `"off"`, `"minimal"`, `"low"`, `"medium"`, `"high"`, `"xhigh"`, `"max"` (validated against the full set — a stored default is not tied to the current model's capabilities) |
|
|
1514
1525
|
| `steeringMode` | `"all"`, `"one-at-a-time"` |
|
|
1515
1526
|
| `followUpMode` | `"all"`, `"one-at-a-time"` |
|
|
1516
1527
|
| `compactionEnabled` | boolean |
|
|
@@ -1531,7 +1542,7 @@ Errors are explicit `success: false` responses (nothing is applied on any of the
|
|
|
1531
1542
|
|
|
1532
1543
|
- Missing/empty payload: `set_settings requires at least one setting to change`
|
|
1533
1544
|
- Unknown key: `Unknown settings key(s): ...`
|
|
1534
|
-
- Invalid enum value: `Invalid defaultThinkingLevel: "extreme". Valid values: off, minimal, low, medium, high, xhigh`
|
|
1545
|
+
- Invalid enum value: `Invalid defaultThinkingLevel: "extreme". Valid values: off, minimal, low, medium, high, xhigh, max`
|
|
1535
1546
|
- Invalid transport: `Invalid transport: "http". Valid values: sse, websocket, auto`
|
|
1536
1547
|
- Non-boolean toggle: `Invalid retryEnabled: "yes". Must be a boolean`
|
|
1537
1548
|
- Invalid `agentModels` object: `Invalid agentModels: must be a plain object mapping agent names to model fallback arrays`
|
package/docs/sdk.md
CHANGED
|
@@ -306,7 +306,7 @@ const available = await modelRegistry.getAvailable();
|
|
|
306
306
|
|
|
307
307
|
const { session } = await createAgentSession({
|
|
308
308
|
model: opus,
|
|
309
|
-
thinkingLevel: "medium", // off, minimal, low, medium, high, xhigh
|
|
309
|
+
thinkingLevel: "medium", // off, minimal, low, medium, high, xhigh, max
|
|
310
310
|
|
|
311
311
|
// Models for cycling (bindable via keybindings.json)
|
|
312
312
|
scopedModels: [
|
package/docs/settings.md
CHANGED
|
@@ -17,7 +17,7 @@ Edit directly or use `/settings` for common options.
|
|
|
17
17
|
|---------|------|---------|-------------|
|
|
18
18
|
| `defaultProvider` | string | - | Default provider (e.g., `"anthropic"`, `"openai"`) |
|
|
19
19
|
| `defaultModel` | string | - | Default model ID |
|
|
20
|
-
| `defaultThinkingLevel` | string | - | `"off"`, `"minimal"`, `"low"`, `"medium"`, `"high"`, `"xhigh"` |
|
|
20
|
+
| `defaultThinkingLevel` | string | - | `"off"`, `"minimal"`, `"low"`, `"medium"`, `"high"`, `"xhigh"`, `"max"` |
|
|
21
21
|
| `hideThinkingBlock` | boolean | `false` | Hide thinking blocks in output |
|
|
22
22
|
| `thinkingBudgets` | object | - | Custom token budgets per thinking level |
|
|
23
23
|
| `agentModels.models` | object | - | Per-agent model fallback lists for subagents (map of agent name → ordered model IDs). See [agent-models.md](agent-models.md) |
|
|
@@ -285,7 +285,7 @@ The optional Dispatch Arbiter is a fully headless, tool-less model call in the s
|
|
|
285
285
|
|---------|------|---------|-------------|
|
|
286
286
|
| `subagentArbiter.enabled` | boolean | `false` | Run fail-closed arbitration before every actual child spawn |
|
|
287
287
|
| `subagentArbiter.model` | string | - | Required when enabled; exact canonical `provider/model` used for the direct arbiter call |
|
|
288
|
-
| `subagentArbiter.thinking` | string | `off` | Optional arbiter-call thinking: `off`, `minimal`, `low`, `medium`, `high`, or `
|
|
288
|
+
| `subagentArbiter.thinking` | string | `off` | Optional arbiter-call thinking: `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, or `max`; explicit values are capability-validated |
|
|
289
289
|
| `subagentArbiter.guidePath` | string | `~/.dreb/agent/model-routing-guide.md` | Routing guide generated by `/skill:model-routing-guide`; `~` expands normally and relative paths resolve against the child cwd |
|
|
290
290
|
|
|
291
291
|
```json
|
package/docs/themes.md
CHANGED
|
@@ -109,6 +109,7 @@ vim ~/.dreb/agent/themes/my-theme.json
|
|
|
109
109
|
"thinkingMedium": "#00ffff",
|
|
110
110
|
"thinkingHigh": "#ff00ff",
|
|
111
111
|
"thinkingXhigh": "#ff0000",
|
|
112
|
+
"thinkingMax": "#ff1493",
|
|
112
113
|
"bashMode": "#ffaa00"
|
|
113
114
|
}
|
|
114
115
|
}
|
|
@@ -216,7 +217,7 @@ Every theme must define all 51 color tokens. There are no optional colors.
|
|
|
216
217
|
| `syntaxOperator` | Operators |
|
|
217
218
|
| `syntaxPunctuation` | Punctuation |
|
|
218
219
|
|
|
219
|
-
### Thinking Level Borders (
|
|
220
|
+
### Thinking Level Borders (7 colors)
|
|
220
221
|
|
|
221
222
|
Editor border colors indicating thinking level (visual hierarchy from subtle to prominent):
|
|
222
223
|
|
|
@@ -228,6 +229,7 @@ Editor border colors indicating thinking level (visual hierarchy from subtle to
|
|
|
228
229
|
| `thinkingMedium` | Medium thinking |
|
|
229
230
|
| `thinkingHigh` | High thinking |
|
|
230
231
|
| `thinkingXhigh` | Extra high thinking |
|
|
232
|
+
| `thinkingMax` | Maximum thinking effort |
|
|
231
233
|
|
|
232
234
|
### Bash Mode (1 color)
|
|
233
235
|
|
package/docs/tree.md
CHANGED
|
@@ -10,7 +10,7 @@ Sessions are stored as trees where each entry has an `id` and `parentId`. The "l
|
|
|
10
10
|
|
|
11
11
|
| Feature | `/fork` | `/tree` |
|
|
12
12
|
|---------|---------|---------|
|
|
13
|
-
| View | Flat list of user messages | Full tree structure |
|
|
13
|
+
| View | Flat list of user and assistant messages | Full tree structure |
|
|
14
14
|
| Action | Extracts path to **new session file** | Changes leaf in **same session** |
|
|
15
15
|
| Summary | Never | Optional (user prompted) |
|
|
16
16
|
| Events | `session_before_fork` / `session_fork` | `session_before_tree` / `session_tree` |
|
package/docs/tui.md
CHANGED
|
@@ -415,7 +415,7 @@ renderResult(result, options, theme, context) {
|
|
|
415
415
|
| Diffs | `toolDiffAdded`, `toolDiffRemoved`, `toolDiffContext` |
|
|
416
416
|
| Markdown | `mdHeading`, `mdLink`, `mdLinkUrl`, `mdCode`, `mdCodeBlock`, `mdCodeBlockBorder`, `mdQuote`, `mdQuoteBorder`, `mdHr`, `mdListBullet` |
|
|
417
417
|
| Syntax | `syntaxComment`, `syntaxKeyword`, `syntaxFunction`, `syntaxVariable`, `syntaxString`, `syntaxNumber`, `syntaxType`, `syntaxOperator`, `syntaxPunctuation` |
|
|
418
|
-
| Thinking | `thinkingOff`, `thinkingMinimal`, `thinkingLow`, `thinkingMedium`, `thinkingHigh`, `thinkingXhigh` |
|
|
418
|
+
| Thinking | `thinkingOff`, `thinkingMinimal`, `thinkingLow`, `thinkingMedium`, `thinkingHigh`, `thinkingXhigh`, `thinkingMax` |
|
|
419
419
|
| Modes | `bashMode` |
|
|
420
420
|
|
|
421
421
|
**Background colors** (`theme.bg(color, text)`):
|
|
@@ -51,7 +51,7 @@ interface Preset {
|
|
|
51
51
|
/** Model ID (e.g., "claude-sonnet-4-5") */
|
|
52
52
|
model?: string;
|
|
53
53
|
/** Thinking level */
|
|
54
|
-
thinkingLevel?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh";
|
|
54
|
+
thinkingLevel?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
|
|
55
55
|
/** Tools to enable (replaces default set) */
|
|
56
56
|
tools?: string[];
|
|
57
57
|
/** Instructions to append to system prompt */
|