ur-agent 1.30.3 → 1.30.5

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.
@@ -81,8 +81,8 @@ ur upgrade
81
81
 
82
82
  | Addition | Surface | What it adds |
83
83
  | --- | --- | --- |
84
- | Legal multi-provider connectivity | `ur provider list\|status\|doctor`, `ur auth chatgpt\|claude\|gemini\|antigravity`, `ur config set provider ...` | Official-only access paths for subscription CLIs, explicit API-key providers, and local/OpenAI-compatible runtimes. UR stores only safe non-secret preferences and never scrapes browser sessions, extracts OAuth tokens, reads hidden provider auth files, bypasses provider restrictions, or proxies consumer web sessions as APIs. |
85
- | Provider-aware status bar | Interactive bottom status bar, `src/components/StatusLine.tsx`, `src/utils/statusBar.ts` | Shows UR-AGENT version, active provider, auth mode, selected model, mode, git branch, task state, checks/build state when known, and update availability. Hidden in CI, dumb terminals, and non-interactive mode; custom status-line hooks still override it. |
84
+ | Legal multi-provider connectivity | `ur provider list\|status\|doctor`, `ur config set provider ...`, `ur auth chatgpt\|claude\|gemini\|antigravity` for bridge diagnostics | API-key providers and local/OpenAI-compatible runtimes are UR-native. Subscription CLIs are optional external app bridges blocked from normal runtime unless explicitly enabled. UR stores only safe non-secret preferences and never scrapes browser sessions, extracts OAuth tokens, reads hidden provider auth files, bypasses provider restrictions, or proxies consumer web sessions as APIs. |
85
+ | Provider-aware status bar | Interactive bottom status bar, `src/components/StatusLine.tsx`, `src/utils/statusBar.ts` | Shows only important runtime state: active provider, selected model, mode, git branch, active task state, checks/build state when known, and update availability. Hidden in CI, dumb terminals, and non-interactive mode; custom status-line hooks still override it. |
86
86
  | 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. |
87
87
  | 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. |
88
88
  | Professional clarification dialogs | `AskUserQuestion`, `src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx` | Supports up to eight concrete options, infers labels from description-only option objects, accepts prompt aliases, rejects duplicate inferred labels, and is loaded without ToolSearch preloading so typed schemas are available before use. |
@@ -6,12 +6,13 @@ UR reads configuration from CLI flags, environment variables, and project or use
6
6
 
7
7
  UR-AGENT supports official provider access paths only:
8
8
 
9
- - Subscription/login CLI providers: Codex CLI, Claude Code CLI, Gemini CLI,
10
- and Antigravity CLI where officially supported.
11
9
  - Explicit API providers: OpenAI, Anthropic, Gemini, OpenRouter, and
12
10
  OpenAI-compatible endpoints.
13
11
  - Local/server providers: Ollama, LM Studio, llama.cpp, and vLLM OpenAI-compatible
14
12
  server mode.
13
+ - External app bridges: Codex CLI, Claude Code CLI, Gemini CLI, and Antigravity
14
+ where officially supported. These are diagnostics/opt-in bridges, not required
15
+ dependencies for normal UR runtime.
15
16
 
16
17
  UR-AGENT never scrapes browser sessions, extracts OAuth refresh tokens, reads
17
18
  hidden provider auth files, bypasses provider restrictions, or proxies consumer
@@ -33,26 +34,24 @@ Provider configuration commands:
33
34
  ur provider list
34
35
  ur provider doctor
35
36
  ur provider status
36
- ur auth chatgpt
37
- ur auth claude
38
- ur auth gemini
39
- ur auth antigravity
40
37
  ur config set provider ollama
41
- ur config set provider claude
42
- ur config set provider "Claude Code"
43
- ur config set provider antigravity
44
- ur provider doctor agy
38
+ ur config set provider openai-api
39
+ ur config set provider anthropic-api
40
+ ur config set provider gemini-api
41
+ ur config set provider openrouter
45
42
  ur config set provider openai-compatible
43
+ ur provider doctor agy
46
44
  ur config set provider.fallback ollama
47
45
  ur config set model <model>
