ur-agent 1.47.1 → 1.49.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,39 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.49.0
4
+
5
+ - Added cryptographically signed A2A Agent Cards: RFC 7515 detached JWS over
6
+ the RFC 8785 canonical form of the card, using Ed25519 (`alg: "EdDSA"`).
7
+ Verification recomputes the payload with `signatures` excluded, so a card can
8
+ carry several independent signatures, and rejects algorithm substitution
9
+ rather than honoring a caller-supplied `alg`. Signing is opt-in through the
10
+ card builder's `signingKey`, so deployments without a provisioned key
11
+ continue serving byte-identical unsigned cards. Replaces the previous
12
+ `signatures: []` placeholder, which was typed so that it could never hold a
13
+ signature.
14
+ - Fixed `release:check` failing on a clean tree: `release-hygiene.mjs` forbids
15
+ `.claude/settings.local.json` in release archives, but the ignore policy did
16
+ not exclude it, so the untracked file entered the source archive candidate
17
+ through `git ls-files --others`.
18
+
19
+ ## 1.48.0
20
+
21
+ - Added managed cloud fan-out with durable, idempotent steering, owner-scoped
22
+ mobile/A2A control, explicit PASS plus safe-branch selection, and
23
+ cancellation-safe task transitions.
24
+ - Added evidence-backed learned playbooks, citation-validated shared memory,
25
+ durable hash-chained side chats, and isolated multi-repository coordination
26
+ with dependency-aware execution and review-only PR/rollback plans.
27
+ - Added hardened Agentic CI, trajectory-aware evaluation gates, Electron
28
+ desktop QA with privacy-safe evidence, and verified deterministic/model/
29
+ hybrid best-of-N arenas whose checks are cryptographically bound to the
30
+ candidate patch.
31
+ - Hardened agent subprocess credentials, artifact storage and delivery,
32
+ concurrent state updates, verifier mutation detection, signed-URL memory
33
+ redaction, terminal cancellation races, and CI-facing failure exit codes.
34
+ - Expanded user, configuration, validation, static-site, and technical
35
+ documentation plus adversarial regression coverage for the new workflows.
36
+
3
37
  ## 1.47.1
4
38
 
5
39
  - Hardened file downloads, filesystem permission checks, and signed skill
package/README.md CHANGED
@@ -42,16 +42,16 @@ handing work off to other tools or agents when needed.
42
42
  `ur auth claude`, `ur auth gemini`, `ur auth antigravity`, and safe
43
43
  `ur config set ...` commands to select official subscription, API, or local
44
44
  providers without storing secrets in UR settings.
45
- - **Agent workflows.** Use `ur spec`, `ur arena`, `ur test-first`,
46
- `ur ci-loop`, `ur bg`, `ur workflow`, `ur crew`, and `ur automation` for
47
- structured work beyond a single chat turn.
45
+ - **Agent workflows.** Use `ur spec`, `ur arena`, `ur agent-ci`, `ur cloud`,
46
+ `ur workspace`, `ur test-first`, `ur ci-loop`, `ur bg`, `ur workflow`,
47
+ `ur crew`, and `ur automation` for structured work beyond a single chat turn.
48
48
  - **Reliable repo editing.** Use `ur repo-edit` for indexed search,
49
49
  AST-aware rename plans, patch previews, and rollback-safe multi-file apply.
50
50
  - **Permission and context control.** Use `ur safety` and `ur context-pack` to
51
51
  inspect command risk, initialize project safety policy, summarize repository
52
52
  architecture, and preserve task decisions, constraints, commands, diffs,
53
53
  architecture decisions, preferred commands, failed attempts, accepted patterns,
54
- and rejected approaches.
54
+ rejected approaches, and citation freshness.
55
55
  - **Lifecycle hooks.** Configure `BeforeEdit`, `AfterEdit`, `BeforeCommand`,
56
56
  `AfterCommand`, `BeforeCommit`, and `OnFailure` hooks in `.ur/hooks.json` or
57
57
  `UR.md` to run custom commands when the agent edits files, runs shell commands,
@@ -383,14 +383,19 @@ as first-class subcommands in the shipped CLI.
383
383
  | `ur -p` | Run a non-interactive prompt with text, JSON, or stream-JSON output. |
