ur-agent 1.44.10 → 1.45.3

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 CHANGED
@@ -1,5 +1,113 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.45.3
4
+
5
+ - Made slash-command resolution deterministic across bundled skills, plugins,
6
+ project skills, workflows, and built-ins. Duplicate canonical tokens are
7
+ rejected by source priority and conflicting aliases are removed; registry
8
+ tests now verify every shipped command token, description, and lazy loader.
9
+ - Removed overlapping `/paper`, `/security`, `/audit`, `/skills`, and
10
+ `/sandbox` registrations. The single `/sandbox` command now provides both
11
+ interactive settings and `status`, `check`, `init`, `eval`, and `exclude`
12
+ subcommands.
13
+ - Added `/ci-loop --cwd <path>` and working-directory evidence. Test-runner
14
+ "No tests found" failures now stop after one attempt with actionable cwd
15
+ guidance instead of invoking a fix agent repeatedly.
16
+ - Serialized concurrent artifact-viewer startup so simultaneous callers share
17
+ one server and one reported URL.
18
+
19
+ ## 1.45.2
20
+
21
+ Correctness and containment release completing the runtime audit.
22
+
23
+ - Made sandbox, security-scope, WebFetch, API, browser, database, test-runner,
24
+ GitHub mutation, lifecycle-hook, and file-edit boundaries fail closed. URL
25
+ validation now covers DNS resolution and every redirect; browser navigation
26
+ uses a persistent Playwright session with guarded subrequests.
27
+ - Completed provider request mapping and error handling across OpenAI,
28
+ Anthropic, Gemini, OpenRouter, Ollama, and OpenAI-compatible runtimes. Generic
29
+ compatible endpoints use their own credential key, offline mode blocks cloud
30
+ dispatch, retry zero is honored, and local Ollama is the default route.
31
+ - Made AST/LSP workspace edits transactional and containment-safe, including
32
+ symlink rejection, stale-edit preconditions, atomic writes, new-file rollback,
33
+ and TypeScript-language-service import organization.
34
+ - Hardened SSE/WebSocket replay, transcript write serialization, direct-connect
35
+ cancellation, arena isolation/judging, thread sharing, and same-timestamp file
36
+ replacement detection. Session/diff/lab/security-fix paths reject traversal
37
+ and symlink escapes.
38
+ - Fixed VS Code multi-root selection, stale turn callbacks, and diff manifest
39
+ validation. Replaced the JetBrains plugin's nonexistent `/v1/prompt` call
40
+ with project-scoped JSON-RPC sessions over `/acp`; the plugin builds against
41
+ IntelliJ IDEA 2024.2.
42
+ - Enabled transcript deep search instead of the compiled-off path. Worktree
43
+ skills now keep changes local, ask before the final full verification suite,
44
+ and never commit, push, or open a PR unless explicitly requested. The
45
+ `autoApprove` permission mode is unchanged.
46
+ - Removed an internal SDK barrel's throw-only runtime exports; the supported
47
+ programmatic contract remains `ur -p` stream-json. Provider fallback is now
48
+ documented and reported accurately as explicit recovery guidance, never an
49
+ automatic cross-provider switch.
50
+
51
+ ## 1.45.1
52
+
53
+ Completes the three partially-delivered 1.45.0 items to 100%.
54
+
55
+ - Semantic code search is now zero-config: the CodeSearch tool auto-enables
56
+ the moment a built index exists (`ur code-index build`) — no `UR_CODE_INDEX`
57
+ env var needed. The env var remains an override in both directions
58
+ (`UR_CODE_INDEX=off` disables even with an index present).
59
+ - JetBrains plugin now actually builds: migrated to the IntelliJ Platform
60
+ Gradle Plugin 2.x (the 1.x plugin is incompatible with Gradle 9) and
61
+ compiled against IntelliJ IDEA Community 2024.2, producing a distributable
62
+ zip via `gradle buildPlugin`.
63
+ - Deprecated top-level `disableAutoMode` now emits a one-time warning at
64
+ load pointing to `permissions.disableAutoMode` (both keys still honored;
65
+ removal reserved for the next major).
66
+
67
+ ## 1.45.0
68
+
69
+ Top-tier feature release — closes the gaps against 2026's leading agents.
70
+
71
+ - `ur cloud` — detached best-of-N tasks (the local-first codex-cloud
72
+ analogue): `run "<task>" --attempts N` races up to 8 isolated worktree
73
+ agents in the background via the arena judge; `list`/`show <id>` browse
74
+ results any time; `apply <id>` applies the winning diff. Outcomes feed the
75
+ automatic learning store.
76
+ - `ur wiki` — living repo wiki (Devin-Wiki analogue): `generate` writes
77
+ `.ur/wiki/` (overview, architecture by import in-degree, dependency map)
78
+ from project DNA + the code index; `install-hook` refreshes it after every
79
+ merge; `map` maintains `.ur/repo-map.md`.
80
+ - Repo map in context (Aider/Cursor pattern): when `.ur/repo-map.md` exists
81
+ and is fresh (<7 days), a byte-capped orientation map is injected into the
82
+ system prompt. Zero tokens until you generate one.
83
+ - `ur recipe` — structured-output playbooks (Devin-style): stored prompt +
84
+ JSON Schema; `run` spawns a child session whose final answer must validate
85
+ (one automatic repair round with the validation errors).
86
+ - `ur thread share` — share a session transcript as a local web page,
87
+ served at `/threads/<id>` on the artifacts server. Local-first: nothing
88
+ leaves the machine unless you expose the port.
89
+ - Web dashboard at `/dashboard` on the artifacts server: cloud tasks,
90
+ background agents, live task board, and learning stats on one page
91
+ (`/api/dashboard` for JSON).
92
+ - `ur audit export` — hash-chained audit trail (tool actions + run traces)
93
+ as JSONL/CSV; `ur audit verify <file>` proves an export wasn't edited or
94
+ reordered.
95
+ - `/pdf <file> [pages]` — deps-aware PDF ingestion (pdftotext/pdfinfo) with
96
+ page ranges, mirroring /image.
97
+ - Crew dynamic fan-out: `ur crew run <name> --dynamic [--max-workers N]`
98
+ scales the worker pool to the task board (tasks appended mid-run are
99
+ picked up), governed by a hard concurrency cap.
100
+ - Auto-skillify: `/learn stats` now surfaces skill candidates — categories
101
+ with ≥5 recorded successes and no matching skill get a concrete
102
+ /create-skill suggestion.
103
+ - Voice mode and the computer-use MCP server (`ur --computer-use-mcp`) now
104
+ ship in release builds (previously compile-time-disabled). Voice's native
105
+ audio backend stays optional and degrades gracefully when not installed.
106
+ - JetBrains plugin scaffold under `extensions/jetbrains-ur/` (experimental,
107
+ thin ACP client mirroring the VS Code extension).
108
+ - Settings: top-level `disableAutoMode` is marked deprecated in favor of
109
+ `permissions.disableAutoMode` (both still honored).
110
+
3
111
  ## 1.44.10
