ur-agent 1.85.0 → 1.85.2

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.
@@ -350,7 +350,7 @@ automatically changes the active provider.
350
350
  | Clean update checks | `ur upgrade`, `ur update`, `src/cli/update.ts` | Detects development/source checkouts and prints a short pull-or-install message instead of attempting self-mutation. npm-installed builds compare the local version with `ur-agent` on npm and print update, latest, registry failure, and malformed-response states without stale planning text. |
351
351
  | Bundled IDE extension install | `extensions/vscode-ur-inline-diffs/`, `src/utils/ide.ts`, `ur ide diff` | Public VS Code install now packages the repo's bundled inline-diffs extension as a local VSIX instead of trying an unpublished marketplace ID. The extension remains local-only and reviews `.ur/ide/diffs` bundles from the current workspace. |
352
352
  | Professional clarification dialogs | `AskUserQuestion`, `src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx` | Mandatory for every question with concrete choices; plain text is reserved for genuinely open-ended answers. Prefers 2-8 focused options but preserves larger legitimate menus, infers labels from description-only objects, accepts prompt aliases, deduplicates equivalent labels, safely repairs single suggestions with a neutral rejection choice, and is loaded without ToolSearch preloading. |
353
- | NVIDIA Agentic/Special providers | live Build-card generator, `nvidiaHostedModels.ts`, `NvidiaSpecial`, `/model` | Audits 100 current Build cards and preserves every Free Endpoint card: 13 Agentic and 23 Special. Uses each card's exact HTTP/NVCF/gRPC route, method, function ID, request/response schema, input/output hints, Assets/async handling, and artifact decoding. Runtime errors never remove models; focused selection never replaces the ongoing agent. |
353
+ | NVIDIA Agentic/Special providers | live Build-card generator, `nvidiaHostedModels.ts`, `NvidiaSpecial`, `/model`, first-workspace setup | Audits 100 current Build cards and preserves every Free Endpoint card: 13 Agentic and 23 Special. Uses each card's exact HTTP/NVCF/gRPC route, method, function ID, request/response schema, input/output hints, Assets/async handling, and artifact decoding. Runtime errors never remove models; focused selection never replaces the ongoing agent, appears during setup, and directly owns the next non-command prompt without depending on that agent provider. |
354
354
  | Documentation release sync | `README.md`, `docs/`, `documentation/`, `CHANGELOG.md` | Keeps the npm README, static documentation site, provider guide, usage guide, feature ledger, validation runbook, and release notes aligned with current release behavior. |
355
355
 
356
356
  ## v1.24.0 Additions
@@ -172,6 +172,22 @@ Anthropic's supported cache-control shape. Streaming requests also set
172
172
  arrive as Claude generates them instead of waiting for server-side buffering.
173
173
  Both behaviors use Anthropic's documented native fields and require no setting.
174
174
 
175
+ An Anthropic identity-linked API key can act across more than one workspace and
176
+ requires `anthropic-workspace-id` on every API call. Set its non-secret Console
177
+ workspace ID once:
178
+
179
+ ```sh
180
+ ur config set anthropic.workspace_id wrkspc_...
181
+ # environment-only alternative
182
+ export ANTHROPIC_WORKSPACE_ID=wrkspc_...
183
+ ```
184
+
185
+ The selected ID is applied consistently to `/v1/models`, `/v1/messages`,
186
+ streaming messages, `/v1/messages/count_tokens`, and provider diagnostics.
187
+ Workspace-scoped keys need no extra setting. Clear the saved value with
188
+ `ur config set anthropic.workspace_id auto`. When adding a key and workspace
189
+ together, use `ur connect anthropic-api --workspace-id wrkspc_...`.
190
+
175
191
  Anthropic fast mode is a separate, premium research-preview tier. It is off by
176
192
  default and can be requested explicitly:
177
193
 
@@ -273,6 +289,7 @@ it in the environment when you explicitly choose API mode:
273
289
  OPENAI_API_KEY=...
274
290
  OPENAI_COMPATIBLE_API_KEY=...
