ur-agent 1.83.2 → 1.84.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,47 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.84.0
4
+
5
+ - Added production npm marketplace sources with scoped-package and version
6
+ selectors, custom registries, isolated installation, atomic cache promotion
7
+ and rollback, actionable failures, and complete installed-plugin cache
8
+ invalidation. Public and technical plugin documentation now describes the
9
+ same executable contract.
10
+ - Made input-token accounting provider-aware. OpenAI Responses, Anthropic,
11
+ Gemini, llama.cpp, and vLLM use native non-generating count paths where
12
+ available; Ollama, OpenRouter, LM Studio, Unsloth, and compatible endpoints
13
+ use request-shaped local estimation without reusing another provider's
14
+ fixture or carrying unreachable Bedrock/Vertex branches.
15
+ - Corrected reasoning controls across dynamic providers. Ollama capability
16
+ discovery now treats ordinary thinking models as native boolean `think`
17
+ models and sends strings only for explicitly advertised graded ladders or
18
+ aliases. Added `/thinking on|off|toggle|status`; boolean-capable model pickers
19
+ use Left for off and Right for on only when the runtime has a real two-state
20
+ transport. `/effort` never claims a fabricated level, and Ultra remains
21
+ limited to an explicit provider-advertised beyond-high value. OpenRouter
22
+ provider selection now reuses its endpoint-scoped live catalogue instead of
23
+ forcing a slow refresh each time.
24
+ - Replaced incomplete runtime scaffolding with working implementations: a
25
+ validated tmux-backed Tungsten tool and live monitor; a buildable KAIROS
26
+ assistant/proactive runtime with transcript persistence, dream lifecycle,
27
+ scheduling, and communication tools; complete tool output/permission
28
+ contracts; and a non-React MCP desired-state controller that handles
29
+ reconnect, authentication, partial failure, and late-connection races.
30
+ - Completed the keybinding and SDK migrations. Shortcut labels now come from
31
+ the typed registry with correct last-write and Alt/Meta behavior, feature
32
+ gates hide unavailable bindings, remote tools receive a full fallback
33
+ contract, and SDK initialization emits canonical `Agent` names while
34
+ retaining compatibility only at the input boundary.
35
+ - Fixed production-shell and test-isolation defects: `getCwd` is always bound,
36
+ spawned zsh sessions pass unmatched globs through instead of aborting,
37
+ missing grep/rg targets become precise model-facing recovery guidance, and
38
+ secondary-model tests no longer inherit cached live provider settings.
39
+ - Synchronized the slash-command reference from the shipped registry, separated
40
+ commands from bundled skills and feature-gated internals, expanded KAIROS and
41
+ provider technical coverage, ignored only runtime-owned `.ur/` state, and
42
+ added pre-build version consistency enforcement across npm, documentation,
43
+ IDE extensions, source fallbacks, and the generated CLI.
44
+
3
45
  ## 1.83.2
4
46
 
5
47
  - Synchronized the public guides, static documentation site, examples, and
package/README.md CHANGED
@@ -376,9 +376,14 @@ In the interactive app, `/model` is a two-step, provider-first picker:
376
376
  their curated model list because the official CLIs expose no models API. The
377
377
  generic `subscription` entry is an internal placeholder hidden from listings.
378
378
 
379
- In the model catalog, use **Up/Down** to browse. The effort row updates to
379
+ In the model catalog, use **Up/Down** to browse. For graded models, the effort row updates to
380
380
  the focused model's capability-backed selectors; use **Left/Right** to cycle
381
- only values UR can map to provider-native levels before pressing Enter. `ultra` is UR's visible
381
+ only values UR can map to provider-native levels before pressing Enter. For
382
+ boolean-thinking models on runtimes with a native two-state mapping (currently
383
+ Ollama and direct Anthropic), Left selects off, Right selects on, and `t`
384
+ toggles. The same state is available directly through `/thinking on|off`.
385
+ Generic OpenAI-compatible runtimes never receive an invented boolean field.
386
+ `ultra` is UR's visible
382
387
  beyond-high ceiling selector. It appears only when the provider/model
383
388
  advertises `ultra`, `max`, `xhigh`, or an explicit equivalent, and the row
384
389
  shows the exact mapping (for example, `ultra→max`). Models whose graded
@@ -386,9 +391,13 @@ In the interactive app, `/model` is a two-step, provider-first picker:
386
391
  `max` request resolves visibly to that model's highest supported non-Ultra tier
387
392
  (commonly `max`, `xhigh`, or `high`), and that resolved value is sent to the provider. llama.cpp models
388
393
  are checked lazily through their model-scoped `/props` capability while the
389
- cursor moves. Ollama models are checked through `/api/show`; Kimi K3 exposes
390
- `low`, `high`, and `max`, and the chosen level is sent through Ollama's
391
- native `think` field; Ultra maps to Kimi's advertised `max`. OpenRouter additionally
394
+ cursor moves. Ollama models are checked through `/api/show`; its `thinking`
395
+ capability enables boolean thinking without inventing a graded ladder.
396
+ If `/effort max` or another graded request is used for a boolean-only model,
397
+ UR enables thinking but reports that no graded level was sent.
398
+ GPT-OSS uses its documented `low|medium|high` values, while any other graded
399
+ values or Ultra aliases must be explicitly present in provider metadata.
400
+ The resolved value is sent through Ollama's native `think` field. OpenRouter additionally
392
401
  shows compact model names, FREE/PAID tier, context size, tool/reasoning
393
402
  support, and the full untruncated ID immediately below the focused entry.
394
403
  Its endpoint-scoped catalog is reused for five minutes; Ctrl+R forces an
@@ -615,6 +624,7 @@ validator, and Markdown language-adapter metadata.
615
624
 
616
625
  ```sh
617
626
  ur plugin list
627
+ ur plugin marketplace add npm:@acme/ur-marketplace@latest
618
628
  ur plugin search git
619
629
  ur plugin search --capability skills --json
620
630
  ur plugin show github@ur-plugins-official
@@ -636,6 +646,13 @@ installed, project, and bundled plugin manifest and reports its declared
636
646
  components and capability surface, so you can review what a plugin touches
637
647
  before enabling it.
638
648
 
649
+ Marketplace catalogs can come from GitHub/Git, direct URLs, npm packages,
650
+ local files/directories, or inline settings. npm sources use
651
+ `npm:<package>[@<version-range-or-dist-tag>]`, respect the user's npm registry
652
+ and authentication configuration, and must ship `.ur-plugin/marketplace.json`.
653
+ See the [Plugin Guide](docs/plugins.md) for private-registry configuration and
654
+ refresh behavior.
655
+
639
656
  The npm package includes `README.md`, `QUALITY.md`, `docs/`, `documentation/`,
640
657
  and `plugins/`, so the npm package page and installed artifact both carry the
641
658
  marketplace documentation, core plugins, community staging directory, and