4
112
 
5
113
  - Render `AskUserQuestion` permission requests inside a `PermissionDialog` so
package/README.md CHANGED
@@ -214,7 +214,7 @@ Development build detected. To update, pull latest source or install from npm.
214
214
  Choose a model or Ollama host:
215
215
 
216
216
  ```sh
217
- ur --model qwen3-coder:480b-cloud
217
+ ur --model qwen2.5-coder:7b
218
218
  ur --ollama-host http://192.168.1.50:11434
219
219
  ur --discover-ollama
220
220
  ```
@@ -252,12 +252,16 @@ ur config set provider openai-api
252
252
  ur config set provider anthropic-api
253
253
  ur config set provider gemini-api
254
254
  ur config set provider openrouter
255
- ur config set model qwen3-coder:480b-cloud
256
- ur provider select-model ollama qwen3-coder:480b-cloud --json
255
+ ur config set model qwen2.5-coder:7b
256
+ ur provider select-model ollama qwen2.5-coder:7b --json
257
257
  ur config set base_url http://localhost:11434
258
258
  ur config set provider.fallback ollama
259
259
  ```
260
260
 
261
+ `provider.fallback` records a recovery provider for `ur provider doctor`
262
+ guidance. UR never switches providers automatically: inspect the failure and
263
+ select the recovery provider explicitly with `ur config set provider <id>`.
264
+
261
265
  Provider config accepts canonical IDs and common aliases. Examples:
262
266
  `openai-api`, `anthropic-api`, `gemini-api`, `openrouter`, `ollama`,
263
267
  `lmstudio`, `LM Studio`, `llama.cpp`, `vllm`, and the subscription CLIs
@@ -358,7 +362,7 @@ as first-class subcommands in the shipped CLI.
358
362
  | `ur spec` | Default spec-first workflow: create requirements, design, and task documents under `.ur/specs/`, run the task list, and verify with strict proof gates. |
359
363
  | `ur escalate` | Plan or run work with fast and oracle model tiers selected from local model capabilities. |
360
364
  | `ur arena` | Run multiple agents on the same task in isolated worktrees and surface the winning diff. |
361
- | `ur ci-loop` | Run a build or test command, hand failures to a fix agent, and retry with a bounded budget. |
365
+ | `ur ci-loop` | Run a build or test command in an explicit working directory, hand failures to a fix agent, and retry with a bounded budget. |
362
366
  | `ur test-first` | Detect the project stack, run compile/test/lint commands, store failure traces, and install edit-time verify gates. |
363
367
  | `ur safety` | Inspect or initialize project shell safety policy and evaluate command risk before execution. |
364
368
  | `ur sandbox` | Inspect and manage the sandbox/permission architecture: status, dependency check, policy init, and command approval levels. |
@@ -469,9 +473,10 @@ ur ide config vscode # VS Code / Cursor / Windsurf setup
469
473
 
470
474
  VS Code, Cursor, and Windsurf connect through the UR Inline Diffs extension;
471
475
  Zed and ACP-capable Neovim clients connect through the stdio Agent Client
472
- Protocol. **JetBrains is not implemented in this repository** — no plugin
473
- ships from here; only detection code for a future one exists. Start an ACP
474
- surface with:
476
+ Protocol. The experimental bundled JetBrains plugin under
477
+ `extensions/jetbrains-ur` uses project-scoped JSON-RPC sessions over the
478
+ loopback HTTP ACP endpoint and is installable from its Gradle `buildPlugin`
479
+ zip. Start an ACP surface with:
475
480
 
476
481
  ```sh