275
291
  ANTHROPIC_API_KEY=...
292
+ ANTHROPIC_WORKSPACE_ID=wrkspc_... # identity-linked Anthropic keys only
276
293
  GEMINI_API_KEY=...
277
294
  OPENROUTER_API_KEY=...
278
295
  NVIDIA_API_KEY=...
@@ -335,6 +352,11 @@ opaque compacted window, set `UR_OPENAI_RESPONSES_STATE_KEY` to exactly 32
335
352
  bytes encoded as 64 hexadecimal characters or base64. Without that key UR
336
353
  refuses to persist compacted context.
337
354
 
355
+ HTTP 429 remains retryable for real transient rate limits. Machine-readable
356
+ account, billing, and exhausted-quota failures such as `billing_not_active` and
357
+ `insufficient_quota` are permanent for the unchanged request, so UR reports
358
+ them immediately instead of spending the retry window in `requesting`.
359
+
338
360
  ### Reconfiguring the Ollama host
339
361
 
340
362
  The endpoint can be changed from UR in four ways, in order of precedence:
@@ -211,6 +211,45 @@ from `OPENAI_API_KEY`. NVIDIA Agentic/Special use one key stored with
211
211
  `ur connect nvidia-nim` or `ur connect nvidia-special`; Agentic keeps any
212
212
  custom `base_url` scoped to that provider.
213
213
 
214
+ When NVIDIA Special is selected, plain prompts are sent directly to its exact
215
+ model-card endpoint. They must not produce Anthropic/Ollama connection or
216
+ provider-model errors. If a contract needs media, provide its required field,
217
+ for example:
218
+
219
+ ```text
220
+ prompt: Turn this source into an 8mm-film scene.
221
+ video_path: /absolute/path/source.mp4
222
+ ```
223
+
224
+ ### Anthropic says `anthropic-workspace-id is required`
225
+
226
+ - Cause: the API key is identity-linked and can act across workspaces. Anthropic
227
+ requires the target workspace on model discovery and every runtime request.
228
+ - Fix: copy the `wrkspc_...` ID from Claude Console → Settings → Workspaces,
229
+ then configure it and re-run doctor. The workspace ID is not the API key.
230
+
231
+ ```sh
232
+ ur config set anthropic.workspace_id wrkspc_...
233
+ ur provider doctor anthropic-api
234
+ ```
235
+
236
+ `ANTHROPIC_WORKSPACE_ID` is the environment-only alternative. If the key was
237
+ created inside one workspace and is already workspace-scoped, no header is
238
+ needed. `auto` clears an incorrect saved selection. UR cannot safely infer the
239
+ Default Workspace ID because Anthropic omits that workspace from its list API.
240
+
241
+ ### OpenAI stays on `requesting` and then reports a billing 429
242
+
243
+ - Cause: older retry classification treated every HTTP 429 as a temporary rate
244
+ limit. OpenAI also uses 429 for permanent request-state failures such as
245
+ `billing_not_active` and `insufficient_quota`.
246
+ - Current behavior: UR reads the machine error code, reports permanent account
247
+ or billing failures immediately, and still retries genuine transient rate
248
+ limits. The same rule applies to Chat Completions and Responses.
249
+ - Fix for `billing_not_active`: activate API billing for the project/account or
250
+ connect a key belonging to an active billed project. Changing models or
251
+ transports cannot activate the account.
252
+
214
253
  ### NVIDIA lists a model but inference returns `Function … Not found for account`
215
254
 
216
255
  - Cause: the card is documented by NVIDIA, but its backing function is not
package/docs/USAGE.md CHANGED
@@ -186,6 +186,7 @@ ur config set openrouter.preferred_min_throughput 40
186
186
  ur config set openrouter.preferred_max_latency 3
187
187
  ur config set openrouter.service_tier priority
188
188
  ur config set openrouter.speed fast