48
46
  ur config set base_url <url>
49
47
  ```
50
48
 
51
49
  Provider values accept canonical IDs and common aliases. Examples:
52
- `codex-cli`, `chatgpt`, `codex`, `claude-code-cli`, `claude`,
53
- `Claude Code`, `gemini-cli`, `gemini`, `antigravity-cli`, `antigravity`,
54
- `agy`, `ollama`, `lmstudio`, `LM Studio`, `llama.cpp`, and `vllm`.
55
- Values with spaces should be quoted in shell commands.
50
+ `openai-api`, `anthropic-api`, `gemini-api`, `openrouter`, `ollama`,
51
+ `lmstudio`, `LM Studio`, `llama.cpp`, and `vllm`. External app bridge aliases
52
+ such as `codex-cli`, `claude-code-cli`, `gemini-cli`, and `antigravity-cli` are
53
+ accepted only when `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` is set. Values with
54
+ spaces should be quoted in shell commands.
56
55
 
57
56
  In the interactive app, `/model` is provider-first: choose a provider, then
58
57
  choose a model from that provider only. The picker labels providers as
package/docs/USAGE.md CHANGED
@@ -94,15 +94,14 @@ UR-AGENT also has explicit provider commands for legal access paths:
94
94
  ur provider list
95
95
  ur provider status
96
96
  ur provider doctor
97
+ # Optional external app bridge diagnostics:
97
98
  ur auth chatgpt
98
- ur auth claude
99
- ur auth gemini
100
- ur auth antigravity
101
99
  ur config set provider ollama
102
- ur config set provider claude
103
- ur config set provider "Claude Code"
104
- ur config set provider antigravity
105
100
  ur provider doctor agy
101
+ ur config set provider openai-api
102
+ ur config set provider anthropic-api
103
+ ur config set provider gemini-api
104
+ ur config set provider openrouter
106
105
  ur config set provider openai-compatible
107
106
  ur config set model <model>
108
107
  ur config set base_url <url>
@@ -112,26 +111,30 @@ ur config set provider.fallback ollama
112
111
  In the interactive app, `/model` chooses a provider first and then a model from
113
112
  that provider only. The saved pair controls the runtime backend for the next
114
113
  agent request. There is no cross-provider fallback: OpenAI API does not fall
115
- back to Codex CLI or Ollama, Claude Code does not fall back to Claude API, and
116
- local/server providers do not leak cloud model lists. Use `ur provider status`
117
- to inspect the active provider, model, access type, and runtime backend.
114
+ back to Ollama, Claude API does not fall back to Claude Code, and local/server
115
+ providers do not leak cloud model lists. Use `ur provider status` to inspect the
116
+ active provider, model, access type, and runtime backend.
118
117
 
119
118
  Provider values accept canonical IDs and common aliases. For example,
120
- `claude`, `Claude Code`, and `claude-code-cli` all select
121
- `claude-code-cli`; `antigravity`, `agy`, and `antigravity-cli` all select
122
- `antigravity-cli`.
119
+ `openai-api`, `anthropic-api`, `gemini-api`, `openrouter`, `ollama`,
120
+ `lmstudio`, `llama.cpp`, and `vllm` are normal UR-native runtime providers.
121
+ External app bridge aliases such as `codex-cli`, `claude-code-cli`,
122
+ `gemini-cli`, and `antigravity-cli` are accepted only when the external bridge
123
+ opt-in is enabled.
123
124
 
124
125
  API modes are explicit and read keys only from environment variables:
125
126
  `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `GEMINI_API_KEY`, and
126
- `OPENROUTER_API_KEY`. Subscription modes call official CLIs such as Codex,
127
- Claude Code, Gemini CLI, or Antigravity where supported. UR-AGENT never scrapes
128
- browser sessions, extracts OAuth tokens, or bypasses provider restrictions.
129
- OpenAI-compatible local or cloud endpoints use `base_url` plus `model`.
127
+ `OPENROUTER_API_KEY`. Codex CLI, Claude Code, Gemini CLI, and Antigravity are
128
+ external app bridges, not required dependencies; they are blocked from normal
129
+ runtime selection unless `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` is set. UR-AGENT
130
+ never scrapes browser sessions, extracts OAuth tokens, or bypasses provider
131
+ restrictions. OpenAI-compatible local or cloud endpoints use `base_url` plus
132
+ `model`.
130
133
 
