@dreb/coding-agent 2.71.0 → 2.72.0
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 +1 -1
- package/dist/core/agent-session.d.ts +3 -9
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +19 -51
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/thinking.d.ts +2 -0
- package/dist/core/thinking.d.ts.map +1 -1
- package/dist/core/thinking.js +20 -14
- package/dist/core/thinking.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +6 -8
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +9 -5
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/agent-models.md +1 -1
- package/docs/models.md +1 -1
- package/docs/providers.md +26 -0
- package/docs/rpc.md +1 -1
- package/package.json +1 -1
package/docs/agent-models.md
CHANGED
|
@@ -54,7 +54,7 @@ Configure it in `settings.json` (global file, with the standard project-level ov
|
|
|
54
54
|
|
|
55
55
|
The `subagent` tool accepts an optional `thinking` value in single mode, at the top level for parallel/chain inheritance, or on an individual task/step. Per-task values win over the top-level value.
|
|
56
56
|
|
|
57
|
-
Supported values are `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, and `max`. Validation happens after the child model resolves: non-`off` levels fail for non-reasoning models, `xhigh` requires advertised xhigh support, and `max` requires a max-capable model (currently the GPT-5.6 family including Sol, Terra, and Luna,
|
|
57
|
+
Supported values are `off`, `minimal`, `low`, `medium`, `high`, `xhigh`, and `max`. Validation happens after the child model resolves: non-`off` levels fail for non-reasoning models, `off` fails for models whose thinking cannot be turned off (Claude Opus 5.5 — use `minimal` or `low`), `xhigh` requires advertised xhigh support, and `max` requires a max-capable model (currently the GPT-5.6 family including Sol, Terra, and Luna, the GPT-6 family including Astra, and Claude Opus/Sonnet 4.6+ and Haiku 5.5 on Anthropic, GitHub Copilot, and Bedrock). `max` does not replace `xhigh`. Codex `ultra` additionally enables client-side multi-agent orchestration, so it is not accepted or sent as a raw effort. Omit the field to preserve the child's normal default/settings behavior. The child's actual effective level is reported in its `agent_start` event, result metadata, and `background_agent_end` event.
|
|
58
58
|
|
|
59
59
|
## Evidence-based Routing Guide
|
|
60
60
|
|
package/docs/models.md
CHANGED
|
@@ -346,7 +346,7 @@ For providers with partial OpenAI compatibility, use the `compat` field.
|
|
|
346
346
|
| `openRouterRouting` | OpenRouter routing config passed to OpenRouter for model/provider selection |
|
|
347
347
|
| `vercelGatewayRouting` | Vercel AI Gateway routing config for provider selection (`only`, `order`) |
|
|
348
348
|
|
|
349
|
-
The normalized scale is `minimal`, `low`, `medium`, `high`, `xhigh`, and `max` (`off` disables reasoning at the session layer). Native normalized `max` is model-aware and currently supported by GPT-5.6 aliases and Sol/Terra/Luna variants,
|
|
349
|
+
The normalized scale is `minimal`, `low`, `medium`, `high`, `xhigh`, and `max` (`off` disables reasoning at the session layer). Native normalized `max` is model-aware and currently supported by GPT-5.6 aliases and Sol/Terra/Luna variants, the GPT-6 family (Astra and future variants), and Claude Opus/Sonnet 4.6+ and Haiku 5.5 on Anthropic-native transports (`anthropic-messages`, including GitHub Copilot, and Bedrock); unsupported defaults fall back `max` → `xhigh` → `high`, and an unsupported `xhigh` falls back to `max` where the model has it (Claude Opus/Sonnet 4.6), otherwise `high`. On Anthropic-native transports Claude `xhigh` and `max` are sent as Anthropic's native efforts of the same name. Capability detection is by model id, so custom `models.json` Claude entries (including `anthropic/claude-*` ids on an Anthropic-compatible endpoint) get the same behavior. When reasoning is off, dreb sends each Claude model's own off config: `thinking: {type: "disabled"}` for most models, `{type: "between_tools"}` for Sonnet 5.5, and no `thinking` field or effort for Opus 5.5 (its thinking cannot be turned off, so the session offers `minimal` as its lowest level). Codex `ultra` also enables local multi-agent orchestration and is therefore not a raw effort value.
|
|
350
350
|
|
|
351
351
|
`qwen` uses top-level `enable_thinking`. Use `qwen-chat-template` for local Qwen-compatible servers that require `chat_template_kwargs.enable_thinking`. When reasoning is enabled, dreb sends the mapped effort as a top-level `reasoning_effort`; Qwen3.8+ models default-map dreb's levels onto the three native tiers (`minimal`/`low` → `low`, `medium` → `medium`, `high`/`xhigh`/`max` → `xhigh`).
|
|
352
352
|
|
package/docs/providers.md
CHANGED
|
@@ -8,6 +8,7 @@ dreb supports subscription-based providers via OAuth and API key providers via e
|
|
|
8
8
|
- [Subscriptions](#subscriptions)
|
|
9
9
|
- [API Keys](#api-keys)
|
|
10
10
|
- [Auth File](#auth-file)
|
|
11
|
+
- [Claude Thinking Levels](#claude-thinking-levels)
|
|
11
12
|
- [Cloud Providers](#cloud-providers)
|
|
12
13
|
- [Custom Providers](#custom-providers)
|
|
13
14
|
- [Resolution Order](#resolution-order)
|
|
@@ -37,6 +38,14 @@ Use `/logout` to clear credentials. Tokens are stored in `~/.dreb/agent/auth.jso
|
|
|
37
38
|
- If you get "model not supported", enable it in VS Code: Copilot Chat → model selector → select model → "Enable"
|
|
38
39
|
- GPT-6 models, including `github-copilot/gpt-6-astra`, use the Responses API. Astra supports `xhigh` and native `max` thinking; access depends on the subscription and enabled models.
|
|
39
40
|
- For adaptive Claude models such as Opus 4.8, readable thinking requires `thinkingDisplay: "summarized"` in SDK calls; enabling thinking alone can return only opaque signatures. See [thinking display](../../ai/README.md#controlling-thinking-display-anthropic-adaptive-models).
|
|
41
|
+
- Copilot Claude Opus, Sonnet, and Haiku (4.x and 5.x) use Copilot's Anthropic Messages endpoint (`/v1/messages`) and follow the same [per-model Claude thinking rules](#claude-thinking-levels) as the Anthropic API: native `xhigh`/`max` effort, `between_tools` for Sonnet 5.5 when thinking is off, and no `off` level for Opus 5.5. Copilot Fable still uses the OpenAI Completions API, which receives no reasoning field.
|
|
42
|
+
- **Model discovery:** at login and on every Copilot token refresh, dreb reads Copilot's `/models` for your account and stores the result with the OAuth credential. Once discovery has succeeded:
|
|
43
|
+
- Built-in Copilot models your plan or organization doesn't offer (or has disabled) are hidden from `/model`. Custom `models.json` entries stay.
|
|
44
|
+
- A model whose built-in API endpoint Copilot doesn't serve switches to one it does (`/responses`, then `/chat/completions`).
|
|
45
|
+
|
|
46
|
+
Thinking levels and limits still come from dreb's built-in catalog, and models released after your dreb version appear after the next update (or can be added through `models.json`).
|
|
47
|
+
|
|
48
|
+
If discovery fails, the last discovered list (or the built-in catalog) is used. The model list updates when the model selector opens or dreb restarts.
|
|
40
49
|
- A registry context window can be lower than the endpoint's hard limit. Accepting a larger request does not change dreb's configured window. Usage-based overflow detection includes uncached input, cache reads, and cache writes.
|
|
41
50
|
|
|
42
51
|
### Google Providers
|
|
@@ -133,6 +142,21 @@ The `key` field supports three formats:
|
|
|
133
142
|
|
|
134
143
|
OAuth credentials are also stored here after `/login` and managed automatically.
|
|
135
144
|
|
|
145
|
+
## Claude Thinking Levels
|
|
146
|
+
|
|
147
|
+
On Anthropic-native transports — the Anthropic Messages API (Anthropic, GitHub Copilot, opencode, and custom Anthropic-compatible endpoints) plus Amazon Bedrock — dreb picks Claude thinking and effort fields per model. Capability detection is by model id, so custom `models.json` entries behave the same as built-in ones.
|
|
148
|
+
|
|
149
|
+
| Model | Thinking on | dreb `off` sends | `off` offered | `xhigh` | `max` |
|
|
150
|
+
|---|---|---|---|---|---|
|
|
151
|
+
| Opus/Sonnet/Haiku 4.5 and older | budget (`enabled`) | `disabled` | ✓ | ✗ | ✗ |
|
|
152
|
+
| Opus 4.6, Sonnet 4.6 | adaptive + effort | `disabled` | ✓ | ✗ (uses `max`) | ✓ |
|
|
153
|
+
| Opus 4.7/4.8, Opus 5, Sonnet 5 | adaptive + effort | `disabled` | ✓ | ✓ | ✓ |
|
|
154
|
+
| Opus 5.5 | adaptive + effort | no `thinking` field or effort (model default) | ✗ (uses `minimal`) | ✓ | ✓ |
|
|
155
|
+
| Sonnet 5.5 | adaptive + effort | `between_tools` | ✓ | ✓ | ✓ |
|
|
156
|
+
| Haiku 5.5 | adaptive + effort | `disabled` | ✓ | ✓ | ✓ |
|
|
157
|
+
|
|
158
|
+
Effort mapping: `minimal`/`low` → `low`, `medium` → `medium`, `high` → `high`, `xhigh` → `xhigh`, `max` → `max`. No effort is sent while thinking is off. Background calls that send no reasoning (compaction, tab titles, an arbiter with no `thinking` set) to Opus 5.5 therefore run at the model's default effort. Claude served through OpenAI-compatible APIs (OpenRouter, Copilot Fable) keeps its existing mapping.
|
|
159
|
+
|
|
136
160
|
## Cloud Providers
|
|
137
161
|
|
|
138
162
|
### Azure OpenAI
|
|
@@ -171,6 +195,8 @@ Also supports ECS task roles (`AWS_CONTAINER_CREDENTIALS_*`) and IRSA (`AWS_WEB_
|
|
|
171
195
|
dreb --provider amazon-bedrock --model us.anthropic.claude-sonnet-4-20250514-v1:0
|
|
172
196
|
```
|
|
173
197
|
|
|
198
|
+
Claude thinking on Bedrock follows the same per-model rules as the Anthropic API (see [Claude thinking levels](#claude-thinking-levels)). When reasoning is off, Claude 5-generation models (Opus 5, Sonnet 5/5.5, Haiku 5.5), which think by default, receive an explicit off config in `additionalModelRequestFields` (`disabled`, or `between_tools` for Sonnet 5.5); Opus 5.5 gets no thinking field, and older Claude models keep the previous behavior of omitting it.
|
|
199
|
+
|
|
174
200
|
Prompt caching is enabled automatically for Claude models whose ID contains a recognizable model name (base models and system-defined inference profiles). For application inference profiles (whose ARNs don't contain the model name), set `AWS_BEDROCK_FORCE_CACHE=1` to enable cache points:
|
|
175
201
|
|
|
176
202
|
```bash
|
package/docs/rpc.md
CHANGED
|
@@ -514,7 +514,7 @@ Set the reasoning/thinking level for models that support it.
|
|
|
514
514
|
|
|
515
515
|
Levels: `"off"`, `"minimal"`, `"low"`, `"medium"`, `"high"`, `"xhigh"`, `"max"`
|
|
516
516
|
|
|
517
|
-
Note: `"xhigh"` is supported by GPT-5.2 through GPT-5.6 model families, the GPT-6 family (Astra and future variants), Claude Opus 4.
|
|
517
|
+
Note: `"xhigh"` is supported by GPT-5.2 through GPT-5.6 model families, the GPT-6 family (Astra and future variants), Claude Opus 4.7+, Sonnet 5+ and Haiku 5.5 on Anthropic, GitHub Copilot and Bedrock (sent as native effort `"xhigh"`), Claude Opus 4.6+ and Sonnet 5+ on OpenRouter, Kimi Code K3, and Qwen 3.8+. The separate normalized `"max"` tier is model-aware and currently supported by GPT-5.6 aliases and Sol/Terra/Luna variants, the GPT-6 family, and Claude Opus/Sonnet 4.6+ and Haiku 5.5 on Anthropic, GitHub Copilot and Bedrock. Unsupported levels are clamped (`xhigh` → `max` on Claude Opus/Sonnet 4.6, otherwise `high`; `max` → `xhigh` → `high`). `availableThinkingLevels` in `get_state` lists only the levels the current model supports and may omit `"off"`: Claude Opus 5.5 cannot turn thinking off, so its list starts at `"minimal"` and `set_thinking_level` with `"off"` lands on `"minimal"` (the saved default is left unchanged).
|
|
518
518
|
|
|
519
519
|
Response:
|
|
520
520
|
```json
|