ur-agent 1.18.0 → 1.20.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,67 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.20.0
4
+
5
+ ### Added
6
+ - **ACP server (`ur acp`).** Added an HTTP+JSON-RPC Agent Communication
7
+ Protocol server for IDE extensions. Supports `initialize`, `tools/list`,
8
+ `tools/call`, `tasks/send`, `tasks/get`, `tasks/cancel`, and `shutdown`.
9
+ Runs on `127.0.0.1:8123` by default with optional bearer-token auth.
10
+ - **`ur exec` pool execution.** Added a non-interactive pool command that runs
11
+ one or more prompts with optional concurrency, worktrees, output capture,
12
+ and dry-run mode.
13
+ - **GitHub tool.** Added `GitHubTool` for PR/issue/repo operations via the
14
+ `gh` CLI.
15
+ - **API tool.** Added `ApiTool` for REST HTTP calls with JSON/text output.
16
+ - **Browser tool.** Added `BrowserTool` for headless browser automation
17
+ (fetch/goto/click/type/evaluate/screenshot). Disabled by default; enable
18
+ with `UR_BROWSER_TOOL=1`.
19
+ - **Docker tool.** Added `DockerTool` wrapping the `docker` CLI for container
20
+ and compose operations.
21
+ - **Test-runner tool.** Added `TestRunnerTool` that auto-detects the project
22
+ test command from `package.json` scripts, `Makefile`, `Cargo.toml`,
23
+ `pyproject.toml`, or `go.mod`.
24
+ - **Database tool.** Added `DatabaseTool` for SQL queries against SQLite,
25
+ Postgres, MySQL, and DuckDB.
26
+
27
+ ### Changed
28
+ - **Tool surface.** File-system and terminal tools (`FileRead`, `FileEdit`,
29
+ `FileWrite`, `Glob`, `Grep`, `Bash`, `PowerShell`) are now automatically
30
+ exposed through the existing MCP server and the new ACP server.
31
+ - **Version bump.** Updated from 1.19.0 to 1.20.0 across `package.json`,
32
+ `bunfig.toml`, the VS Code extension manifest, and the bundled CLI.
33
+
34
+ ### Verified
35
+ - Added focused tests for the ACP server/client, `ur exec`, GitHub tool,
36
+ API tool, browser tool, Docker tool, test-runner tool, and database tool.
37
+
38
+ ## 1.19.0
39
+
40
+ ### Added
41
+ - **Permission and safety policy (`ur safety`).** Added a project shell safety
42
+ evaluator that separates read, write, execute, and network command classes;
43
+ asks before destructive commands; recommends sandboxing for risky operations;
44
+ and denies common secret-file and secret-like environment exfiltration paths.
45
+ - **Bash permission integration.** The project safety policy now runs before
46
+ broad Bash allow paths and sandbox auto-allow, so destructive commands still
47
+ require approval and secret exfiltration is blocked even when permissive
48
+ command rules exist.
49
+ - **Project context pack (`ur context-pack`).** Added repo architecture
50
+ scanning from manifests, instruction files, Project DNA, verify gates, and
51
+ safety config. Task memory records decisions, constraints, commands, diffs,
52
+ and notes under `.ur/context/`, with compression into a durable summary.
53
+
54
+ ### Changed
55
+ - **Chrome/Desktop links.** Replaced deprecated Chrome and desktop documentation
56
+ links in source with current `ur.ai` URLs.
57
+ - **Version bump.** Updated from 1.18.0 to 1.19.0 across `package.json`,
58
+ `bunfig.toml`, the VS Code extension, and bundled CLI metadata.
59
+
60
+ ### Verified
61
+ - Added focused tests for safety policy decisions, policy file creation,
62
+ context manifest generation, task memory compression, CLI command parsing,
63
+ and updated agent feature/trend inventories.
64
+
3
65
  ## 1.18.0
4
66
 
5
67
  ### Added
@@ -73,7 +135,7 @@
73
135
  ## 1.14.1
74
136
 
75
137
  ### Changed
76
- - Removed the `desktop-app` startup tip pointing to `clau.de/desktop`.
138
+ - Removed the `desktop-app` startup tip pointing to the legacy desktop URL.
77
139
 
78
140
  ### Changed
79
141
  - **Version bump.** Updated from 1.14.0 to 1.14.1 across `package.json`, `bunfig.toml`, and bundled CLI.
package/QUALITY.md CHANGED
@@ -22,6 +22,12 @@ For project-specific feature work, `ur test-first detect` shows the detected
22
22
  compile/test/lint command set. `ur test-first install` can persist that command
23
23
  set into `.ur/verify.json` so future mutating turns run the same gates.
24
24
 
