ur-agent 1.30.3 → 1.30.4
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/CHANGELOG.md +10 -0
- package/README.md +49 -43
- package/dist/cli.js +229 -98
- package/docs/AGENT_FEATURES.md +1 -1
- package/docs/CONFIGURATION.md +13 -14
- package/docs/USAGE.md +23 -20
- package/docs/providers.md +60 -51
- package/documentation/app.js +4 -4
- package/documentation/index.html +5 -5
- package/extensions/vscode-ur-inline-diffs/package.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.30.4
|
|
4
|
+
|
|
5
|
+
- Make the default provider runtime independent of provider apps. Codex CLI,
|
|
6
|
+
Claude Code, Gemini CLI, and Antigravity are now treated as explicit external
|
|
7
|
+
app bridges and are blocked from normal `/model`, config save, and runtime
|
|
8
|
+
dispatch unless `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` is set.
|
|
9
|
+
- Keep API, local, and OpenAI-compatible providers as the UR-native runtime path
|
|
10
|
+
so turns behave like Ollama: UR owns the conversation loop, tool loop, errors,
|
|
11
|
+
and output instead of delegating to another agent app.
|
|
12
|
+
|
|
3
13
|
## 1.30.3
|
|
4
14
|
|
|
5
15
|
- Fix Codex CLI dispatch for real interactive terminals by inheriting terminal
|
package/README.md
CHANGED
|
@@ -152,47 +152,51 @@ requests use that provider backend; they do not fall back to Ollama unless
|
|
|
152
152
|
### Legal Provider Auth
|
|
153
153
|
|
|
154
154
|
UR-AGENT stores only safe provider preferences: provider name, model name,
|
|
155
|
-
base URL,
|
|
156
|
-
|
|
157
|
-
|
|
155
|
+
base URL, fallback preference, and non-secret settings. API keys must stay in
|
|
156
|
+
environment variables. API, local, and OpenAI-compatible server providers are
|
|
157
|
+
UR-native runtimes and behave like Ollama: UR owns the conversation loop, tool
|
|
158
|
+
loop, errors, and output.
|
|
159
|
+
|
|
160
|
+
Subscription CLI integrations (Codex CLI, Claude Code, Gemini CLI, and
|
|
161
|
+
Antigravity) are external app bridges. They are shown for diagnostics and can be
|
|
162
|
+
checked with `ur provider doctor`, but they are not required and are disabled
|
|
163
|
+
for normal runtime selection unless `UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` is set.
|
|
158
164
|
|
|
159
165
|
```sh
|
|
160
166
|
ur provider list
|
|
161
167
|
ur provider status
|
|
162
168
|
ur provider doctor
|
|
163
|
-
ur
|
|
164
|
-
ur
|
|
165
|
-
ur
|
|
166
|
-
ur
|
|
167
|
-
ur config set provider
|
|
168
|
-
ur config set provider claude
|
|
169
|
-
ur config set provider "Claude Code"
|
|
170
|
-
ur config set provider antigravity
|
|
169
|
+
ur config set provider ollama
|
|
170
|
+
ur config set provider openai-api
|
|
171
|
+
ur config set provider anthropic-api
|
|
172
|
+
ur config set provider gemini-api
|
|
173
|
+
ur config set provider openrouter
|
|
171
174
|
ur config set model qwen3-coder:480b-cloud
|
|
172
175
|
ur config set base_url http://localhost:11434
|
|
173
176
|
ur config set provider.fallback ollama
|
|
174
177
|
```
|
|
175
178
|
|
|
176
179
|
Provider config accepts canonical IDs and common aliases. Examples:
|
|
177
|
-
`
|
|
178
|
-
`
|
|
179
|
-
|
|
180
|
+
`openai-api`, `anthropic-api`, `gemini-api`, `openrouter`, `ollama`,
|
|
181
|
+
`lmstudio`, `LM Studio`, `llama.cpp`, and `vllm`. External app bridge aliases
|
|
182
|
+
such as `codex-cli`, `claude-code-cli`, `gemini-cli`, and `antigravity-cli` are
|
|
183
|
+
accepted only when the external bridge opt-in is enabled.
|
|
180
184
|
Use quotes for shell values with spaces.
|
|
181
185
|
|
|
182
|
-
| Provider | Access type | Legal path |
|
|
183
|
-
| --- | --- | --- |
|
|
184
|
-
|
|
|
185
|
-
| Claude
|
|
186
|
-
| Gemini
|
|
187
|
-
|
|
|
188
|
-
|
|
|
189
|
-
|
|
|
190
|
-
|
|
|
191
|
-
|
|
|
192
|
-
|
|
|
193
|
-
|
|
|
194
|
-
|
|
|
195
|
-
|
|
|
186
|
+
| Provider | Access type | Runtime kind | Legal path |
|
|
187
|
+
| --- | --- | --- | --- |
|
|
188
|
+
| OpenAI API | API key | UR-native | `OPENAI_API_KEY` |
|
|
189
|
+
| Claude API | API key | UR-native | `ANTHROPIC_API_KEY` |
|
|
190
|
+
| Gemini API | API key | UR-native | `GEMINI_API_KEY` |
|
|
191
|
+
| OpenRouter | API/router | UR-native | `OPENROUTER_API_KEY` |
|
|
192
|
+
| Ollama | local | UR-native | localhost Ollama runtime |
|
|
193
|
+
| LM Studio | local/server | UR-native | local OpenAI-compatible server |
|
|
194
|
+
| llama.cpp | local/server | UR-native | local OpenAI-compatible server |
|
|
195
|
+
| vLLM | local/server | UR-native | OpenAI-compatible server |
|
|
196
|
+
| Codex CLI | subscription | external app bridge | official Codex CLI login |
|
|
197
|
+
| Claude Code | subscription | external app bridge | official Claude Code login |
|
|
198
|
+
| Gemini CLI | subscription | external app bridge | official Gemini Code Assist login |
|
|
199
|
+
| Antigravity | subscription | external app bridge | official Antigravity login, where supported |
|
|
196
200
|
|
|
197
201
|
#### Provider-first model selection
|
|
198
202
|
|
|
@@ -205,32 +209,34 @@ In the interactive app, `/model` is a two-step, provider-first picker:
|
|
|
205
209
|
2. **Choose a model.** Only the selected provider's models are shown, labelled
|
|
206
210
|
by source: `live` (discovered from the endpoint), `cache` (last discovery),
|
|
207
211
|
or `static` (predefined). Local/server providers (Ollama, LM Studio,
|
|
208
|
-
llama.cpp, vLLM) and OpenAI-compatible endpoints are discovered live; API
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
provider
|
|
218
|
-
|
|
212
|
+
llama.cpp, vLLM) and OpenAI-compatible endpoints are discovered live; API
|
|
213
|
+
providers use their curated model list. External app bridges are shown but
|
|
214
|
+
blocked unless explicitly opted in.
|
|
215
|
+
|
|
216
|
+
Model lists never cross providers: OpenAI API, Claude API, Gemini API,
|
|
217
|
+
OpenRouter, Ollama, and OpenAI-compatible local/server endpoints are separate
|
|
218
|
+
access paths. API keys, local runtimes, and external app logins are not
|
|
219
|
+
interchangeable. The provider/model pair is validated before it is saved and
|
|
220
|
+
again before every request; changing provider clears an incompatible model.
|
|
221
|
+
`ur config set provider X` warns and clears an incompatible model, and
|
|
222
|
+
`ur config set model Y` is validated against the active provider. The
|
|
223
|
+
confirmation shows the selected provider, model, model source, and the runtime
|
|
224
|
+
backend that will receive the next request.
|
|
219
225
|
|
|
220
226
|
#### Runtime dispatch
|
|
221
227
|
|
|
222
228
|
The selected provider/model drives every agent request — the assistant's own
|
|
223
229
|
identity line in the system prompt reflects it too:
|
|
224
230
|
|
|
225
|
-
- **Subscription** providers spawn the official CLI (`codex`, `claude`,
|
|
226
|
-
`gemini`, `agy`) in non-interactive mode with the scoped model and prompt; a
|
|
227
|
-
non-zero exit or empty output fails clearly (never placeholder text).
|
|
228
231
|
- **API** providers call each service in its native wire format — Anthropic
|
|
229
232
|
`x-api-key` + `anthropic-version` on `/v1/messages`, OpenAI `Bearer` on
|
|
230
233
|
`/v1/chat/completions`, Gemini `x-goog-api-key` on `:generateContent`,
|
|
231
234
|
OpenRouter on its OpenAI-compatible chat endpoint.
|
|
232
235
|
- **Local/server** providers call the configured endpoint (`/v1/chat/completions`
|
|
233
236
|
for LM Studio/llama.cpp/vLLM; the native API for Ollama).
|
|
237
|
+
- **External app bridges** for subscription CLIs are disabled by default because
|
|
238
|
+
they delegate the turn to another agent app. Opt in with
|
|
239
|
+
`UR_ENABLE_EXTERNAL_APP_PROVIDERS=1` only when that behavior is intentional.
|
|
234
240
|
|
|
235
241
|
Ollama is used only when Ollama is selected. There is no silent cross-provider
|
|
236
242
|
fallback: if dispatch fails, UR reports the selected provider, model, and runtime
|
|
@@ -304,7 +310,7 @@ viewer mode.
|
|
|
304
310
|
Example:
|
|
305
311
|
|
|
306
312
|
```text
|
|
307
|
-
UR-AGENT v1.30.
|
|
313
|
+
UR-AGENT v1.30.4 | Provider: Ollama | Auth: local | model: llama3 | mode: ask | branch: main | tasks: idle
|
|
308
314
|
```
|
|
309
315
|
|
|
310
316
|
The bar reflects the active in-session provider/model immediately after a
|