131
134
  Use `/model` in an interactive session to select provider first and model
132
- second. OpenAI API and Codex CLI, Claude API and Claude Code, and Gemini API and
133
- Gemini CLI are separate providers; a subscription login does not grant API-key
134
- access, and an API key does not grant subscription CLI access.
135
+ second. OpenAI API, Claude API, Gemini API, OpenRouter, Ollama, and
136
+ OpenAI-compatible endpoints stay separate; a subscription login does not grant
137
+ API-key access, and an API key does not grant subscription CLI access.
135
138
 
136
139
  ## Project Instructions
137
140
 
@@ -246,7 +249,7 @@ Interactive sessions include a compact bottom status bar when stdout is a real
246
249
  terminal:
247
250
 
248
251
  ```text
249
- UR-AGENT v1.30.3 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle | Update: 1.30.2 -> 1.30.3 available
252
+ Ollama | llama3 | ask | main | update 1.30.5 available
250
253
  ```
251
254
 
252
255
  The bar is not rendered in non-interactive mode, CI, dumb terminals, or
package/docs/providers.md CHANGED
@@ -1,8 +1,11 @@
1
1
  # UR-AGENT providers
2
2
 
3
- UR-AGENT integrates official model access paths only. It supports subscription
4
- CLI login flows, explicit API-key providers, and local OpenAI-compatible
5
- runtimes. It does not implement hidden or unofficial authentication.
3
+ UR-AGENT integrates official model access paths only. API-key providers, local
4
+ runtimes, and OpenAI-compatible servers are UR-native backends: UR owns the
5
+ conversation loop, tool loop, streaming, errors, and output. Subscription CLI
6
+ integrations are external app bridges, not required dependencies. They stay
7
+ diagnosable, but normal runtime selection blocks them unless
8
+ `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` is set.
6
9
 
7
10
  ## Legal auth policy
8
11
 
@@ -15,26 +18,26 @@ UR-AGENT never:
15
18
  - proxies a consumer web session as an API
16
19
  - claims provider support unless the official CLI/API path works
17
20
 
18
- UR-AGENT stores only safe config: provider name, model name, base URL, command
19
- path, fallback preference, and non-secret preferences. API keys are read from
20
- environment variables only when the user explicitly selects API mode.
21
+ UR-AGENT stores only safe config: provider name, model name, base URL, fallback
22
+ preference, and non-secret preferences. API keys are read from environment
23
+ variables only when the user explicitly selects API mode.
21
24
 
22
25
  ## Provider matrix
23
26
 