189
+ ur config set anthropic.workspace_id wrkspc_...
189
190
  ```
190
191
 
191
192
  `auto` is the recommended default. `priority`/`fast` are optional paid upstream
@@ -195,6 +196,17 @@ throughput-, price-, or tool-quality-first virtual route.
195
196
 
196
197
  Direct Anthropic sessions preserve prompt-cache breakpoints and stream large
197
198
  tool arguments with Anthropic's per-tool `eager_input_streaming` control.
199
+ If Anthropic identifies the key as identity-linked, select the Console
200
+ workspace before refreshing models or sending a turn:
201
+
202
+ ```sh
203
+ ur config set anthropic.workspace_id wrkspc_...
204
+ # or: export ANTHROPIC_WORKSPACE_ID=wrkspc_...
205
+ ```
206
+
207
+ The selection is shared by discovery, doctor, inference, streaming, and token
208
+ counting. Workspace-scoped keys require no extra value; use
209
+ `ur config set anthropic.workspace_id auto` to clear it.
198
210
  Accounts admitted to Anthropic's premium fast-mode research preview can opt in
199
211
  for its supported Opus models:
200
212
 
@@ -216,6 +228,9 @@ background/poll/cancel support, WebSocket continuation, server compaction, and
216
228
  deferred tool search. Remote storage is off by default. Local state contains
217
229
  only bounded identifiers/status/cursors unless a 32-byte
218
230
  `UR_OPENAI_RESPONSES_STATE_KEY` is supplied for AES-256-GCM compacted context.
231
+ Permanent billing/account 429s are shown immediately on both OpenAI transports;
232
+ UR retries only responses that can plausibly succeed without configuration or
233
+ billing changes.
219
234
 
220
235
  In the interactive app, `/model` chooses a provider first and then a model from
221
236
  that provider only. The saved pair controls the runtime backend for the next
@@ -249,7 +264,9 @@ and `antigravity-cli` (`agy`) are subscription CLI providers.
249
264
  API modes are explicit. Keys are read from a key stored via
250
265
  `ur connect <provider>` (OS keychain) or from the environment variables
251
266
  `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `GEMINI_API_KEY`,
252
- `OPENROUTER_API_KEY`, `NVIDIA_API_KEY`, and `UNSLOTH_API_KEY`. Subscription CLIs are optional, never required
267
+ `OPENROUTER_API_KEY`, `NVIDIA_API_KEY`, and `UNSLOTH_API_KEY`.
268
+ `ANTHROPIC_WORKSPACE_ID` selects a workspace for identity-linked Anthropic
269
+ keys. Subscription CLIs are optional, never required
253
270
  dependencies, and never used as a silent fallback. UR-Nexus never scrapes
254
271
  browser sessions, extracts OAuth tokens, or bypasses provider restrictions.
255
272
  OpenAI-compatible local or cloud endpoints use `base_url` plus `model`.
@@ -283,12 +300,18 @@ hosted picker. NVIDIA's live `nemotron-3.5-lightning-30b-a3b` endpoint is
283
300
  focused first as its documented fastest 30B agent model; Left/Right controls
284
301
  that model's advertised on/off thinking switch.
285
302
  NVIDIA Special appears as its own provider, with purpose and input/output hints
286
- before selection. The current Build audit preserves all 23 focused Free
303
+ before selection, including during first-workspace setup. Setup returns to the
304
+ provider list after a Special selection so the session also has an ordinary
305
+ agent model. The current Build audit preserves all 23 focused Free
287
306
  Endpoint cards. `NvidiaSpecial` describes or runs each card's exact inference
288
307
  URL, HTTP/RPC method, function ID, and request/response schema using the shared
289
308
  key. It supports HTTP, direct NVCF, async polling, NVIDIA Assets, and five
290
309
  documented Maxine/Riva gRPC services. Selecting one leaves the ongoing agent
291
- unchanged. Returned media/binary/JSON defaults to `.ur/artifacts/nvidia/`.
310
+ unchanged and activates direct task mode: the next non-command prompt calls
311
+ NVIDIA without first calling that agent. Plain prompts supply `prompt`; use
312
+ newline inputs such as `video_path: /path/source.mp4` or exact JSON when the
313
+ selected contract requires media or specialized fields. Returned
314
+ media/binary/JSON defaults to `.ur/artifacts/nvidia/`.
292
315
  Cards are never removed; an unpublished protocol remains visible and clearly