384
384
  | `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. |
385
385
  | `ur escalate` | Plan or run work with fast and oracle model tiers selected from local model capabilities. |
386
- | `ur arena` | Run multiple agents on the same task in isolated worktrees and surface the winning diff. |
386
+ | `ur arena` | Run verified best-of-N candidates in isolated worktrees with deterministic, model, or hybrid judging. |
387
+ | `ur agent-ci` | Run a policy-gated agent in an isolated CI worktree and emit bounded, hash-addressed review artifacts. |
387
388
  | `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. |
388
389
  | `ur test-first` | Detect the project stack, run compile/test/lint commands, store failure traces, and install edit-time verify gates. |
389
390
  | `ur safety` | Inspect or initialize project shell safety policy and evaluate command risk before execution. |
390
391
  | `ur sandbox` | Inspect and manage the sandbox/permission architecture: status, dependency check, policy init, and command approval levels. |
391
- | `ur context-pack` | Write project architecture context, tamper-evident task memory, and compressed context under `.ur/`; verify, quarantine, or roll back the memory chain. |
392
+ | `ur context-pack` | Write project architecture context and citation-validated, tamper-evident task memory; search, revalidate, quarantine, or roll back the chain. |
392
393
  | `/hooks` | Inspect lifecycle hooks (`BeforeEdit`, `AfterEdit`, `BeforeCommand`, `AfterCommand`, `BeforeCommit`, `OnFailure`) configured via settings files. |
393
- | `ur bg` | Run and manage detached local background agents with optional worktrees and PR creation. |
394
+ | `ur bg` | Run, inspect, cancel, and idempotently steer detached local background agents with optional worktrees and PR creation. |
395
+ | `ur cloud` | Run verified local best-of-N workers or managed candidates with lifecycle reconciliation, safe-branch eligibility, steering, and cancellation. |
396
+ | `ur workspace` | Coordinate dependency-aware tasks across isolated worktrees in multiple repositories and generate explicit PR/rollback plans. |
397
+ | `ur learn playbooks` | Mine verified outcomes into candidates, explicitly approve them as workflows, and run or disable them. |
398
+ | `/btw` | Create, continue, inspect, rename, or close a private durable tool-free side chat while the main task continues. |
394
399
  | `ur worktree` | List, inspect, and clean up UR agent worktrees. |
395
400
  | `ur task` | Start, run, and hand off worktree-per-task sessions with optional PR creation. |
396
401
  | `ur automation` | Store and run project-local scheduled automation specs under `.ur/automations/`. |
@@ -406,7 +411,9 @@ as first-class subcommands in the shipped CLI.
406
411
  | `ur artifacts` | Capture diffs, test runs, notes, and review feedback under `.ur/artifacts/`; `serve` opens a local web page per artifact ID. |
407
412
  | `ur claim-ledger` | Map generated claims to file, web, MCP, tool, or user sources. |
408
413
  | `ur browser-qa` | Validate and smoke-run browser QA replay fixtures. |
409
- | `ur eval run` | Run an eval suite and grade outputs; optionally capture cost/tokens/files/test metrics. |
414
+ | `ur desktop-qa` | Validate and run bounded Electron QA fixtures with teardown, masked screenshots, and optional raw video/trace only when selector redaction is disabled. |
415
+ | `ur eval run` | Run isolated eval cases and grade outputs plus redacted tool trajectories; optionally capture cost/tokens/files/test metrics. |
416
+ | `ur eval gate` | Enforce pass-rate, trajectory, test, cost, duration, and baseline-regression thresholds in CI. |
410
417
  | `ur eval report` | Show a saved eval report; `--dashboard` writes a single-suite HTML timeline. |
411
418
  | `ur eval dashboard` | Generate the local-first HTML dashboard across all saved reports. |
412
419
  | `ur eval bench` | Import local SWE-bench, Terminal-Bench, or Aider Polyglot exports. |
@@ -566,7 +573,11 @@ ur crew create parser-crew --goal "fix the flaky parser test" --decompose --dry-
566
573
  ur crew plan parser-crew --goal "fix the flaky parser test" --decompose
567
574
  ur crew run parser-crew --workers 3 --decompose --dry-run
568
575
  ur pattern parallel "refactor login without changing behavior" --execute --dry-run