24
- | Provider | Access type | Runtime backend | Legal path |
25
- | --- | --- | --- | --- |
26
- | Codex CLI | subscription | `subscription-cli:codex` | official Codex CLI login |
27
- | Claude Code | subscription | `subscription-cli:claude-code` | official Claude Code login |
28
- | Gemini CLI | subscription | `subscription-cli:gemini` | official Gemini Code Assist login |
29
- | Antigravity | subscription | `subscription-cli:antigravity` | official Antigravity login, where supported |
30
- | OpenAI API | API | `api:openai` | `OPENAI_API_KEY` |
31
- | Claude API | API | `api:anthropic` | `ANTHROPIC_API_KEY` |
32
- | Gemini API | API | `api:gemini` | `GEMINI_API_KEY` |
33
- | OpenRouter | API/router | `api:openrouter` | `OPENROUTER_API_KEY` |
34
- | Ollama | local | `ollama` | localhost Ollama runtime |
35
- | LM Studio | local/server | `openai-compatible:lmstudio` | local OpenAI-compatible server |
36
- | llama.cpp | local/server | `openai-compatible:llama.cpp` | local OpenAI-compatible server |
37
- | vLLM | local/server | `openai-compatible:vllm` | OpenAI-compatible server |
27
+ | Provider | Access type | Runtime kind | Runtime backend | Legal path |
28
+ | --- | --- | --- | --- | --- |
29
+ | OpenAI API | API | UR-native | `api:openai` | `OPENAI_API_KEY` |
30
+ | Claude API | API | UR-native | `api:anthropic` | `ANTHROPIC_API_KEY` |
31
+ | Gemini API | API | UR-native | `api:gemini` | `GEMINI_API_KEY` |
32
+ | OpenRouter | API/router | UR-native | `api:openrouter` | `OPENROUTER_API_KEY` |
33
+ | Ollama | local | UR-native | `ollama` | localhost Ollama runtime |
34
+ | LM Studio | local/server | UR-native | `openai-compatible:lmstudio` | local OpenAI-compatible server |
35
+ | llama.cpp | local/server | UR-native | `openai-compatible:llama.cpp` | local OpenAI-compatible server |
36
+ | vLLM | local/server | UR-native | `openai-compatible:vllm` | OpenAI-compatible server |
37
+ | Codex CLI | subscription | external app bridge | `subscription-cli:codex` | official Codex CLI login |
38
+ | Claude Code | subscription | external app bridge | `subscription-cli:claude-code` | official Claude Code login |
39
+ | Gemini CLI | subscription | external app bridge | `subscription-cli:gemini` | official Gemini Code Assist login |
40
+ | Antigravity | subscription | external app bridge | `subscription-cli:antigravity` | official Antigravity login, where supported |
38
41
 
39
42
  ## Commands
40
43
 
@@ -43,16 +46,14 @@ ur provider list
43
46
  ur provider status
44
47
  ur provider doctor
45
48
  ur provider doctor codex-cli
46
- ur auth chatgpt
47
- ur auth claude
48
- ur auth gemini
49
- ur auth antigravity
50
- ur config set provider codex-cli
51
- ur config set provider claude
52
- ur config set provider "Claude Code"
53
- ur config set provider antigravity
54
49
  ur provider doctor agy
50
+ # Optional external app bridge diagnostics:
51
+ ur auth chatgpt
55
52
  ur config set provider ollama
53
+ ur config set provider openai-api
54
+ ur config set provider anthropic-api
55
+ ur config set provider gemini-api
56
+ ur config set provider openrouter
56
57
  ur config set provider openai-compatible
57
58
  ur config set model <model>
58
59
  ur config set base_url <url>
@@ -61,16 +62,19 @@ ur config set provider.fallback ollama
61
62
 
62
63
  ## Provider-scoped model selection
63
64
 
64
- UR-AGENT shows providers first, then only models available for the selected provider. This prevents incompatible model/provider pairs and keeps subscription CLI, API-key, and local/server runtime model lists separate.
65
+ UR-AGENT shows providers first, then only models available for the selected provider. This prevents incompatible model/provider pairs and keeps API-key, local/server, and external app bridge model lists separate.
65
66
 
66
67
  ## Runtime provider routing
67
68
 
68
- When you select a provider and model, every agent request is routed through that
69
- provider's backend:
69
+ When you select a UR-native provider and model, every agent request is routed
70
+ through that provider's backend:
70
71
 
71
- - **Subscription providers** spawn the official CLI command (e.g. `codex`, `claude`, `gemini`) in non-interactive mode, pass the prompt and the provider-scoped model, and map its stdout to the response. A non-zero exit or empty output fails clearly — it is never replaced with placeholder text.
72
72
  - **API providers** make direct HTTP calls in each provider's native wire format: Anthropic uses `x-api-key` + `anthropic-version` against `/v1/messages`; OpenAI uses `Authorization: Bearer` against `/v1/chat/completions`; Gemini uses `x-goog-api-key` against `…:generateContent`; OpenRouter uses its OpenAI-compatible chat endpoint.
73
73
  - **Local/server providers** connect to the configured local or OpenAI-compatible endpoint (`/v1/chat/completions` for LM Studio, llama.cpp and vLLM; the native tags/chat API for Ollama)
74
+ - **External app bridges** for subscription CLIs are blocked by default because
75
+ they delegate turns to another agent app. If deliberately enabled with
76
+ `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1`, failures still remain provider-scoped
77
+ and never fall back to Ollama.
74
78
 