293
316
  cannot be invoked until NVIDIA publishes its contract.
294
317
  On the `/model` model screen, `K` adds or replaces a
@@ -19,7 +19,7 @@ You need:
19
19
 
20
20
  ```sh
21
21
  ur --version
22
- # expected for this release: "1.85.0 (UR-Nexus)"
22
+ # expected for this release: "1.85.2 (UR-Nexus)"
23
23
  ```
24
24
 
25
25
  ### 0.0 Redteam mode and Reverse Skills (1.81.0)
@@ -136,6 +136,18 @@ Opus 5/4.8 must receive `speed="fast"` and
136
136
  Opus versions must receive neither. A non-stream response must retain
137
137
  `usage.speed`.
138
138
 
139
+ With an identity-linked test key, first omit the workspace. Discovery and
140
+ doctor must preserve Anthropic's `anthropic-workspace-id is required` detail
141
+ and show the `anthropic.workspace_id` fix. Then configure a `wrkspc_...` value
142
+ and verify the same header on model pagination, streaming/non-streaming
143
+ Messages, and token counting. A workspace-scoped key must remain valid with no
144
+ workspace setting.
145
+
146
+ For OpenAI retry classification, mock a 429 `billing_not_active` streaming body
147
+ and verify exactly one transport call plus the provider's actionable message.
148
+ A 429 `rate_limit_exceeded` fixture must remain retryable. The deterministic
149
+ coverage is in `test/providerReliability.test.ts`.
150
+
139
151
  Deterministic coverage:
140
152
 
141
153
  ```sh
package/docs/providers.md CHANGED
@@ -34,7 +34,7 @@ multimodal input, external CLI boundary, and sandbox scope:
34
34
  | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
35
35
  | Subscription | subscription | subscription-placeholder | no | no | no | n/a | n/a (no runtime) | `subscription:unconfigured` | independent subscription runtime only |
36
36
  | OpenAI API | API | UR-native | no | yes | yes | yes | UR Bash/File sandbox | `api:openai` | `OPENAI_API_KEY` |
37
- | Claude API | API | UR-native | no | yes | yes | yes | UR Bash/File sandbox | `api:anthropic` | `ANTHROPIC_API_KEY` |
37
+ | Claude API | API | UR-native | no | yes | yes | yes | UR Bash/File sandbox | `api:anthropic` | `ANTHROPIC_API_KEY`; identity-linked keys also select `ANTHROPIC_WORKSPACE_ID` |
38
38
  | Gemini API | API | UR-native | no | yes | yes | yes | UR Bash/File sandbox | `api:gemini` | `GEMINI_API_KEY` |
39
39
  | OpenRouter | API/router | UR-native | no | yes | yes | yes | UR Bash/File sandbox | `api:openrouter` | `OPENROUTER_API_KEY` |
40
40
  | NVIDIA Agentic | hosted/server API | UR-native | no | yes | yes | model-dependent | UR Bash/File sandbox | `api:nvidia-nim` | `NVIDIA_API_KEY`; public per-card endpoints or configurable NIM gateway |
@@ -173,6 +173,8 @@ explicit opt-in to the native Responses adapter; it defaults to `store=false`
173
173
  and supports semantic streaming, background polling/cancellation, WebSocket
174
174
  continuation, server compaction, and deferred tool search. It does not change
175
175
  OpenAI-compatible, OpenRouter, local, or subscription-CLI providers.
176
+ Both transports fail immediately for machine-readable permanent account or
177
+ billing 429s; ordinary transient rate limits still honor provider retry timing.
176
178
 
177
179
  ## Provider-scoped model selection
178
180
 
@@ -281,7 +283,18 @@ remain authoritative. See OpenRouter's
281
283
  Direct Anthropic requests retain supported prompt-cache breakpoints and enable
282
284
  per-tool `eager_input_streaming` on streaming turns. This reduces repeated
283
285
  prefill work and avoids waiting for a complete large tool argument before its
284
- deltas arrive. Anthropic's premium fast tier remains explicit:
286
+ deltas arrive.
287
+
288
+ Identity-linked Anthropic keys additionally need a workspace selection. UR
289
+ accepts `provider.anthropic.workspaceId` through
290
+ `ur config set anthropic.workspace_id wrkspc_...` or
291
+ `ANTHROPIC_WORKSPACE_ID`, validates the `wrkspc_` resource ID, partitions the
292
+ model cache by workspace, and sends `anthropic-workspace-id` on model
293
+ discovery, doctor, message, streaming, and token-count requests. A provider
294
+ 400 that names this requirement is preserved with the exact configuration fix
295
+ instead of being reduced to an unverifiable model-list failure.
296
+
297
+ Anthropic's premium fast tier remains explicit:
285
298
 
286
299
  ```sh
