ur-agent 1.24.1 → 1.25.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.
@@ -977,7 +977,8 @@ The broader settings schema also covers:
977
977
 
978
978
  ## Model/provider behavior
979
979
 
980
- - This external build routes model calls through an Ollama provider shim.
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`.
@@ -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 Provider
5
+ ## Model Providers
6
6
 
7
- UR runs models strictly through the local Ollama app. The default request endpoint is:
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 Ollama Cloud-backed models. UR does not call provider APIs directly or manage model API keys.
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.24.0 | model: qwen3-coder:480b-cloud | mode: ask | branch: main | tasks: idle | Update: 1.23.3 -> 1.24.0 available
224
+ UR-AGENT v1.25.0 | Provider: Ollama | Auth: local | model: qwen3-coder:480b-cloud | mode: ask | branch: main | tasks: idle | Update: 1.24.0 -> 1.25.0 available
201
225
  ```
202
226
 
203
227
  The bar is not rendered in non-interactive mode, CI, dumb terminals, or
@@ -18,7 +18,7 @@ You need:
18
18
 
19
19
  ```sh
20
20
  ur --version
21
- # expected: 1.24.1 (UR-AGENT)
21
+ # expected: 1.25.0 (UR-AGENT)
22
22
  ```
23
23
 
24
24
  ## 0.1 Permission safety and context pack (1.19.0)
@@ -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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ur-agent",
3
- "version": "1.24.1",
3
+ "version": "1.25.0",
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",