75
79
  The selected provider determines:
76
80
  - Which backend receives your requests
@@ -95,6 +99,7 @@ You see all configured providers with:
95
99
  - Connection status: `connected`, `missing`, `unavailable`, or `unknown`
96
100
  - Credential type: `cli-login`, `api-key`, `local-runtime`, or `openai-compatible-endpoint`
97
101
  - Short status message (e.g., "OPENAI_API_KEY found", "CLI not found", "localhost reachable")
102
+ - Runtime kind: `UR-native` or `external app bridge`
98
103
 
99
104
  **Step 2: Model Selection**
100
105
 
@@ -118,23 +123,22 @@ After selecting a model, the confirmation shows:
118
123
  ```
119
124
  /model
120
125
  → Step 1: Select provider
121
- Codex CLI · subscription · subscription login connected
126
+ Ollama · local · local-runtime · localhost reachable
122
127
  OpenAI API · api · OPENAI_API_KEY found
123
- Ollama · local · localhost reachable
124
128
 
125
- → Select: Codex CLI
129
+ → Select: Ollama
126
130
 
127
131
  → Step 2: Select model
128
- codex/gpt-5.5 · Subscription model through official Codex CLI login · static
129
- codex/gpt-5.4-mini · Fast subscription model through official Codex CLI login · static
132
+ llama3 · discovered from Ollama · live
133
+ qwen3-coder:480b-cloud · discovered from Ollama · live
130
134
 
131
- → Select: codex/gpt-5.5
135
+ → Select: llama3
132
136
 
133
137
  → Confirmation:
134
- Selected provider: Codex CLI (subscription)
135
- Selected model: codex/gpt-5.5
136
- Model source: static
137
- Runtime backend: subscription-cli:codex
138
+ Selected provider: Ollama (local)
139
+ Selected model: llama3
140
+ Model source: live
141
+ Runtime backend: ollama
138
142
  ```
139
143
 
140
144
  ### CLI workflow
@@ -151,21 +155,21 @@ ur config set model gpt-5.5
151
155
 
152
156
  # 4. Switch to a different provider - model list updates automatically
153
157
  ur config set provider anthropic-api
154
- # Now /model shows only Claude API models, not Codex CLI or OpenAI API models
158
+ # Now /model shows only Claude API models, not OpenAI API or Ollama models
155
159
  ```
156
160
 
157
161
  ### Model discovery behavior
158
162
 
159
163
  | Provider type | Model discovery | Source label |
160
164
  | --- | --- | --- |
161
- | Subscription CLI (codex-cli, claude-code-cli, gemini-cli, antigravity-cli) | Static list of provider-scoped CLI model aliases/names | static |
162
165
  | API providers (openai-api, anthropic-api, gemini-api, openrouter) | Static list of provider-specific models | static |
163
166
  | Local/server providers (ollama, lmstudio, llama.cpp, vllm) | Dynamic discovery from the selected provider endpoint | live |
164
167
  | OpenAI-compatible | Dynamic discovery from configured endpoint | live |
168
+ | External app bridges (codex-cli, claude-code-cli, gemini-cli, antigravity-cli) | Static bridge aliases; blocked by default for normal runtime | static |
165
169
 
166
170
  ### API vs Subscription distinction
167
171
 
168
- **Subscription providers** require official CLI login:
172
+ **External app bridge providers** require official CLI login and explicit runtime opt-in:
169
173
  - `codex-cli` — Codex CLI subscription via `codex login`
170
174
  - `claude-code-cli` — Claude Code subscription via `claude auth login`
171
175
  - `gemini-cli` — Gemini Code Assist enterprise login
@@ -186,6 +190,8 @@ ur config set provider anthropic-api
186
190
  **Important:**
187
191
  - A ChatGPT/Claude/Gemini subscription does NOT give API access
188
192
  - An API key does NOT give subscription CLI access
193
+ - UR does not require Codex CLI, Claude Code, Gemini CLI, or Antigravity to use
194
+ API, Ollama, or OpenAI-compatible providers
189
195
  - OpenAI API and Codex CLI are separate providers
190
196
  - Claude API and Claude Code are separate providers
191
197
  - Gemini API and Gemini CLI are separate providers
@@ -211,9 +217,9 @@ Warning: Current model "gpt-5.5" is not available for provider "anthropic-api" a
211
217
  After changing provider, run /model or: ur config set model claude-sonnet-5
212
218
  ```
