ur-agent 1.24.1 → 1.25.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/CHANGELOG.md +7 -1
- package/README.md +55 -4
- package/dist/cli.js +1326 -333
- package/docs/CODE_FEATURE_INVENTORY.md +2 -1
- package/docs/CONFIGURATION.md +38 -2
- package/docs/USAGE.md +27 -3
- package/docs/VALIDATION.md +1 -1
- package/docs/providers.md +104 -0
- package/extensions/vscode-ur-inline-diffs/package.json +1 -1
- package/package.json +1 -1
|
@@ -977,7 +977,8 @@ The broader settings schema also covers:
|
|
|
977
977
|
|
|
978
978
|
## Model/provider behavior
|
|
979
979
|
|
|
980
|
-
- This external build
|
|
980
|
+
- This external build supports legal provider adapters for subscription CLIs,
|
|
981
|
+
explicit API-key providers, and local/OpenAI-compatible runtimes.
|
|
981
982
|
- The Ollama router inspects local models and classifies likely coding/fast
|
|
982
983
|
capabilities.
|
|
983
984
|
- Auto-routing is on by default through `UR_OLLAMA_AUTO_ROUTE`.
|
package/docs/CONFIGURATION.md
CHANGED
|
@@ -2,9 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
UR reads configuration from CLI flags, environment variables, and project or user settings files.
|
|
4
4
|
|
|
5
|
-
## Model
|
|
5
|
+
## Model Providers
|
|
6
6
|
|
|
7
|
-
UR
|
|
7
|
+
UR-AGENT supports official provider access paths only:
|
|
8
|
+
|
|
9
|
+
- Subscription/login CLI providers: Codex CLI, Claude Code CLI, Gemini CLI,
|
|
10
|
+
and Antigravity CLI where officially supported.
|
|
11
|
+
- Explicit API providers: OpenAI, Anthropic, Gemini, OpenRouter, and
|
|
12
|
+
OpenAI-compatible endpoints.
|
|
13
|
+
- Local providers: Ollama, LM Studio, llama.cpp, and vLLM OpenAI-compatible
|
|
14
|
+
server mode.
|
|
15
|
+
|
|
16
|
+
UR-AGENT never scrapes browser sessions, extracts OAuth refresh tokens, reads
|
|
17
|
+
hidden provider auth files, bypasses provider restrictions, or proxies consumer
|
|
18
|
+
web sessions as APIs.
|
|
19
|
+
|
|
20
|
+
The default local request endpoint is:
|
|
8
21
|
|
|
9
22
|
```text
|
|
10
23
|
http://localhost:11434/api
|
|
@@ -12,6 +25,29 @@ http://localhost:11434/api
|
|
|
12
25
|
|
|
13
26
|
Any model exposed by that Ollama app can be used, including local models and Ollama Cloud-backed models. UR does not call remote provider APIs directly and does not manage model API keys.
|
|
14
27
|
|
|
28
|
+
Provider configuration commands:
|
|
29
|
+
|
|
30
|
+
```sh
|
|
31
|
+
ur provider list
|
|
32
|
+
ur provider doctor
|
|
33
|
+
ur provider status
|
|
34
|
+
ur config set provider ollama
|
|
35
|
+
ur config set provider openai-compatible
|
|
36
|
+
ur config set provider.fallback ollama
|
|
37
|
+
ur config set model <model>
|
|
38
|
+
ur config set base_url <url>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
API keys are not written to UR settings. Set them in the environment when you
|
|
42
|
+
explicitly choose API mode:
|
|
43
|
+
|
|
44
|
+
```sh
|
|
45
|
+
OPENAI_API_KEY=...
|
|
46
|
+
ANTHROPIC_API_KEY=...
|
|
47
|
+
GEMINI_API_KEY=...
|
|
48
|
+
OPENROUTER_API_KEY=...
|
|
49
|
+
```
|
|
50
|
+
|
|
15
51
|
### Reconfiguring the Ollama host
|
|
16
52
|
|
|
17
53
|
The endpoint can be changed from UR in three ways, in order of precedence:
|
package/docs/USAGE.md
CHANGED
|
@@ -45,7 +45,7 @@ ur -p \
|
|
|
45
45
|
"summarize this project"
|
|
46
46
|
```
|
|
47
47
|
|
|
48
|
-
## Models
|
|
48
|
+
## Models And Providers
|
|
49
49
|
|
|
50
50
|
The wrapper in `bin/ur.js` honors explicit model choices in this order:
|
|
51
51
|
|
|
@@ -82,7 +82,31 @@ Precedence: `--ollama-host` > `OLLAMA_HOST` env > `ollama.host` setting > `local
|
|
|
82
82
|
`--discover-ollama` shows the picker every time but does **not** save the choice;
|
|
83
83
|
use `ollama.host` in settings if you want plain `ur` to default to a LAN host.
|
|
84
84
|
|
|
85
|
-
Models exposed by the chosen Ollama app are valid, including local models and
|
|
85
|
+
Models exposed by the chosen Ollama app are valid, including local models and
|
|
86
|
+
Ollama Cloud-backed models.
|
|
87
|
+
|
|
88
|
+
UR-AGENT also has explicit provider commands for legal access paths:
|
|
89
|
+
|
|
90
|
+
```sh
|
|
91
|
+
ur provider list
|
|
92
|
+
ur provider status
|
|
93
|
+
ur provider doctor
|
|
94
|
+
ur auth chatgpt
|
|
95
|
+
ur auth claude
|
|
96
|
+
ur auth gemini
|
|
97
|
+
ur auth antigravity
|
|
98
|
+
ur config set provider ollama
|
|
99
|
+
ur config set provider openai-compatible
|
|
100
|
+
ur config set model <model>
|
|
101
|
+
ur config set base_url <url>
|
|
102
|
+
ur config set provider.fallback ollama
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
API modes are explicit and read keys only from environment variables:
|
|
106
|
+
`OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `GEMINI_API_KEY`, and
|
|
107
|
+
`OPENROUTER_API_KEY`. Subscription modes call official CLIs such as Codex,
|
|
108
|
+
Claude Code, Gemini CLI, or Antigravity where supported. UR-AGENT never scrapes
|
|
109
|
+
browser sessions, extracts OAuth tokens, or bypasses provider restrictions.
|
|
86
110
|
|
|
87
111
|
## Project Instructions
|
|
88
112
|
|
|
@@ -197,7 +221,7 @@ Interactive sessions include a compact bottom status bar when stdout is a real
|
|
|
197
221
|
terminal:
|
|
198
222
|
|
|
199
223
|
```text
|
|
200
|
-
UR-AGENT v1.
|
|
224
|
+
UR-AGENT v1.25.1 | Provider: Ollama | Auth: local | model: qwen3-coder:480b-cloud | mode: ask | branch: main | tasks: idle | Update: 1.25.0 -> 1.25.1 available
|
|
201
225
|
```
|
|
202
226
|
|
|
203
227
|
The bar is not rendered in non-interactive mode, CI, dumb terminals, or
|
package/docs/VALIDATION.md
CHANGED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# UR-AGENT providers
|
|
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.
|
|
6
|
+
|
|
7
|
+
## Legal auth policy
|
|
8
|
+
|
|
9
|
+
UR-AGENT never:
|
|
10
|
+
|
|
11
|
+
- scrapes browser cookies or browser sessions
|
|
12
|
+
- extracts, copies, or reuses OAuth refresh tokens
|
|
13
|
+
- reads hidden provider auth files directly
|
|
14
|
+
- bypasses subscription, quota, region, product, or organization restrictions
|
|
15
|
+
- proxies a consumer web session as an API
|
|
16
|
+
- claims provider support unless the official CLI/API path works
|
|
17
|
+
|
|
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
|
+
|
|
22
|
+
## Provider matrix
|
|
23
|
+
|
|
24
|
+
| Provider | Access type | Legal path |
|
|
25
|
+
| --- | --- | --- |
|
|
26
|
+
| ChatGPT/Codex | subscription | official Codex CLI login |
|
|
27
|
+
| Claude Code | subscription | official Claude Code login |
|
|
28
|
+
| Gemini CLI | subscription | official Gemini Code Assist login |
|
|
29
|
+
| Antigravity | subscription | official Antigravity login, where supported |
|
|
30
|
+
| OpenAI | API | `OPENAI_API_KEY` |
|
|
31
|
+
| Anthropic Claude | API | `ANTHROPIC_API_KEY` |
|
|
32
|
+
| Gemini | API | `GEMINI_API_KEY` |
|
|
33
|
+
| OpenRouter | API/router | `OPENROUTER_API_KEY` |
|
|
34
|
+
| Ollama | local | localhost Ollama runtime |
|
|
35
|
+
| LM Studio | local | local OpenAI-compatible server |
|
|
36
|
+
| llama.cpp | local | local OpenAI-compatible server |
|
|
37
|
+
| vLLM | local/server | OpenAI-compatible server |
|
|
38
|
+
|
|
39
|
+
## Commands
|
|
40
|
+
|
|
41
|
+
```sh
|
|
42
|
+
ur provider list
|
|
43
|
+
ur provider status
|
|
44
|
+
ur provider doctor
|
|
45
|
+
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 ollama
|
|
52
|
+
ur config set provider openai-compatible
|
|
53
|
+
ur config set model <model>
|
|
54
|
+
ur config set base_url <url>
|
|
55
|
+
ur config set provider.fallback ollama
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
`ur provider doctor` checks the selected provider. It reports installed/missing
|
|
59
|
+
CLIs, official login status where available, API key presence for API providers,
|
|
60
|
+
local endpoint reachability, detectable model availability, unsupported account
|
|
61
|
+
type signals, and fallback configuration.
|
|
62
|
+
|
|
63
|
+
Fallback is never silent by default. If the selected provider fails, UR-AGENT
|
|
64
|
+
reports the selected provider, failure reason, suggested fix, and configured
|
|
65
|
+
fallback option.
|
|
66
|
+
|
|
67
|
+
## Subscription CLI providers
|
|
68
|
+
|
|
69
|
+
- `codex-cli`: detects `codex --version`, uses `codex login` or
|
|
70
|
+
`codex login --device-auth`, and checks `codex login status`.
|
|
71
|
+
- `claude-code-cli`: detects `claude --version`, uses `claude auth login`, and
|
|
72
|
+
checks `claude auth status` when available. If `ANTHROPIC_API_KEY` is set,
|
|
73
|
+
doctor warns that API-key mode may override subscription auth.
|
|
74
|
+
- `gemini-cli`: launches only the official Gemini CLI flow. If the detected
|
|
75
|
+
path is an unsupported personal-account path, UR-AGENT prints a clear error.
|
|
76
|
+
- `antigravity-cli`: launches only an installed official CLI command where
|
|
77
|
+
supported; UR-AGENT does not invent flags.
|
|
78
|
+
|
|
79
|
+
## API and local providers
|
|
80
|
+
|
|
81
|
+
API providers require explicit user selection and environment keys:
|
|
82
|
+
|
|
83
|
+
```sh
|
|
84
|
+
OPENAI_API_KEY=...
|
|
85
|
+
ANTHROPIC_API_KEY=...
|
|
86
|
+
GEMINI_API_KEY=...
|
|
87
|
+
OPENROUTER_API_KEY=...
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
OpenAI-compatible endpoints can point at local or cloud endpoints:
|
|
91
|
+
|
|
92
|
+
```sh
|
|
93
|
+
ur config set provider openai-compatible
|
|
94
|
+
ur config set base_url http://localhost:1234/v1
|
|
95
|
+
ur config set model local-model-name
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Local providers use their normal servers:
|
|
99
|
+
|
|
100
|
+
- Ollama: `http://localhost:11434`
|
|
101
|
+
- LM Studio: `http://localhost:1234/v1`
|
|
102
|
+
- llama.cpp server mode: `http://localhost:8080/v1`
|
|
103
|
+
- vLLM server mode: `http://localhost:8000/v1`
|
|
104
|
+
|
package/package.json
CHANGED