ur-agent 1.36.1 → 1.37.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/README.md +28 -15
- package/bin/ur.js +13 -3
- package/dist/cli.js +165 -70
- package/docs/CONFIGURATION.md +2 -0
- package/docs/IDE.md +190 -37
- package/docs/providers.md +2 -0
- package/documentation/index.html +2 -2
- package/extensions/vscode-ur-inline-diffs/README.md +81 -10
- package/extensions/vscode-ur-inline-diffs/media/ur.svg +3 -4
- package/extensions/vscode-ur-inline-diffs/out/extension.js +2571 -0
- package/extensions/vscode-ur-inline-diffs/package.json +214 -8
- package/package.json +2 -2
- package/extensions/vscode-ur-inline-diffs/extension.js +0 -383
package/docs/CONFIGURATION.md
CHANGED
|
@@ -44,6 +44,7 @@ Provider configuration commands:
|
|
|
44
44
|
ur provider list
|
|
45
45
|
ur provider doctor
|
|
46
46
|
ur provider status
|
|
47
|
+
ur provider models [provider] --json
|
|
47
48
|
ur config set provider ollama
|
|
48
49
|
ur config set provider openai-api
|
|
49
50
|
ur config set provider anthropic-api
|
|
@@ -53,6 +54,7 @@ ur config set provider openai-compatible
|
|
|
53
54
|
ur provider doctor agy
|
|
54
55
|
ur config set provider.fallback ollama
|
|
55
56
|
ur config set model <model>
|
|
57
|
+
ur provider select-model <provider> <model> --json
|
|
56
58
|
ur config set base_url <url>
|
|
57
59
|
```
|
|
58
60
|
|
package/docs/IDE.md
CHANGED
|
@@ -1,44 +1,63 @@
|
|
|
1
1
|
# IDE Integration
|
|
2
2
|
|
|
3
|
-
UR
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
UR's professional IDE integration is the **UR Inline Diffs** VS Code extension,
|
|
4
|
+
bundled in this repository (`extensions/vscode-ur-inline-diffs`). It gives VS
|
|
5
|
+
Code, Cursor, and Windsurf a chat panel, inline diff review, an actions panel,
|
|
6
|
+
an agent status card, a searchable command palette, and an agent options
|
|
7
|
+
panel — all driven by the same `ur` CLI you already use from a terminal, with
|
|
8
|
+
no separate server process and no new network surface.
|
|
9
|
+
|
|
10
|
+
Other editors connect through different mechanisms, chosen per editor and
|
|
11
|
+
stated honestly — nothing here claims support that does not exist:
|
|
12
|
+
|
|
13
|
+
- **VS Code extension** — the professional integration described in full
|
|
14
|
+
below. Ships to VS Code, Cursor, and Windsurf (one extension; Cursor and
|
|
15
|
+
Windsurf are VS Code forks). This is the integration everything else on
|
|
16
|
+
this page is compared against.
|
|
17
|
+
- **Stdio ACP** (`ur acp stdio`) — the real, spec-compliant
|
|
18
|
+
[Agent Client Protocol](ACP.md) over stdio, used by Zed and ACP-capable
|
|
19
|
+
Neovim clients. This remains a separate transport from the VS Code
|
|
20
|
+
extension's chat bridge below; the two are independent and neither depends
|
|
21
|
+
on the other.
|
|
10
22
|
- **Manual** — no auto-config; install a plugin and connect via `/ide`.
|
|
23
|
+
**JetBrains is not implemented in this repository.** UR can detect whether
|
|
24
|
+
a plugin named `ur-jetbrains-plugin` is installed
|
|
25
|
+
(`src/utils/jetbrains.ts`), but this repo does not build, ship, or publish
|
|
26
|
+
that plugin. Nothing in this document should be read as "install our
|
|
27
|
+
JetBrains plugin today" — there isn't one yet.
|
|
11
28
|
|
|
12
29
|
## Supported targets
|
|
13
30
|
|
|
14
|
-
| Editor | Mechanism | Auto config |
|
|
15
|
-
| --- | --- | --- | --- |
|
|
16
|
-
| VS Code |
|
|
17
|
-
| Cursor |
|
|
18
|
-
| Windsurf |
|
|
19
|
-
| Zed | stdio ACP | `.zed/settings.json` |
|
|
20
|
-
| JetBrains |
|
|
21
|
-
| Neovim | stdio ACP | snippet |
|
|
22
|
-
| Generic ACP | stdio ACP / HTTP | snippet |
|
|
31
|
+
| Editor | Mechanism | Auto config | Notes |
|
|
32
|
+
| --- | --- | --- | --- |
|
|
33
|
+
| VS Code | UR Inline Diffs extension | `.vscode/settings.json` | Full chat, diff, actions, status, and search integration — see below. |
|
|
34
|
+
| Cursor | UR Inline Diffs extension (VS Code fork) | `.vscode/settings.json` | Same extension as VS Code. |
|
|
35
|
+
| Windsurf | UR Inline Diffs extension (VS Code fork) | `.vscode/settings.json` | Same extension as VS Code. |
|
|
36
|
+
| Zed | stdio ACP | `.zed/settings.json` | Real Agent Client Protocol over stdio. |
|
|
37
|
+
| JetBrains | not implemented | none | Detection code exists; no plugin ships from this repo. Use the CLI directly in the meantime. |
|
|
38
|
+
| Neovim | stdio ACP | snippet | Requires a third-party ACP client plugin. |
|
|
39
|
+
| Generic ACP | stdio ACP / HTTP | snippet | `ur acp stdio` (native ACP) or `ur acp serve` (HTTP JSON-RPC; not a streaming transport — see Known limitations). |
|
|
23
40
|
|
|
24
41
|
## Commands
|
|
25
42
|
|
|
26
43
|
```sh
|
|
27
|
-
ur ide status # workspace, ACP server, provider/model, plugin count, warnings
|
|
28
|
-
ur ide doctor
|
|
29
|
-
ur ide config <editor>
|
|
30
|
-
ur ide open
|
|
31
|
-
ur ide diff capture
|
|
32
|
-
ur ide diff list|show <id>
|
|
44
|
+
ur ide status # workspace, ACP server, provider/model, sandbox/verifier mode, plugin count, warnings
|
|
45
|
+
ur ide doctor # pass/warn/fail checks; reports missing config clearly
|
|
46
|
+
ur ide config <editor> # print setup + config snippet for the chosen editor
|
|
47
|
+
ur ide open # open the current project/worktree in a detected IDE
|
|
48
|
+
ur ide diff capture # capture the current diff as a review bundle
|
|
49
|
+
ur ide diff list|show <id> # inspect captured bundles
|
|
33
50
|
ur ide diff approve|reject <id>
|
|
34
51
|
```
|
|
35
52
|
|
|
36
53
|
`ur ide config` targets: `vscode`, `cursor`, `windsurf`, `zed`, `jetbrains`,
|
|
37
54
|
`neovim`, `generic-acp` (aliases like `nvim`, `intellij`, `code` also resolve).
|
|
38
55
|
|
|
39
|
-
`ur ide status` reports the active workspace, whether the ACP server is
|
|
40
|
-
and on which port, the active provider/model and runtime backend,
|
|
41
|
-
loaded plugins, and any warnings.
|
|
56
|
+
`ur ide status` reports the active workspace, whether the ACP server is
|
|
57
|
+
running and on which port, the active provider/model and runtime backend,
|
|
58
|
+
sandbox mode, verifier mode, the number of loaded plugins, and any warnings.
|
|
59
|
+
Add `--json` for machine-readable output — this is the same JSON surface the
|
|
60
|
+
VS Code extension's status card and actions panel read from.
|
|
42
61
|
|
|
43
62
|
## Patch / diff workflow
|
|
44
63
|
|
|
@@ -47,23 +66,154 @@ under `.ur/ide/diffs/` (`ur ide diff capture`), then previewed and explicitly
|
|
|
47
66
|
applied or rejected:
|
|
48
67
|
|
|
49
68
|
- **CLI:** `ur ide diff show <id>`, `ur ide diff approve <id>`, `ur ide diff reject <id>`.
|
|
50
|
-
- **VS Code:** the
|
|
51
|
-
|
|
52
|
-
Comment.
|
|
69
|
+
- **VS Code:** the **Inline Diffs** view (and the **Actions** view — they show
|
|
70
|
+
the same bundles) lists bundles; right-click one to Open (preview), Apply,
|
|
71
|
+
Reject, or Comment. Apply asks for confirmation, runs `git apply`, then
|
|
72
|
+
records the approval through `ur ide diff approve` — the same command the
|
|
73
|
+
terminal workflow uses, so the status VS Code shows always matches what
|
|
74
|
+
`ur ide diff list` reports. The extension never writes a diff status value
|
|
75
|
+
the CLI does not recognize.
|
|
53
76
|
|
|
54
77
|
## VS Code extension
|
|
55
78
|
|
|
56
|
-
The bundled
|
|
57
|
-
|
|
79
|
+
The bundled **UR Inline Diffs** extension is the professional IDE integration
|
|
80
|
+
for VS Code, Cursor, and Windsurf. It adds a UR container to the Activity Bar
|
|
81
|
+
with three views, **Chat**, **Inline Diffs**, and **Actions**, plus a chat
|
|
82
|
+
panel, a status card, an agent options panel, a provider/model picker, and a
|
|
83
|
+
searchable command palette.
|
|
84
|
+
|
|
85
|
+
Install it with `ur ide install` (offers the bundled VSIX) or from the
|
|
86
|
+
packaged `.vsix`. The extension is bundled inside this repository and
|
|
87
|
+
packaged as a local VSIX when installed from UR-AGENT; the public install
|
|
88
|
+
path does not depend on an unpublished marketplace extension ID. Every
|
|
89
|
+
feature below requires the UR CLI on your `PATH` — the extension calls `ur`
|
|
90
|
+
as a local subprocess and never talks to a model provider or network service
|
|
91
|
+
directly.
|
|
92
|
+
|
|
93
|
+
### Chat panel
|
|
58
94
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
95
|
+
**UR: New Chat** and **UR: Open Chat** open a chat panel that streams
|
|
96
|
+
responses over the same headless contract the CLI itself uses for scripted
|
|
97
|
+
runs:
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
ur -p --output-format stream-json --verbose --permission-prompt-tool stdio [--resume <id>] "<prompt>"
|
|
101
|
+
```
|
|
64
102
|
|
|
65
|
-
|
|
66
|
-
|
|
103
|
+
Output is NDJSON — one JSON object per line. Assistant text and tool-use/
|
|
104
|
+
tool-result blocks render as they arrive; nothing is buffered and dumped only
|
|
105
|
+
at the end. If the underlying `ur` process exits with an error, the panel
|
|
106
|
+
shows an error banner — it never fabricates a success message when the run
|
|
107
|
+
failed.
|
|
108
|
+
|
|
109
|
+
The **Chat** view in the UR sidebar exposes **New Chat**, **Open Chat**,
|
|
110
|
+
**Search Actions**, **Pick Model**, and editor-context actions when an editor
|
|
111
|
+
or selection is available. **UR: Pick Model** uses the provider-first model
|
|
112
|
+
catalog from the CLI and saves the selected provider/model pair through the
|
|
113
|
+
same validation path as `/model`.
|
|
114
|
+
|
|
115
|
+
**Permission prompts.** When a turn wants to use a tool that needs approval,
|
|
116
|
+
UR emits a `control_request` message in the same stream. The chat panel shows
|
|
117
|
+
an inline Allow/Deny prompt and writes the decision back as a
|
|
118
|
+
`control_response` on the child process's stdin. The default posture is to
|
|
119
|
+
ask, not to silently auto-approve; canceling a request denies it safely
|
|
120
|
+
rather than leaving it hanging.
|
|
121
|
+
|
|
122
|
+
**Session persistence.** Each chat is a session persisted under
|
|
123
|
+
`.ur/ide/chat/` in the workspace (a manifest plus one file per session).
|
|
124
|
+
**UR: Open Chat** can resume a previous session — using the CLI's own
|
|
125
|
+
`--resume` — or start a new one; sessions survive closing and reopening VS
|
|
126
|
+
Code.
|
|
127
|
+
|
|
128
|
+
**File and selection context.** **UR: Add Current File to Chat** and
|
|
129
|
+
**UR: Add Selection to Chat** attach the active file or selection as explicit
|
|
130
|
+
context. Nothing is sent to UR until one of these actions is taken or a
|
|
131
|
+
message is sent — the extension never silently uploads file content in the
|
|
132
|
+
background.
|
|
133
|
+
|
|
134
|
+
**Editor actions.** **UR: Explain Selection**, **UR: Fix Selection**, and
|
|
135
|
+
**UR: Generate Tests for Selection** (also on the editor right-click menu)
|
|
136
|
+
open the same chat panel with a structured prompt built from the current
|
|
137
|
+
selection. There is no separate backend path for these — they reuse the chat
|
|
138
|
+
pathway above.
|
|
139
|
+
|
|
140
|
+
### Actions panel
|
|
141
|
+
|
|
142
|
+
The **Actions** view lists diff bundles from `.ur/ide/diffs/` and background
|
|
143
|
+
tasks (`ur bg list --json`) together in one place, with its own refresh
|
|
144
|
+
button and a clear empty state when there is nothing captured yet. Diff rows
|
|
145
|
+
support the same Open/Apply/Reject/Comment actions as the Inline Diffs view
|
|
146
|
+
(routed through the CLI, as described above). Background task rows are
|
|
147
|
+
read-only in this release — click one to open its log file; starting or
|
|
148
|
+
canceling a task from the panel is not implemented yet, use
|
|
149
|
+
`ur bg run|kill` from a terminal.
|
|
150
|
+
|
|
151
|
+
### Agent status card
|
|
152
|
+
|
|
153
|
+
**UR: Agent Status** opens a panel assembled from `ur ide status --json` and
|
|
154
|
+
`ur provider status --json`: UR version, workspace root, provider, model,
|
|
155
|
+
provider kind (UR-native, subscription CLI, or subscription placeholder),
|
|
156
|
+
native tool-call support, native streaming support, multimodal support, the
|
|
157
|
+
active provider's safety-boundary description, sandbox mode, verifier mode,
|
|
158
|
+
ACP status, plugin count, and warnings, with a refresh button. Any field the
|
|
159
|
+
CLI does not report renders as the literal word **unknown** — never a guess.
|
|
160
|
+
|
|
161
|
+
### Search actions
|
|
162
|
+
|
|
163
|
+
**UR: Search Actions** is a single searchable palette covering every stable
|
|
164
|
+
action the extension exposes: New Chat, Open Chat, Explain Selection, Fix
|
|
165
|
+
Selection, Generate Tests, Review Current Diff, Run Verifier, Provider
|
|
166
|
+
Status, Agent Status, Agent Options, Open Settings, Open Docs, Open
|
|
167
|
+
Artifacts, Run Spec, Run Workflow, and Refresh IDE Actions.
|
|
168
|
+
|
|
169
|
+
### Agent options panel
|
|
170
|
+
|
|
171
|
+
**UR: Agent Options** shows recommendations for privacy, speed, multimodal
|
|
172
|
+
support, tool calling, native streaming, subscription CLI access, local/
|
|
173
|
+
offline use, complex refactors, and docs/review work. **This panel is built
|
|
174
|
+
from local, curated data and the UR CLI's own provider registry
|
|
175
|
+
(`ur provider list --json`) only — it is not live market research and does
|
|
176
|
+
not rank model quality.** Every provider is labeled by kind (UR-native,
|
|
177
|
+
subscription CLI, local, or API), and a capability renders as **unknown**
|
|
178
|
+
rather than a guess whenever the CLI does not expose it — for example,
|
|
179
|
+
multimodal support for local/self-hosted models, which depends on whichever
|
|
180
|
+
model happens to be loaded rather than being a fixed provider fact.
|
|
181
|
+
|
|
182
|
+
### Review Current Diff and Run Verifier
|
|
183
|
+
|
|
184
|
+
**UR: Review Current Diff** reads the current `git diff` directly through a
|
|
185
|
+
safe subprocess call (no shell interpolation), asks for confirmation before
|
|
186
|
+
sending a large diff, then opens chat with a structured review prompt — the
|
|
187
|
+
diff is never sent without that explicit action.
|
|
188
|
+
|
|
189
|
+
**UR: Run Verifier** opens chat and asks UR to run its real verification
|
|
190
|
+
subagent (the same mechanism behind the `/verify` prompt command) and report
|
|
191
|
+
a verdict. There is no standalone `ur verify` CLI command today, so this
|
|
192
|
+
always goes through chat rather than a direct CLI call; if the underlying
|
|
193
|
+
`ur` process fails, the panel shows the failure clearly and never reports a
|
|
194
|
+
success it did not observe.
|
|
195
|
+
|
|
196
|
+
## Known limitations
|
|
197
|
+
|
|
198
|
+
- **JetBrains is not implemented.** No JetBrains plugin ships from this
|
|
199
|
+
repository; see "Supported targets" above.
|
|
200
|
+
- **The lockfile/MCP IDE bridge is Phase 2 and not part of this MVP.** The
|
|
201
|
+
CLI already implements the *client* half of a lockfile-discovered MCP
|
|
202
|
+
connection to a running IDE (`src/utils/ide.ts`), used by the terminal
|
|
203
|
+
`/ide` connect flow for live diagnostics and native diff tabs from a
|
|
204
|
+
terminal-hosted `ur` session. The VS Code extension's chat panel does not
|
|
205
|
+
use this bridge — it talks to UR entirely through the `stream-json`
|
|
206
|
+
subprocess contract described above.
|
|
207
|
+
- **The ACP HTTP server (`ur acp serve`) is not the VS Code chat streaming
|
|
208
|
+
transport.** It is a separate, non-streaming JSON-RPC endpoint intended for
|
|
209
|
+
scripts and other clients; the VS Code extension does not route chat
|
|
210
|
+
through it, and `ur acp stdio` (used by Zed and ACP Neovim clients) is
|
|
211
|
+
unaffected by any of the VS Code work described here.
|
|
212
|
+
- **Background task actions are read-only** in the Actions panel — no start
|
|
213
|
+
or cancel from the panel yet.
|
|
214
|
+
- **Run Spec / Run Workflow** open chat with a prompt asking UR to list and
|
|
215
|
+
run the relevant items, rather than shelling out directly — `ur spec` and
|
|
216
|
+
`ur workflow` are full agentic commands, not one-shot JSON lookups.
|
|
67
217
|
|
|
68
218
|
## Troubleshooting
|
|
69
219
|
|
|
@@ -75,3 +225,6 @@ Install it with `ur ide install` (offers the bundled VSIX) or from the packaged
|
|
|
75
225
|
`agent_servers.UR` block from `ur ide config zed`, then reload Zed.
|
|
76
226
|
- **Apply fails in VS Code:** the patch may not match the current tree; re-capture
|
|
77
227
|
with `ur ide diff capture`.
|
|
228
|
+
- **Chat panel shows an error banner:** the underlying `ur` process failed or
|
|
229
|
+
exited non-zero; check that the UR CLI is on your `PATH` and that a
|
|
230
|
+
provider/model is configured (`ur provider status`).
|
package/docs/providers.md
CHANGED
|
@@ -88,6 +88,7 @@ ur provider status
|
|
|
88
88
|
ur provider doctor
|
|
89
89
|
ur provider doctor codex-cli
|
|
90
90
|
ur provider doctor agy
|
|
91
|
+
ur provider models [provider] --json
|
|
91
92
|
# Subscription CLI logins (official vendor CLIs):
|
|
92
93
|
ur auth chatgpt
|
|
93
94
|
ur auth claude
|
|
@@ -100,6 +101,7 @@ ur config set provider gemini-api
|
|
|
100
101
|
ur config set provider openrouter
|
|
101
102
|
ur config set provider openai-compatible
|
|
102
103
|
ur config set model <model>
|
|
104
|
+
ur provider select-model <provider> <model> --json
|
|
103
105
|
ur config set base_url <url>
|
|
104
106
|
ur config set provider.fallback ollama
|
|
105
107
|
```
|
package/documentation/index.html
CHANGED
|
@@ -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.
|
|
47
|
+
<p class="eyebrow">Version 1.37.0</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>
|
|
@@ -159,7 +159,7 @@ 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>Ollama | llama3 | ask | main | update 1.
|
|
162
|
+
<pre><code>Ollama | llama3 | ask | main | update 1.37.0 available</code></pre>
|
|
163
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>
|
|
@@ -1,12 +1,48 @@
|
|
|
1
1
|
# UR Inline Diffs for VS Code
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The professional UR IDE integration for VS Code, Cursor, and Windsurf: chat,
|
|
4
|
+
inline diff review, an actions panel, an agent status card, a searchable
|
|
5
|
+
command palette, a provider/model picker, and an agent options panel — all
|
|
6
|
+
backed by the `ur` CLI already on your machine.
|
|
4
7
|
|
|
5
8
|
UR-AGENT packages this extension from the repository as a local VSIX when the
|
|
6
9
|
CLI installs the public IDE integration. It does not depend on an unpublished
|
|
7
10
|
marketplace extension ID.
|
|
8
11
|
|
|
9
|
-
|
|
12
|
+
The extension never talks to a model provider or network service directly —
|
|
13
|
+
every AI request goes through your local `ur` CLI, the same way `ur` behaves
|
|
14
|
+
in a terminal. Everything below requires the UR CLI on your `PATH`.
|
|
15
|
+
|
|
16
|
+
## Chat
|
|
17
|
+
|
|
18
|
+
The UR Activity Bar contains a **Chat** view with visible buttons for **New
|
|
19
|
+
Chat**, **Open Chat**, **Pick Model**, and editor-context actions when a file
|
|
20
|
+
or selection is active. You do not need to know command palette commands to
|
|
21
|
+
start a conversation.
|
|
22
|
+
|
|
23
|
+
**UR: New Chat** / **UR: Open Chat** open a chat panel that streams UR's
|
|
24
|
+
response as it's generated, over the same NDJSON `stream-json` contract the
|
|
25
|
+
CLI uses for scripted runs. Tool calls, tool results, and permission prompts
|
|
26
|
+
(`control_request`/`control_response`) render inline as they arrive; nothing
|
|
27
|
+
is buffered and shown only at the end, and a failed run shows an error
|
|
28
|
+
banner rather than a fabricated success message.
|
|
29
|
+
|
|
30
|
+
Each chat is a session persisted under `.ur/ide/chat/` in the workspace, so
|
|
31
|
+
sessions survive closing and reopening VS Code and can be resumed (via the
|
|
32
|
+
CLI's own `--resume`) from **UR: Open Chat**.
|
|
33
|
+
|
|
34
|
+
**UR: Add Current File to Chat** and **UR: Add Selection to Chat** attach
|
|
35
|
+
context explicitly — nothing is sent to UR until you take one of those
|
|
36
|
+
actions or send a message. **UR: Explain Selection**, **UR: Fix Selection**,
|
|
37
|
+
and **UR: Generate Tests for Selection** (also on the editor right-click
|
|
38
|
+
menu) open the same chat panel with a structured prompt built from the
|
|
39
|
+
current selection; they are not a separate code path from chat.
|
|
40
|
+
|
|
41
|
+
**UR: Pick Model** opens a provider-first picker, then a model picker scoped to
|
|
42
|
+
that provider. Saving the choice goes through the same provider/model
|
|
43
|
+
validation as `/model`.
|
|
44
|
+
|
|
45
|
+
## Inline diffs and actions panel
|
|
10
46
|
|
|
11
47
|
Create a bundle from the UR CLI:
|
|
12
48
|
|
|
@@ -14,14 +50,49 @@ Create a bundle from the UR CLI:
|
|
|
14
50
|
ur ide diff capture --title "Parser fix"
|
|
15
51
|
```
|
|
16
52
|
|
|
17
|
-
|
|
18
|
-
|
|
53
|
+
The **Inline Diffs** view lists bundles from `.ur/ide/diffs/manifest.json`.
|
|
54
|
+
A second view, **Actions**, shows the same diff bundles alongside background
|
|
55
|
+
tasks (`ur bg list`) in one place. Supported actions on a diff bundle:
|
|
56
|
+
|
|
57
|
+
- refresh the bundle list;
|
|
58
|
+
- open a patch preview with metadata and comments;
|
|
59
|
+
- **Apply** — asks for confirmation, runs `git apply`, then records the
|
|
60
|
+
approval through `ur ide diff approve` (never a status value the CLI
|
|
61
|
+
doesn't recognize);
|
|
62
|
+
- **Reject**, via `ur ide diff reject`;
|
|
63
|
+
- add a comment that writes back through `ur ide diff comment`.
|
|
64
|
+
|
|
65
|
+
Background task rows in the Actions panel are read-only for now — click one
|
|
66
|
+
to open its log file.
|
|
67
|
+
|
|
68
|
+
## Status and options
|
|
69
|
+
|
|
70
|
+
**UR: Agent Status** shows UR version, workspace root, provider, model,
|
|
71
|
+
provider kind, native tool-call/streaming support, multimodal support,
|
|
72
|
+
sandbox mode, verifier mode, ACP status, plugin count, and warnings, built
|
|
73
|
+
from `ur ide status --json` and `ur provider status --json`. Anything the
|
|
74
|
+
CLI doesn't report shows as **unknown**, not a guess.
|
|
75
|
+
|
|
76
|
+
**UR: Agent Options** shows recommendations for privacy, speed, multimodal,
|
|
77
|
+
tool calling, native streaming, subscription CLI access, local/offline use,
|
|
78
|
+
complex refactors, and docs/review, built from `ur provider list --json`
|
|
79
|
+
plus a small local, curated table. It is not live market research and does
|
|
80
|
+
not rank model quality; it labels each provider's kind (UR-native,
|
|
81
|
+
subscription CLI, local, or API) and uses **unknown** wherever a capability
|
|
82
|
+
isn't known rather than guessing.
|
|
83
|
+
|
|
84
|
+
## Search
|
|
85
|
+
|
|
86
|
+
**UR: Search Actions** is one searchable palette for every stable action the
|
|
87
|
+
extension exposes — chat, selection actions, diff review, the verifier, and
|
|
88
|
+
the status/options panels — instead of hunting through the command palette.
|
|
19
89
|
|
|
20
|
-
|
|
90
|
+
## Review and verify
|
|
21
91
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
- add a comment that writes back to the UR metadata and manifest
|
|
92
|
+
**UR: Review Current Diff** reads your current `git diff`, confirms before
|
|
93
|
+
sending anything large, and opens chat with a structured review prompt.
|
|
25
94
|
|
|
26
|
-
|
|
27
|
-
|
|
95
|
+
**UR: Run Verifier** opens chat and asks UR to run its verification subagent
|
|
96
|
+
and report a verdict; there is no standalone verifier CLI command today, so
|
|
97
|
+
this always goes through chat, and a failed run is always shown as a
|
|
98
|
+
failure, never a false success.
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0
|
|
2
|
-
<
|
|
3
|
-
<path d="
|
|
4
|
-
<path d="M36 16h12v8h-7v7h-5V16z" fill="#64d2ff"/>
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" role="img" aria-label="UR">
|
|
2
|
+
<path fill="currentColor" d="M4 3h3v10.2c0 2.7 1.8 4.4 5 4.4s5-1.7 5-4.4V3h3v10.2C20 17.6 16.9 21 12 21s-8-3.4-8-7.8V3z"/>
|
|
3
|
+
<path fill="currentColor" d="M13.5 3H20v3h-3.5v3.5h-3V3z"/>
|
|
5
4
|
</svg>
|