213
219
 
214
- For subscription CLIs, UR stores scoped IDs such as `claude-code/sonnet` and
215
- passes only the CLI model name (`sonnet`) to the official command. Stale scoped
216
- IDs such as `claude-code/sonnet-5` are rejected before runtime dispatch.
220
+ For external app bridges, UR stores scoped IDs such as `claude-code/sonnet`,
221
+ but normal runtime dispatch rejects the bridge before spawning the external app
222
+ unless `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` is set.
217
223
 
218
224
  ### Troubleshooting
219
225
 
@@ -223,9 +229,11 @@ IDs such as `claude-code/sonnet-5` are rejected before runtime dispatch.
223
229
  ur provider status
224
230
  ```
225
231
 
226
- **Provider shows "missing":**
227
- - Install the official CLI: `brew install codex` or equivalent
228
- - Run: `ur auth <provider>` to complete login
232
+ **Provider is an external app bridge:**
233
+ - Choose a UR-native API/local/server provider for normal UR interaction
234
+ - Run `ur provider doctor <provider>` only to inspect the external app bridge
235
+ - Set `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` only if you intentionally want UR to
236
+ delegate turns to that external app
229
237
 
230
238
  **Provider shows "unavailable":**
231
239
  - Check API key: `echo $OPENAI_API_KEY`
@@ -56,8 +56,8 @@ const featureGroups = [
56
56
  {
57
57
  title: 'Providers and auth',
58
58
  tags: ['subscription', 'API', 'local', 'status bar'],
59
- text: 'Official subscription CLI login, explicit API-key providers, local/OpenAI-compatible runtimes, provider doctor checks, non-secret config, fallback hints, and provider-aware status-bar output.',
60
- commands: ['ur provider list', 'ur provider status', 'ur provider doctor agy', 'ur auth chatgpt', 'ur config set provider "Claude Code"'],
59
+ text: 'UR-native API/local/OpenAI-compatible runtimes, optional external app bridge diagnostics, provider doctor checks, non-secret config, fallback hints, and provider-aware status-bar output.',
60
+ commands: ['ur provider list', 'ur provider status', 'ur provider doctor agy', 'ur config set provider openai-api', 'ur config set provider ollama'],
61
61
  },
62
62
  {
63
63
  title: 'Security and operations',
@@ -206,7 +206,7 @@ const commands = [
206
206
  category: 'Ops',
207
207
  aliases: ['settings'],
208
208
  summary: 'Open the config panel or persist safe non-secret provider settings.',
209
- examples: ['ur config', 'ur config set provider ollama', 'ur config set provider claude', 'ur config set provider "Claude Code"', 'ur config set model qwen3-coder:480b-cloud', 'ur config set base_url http://localhost:11434/v1', 'ur config set provider.fallback ollama'],
209
+ examples: ['ur config', 'ur config set provider ollama', 'ur config set provider openai-api', 'ur config set provider anthropic-api', 'ur config set model qwen3-coder:480b-cloud', 'ur config set base_url http://localhost:11434/v1', 'ur config set provider.fallback ollama'],
210
210
  },
211
211
  {
212
212
  name: 'test-first',
@@ -318,7 +318,7 @@ const commands = [
318
318
  category: 'Models',
319
319
  aliases: ['providers'],
320
320
  summary: 'List, inspect, and diagnose legal model provider adapters without reading hidden credential files.',
321
- examples: ['ur provider list', 'ur provider status', 'ur provider doctor', 'ur provider doctor codex-cli', 'ur provider doctor ollama --json'],
321
+ examples: ['ur provider list', 'ur provider status', 'ur provider doctor', 'ur provider doctor ollama', 'ur provider doctor ollama --json'],
322
322
  },
323
323
  {
324
324
  name: 'repo-edit',
@@ -591,7 +591,7 @@ const examples = [
591
591
  {
592
592
  title: 'Provider setup',
593
593
  text: 'Inspect legal provider paths, choose a local provider, and keep fallback explicit.',
594
- code: 'ur provider list\nur provider doctor agy\nur config set provider "Claude Code"\nur config set provider ollama\nur config set model qwen3-coder:480b-cloud\nur config set provider.fallback ollama',
594
+ code: 'ur provider list\nur provider doctor agy\nur config set provider openai-api\nur config set provider ollama\nur config set model qwen3-coder:480b-cloud\nur config set provider.fallback ollama',
595
595
  },
596
596
  {
597
597
  title: 'PR handoff with self-review',
@@ -44,7 +44,7 @@
44
44
  <main id="content" class="content">
45
45
  <header class="topbar">
46
46
  <div>
47
- <p class="eyebrow">Version 1.30.3</p>
47
+ <p class="eyebrow">Version 1.30.5</p>
48
48
  <h1>UR-AGENT Documentation</h1>
49
49
  <p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-AGENT.</p>
50
50
  </div>
@@ -140,18 +140,18 @@ ur -p --output-format json "Review the current diff"</code></pre>
140
140
  </div>
141
141
  <div class="reference-grid">
142
142
  <article>
143
- <h3>Subscription CLI login</h3>
143
+ <h3>External app bridges</h3>
144
144
  <pre><code>ur auth chatgpt
145
145
  ur auth claude
146
146
  ur auth gemini
147
147
  ur auth antigravity
148
148
  ur provider doctor agy</code></pre>
149
- <p>Subscription modes call official CLIs such as Codex CLI, Claude Code CLI, Gemini CLI, and Antigravity where supported. UR checks CLI presence and official login status without reading hidden credential files. Provider config accepts canonical IDs plus aliases such as <code>claude</code>, <code>Claude Code</code>, <code>antigravity</code>, and <code>agy</code>.</p>
149
+ <p>Codex CLI, Claude Code CLI, Gemini CLI, and Antigravity are optional external app bridges. UR checks CLI presence and official login status without reading hidden credential files, but normal runtime selection uses API, local, or OpenAI-compatible providers unless <code>UR_ENABLE_EXTERNAL_APP_PROVIDERS=1</code> is set.</p>
150
150
  </article>
151
151
  <article>
152
152
  <h3>API and local providers</h3>
153
153
  <pre><code>ur config set provider openai-compatible
154
- ur config set provider "Claude Code"
154
+ ur config set provider openai-api
155
155
  ur config set base_url http://localhost:11434/v1
156
156
  ur config set model qwen3-coder:480b-cloud
157
157
  ur config set provider.fallback ollama</code></pre>
@@ -159,8 +159,8 @@ ur config set provider.fallback ollama</code></pre>
159
159
  </article>
160
160
  <article>
161
161
  <h3>Status bar and updates</h3>
162
- <pre><code>UR-AGENT v1.30.3 | Provider: Codex CLI | Auth: subscription | model: codex/gpt-5.5 | mode: ask | branch: main | tasks: idle | Update: 1.30.2 -&gt; 1.30.3 available</code></pre>
163
- <p>The interactive status bar shows provider, auth mode, model, branch, task state, checks status when known, and update availability. It is hidden in CI, dumb terminals, and non-interactive mode.</p>
162
+ <pre><code>Ollama | llama3 | ask | main | update 1.30.5 available</code></pre>
163
+ <p>The interactive status bar shows only important runtime state: provider, model, mode, branch, active tasks, checks status when known, and update availability. It is hidden in CI, dumb terminals, and non-interactive mode.</p>
164
164
  </article>
165
165
  </div>
166
166
  </section>
@@ -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.30.3",
5
+ "version": "1.30.5",
6
6
  "publisher": "ur-agent",
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.30.3",
3
+ "version": "1.30.5",
4
4
  "description": "UR-AGENT — autonomous engineering workflow engine (plan, execute, test, verify, document, benchmark, reproduce)",
5
5
  "type": "module",
6
6
  "packageManager": "bun@1.3.14",