287
300
  ur config set anthropic.speed fast
@@ -291,6 +304,8 @@ UR sends `speed: "fast"` with the `fast-mode-2026-02-01` beta only for Claude
291
304
  Opus 5 and Opus 4.8, and retains `usage.speed` so accounting can distinguish the
292
305
  tier actually served. Enabled account access is still required. Unsupported
293
306
  models stay on standard speed. See Anthropic's
307
+ [authentication](https://platform.claude.com/docs/en/manage-claude/authentication),
308
+ [workspace management](https://platform.claude.com/docs/en/manage-claude/workspaces),
294
309
  [prompt caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching),
295
310
  [fine-grained tool streaming](https://platform.claude.com/docs/en/agents-and-tools/tool-use/fine-grained-tool-streaming),
296
311
  and [fast mode](https://platform.claude.com/docs/en/build-with-claude/fast-mode).
@@ -480,7 +495,8 @@ provider's successful live catalog remains authoritative for that account.
480
495
 
481
496
  **API providers** require environment variable with API key:
482
497
  - `openai-api` — requires `OPENAI_API_KEY`
483
- - `anthropic-api` — requires `ANTHROPIC_API_KEY`
498
+ - `anthropic-api` — requires `ANTHROPIC_API_KEY`; identity-linked keys also
499
+ select `ANTHROPIC_WORKSPACE_ID` (or saved `anthropic.workspace_id`)
484
500
  - `gemini-api` — requires `GEMINI_API_KEY`
485
501
  - `openrouter` — requires `OPENROUTER_API_KEY`
486
502
  - `nvidia-nim` / `nvidia-special` — share `NVIDIA_API_KEY`; Agentic's enterprise endpoint is configurable, while Special routes each public model to its card-specific contract
@@ -656,6 +672,7 @@ API providers require explicit user selection and environment keys:
656
672
  OPENAI_API_KEY=...
657
673
  OPENAI_COMPATIBLE_API_KEY=...
658
674
  ANTHROPIC_API_KEY=...
675
+ ANTHROPIC_WORKSPACE_ID=wrkspc_... # identity-linked Anthropic keys only
659
676
  GEMINI_API_KEY=...
660
677
  OPENROUTER_API_KEY=...
661
678
  NVIDIA_API_KEY=...
@@ -721,7 +738,13 @@ documented Nemotron coding-agent models, UR includes NVIDIA's
721
738
  and [NIM endpoint guide](https://docs.nvidia.com/nim/large-language-models/latest/tutorials.html).
722
739
 
723
740
  NVIDIA Special is a separate focused-task provider. Selecting a row stores a
724
- one-shot preference and keeps the current chat provider/model. The generator
741
+ task-mode selection and keeps the current chat provider/model. The next
742
+ non-command prompt is dispatched directly to NVIDIA, so an unavailable or
743
+ misconfigured chat provider cannot intercept the task. Plain text maps to the
744
+ contract's `prompt`; newline convenience fields (`video_path`, `image_path`,
745
+ `audio_path`, `output_path`, and generation options) or exact JSON cover richer
746
+ contracts. NVIDIA Special is also visible during first-workspace setup; after a
747
+ task is chosen, setup returns to the ordinary provider/model picker. The generator
725
748
  crawls all 100 current Build cards and preserves every card labelled Free
726
749
  Endpoint: 36 total, split into 13 Agentic and 23 Special. Thirty-five publish a
727
750
  complete executable contract; 22 are Special. The remaining VoiceChat card is
@@ -803,7 +826,7 @@ Required variables:
803
826
  | NVIDIA Agentic | `NVIDIA_API_KEY`, `NVIDIA_MODEL` | `NVIDIA_BASE_URL` (defaults to `https://integrate.api.nvidia.com/v1`) |
804
827
  | OpenAI | `OPENAI_API_KEY`, `OPENAI_MODEL` | `OPENAI_BASE_URL` |
805
828
  | OpenRouter | `OPENROUTER_API_KEY`, `OPENROUTER_MODEL` | `OPENROUTER_BASE_URL` |
806
- | Anthropic | `ANTHROPIC_API_KEY`, `ANTHROPIC_MODEL` | `ANTHROPIC_BASE_URL` |
829
+ | Anthropic | `ANTHROPIC_API_KEY`, `ANTHROPIC_MODEL` | `ANTHROPIC_BASE_URL`; `ANTHROPIC_WORKSPACE_ID` for identity-linked keys |
807
830
  | Gemini | `GEMINI_API_KEY`, `GEMINI_MODEL` | `GEMINI_BASE_URL` |
808
831
  | Ollama | `OLLAMA_MODEL` | `OLLAMA_BASE_URL` or `OLLAMA_HOST`; `OLLAMA_API_KEY` when required |
809
832
  | LM Studio | `LMSTUDIO_BASE_URL`, `LMSTUDIO_MODEL` | `LMSTUDIO_API_KEY` |
@@ -68,7 +68,7 @@ const featureGroups = [
68
68
  {
69
69
  title: 'Providers and auth',
70
70
  tags: ['subscription', 'API', 'local', 'effort', 'status bar'],
71
- text: 'UR-native API/local/OpenAI-compatible runtimes, provider-scoped endpoints, NVIDIA Agentic plus NVIDIA Special with all 36 current Build Free Endpoint cards and exact per-card HTTP/NVCF/gRPC inference contracts, provider-only Unsloth inference, optional compatible-gateway keys, capability-driven reasoning effort, responsive OpenRouter routing, first-class subscription CLI providers dispatched through official vendor CLIs, provider doctor checks, secure API-key connect, non-secret config, fallback hints, and provider-aware status-bar output.',
71
+ text: 'UR-native API/local/OpenAI-compatible runtimes, provider-scoped endpoints, NVIDIA Agentic plus directly dispatched NVIDIA Special task mode with all 36 current Build Free Endpoint cards and exact per-card HTTP/NVCF/gRPC inference contracts, provider-only Unsloth inference, optional compatible-gateway keys, capability-driven reasoning effort, responsive OpenRouter routing, first-class subscription CLI providers dispatched through official vendor CLIs, provider doctor checks, secure API-key connect, non-secret config, fallback hints, and provider-aware status-bar output.',
72
72
  commands: ['ur provider list', 'ur provider status', 'ur provider doctor nvidia-nim', 'ur connect status', 'ur config set provider nvidia-nim', 'ur config set provider nvidia-special', 'ur config set provider openai-api', 'ur config set provider ollama', 'ur config set base_url llama.cpp http://localhost:9931/v1', '/model', '/effort ultra', '/thinking on'],
73
73
  },
74
74
  {
@@ -45,7 +45,7 @@
45
45
  <main id="content" class="content">
46
46
  <header class="topbar">
47
47
  <div>
48
- <p class="eyebrow">Version 1.85.0</p>
48
+ <p class="eyebrow">Version 1.85.2</p>
49
49
  <h1>UR-Nexus Documentation</h1>
50
50
  <p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-Nexus.</p>
51
51
  </div>
@@ -198,7 +198,7 @@ ur config set provider nvidia-nim
198
198
  ur config set provider nvidia-special
199
199
  ur config set base_url nvidia-nim https://integrate.api.nvidia.com/v1
200
200
  /model # K API key · E endpoint</code></pre>
201
- <p>NVIDIA is split into NVIDIA Agentic for the ongoing tool loop and NVIDIA Special for focused inference; both share one stored <code>NVIDIA_API_KEY</code>. UR audits all 100 current Build cards and preserves every Free Endpoint card: 13 Agentic and 23 Special. Thirty-five publish executable contracts; the one unpublished protocol stays visible and labelled. Each row shows purpose, input, and output, and uses that card's exact HTTP, direct NVCF, or gRPC endpoint, method, function ID, and request/response schema. NVIDIA Assets, asynchronous polling, five native Maxine/Riva gRPC services, and media/binary/JSON artifact saving are built in. Account errors never remove models, and choosing a Special task never changes the ongoing agent. Nemotron 3.5 Lightning retains its documented on/off thinking field; unknown models inherit no fabricated effort. Generic OpenAI-compatible endpoints can store an optional dedicated key, while anonymous endpoints remain valid.</p>
201
+ <p>NVIDIA is split into NVIDIA Agentic for the ongoing tool loop and NVIDIA Special for focused inference; both share one stored <code>NVIDIA_API_KEY</code>. UR audits all 100 current Build cards and preserves every Free Endpoint card: 13 Agentic and 23 Special. Thirty-five publish executable contracts; the one unpublished protocol stays visible and labelled. Each row shows purpose, input, and output, and uses that card's exact HTTP, direct NVCF, or gRPC endpoint, method, function ID, and request/response schema. Selecting Special activates a visible task mode: the next plain prompt goes directly to NVIDIA without depending on the ongoing chat provider. Plain text supplies the prompt, while fields such as <code>video_path</code> and exact JSON cover specialized inputs. Special is also available during first-workspace setup before the ordinary agent model is chosen. NVIDIA Assets, asynchronous polling, five native Maxine/Riva gRPC services, and media/binary/JSON artifact saving are built in. Account errors never remove models, and choosing a Special task never changes the ongoing agent. Nemotron 3.5 Lightning retains its documented on/off thinking field; unknown models inherit no fabricated effort. Generic OpenAI-compatible endpoints can store an optional dedicated key, while anonymous endpoints remain valid.</p>
202
202
  </article>
203
203
  <article>
204
204
  <h3>Portable shell deadlines</h3>
@@ -7,7 +7,7 @@ plugins {
7
7
  }
8
8
 
9
9
  group = "dev.urnexus"
10
- version = "1.85.0"
10
+ version = "1.85.2"
11
11
 
12
12
  repositories {
13
13
  mavenCentral()
@@ -2,7 +2,7 @@
2
2
  "name": "ur-inline-diffs",
3
3
  "displayName": "UR Inline Diffs",
4
4
  "description": "Review, apply, and reject UR inline diff bundles from .ur/ide/diffs inside VS Code.",
5
- "version": "1.85.0",
5
+ "version": "1.85.2",
6
6
  "publisher": "ur-nexus",
7
7
  "engines": {
8
8
  "vscode": "^1.92.0"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ur-agent",
3
- "version": "1.85.0",
3
+ "version": "1.85.2",
4
4
  "description": "UR-Nexus — autonomous engineering workflow engine (plan, execute, test, verify, document, benchmark, reproduce)",
5
5
  "type": "module",
6
6
  "packageManager": "bun@1.3.14",
@@ -75,7 +75,7 @@
75
75
  "overrides": {
76
76
  "@hono/node-server": "2.0.12",
77
77
  "body-parser": "2.3.0",
78
- "fast-uri": "3.1.5",
78
+ "fast-uri": "3.1.6",
79
79
  "form-data": "4.0.6",
80
80
  "hono": "4.13.0",
81
81
  "ip-address": "10.4.0",