25
+ For safety-sensitive changes, `ur safety check --command "<cmd>"` previews
26
+ read/write/execute/network permission classes, destructive-command approval,
27
+ sandbox posture, and secret exfiltration denial. `ur context-pack scan` records
28
+ the repo architecture and manifest-derived command set; `ur context-pack
29
+ compress` preserves task decisions, constraints, commands, and diffs.
30
+
25
31
  `bun run release:check` is also wired into `prepack`, so stale bundles and
26
32
  version drift fail before packaging.
27
33
 
@@ -56,6 +62,12 @@ Public feature releases should update the full documentation set:
56
62
  - `ur test-first` stores failing compile/test/lint traces under
57
63
  `.ur/test-first/traces/` and reports success only from zero-exit command
58
64
  evidence.
65
+ - `ur safety` asks before destructive commands, recommends sandboxing for risky
66
+ operations, and blocks common secret exfiltration paths before broad shell
67
+ allow rules.
68
+ - `ur context-pack` keeps durable architecture summaries and task memory under
69
+ `.ur/context/` so decisions, constraints, commands, and diffs survive context
70
+ compression.
59
71
  - Deep verification through the verification subagent is manual by default and
60
72
  can be enabled with `UR_VERIFIER_AUTO_SUBAGENT=1`.
61
73
  - Secrets must stay in environment variables, secure storage, or local ignored
package/README.md CHANGED
@@ -14,8 +14,8 @@ UR Agent is a Bun and TypeScript command-line coding agent. It opens a stateful
14
14
  interactive terminal session by default, can run one-shot prompts for scripts,
15
15
  and includes workflow commands for specification-driven development,
16
16
  multi-agent execution, test-first quality loops, CI repair loops, background
17
- agents, MCP servers, plugins, skills, memory, verification, and local model
18
- routing.
17
+ agents, MCP servers, plugins, skills, memory, permission safety policy,
18
+ project context packing, verification, and local model routing.
19
19
 
20
20
  UR sends model requests through the configured local Ollama app. That app can
21
21
  serve local models or Ollama Cloud-backed models, while UR itself stays out of
@@ -36,6 +36,9 @@ handing work off to other tools or agents when needed.
36
36
  structured work beyond a single chat turn.
37
37
  - **Reliable repo editing.** Use `ur repo-edit` for indexed search,
38
38
  AST-aware rename plans, patch previews, and rollback-safe multi-file apply.
39
+ - **Permission and context control.** Use `ur safety` and `ur context-pack` to
40
+ inspect command risk, initialize project safety policy, summarize repository
41
+ architecture, and preserve task decisions, constraints, commands, and diffs.
39
42
  - **Verification and provenance.** Use `ur test-first`, the built-in verifier,
40
43
  `/verify`, `.ur/verify.json`, `ur artifacts`, `ur claim-ledger`, and `/trace`
41
44
  to make results easier to inspect.
@@ -126,6 +129,8 @@ as first-class subcommands in the shipped CLI.
126
129
  | `ur arena` | Run multiple agents on the same task in isolated worktrees and surface the winning diff. |
127
130
  | `ur ci-loop` | Run a build or test command, hand failures to a fix agent, and retry with a bounded budget. |
128
131
  | `ur test-first` | Detect the project stack, run compile/test/lint commands, store failure traces, and install edit-time verify gates. |
132
+ | `ur safety` | Inspect or initialize project shell safety policy and evaluate command risk before execution. |
133
+ | `ur context-pack` | Write project architecture context, task memory, and compressed context under `.ur/`. |
129
134
  | `ur bg` | Run and manage detached local background agents with optional worktrees and PR creation. |
130
135
  | `ur automation` | Store and run project-local scheduled automation specs under `.ur/automations/`. |
131
136
  | `ur workflow` | Define, validate, graph, run, and resume declarative agent workflows. |
@@ -144,11 +149,15 @@ as first-class subcommands in the shipped CLI.
144
149
  | `ur mcp` | Configure and manage Model Context Protocol servers. |
145
150
  | `ur plugin` | Install, update, enable, disable, and validate UR plugins. |
146
151
  | `ur role-mode` | Install built-in Architect, Code, Debug, and Ask role modes. |
152
+ | `ur acp` | Start/stop/status the Agent Communication Protocol server for IDE extensions. |
153
+ | `ur exec` | Run one or more prompts in non-interactive mode with optional concurrency. |
147
154
  | `ur ide diff` | Capture editor-readable inline diff bundles. |
148
155
  | `ur a2a card` | Print UR Agent Card metadata for agent interoperability. |
149
156
  | `ur a2a serve` | Start an opt-in local A2A task server with bearer or delegation auth. |
150
157
  | `ur sdk` | Show programmatic headless usage and scaffold SDK examples. |
151
158
 
159
+ New built-in tools (exposed through MCP and the ACP server): GitHub, API, Browser, Docker, TestRunner, Database. File-system and terminal tools are already built in (FileRead, FileEdit, FileWrite, Glob, Grep, Bash, PowerShell).
160
+
152
161
  Examples:
