ur-agent 1.80.2 → 1.80.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 +43 -0
- package/README.md +9 -2
- package/dist/cli.js +1094 -630
- package/docs/A2A.md +8 -0
- package/docs/AGENT_FEATURES.md +15 -0
- package/docs/AGENT_TRENDS.md +1 -0
- package/docs/CONFIGURATION.md +41 -0
- package/docs/GAP_ANALYSIS_2026-08-11.md +1 -1
- package/docs/TROUBLESHOOTING.md +21 -0
- package/docs/USAGE.md +29 -1
- package/docs/VALIDATION.md +10 -1
- package/documentation/index.html +1 -1
- package/extensions/jetbrains-ur/build.gradle.kts +1 -1
- package/extensions/vscode-ur-inline-diffs/package.json +1 -1
- package/package.json +1 -1
package/docs/A2A.md
CHANGED
|
@@ -53,6 +53,14 @@ Inspect the live card:
|
|
|
53
53
|
curl -s http://127.0.0.1:8765/.well-known/agent-card.json
|
|
54
54
|
```
|
|
55
55
|
|
|
56
|
+
Preview either card without starting the server:
|
|
57
|
+
|
|
58
|
+
```sh
|
|
59
|
+
ur a2a card --v1 # current A2A 1.0 card
|
|
60
|
+
ur a2a card # legacy 0.3 compatibility card
|
|
61
|
+
ur a2a card --v1 --base-url https://agent.example.com
|
|
62
|
+
```
|
|
63
|
+
|
|
56
64
|
Without a version header, discovery returns the v1 ProtoJSON card with
|
|
57
65
|
`supportedInterfaces` for JSON-RPC, HTTP+JSON, and the legacy v0.3 binding. Use
|
|
58
66
|
`A2A-Version: 0.3` to retrieve the standalone v0.3 SDK card. Both cards report
|
package/docs/AGENT_FEATURES.md
CHANGED
|
@@ -9,6 +9,21 @@ reproducible autonomous software engineering agent: every substantial task can
|
|
|
9
9
|
be driven as `spec -> plan -> patch -> test -> report -> rollback`, with the
|
|
10
10
|
spec as the durable source of truth and command evidence as the success gate.
|
|
11
11
|
|
|
12
|
+
## v1.80.4 Additions
|
|
13
|
+
|
|
14
|
+
| Addition | Surface | What it adds |
|
|
15
|
+
| --- | --- | --- |
|
|
16
|
+
| Permanent-link circuit breaker | `WebFetch` | Stops repeat and alternating loops over dead 4xx URLs without disabling legitimate retries for transient network or server failures. URL identities are prompt-independent, hashed, bounded, and query-scoped. |
|
|
17
|
+
| Plan/task recovery | `EnterPlanMode`, `TaskCreate` gate | Makes the distinction between an implementation plan and visible executable tasks explicit before workspace mutation. |
|
|
18
|
+
| Safe CLI parity | `ur config set|get|list`, `ur a2a card --v1`, `ur session status` | Makes accessibility/editor configuration, current Agent Card preview, and conversation inspection available to scripts without weakening compatibility defaults. |
|
|
19
|
+
| Complete command display hardening | Background shell details | Escapes deceptive control, invisible, and bidirectional characters before truncation. |
|
|
20
|
+
|
|
21
|
+
## v1.80.3 Addition
|
|
22
|
+
|
|
23
|
+
| Addition | Surface | What it adds |
|
|
24
|
+
| --- | --- | --- |
|
|
25
|
+
| Strict-hybrid task planning | Interactive `TaskCreate` lifecycle, `tasks.requireBeforeChanges` | Keeps atomic low-risk work direct, but requires a visible actionable task before mutation for multi-outcome, sequenced, planned, delegated, project-sized, and high-risk lifecycle work. Reads stay open, custom profiles without `TaskCreate` cannot deadlock, and operators retain advisory and fully strict modes. |
|
|
26
|
+
|
|
12
27
|
## v1.80.0 Additions
|
|
13
28
|
|
|
14
29
|
| Addition | Surface | What it adds |
|
package/docs/AGENT_TRENDS.md
CHANGED
package/docs/CONFIGURATION.md
CHANGED
|
@@ -17,6 +17,47 @@ Start UR with `--screen-reader`, set `UR_SCREEN_READER=1`, or use
|
|
|
17
17
|
edits, and reduced animation. `vimEscape` accepts 2–8 printable non-whitespace
|
|
18
18
|
characters or `off`.
|
|
19
19
|
|
|
20
|
+
The same settings are available without starting the interactive interface,
|
|
21
|
+
which is useful for CI setup and accessibility-first startup:
|
|
22
|
+
|
|
23
|
+
```sh
|
|
24
|
+
ur config set screenReader true
|
|
25
|
+
ur config set reducedMotion true
|
|
26
|
+
ur config set editor vim
|
|
27
|
+
ur config set vimEscape jj
|
|
28
|
+
ur config get screenReader
|
|
29
|
+
ur config list --json
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
`ur config get` and `list` expose only the validated, non-secret settings that
|
|
33
|
+
`ur config set` accepts. Screen-reader and reduced-motion values use the local
|
|
34
|
+
workspace settings source; editor and Vim escape preferences are global.
|
|
35
|
+
|
|
36
|
+
## Interactive task planning
|
|
37
|
+
|
|
38
|
+
UR uses strict-hybrid task tracking by default: one atomic, low-risk outcome
|
|
39
|
+
can proceed directly, while multi-outcome, sequenced, planned, delegated,
|
|
40
|
+
project-sized, release, migration, security, sandbox, and production work must
|
|
41
|
+
create a visible task before the first mutation. Read-only investigation is
|
|
42
|
+
never blocked.
|
|
43
|
+
|
|
44
|
+
```jsonc
|
|
45
|
+
{
|
|
46
|
+
"tasks": {
|
|
47
|
+
"requireBeforeChanges": {
|
|
48
|
+
"enabled": true,
|
|
49
|
+
"freeReads": 3
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
`freeReads` is a compatibility allowance for non-interactive integrations that
|
|
56
|
+
do not carry a classified user turn; it is not a limit on investigation. Set
|
|
57
|
+
it to `0` to require a task before every mutation. Set `enabled` to `false` to
|
|
58
|
+
return to advisory task tracking. Profiles that omit `TaskCreate` are not
|
|
59
|
+
gated, because they could not satisfy the requirement.
|
|
60
|
+
|
|
20
61
|
## Model Providers
|
|
21
62
|
|
|
22
63
|
UR-Nexus supports official provider access paths only:
|
|
@@ -26,7 +26,7 @@ unchanged. UR does not add automated approval delegation.
|
|
|
26
26
|
| Accessibility | Added `--screen-reader`, `screenReaderMode`, append-only plain-text rendering, edit announcements, and reduced animation. |
|
|
27
27
|
| In-session configuration | Added `/config key=value`, including thinking, screen reader, reduced motion, verbose output, auto-compaction, editor mode, and Vim escape sequence. |
|
|
28
28
|
| Directory automation | Added the `DirectoryAdded` hook and roots-change notification after `/add-dir`. |
|
|
29
|
-
| Session lifecycle | Added `/session status|list|archive|unarchive` and `ur session list|archive|unarchive`. Archived sessions cannot appear in resume/fork discovery until restored. |
|
|
29
|
+
| Session lifecycle | Added `/session status|list|archive|unarchive` and `ur session status|list|archive|unarchive`. Archived sessions cannot appear in resume/fork discovery until restored. |
|
|
30
30
|
| Vim input | Added `vimEscape=<sequence>`; for example, `/config editor=vim vimEscape=jj`. |
|
|
31
31
|
| Telemetry | Added privacy-safe `assistant_response` events, message/request/tool correlation, and workflow name/run identifiers. |
|
|
32
32
|
| Command quality | Removed the no-op `/output-style` command and dormant `/ultraplan` registration, renamed `/debug-v2` to `/fix-bug`, removed duplicate 3D aliases, expanded protocol names in help, and added registry checks against public version jargon. |
|
package/docs/TROUBLESHOOTING.md
CHANGED
|
@@ -70,6 +70,27 @@ ur provider status
|
|
|
70
70
|
Bash. A successful result confirms the harness; `/design3d doctor` alone
|
|
71
71
|
validates the local slash command but does not exercise Bash execution.
|
|
72
72
|
|
|
73
|
+
### Fetch repeatedly reports `404`
|
|
74
|
+
|
|
75
|
+
- Likely cause: the page moved or the model generated a stale URL. A successful
|
|
76
|
+
fetch from another page proves the network path is working; retrying the same
|
|
77
|
+
missing URL cannot change its HTTP status.
|
|
78
|
+
- Fix: upgrade to UR 1.80.4 or newer. WebFetch now records permanent 4xx
|
|
79
|
+
failures by normalized URL, independent of its hidden summarization prompt.
|
|
80
|
+
It refuses another network request for that URL and stops the turn if the
|
|
81
|
+
model keeps retrying. Alternating between two dead URLs is bounded as well.
|
|
82
|
+
- Recovery: use WebSearch, fetch the site’s parent/index page, or choose a
|
|
83
|
+
different source. Timeouts, `408`, `409`, `425`, `429`, and `5xx` responses
|
|
84
|
+
remain retryable because they may be transient.
|
|
85
|
+
|
|
86
|
+
### Plan mode says `TaskListRequired`
|
|
87
|
+
|
|
88
|
+
- Likely cause: the agent entered or updated plan mode but did not create the
|
|
89
|
+
visible implementation tasks. A plan and a task list have separate roles.
|
|
90
|
+
- Fix: call `TaskCreate` for the concrete outcomes before the first workspace
|
|
91
|
+
mutation. Do not disable `tasks.requireBeforeChanges` merely to bypass this
|
|
92
|
+
recovery message; the gate is preventing untracked implementation.
|
|
93
|
+
|
|
73
94
|
## Providers and models
|
|
74
95
|
|
|
75
96
|
### Provider selected but the model is unavailable
|
package/docs/USAGE.md
CHANGED
|
@@ -313,7 +313,8 @@ UR includes slash commands and CLI subcommands for common workflows:
|
|
|
313
313
|
before installation.
|
|
314
314
|
- `ur agents` to list configured agents
|
|
315
315
|
- `ur agent-trends` to inspect coverage for current agent technology trends
|
|
316
|
-
- `ur a2a card` to print
|
|
316
|
+
- `ur a2a card` to print legacy Agent Card metadata, or
|
|
317
|
+
`ur a2a card --v1` to preview the current A2A 1.0 card
|
|
317
318
|
- `ur bg ...` to run and idempotently steer detached local background agents
|
|
318
319
|
with optional worktrees and PRs
|
|
319
320
|
- `ur cloud ...` to run, synchronize, steer, and cancel local or managed
|
|
@@ -428,6 +429,33 @@ in dependency order. `ur exec` materializes this graph deterministically; the
|
|
|
428
429
|
interactive agent follows the same lifecycle and its task/agent tools enforce
|
|
429
430
|
the concurrency boundary.
|
|
430
431
|
|
|
432
|
+
Interactive work uses a strict-hybrid task policy by default. One atomic,
|
|
433
|
+
low-risk outcome can be implemented directly. Before the first mutation, UR
|
|
434
|
+
requires a visible task for requests with two or more outcomes, enumerated or
|
|
435
|
+
sequenced work, plan mode, delegation, dependencies, project-sized work, and
|
|
436
|
+
release, publishing, deployment, migration, security, credential, permission,
|
|
437
|
+
sandbox, or production risk. Read-only inspection never needs a task, so the
|
|
438
|
+
agent can understand the repository before it creates the board. A custom tool
|
|
439
|
+
profile without `TaskCreate` remains usable and does not deadlock.
|
|
440
|
+
|
|
441
|
+
The default can be tuned in `.ur/settings.json` or user settings:
|
|
442
|
+
|
|
443
|
+
```json
|
|
444
|
+
{
|
|
445
|
+
"tasks": {
|
|
446
|
+
"requireBeforeChanges": {
|
|
447
|
+
"enabled": true,
|
|
448
|
+
"freeReads": 3
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
Set `enabled` to `false` for advisory task tracking. Set `freeReads` to `0` for
|
|
455
|
+
the fully strict policy that requires a task before every mutation, including
|
|
456
|
+
an atomic change. The positive atomic classification otherwise stays direct
|
|
457
|
+
regardless of how many read-only tools were needed.
|
|
458
|
+
|
|
431
459
|
A user prompt does not create a placeholder task. The task panel stays quiet
|
|
432
460
|
for informational conversation, direct one-step changes, acknowledgements, and
|
|
433
461
|
small corrections. For genuinely multi-step work, multiple independently
|
package/docs/VALIDATION.md
CHANGED
|
@@ -19,7 +19,7 @@ You need:
|
|
|
19
19
|
|
|
20
20
|
```sh
|
|
21
21
|
ur --version
|
|
22
|
-
# expected for this release: "1.80.
|
|
22
|
+
# expected for this release: "1.80.4 (UR-Nexus)"
|
|
23
23
|
```
|
|
24
24
|
|
|
25
25
|
## 0.1 First-workspace model selection (1.45.4)
|
|
@@ -316,6 +316,15 @@ Expected: after the 3rd identical Bash call, the agent receives a "stop
|
|
|
316
316
|
repeating the same call" reminder and switches strategy (or asks for
|
|
317
317
|
clarification).
|
|
318
318
|
|
|
319
|
+
### 3.1 Permanent WebFetch loop stops
|
|
320
|
+
|
|
321
|
+
Ask the agent to fetch one known-missing public URL repeatedly while changing
|
|
322
|
+
the WebFetch prompt. Expected: the first request reports the permanent HTTP
|
|
323
|
+
4xx response, the next is refused without network I/O, and another unchanged
|
|
324
|
+
attempt stops the turn. Repeat with two missing URLs in alternating order; the
|
|
325
|
+
same bounded behavior applies independently to both. A `429` or `5xx` fixture
|
|
326
|
+
must remain retryable.
|
|
327
|
+
|
|
319
328
|
## 4. Project gate from `.ur/verify.json`
|
|
320
329
|
|
|
321
330
|
Create one:
|
package/documentation/index.html
CHANGED
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
<main id="content" class="content">
|
|
46
46
|
<header class="topbar">
|
|
47
47
|
<div>
|
|
48
|
-
<p class="eyebrow">Version 1.80.
|
|
48
|
+
<p class="eyebrow">Version 1.80.4</p>
|
|
49
49
|
<h1>UR-Nexus Documentation</h1>
|
|
50
50
|
<p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-Nexus.</p>
|
|
51
51
|
</div>
|
|
@@ -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.80.
|
|
5
|
+
"version": "1.80.4",
|
|
6
6
|
"publisher": "ur-nexus",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.92.0"
|
package/package.json
CHANGED