569
- ur arena "implement a debounce helper" --agents 2 --dry-run
576
+ ur arena "implement a debounce helper" --agents 3 --judge hybrid --verify "bun test"
577
+ ur agent-ci init default
578
+ ur agent-ci validate default
579
+ ur cloud run "fix the parser race" --runner managed --attempts 3
580
+ ur cloud steer <task-id> --message "preserve the public API" --request-id review-1
570
581
  ur escalate run "refactor the cache layer" --force-oracle --dry-run
571
582
  ur test-first detect
572
583
  ur test-first --dry-run
@@ -579,12 +590,18 @@ ur context-pack remember --preference "Use bun test over jest"
579
590
  ur context-pack remember --accepted "Use p-map for bounded concurrency" --scope project
580
591
  ur context-pack remember --rejected "Switch to esbuild" --alternative-to "Keep bun bundle"
581
592
  ur context-pack remember --attempt "Tried Deno runtime" --status superseded
593
+ ur context-pack remember --decision "Keep streaming" --cite-file src/parser.ts --lines 20:48
594
+ ur context-pack memory revalidate
595
+ ur context-pack memory search --query "streaming"
582
596
  ur context-pack memory verify
583
597
  ur context-pack memory quarantine
584
598
  ur context-pack memory rollback --to <entry-id>
585
599
  ur context-pack compress
586
600
  ur ci-loop --command "bun test" --cwd . --max-attempts 3 --dry-run
587
601
  ur bg run "fix the flaky parser test" --worktree --dry-run
602
+ ur learn playbooks mine --min-runs 3
603
+ ur workspace init checkout
604
+ ur desktop-qa validate .ur/desktop-qa/fixtures/smoke.json
588
605
  ur automation create nightly --schedule "0 9 * * 1-5" --prompt "Review open tasks"
589
606
  ur repo-edit preview rename oldName --to newName
590
607
  ur repo-edit apply rename oldName --to newName --check "bun test"
@@ -603,6 +620,7 @@ ur agent-task pr --create --dry-run
603
620
  ur acp serve --port 8123
604
621
  ur exec "add tests for the parser" --concurrency 4 --json
605
622
  ur eval run starter --metrics --json
623
+ ur eval gate starter --min-pass-rate 1 --min-trajectory-score 0.9
606
624
  ur eval report starter --dashboard
607
625
  ur eval dashboard
608
626
  ```
@@ -622,12 +640,13 @@ UR reads repository instructions and local runtime state from project files:
622
640
  - `.ur/project-manifest.json` and `.ur/context/` hold architecture summaries,
623
641
  task memory, compressed context, and project memory including architecture
624
642
  decisions, preferred commands, failed attempts, accepted patterns, and
625
- rejected approaches. Task-memory v2 entries include provenance and an
626
- integrity chain; corrupt tails can be quarantined without discarding the
627
- verified prefix.
643
+ rejected approaches. Task-memory v2 entries include provenance, source
644
+ citations, freshness validation, and an integrity chain; corrupt tails can
645
+ be quarantined without discarding the verified prefix.
628
646
  - `.ur/specs/`, `.ur/artifacts/`, `.ur/automations/`, `.ur/test-first/`,
629
- `.ur/memory/`, and `.ur/index/` hold workflow state, review artifacts,
630
- scheduled jobs, failure traces, memory, and indexes.
647
+ `.ur/memory/`, `.ur/index/`, `.ur/agentic-ci/`, `.ur/workspaces/`, and
648
+ `.ur/desktop-qa/` hold workflow state, review artifacts, scheduled jobs,
649
+ failure traces, memory, indexes, isolated automation state, and QA evidence.
631
650
 
632
651
  Commit only shared project assets that are safe for teammates. Keep local
633
652
  settings, generated indexes, memory, logs, and secrets out of Git.
@@ -719,8 +738,9 @@ the permission boundary matters.
719
738
  [Provider Guide](docs/providers.md).
720
739
  - MCP servers can access external services; only enable servers you trust.
721
740
 
722
- See [Configuration](docs/CONFIGURATION.md), [Validation](docs/VALIDATION.md),
723
- and [Quality Notes](QUALITY.md) for operational guidance.
741
+ See [Frontier Agent Workflows](docs/FRONTIER_AGENT_FEATURES.md),
742
+ [Configuration](docs/CONFIGURATION.md), [Validation](docs/VALIDATION.md), and
743
+ [Quality Notes](QUALITY.md) for operational guidance.
724
744
 
725
745
  ## Troubleshooting
726
746