153
162
 
154
163
  ```sh
@@ -159,6 +168,10 @@ ur escalate run "refactor the cache layer" --force-oracle --dry-run
159
168
  ur test-first detect
160
169
  ur test-first --dry-run
161
170
  ur test-first install
171
+ ur safety check --command "rm -rf build"
172
+ ur context-pack scan
173
+ ur context-pack remember --decision "Use package scripts before ad hoc commands"
174
+ ur context-pack compress
162
175
  ur ci-loop --command "bun test" --max-attempts 3 --dry-run
163
176
  ur bg run "fix the flaky parser test" --worktree --dry-run
164
177
  ur automation create nightly --schedule "0 9 * * 1-5" --prompt "Review open tasks"
@@ -167,6 +180,8 @@ ur repo-edit apply rename oldName --to newName --check "bun test"
167
180
  ur code-index search "where is the rate limiter configured"
168
181
  ur artifacts capture-tests --command "bun test"
169
182
  ur agent-task pr --create --dry-run
183
+ ur acp serve --port 8123
184
+ ur exec "add tests for the parser" --concurrency 4 --json
170
185
  ```
171
186
 
172
187
  ## Project Context
@@ -177,6 +192,11 @@ UR reads repository instructions and local runtime state from project files:
177
192
  - `UR.local.md` is for private local instructions.
178
193
  - `.ur/skills/` stores project skills.
179
194
  - `.ur/agents/` stores custom agents and role modes.
195
+ - `.ur/specs/`, `.ur/artifacts/`, `.ur/automations/`, `.ur/test-first/`,
196
+ - `.ur/safety-policy.json` configures project shell safety rules for read,
197
+ write, execute, and network command classes.
198
+ - `.ur/project-manifest.json` and `.ur/context/` hold architecture summaries,
199
+ task memory, compressed context, and command/constraint decisions.
180
200
  - `.ur/specs/`, `.ur/artifacts/`, `.ur/automations/`, `.ur/test-first/`,
181
201
  `.ur/memory/`, and `.ur/index/` hold workflow state, review artifacts,
182
202
  scheduled jobs, failure traces, memory, and indexes.
@@ -198,8 +218,8 @@ settings, generated indexes, memory, logs, and secrets out of Git.
198
218
  - `src/tools/` contains tool implementations for file editing, shell execution,
199
219
  MCP resources, task management, and agent delegation.
200
220
  - `src/services/` contains runtime services for MCP, verification, memory,
201
- code indexing, model routing, background agents, A2A, analytics, sync, and
202
- API integration.
221
+ code indexing, safety policy, context manifests, model routing, background
222
+ agents, A2A, analytics, sync, and API integration.
203
223
  - `extensions/vscode-ur-inline-diffs/` contains the VS Code inline diff review
204
224
  extension.
205
225
  - `marketplace-plugins/` contains bundled example marketplace plugins.
@@ -219,6 +239,13 @@ the permission boundary matters.
219
239
  - Project gates can be configured in `.ur/verify.json`.
220
240
  - `ur test-first install` writes detected compile/test/lint commands into
221
241
  `.ur/verify.json` so mutating turns have command evidence before completion.
242
+ - `ur safety check --command "<cmd>"` classifies read, write, execute, and
243
+ network permissions, asks before destructive commands, recommends sandboxing
244
+ for risky operations, and blocks common secret exfiltration paths.
245
+ - `ur safety init` writes `.ur/safety-policy.json` for project-specific safety
246
+ rules.
247
+ - `ur context-pack scan` writes a repo architecture manifest from package
248
+ scripts, instruction files, `.ur/verify.json`, and safety config.
222
249
  - The deep verification subagent is available through `/verify` and can be
223
250
  auto-enabled with `UR_VERIFIER_AUTO_SUBAGENT=1`.
224
251
  - OS-level sandbox support is available on macOS and Linux through UR's
@@ -264,6 +291,8 @@ CLI. Rebuild it after source, version, or macro changes.
264
291
  - [Configuration](docs/CONFIGURATION.md)
265
292
  - [Agent Feature Expansion](docs/AGENT_FEATURES.md)
266
293
  - [Agent Trend Coverage](docs/AGENT_TRENDS.md)
294
+ - [1.20.0 Upgrade Notes](docs/AGENT_UPGRADE_1.20.0.md)
295
+ - [1.19.0 Upgrade Notes](docs/AGENT_UPGRADE_1.19.0.md)
267
296
  - [1.18.0 Upgrade Notes](docs/AGENT_UPGRADE_1.18.0.md)
268
297
  - [1.17.0 Upgrade Notes](docs/AGENT_UPGRADE_1.17.0.md)
269
298
  - [Development Guide](docs/DEVELOPMENT.md)