477
482
  ur acp stdio # stdio ACP agent for editors (Zed, Neovim)
@@ -482,7 +487,9 @@ ur acp status
482
487
  See the [IDE Guide](docs/IDE.md) and [ACP Guide](docs/ACP.md) for per-editor
483
488
  setup, supported features, and limitations.
484
489
 
485
- New slash skills run agentic work in isolated git worktrees with clean commits and PR output:
490
+ New slash skills run agentic work in isolated git worktrees and leave changes
491
+ local for review. They ask before the final full verification suite and do not
492
+ commit, push, or create PRs unless explicitly requested:
486
493
  `/debug-v2`, `/refactor`, `/paper-implementation`, `/benchmark`, `/security-review`, `/dockerize`, `/latex-paper`.
487
494
  Install matching agent templates with `ur agent-templates install`.
488
495
 
@@ -549,7 +556,7 @@ ur context-pack remember --accepted "Use p-map for bounded concurrency" --scope
549
556
  ur context-pack remember --rejected "Switch to esbuild" --alternative-to "Keep bun bundle"
550
557
  ur context-pack remember --attempt "Tried Deno runtime" --status superseded
551
558
  ur context-pack compress
552
- ur ci-loop --command "bun test" --max-attempts 3 --dry-run
559
+ ur ci-loop --command "bun test" --cwd . --max-attempts 3 --dry-run
553
560
  ur bg run "fix the flaky parser test" --worktree --dry-run
554
561
  ur automation create nightly --schedule "0 9 * * 1-5" --prompt "Review open tasks"
555
562
  ur repo-edit preview rename oldName --to newName