ur-agent 1.23.3 → 1.24.1

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.
Files changed (114) hide show
  1. package/CHANGELOG.md +25 -2
  2. package/CONTRIBUTING.md +21 -0
  3. package/LICENSE +1 -1
  4. package/QUALITY.md +5 -2
  5. package/README.md +83 -16
  6. package/RELEASE.md +54 -0
  7. package/SECURITY.md +22 -0
  8. package/bin/ur.js +5 -5
  9. package/dist/cli.js +5423 -4655
  10. package/docs/AGENT_FEATURES.md +8 -0
  11. package/docs/AGENT_UPGRADE_1.15.0.md +1 -1
  12. package/docs/AGENT_UPGRADE_1.16.0.md +1 -1
  13. package/docs/AGENT_UPGRADE_1.17.0.md +1 -1
  14. package/docs/AGENT_UPGRADE_1.18.0.md +1 -1
  15. package/docs/AGENT_UPGRADE_1.19.0.md +1 -1
  16. package/docs/AGENT_UPGRADE_1.20.0.md +1 -1
  17. package/docs/AGENT_UPGRADE_1.21.0.md +1 -1
  18. package/docs/AGENT_UPGRADE_1.22.0.md +1 -1
  19. package/docs/CODE_FEATURE_INVENTORY.md +9 -3
  20. package/docs/DEVELOPMENT.md +8 -4
  21. package/docs/USAGE.md +18 -1
  22. package/docs/VALIDATION.md +4 -4
  23. package/docs/plugins.md +52 -0
  24. package/documentation/README.md +2 -2
  25. package/documentation/app.js +5 -5
  26. package/documentation/assets/ur-architecture.svg +1 -1
  27. package/documentation/index.html +15 -11
  28. package/package.json +11 -6
  29. package/plugins/bunBundleDev.ts +32 -0
  30. package/plugins/community/.gitkeep +1 -0
  31. package/plugins/core/README.md +69 -0
  32. package/plugins/core/code-review/.ur-plugin/plugin.json +13 -0
  33. package/plugins/core/code-review/README.md +37 -0
  34. package/plugins/core/code-review/commands/code-review.md +47 -0
  35. package/plugins/core/engineering-discipline/.ur-plugin/plugin.json +33 -0
  36. package/plugins/core/engineering-discipline/README.md +21 -0
  37. package/plugins/core/engineering-discipline/commands/discipline-check.md +25 -0
  38. package/plugins/core/engineering-discipline/skills/reproducible-release/SKILL.md +31 -0
  39. package/plugins/core/engineering-discipline/templates/release-verifier.md +18 -0
  40. package/plugins/core/engineering-discipline/validators/release-gate.json +7 -0
  41. package/plugins/core/evaluate-response/.ur-plugin/plugin.json +13 -0
  42. package/plugins/core/evaluate-response/README.md +42 -0
  43. package/plugins/core/evaluate-response/commands/evaluate-response.md +61 -0
  44. package/plugins/core/explain-error/.ur-plugin/plugin.json +13 -0
  45. package/plugins/core/explain-error/README.md +32 -0
  46. package/plugins/core/explain-error/commands/explain-error.md +37 -0
  47. package/plugins/core/git-summary/.ur-plugin/plugin.json +13 -0
  48. package/plugins/core/git-summary/README.md +29 -0
  49. package/plugins/core/git-summary/commands/git-summary.md +27 -0
  50. package/plugins/core/github/.ur-plugin/plugin.json +31 -0
  51. package/plugins/core/github/README.md +37 -0
  52. package/plugins/core/github/commands/gh-issues.md +19 -0
  53. package/plugins/core/github/commands/gh-pr-create.md +19 -0
  54. package/plugins/core/github/commands/gh-pr-review.md +37 -0
  55. package/plugins/core/github/commands/gh-repo-health.md +23 -0
  56. package/plugins/core/github/skills/github-workflow/SKILL.md +53 -0
  57. package/plugins/core/gitlab/.ur-plugin/plugin.json +39 -0
  58. package/plugins/core/gitlab/README.md +39 -0
  59. package/plugins/core/gitlab/commands/gl-issues.md +19 -0
  60. package/plugins/core/gitlab/commands/gl-mr-create.md +19 -0
  61. package/plugins/core/gitlab/commands/gl-mr-review.md +36 -0
  62. package/plugins/core/gitlab/commands/gl-pipeline.md +21 -0
  63. package/plugins/core/gitlab/skills/gitlab-workflow/SKILL.md +63 -0
  64. package/plugins/core/hello/.ur-plugin/plugin.json +13 -0
  65. package/plugins/core/hello/README.md +45 -0
  66. package/plugins/core/hello/commands/hello.md +16 -0
  67. package/plugins/core/huggingface/.ur-plugin/plugin.json +36 -0
  68. package/plugins/core/huggingface/README.md +36 -0
  69. package/plugins/core/huggingface/commands/hf-dataset-search.md +19 -0
  70. package/plugins/core/huggingface/commands/hf-download.md +23 -0
  71. package/plugins/core/huggingface/commands/hf-model-card.md +23 -0
  72. package/plugins/core/huggingface/commands/hf-model-search.md +20 -0
  73. package/plugins/core/huggingface/skills/huggingface-workflow/SKILL.md +70 -0
  74. package/plugins/core/miro/.ur-plugin/plugin.json +27 -0
  75. package/plugins/core/miro/README.md +39 -0
  76. package/plugins/core/miro/commands/miro-board.md +17 -0
  77. package/plugins/core/miro/commands/miro-diagram.md +20 -0
  78. package/plugins/core/miro/commands/miro-export.md +18 -0
  79. package/plugins/core/miro/commands/miro-stickies.md +19 -0
  80. package/plugins/core/miro/skills/miro-workflow/SKILL.md +54 -0
  81. package/plugins/core/obsidian/.ur-plugin/plugin.json +42 -0
  82. package/plugins/core/obsidian/README.md +42 -0
  83. package/plugins/core/obsidian/commands/backlinks.md +22 -0
  84. package/plugins/core/obsidian/commands/daily-note.md +29 -0
  85. package/plugins/core/obsidian/commands/moc.md +24 -0
  86. package/plugins/core/obsidian/commands/second-brain.md +37 -0
  87. package/plugins/core/obsidian/commands/vault-search.md +20 -0
  88. package/plugins/core/obsidian/skills/second-brain/SKILL.md +86 -0
  89. package/plugins/core/powerpoint/.ur-plugin/plugin.json +26 -0
  90. package/plugins/core/powerpoint/README.md +35 -0
  91. package/plugins/core/powerpoint/commands/pptx-from-md.md +18 -0
  92. package/plugins/core/powerpoint/commands/pptx-new.md +21 -0
  93. package/plugins/core/powerpoint/commands/pptx-review.md +32 -0
  94. package/plugins/core/powerpoint/commands/pptx-theme.md +18 -0
  95. package/plugins/core/powerpoint/skills/deck-craft/SKILL.md +60 -0
  96. package/plugins/core/release-notes/.ur-plugin/plugin.json +13 -0
  97. package/plugins/core/release-notes/README.md +28 -0
  98. package/plugins/core/release-notes/commands/release-notes.md +56 -0
  99. package/plugins/core/skill-forge/.ur-plugin/plugin.json +13 -0
  100. package/plugins/core/skill-forge/README.md +37 -0
  101. package/plugins/core/skill-forge/commands/forge-skill.md +47 -0
  102. package/plugins/core/skill-forge/commands/skill-refine.md +19 -0
  103. package/plugins/core/skill-forge/skills/skill-authoring/SKILL.md +84 -0
  104. package/plugins/core/word/.ur-plugin/plugin.json +26 -0
  105. package/plugins/core/word/README.md +37 -0
  106. package/plugins/core/word/commands/docx-edit.md +18 -0
  107. package/plugins/core/word/commands/docx-from-md.md +19 -0
  108. package/plugins/core/word/commands/docx-new.md +22 -0
  109. package/plugins/core/word/commands/docx-review.md +29 -0
  110. package/plugins/core/word/skills/document-craft/SKILL.md +61 -0
  111. package/plugins/examples/README.md +12 -0
  112. package/plugins/examples/command-template/.ur-plugin/plugin.json +12 -0
  113. package/plugins/examples/command-template/README.md +9 -0
  114. package/plugins/examples/command-template/commands/example.md +7 -0
@@ -64,6 +64,14 @@ ur spec run auth-refactor --all
64
64
  ur spec verify auth-refactor
65
65
  ```
66
66
 
67
+ ## v1.24.0 Additions
68
+
69
+ | Addition | Surface | What it adds |
70
+ | --- | --- | --- |
71
+ | Plugin marketplace capability surfaces | `.ur-plugin/marketplace.json`, `src/utils/plugins/schemas.ts`, `plugins/core/engineering-discipline/` | Marketplace entries can advertise MCP tools, executable skills, templates, validators, language adapters, LSP servers, hooks, agents, and commands. The `engineering-discipline` reference plugin ships a command, reproducible-release skill, release-verifier template, release-gate validator, and Markdown adapter metadata. |
72
+ | Autonomous engineering workflow identity | `README.md`, `documentation/`, `plugins/core/engineering-discipline/skills/reproducible-release` | Positions UR as an autonomous engineering workflow engine: plan, execute, test, verify, document, benchmark, and reproduce, with command evidence and rollback discipline as the product promise. |
73
+ | Release readiness guard | `.github/workflows/test.yml`, `test/releaseReadiness.test.ts` | Asserts production bundle, release, package, and global-install checks run only after the Bun test step succeeds in GitHub CI. |
74
+
67
75
  ## v1.22.3 Additions
68
76
 
69
77
  | Addition | Surface | What it adds |
@@ -1,4 +1,4 @@
1
- # UR Agent 1.15.0 Upgrade Notes
1
+ # UR-AGENT 1.15.0 Upgrade Notes
2
2
 
3
3
  UR 1.15.0 keeps the agent local-first and Ollama-centered. The new agent
4
4
  platform surfaces do not add Anthropic, OpenAI, or other direct provider API
@@ -1,4 +1,4 @@
1
- # UR Agent 1.16.0 Upgrade Notes
1
+ # UR-AGENT 1.16.0 Upgrade Notes
2
2
 
3
3
  UR 1.16.0 adds local-network Ollama discovery. The agent can now find Ollama
4
4
  servers on your LAN, let you pick one at startup, and remember the choice for
@@ -1,4 +1,4 @@
1
- # UR Agent 1.17.0 Upgrade Notes
1
+ # UR-AGENT 1.17.0 Upgrade Notes
2
2
 
3
3
  UR 1.17.0 adds the P0 reliable repo editing surface.
4
4
 
@@ -1,4 +1,4 @@
1
- # UR Agent 1.18.0 Upgrade Notes
1
+ # UR-AGENT 1.18.0 Upgrade Notes
2
2
 
3
3
  UR 1.18.0 adds the P0 test-first execution loop.
4
4
 
@@ -1,4 +1,4 @@
1
- # UR Agent 1.19.0 Upgrade Notes
1
+ # UR-AGENT 1.19.0 Upgrade Notes
2
2
 
3
3
  UR 1.19.0 adds two P0 agent reliability surfaces: project safety policy and
4
4
  project context packing.
@@ -1,4 +1,4 @@
1
- # UR Agent 1.20.0 Upgrade Notes
1
+ # UR-AGENT 1.20.0 Upgrade Notes
2
2
 
3
3
  UR 1.20.0 adds IDE integration and a richer tool surface for agent workflows.
4
4
 
@@ -1,4 +1,4 @@
1
- # Upgrading to UR Agent v1.21.0
1
+ # Upgrading to UR-AGENT v1.21.0
2
2
 
3
3
  ## What's new
4
4
 
@@ -1,4 +1,4 @@
1
- # Upgrading to UR Agent v1.22.0
1
+ # Upgrading to UR-AGENT v1.22.0
2
2
 
3
3
  ## What's new
4
4
 
@@ -1,4 +1,4 @@
1
- # UR Agent code feature inventory
1
+ # UR-AGENT code feature inventory
2
2
 
3
3
  This file is a code-derived inventory of what this agent can do in the
4
4
  `ur-agent` 1.19.0 source tree. It is meant to cover behavior that is easy to
@@ -22,7 +22,7 @@ Sources traced include:
22
22
  - `src/utils/plugins/**`
23
23
  - `src/entrypoints/mcp.ts`
24
24
  - `src/sdk/index.ts`
25
- - `marketplace-plugins/**`
25
+ - `plugins/core/**`
26
26
 
27
27
  Notes:
28
28
 
@@ -853,10 +853,14 @@ Plugin loading supports:
853
853
  - plugin commands
854
854
  - plugin agents
855
855
  - plugin skills
856
+ - plugin templates
857
+ - plugin validators
856
858
  - plugin hooks
857
859
  - output styles
858
860
  - MCP servers
859
861
  - LSP servers
862
+ - language adapters
863
+ - marketplace capability metadata
860
864
  - plugin settings
861
865
  - duplicate-name handling
862
866
  - enable/disable state
@@ -872,7 +876,7 @@ Plugin loading supports:
872
876
  - strict known-marketplace policy
873
877
  - managed plugin settings
874
878
 
875
- Bundled marketplace plugin families in `marketplace-plugins/**`:
879
+ Bundled marketplace plugin families in `plugins/core/**`:
876
880
 
877
881
  - code review
878
882
  - evaluate response
@@ -890,6 +894,8 @@ Bundled marketplace plugin families in `marketplace-plugins/**`:
890
894
  - PowerPoint deck creation, markdown-to-deck, review, theme, and deck-craft
891
895
  skill
892
896
  - release notes
897
+ - reproducible release discipline, release-gate validator, release verifier
898
+ template, and Markdown language-adapter metadata
893
899
  - skill forge and skill authoring
894
900
  - Word document creation, markdown-to-docx, edit, review, and document-craft
895
901
  skill
@@ -10,6 +10,8 @@
10
10
  - `src/services/` contains API, MCP, analytics, sync, safety, context, and
11
11
  runtime services.
12
12
  - `src/components/` and `src/ink/` implement the terminal UI.
13
+ - `plugins/core/`, `plugins/community/`, and `plugins/examples/` contain
14
+ shipped plugins, contributed plugin staging, and copyable plugin templates.
13
15
  - `examples/` contains example prompts and workflows.
14
16
  - `test/` contains Bun tests for local UR utility modules.
15
17
 
@@ -34,11 +36,13 @@ bun run dev
34
36
  bun run typecheck
35
37
  bun run lint
36
38
  bun test
37
- bun run bundle
39
+ bun run build
38
40
  bun run smoke
39
41
  bun run secrets:scan
40
42
  bun run release:check
43
+ bun run package:check
41
44
  npm pack --dry-run
45
+ npm publish --dry-run
42
46
  ```
43
47
 
44
48
  Use `ur test-first detect` when adding a feature to inspect the repository's
@@ -50,7 +54,7 @@ shell commands. Use `ur context-pack scan` when a change adds new manifests,
50
54
  command surfaces, or architecture rules that should be captured as project
51
55
  context.
52
56
 
53
- The GitHub install path uses the bundled launcher in `dist/cli.js`, so `bun run bundle` must be run before packaging or pushing a release. `bun run release:check` verifies that `package.json`, `bunfig.toml`, the bundle, docs, and `node ./bin/ur.js --version` agree.
57
+ The GitHub install path uses the bundled launcher in `dist/cli.js`, so `bun run bundle` must be run before packaging or pushing a release. `bun run release:check` verifies that `package.json`, `bunfig.toml`, the bundle, docs, and `node ./bin/ur.js --version` agree. The GitHub workflow keeps production bundle, release, package, and global-install checks behind the Bun test step; do not publish, tag, or push release artifacts until that workflow is green.
54
58
 
55
59
  ## Build
56
60
 
@@ -70,7 +74,7 @@ only the root README. Check:
70
74
  - `docs/`
71
75
  - `documentation/`
72
76
  - `examples/`
73
- - extension and marketplace README files when the feature affects them
77
+ - extension and plugin README files when the feature affects them
74
78
 
75
79
  For top-level commands, also update the static documentation site command data
76
80
  in `documentation/app.js` and any relevant tutorial section in
@@ -93,7 +97,7 @@ ur --version
93
97
  This package is configured for install without cloning:
94
98
 
95
99
  ```sh
96
- bun add -g github:Maitham16/UR-mapek
100
+ bun add -g github:Maitham16/UR
97
101
  ```
98
102
 
99
103
  The package exposes the global `ur` command from `bin/ur.js`. That launcher reads `package.json` for version and repository metadata, then runs `src/entrypoints/cli.tsx` with Bun.
package/docs/USAGE.md CHANGED
@@ -153,7 +153,9 @@ UR includes slash commands and CLI subcommands for common workflows:
153
153
 
154
154
  - `/help` or `ur --help` for command discovery
155
155
  - `ur mcp ...` to configure MCP servers
156
- - `ur plugin ...` to manage plugins and marketplaces
156
+ - `ur plugin ...` to manage plugins and marketplaces. Marketplace plugins can
157
+ add MCP tools, commands, executable skills, templates, validators, language
158
+ adapters, LSP servers, agents, hooks, and output styles.
157
159
  - `ur agents` to list configured agents
158
160
  - `ur agent-trends` to inspect coverage for current agent technology trends
159
161
  - `ur a2a card` to print UR's Agent Card metadata for A2A discovery
@@ -185,6 +187,21 @@ UR includes slash commands and CLI subcommands for common workflows:
185
187
 
186
188
  Interactive sessions also check the published package version and show
187
189
  `Update available: <current> -> <latest>` when a newer release is available.
190
+ Source checkouts print
191
+ `Development build detected. To update, pull latest source or install from npm.`
192
+ instead of attempting to mutate the checkout.
193
+
194
+ ## Status bar
195
+
196
+ Interactive sessions include a compact bottom status bar when stdout is a real
197
+ terminal:
198
+
199
+ ```text
200
+ UR-AGENT v1.24.0 | model: qwen3-coder:480b-cloud | mode: ask | branch: main | tasks: idle | Update: 1.23.3 -> 1.24.0 available
201
+ ```
202
+
203
+ The bar is not rendered in non-interactive mode, CI, dumb terminals, or
204
+ assistant viewer mode. Custom status-line hooks override the built-in bar.
188
205
 
189
206
  Run each command with `--help` for exact flags.
190
207
 
@@ -11,14 +11,14 @@ You need:
11
11
  work because UR talks to the configured Ollama host.
12
12
  - A second Ollama server on the LAN if you want to test network discovery.
13
13
  - UR installed globally (`npm install -g ur-agent`) or this repo installed
14
- globally (`bun add -g github:Maitham16/UR-mapek`) or a
14
+ globally (`bun add -g github:Maitham16/UR`) or a
15
15
  local checkout (`bun run dev`).
16
16
 
17
17
  ## 0. Smoke
18
18
 
19
19
  ```sh
20
20
  ur --version
21
- # expected: 1.19.0 (Ur)
21
+ # expected: 1.24.1 (UR-AGENT)
22
22
  ```
23
23
 
24
24
  ## 0.1 Permission safety and context pack (1.19.0)
@@ -125,7 +125,7 @@ Then inside:
125
125
 
126
126
  Expected: the plugin picker lists `ur-plugins-official` and `hello`. If the
127
127
  marketplace failed to clone, you'll see no entries — fall back to
128
- `/plugin marketplace add github:Maitham16/UR-mapek` and re-run `/plugin`.
128
+ `/plugin marketplace add github:Maitham16/UR` and re-run `/plugin`.
129
129
 
130
130
  Install `hello`:
131
131
 
@@ -295,7 +295,7 @@ Expected: no `unknown option` or `too many arguments` parser errors.
295
295
  ## What to do if any step fails
296
296
 
297
297
  - Step 1 (marketplace): check `ls ~/.ur/marketplaces/` — `ur-plugins-official`
298
- should be there. If absent, `gh repo clone Maitham16/UR-mapek` manually
298
+ should be there. If absent, `gh repo clone Maitham16/UR` manually
299
299
  into `~/.ur/marketplaces/ur-plugins-official` as a fallback.
300
300
  - Steps 2-5 (verifier): set `UR_VERIFIER_MODE=off` and re-run to confirm
301
301
  the issue is the verifier path, not the rest of the loop. Then file an
@@ -0,0 +1,52 @@
1
+ # UR-AGENT plugins
2
+
3
+ UR-AGENT plugins are trusted local extension bundles. They can contribute slash
4
+ commands, MCP servers, executable skills, templates, validators, language
5
+ adapters, LSP servers, hooks, output styles, and agents.
6
+
7
+ ## Repository layout
8
+
9
+ ```text
10
+ plugins/
11
+ core/ # first-party plugins shipped with UR-AGENT
12
+ community/ # contributed plugins staged for review
13
+ examples/ # templates users can copy
14
+ src/plugins/ # built-in plugin registration code
15
+ ```
16
+
17
+ The official marketplace manifest lives at `.ur-plugin/marketplace.json` and
18
+ uses local paths such as `./plugins/core/hello`. It does not depend on previous
19
+ repositories.
20
+
21
+ ## Create a plugin
22
+
23
+ Copy the command template:
24
+
25
+ ```bash
26
+ cp -R plugins/examples/command-template plugins/community/my-plugin
27
+ ```
28
+
29
+ Edit:
30
+
31
+ ```text
32
+ plugins/community/my-plugin/.ur-plugin/plugin.json
33
+ plugins/community/my-plugin/commands/example.md
34
+ ```
35
+
36
+ Then run it locally:
37
+
38
+ ```bash
39
+ ur --plugin-dir ./plugins/community/my-plugin
40
+ ```
41
+
42
+ ## Add a first-party marketplace plugin
43
+
44
+ 1. Put the plugin under `plugins/core/<name>/`.
45
+ 2. Keep its manifest at `plugins/core/<name>/.ur-plugin/plugin.json`.
46
+ 3. Add an entry to `.ur-plugin/marketplace.json` with `source` set to
47
+ `./plugins/core/<name>`.
48
+ 4. Set `capabilities` accurately so users know what the plugin enables.
49
+ 5. Run `bun test test/marketplaceTree.test.ts` before submitting.
50
+
51
+ Plugins are loaded from local UR-AGENT paths first. Network marketplace installs
52
+ remain explicit user actions and are subject to plugin policy checks.
@@ -1,6 +1,6 @@
1
- # UR Agent Documentation Site
1
+ # UR-AGENT Documentation Site
2
2
 
3
- This folder is a static documentation project for UR Agent.
3
+ This folder is a static documentation project for UR-AGENT.
4
4
 
5
5
  Open `index.html` directly in a browser. No build step or dev server is
6
6
  required.
@@ -50,7 +50,7 @@ const featureGroups = [
50
50
  {
51
51
  title: 'Interoperability',
52
52
  tags: ['MCP', 'plugins', 'A2A', 'SDK'],
53
- text: 'MCP servers, plugin marketplaces, A2A Agent Card and task server, delegation tokens, and a TypeScript SDK wrapper around headless UR.',
53
+ text: 'MCP servers, plugin marketplaces for skills, templates, validators, language adapters, A2A Agent Card and task server, delegation tokens, and a TypeScript SDK wrapper around headless UR.',
54
54
  commands: ['ur mcp', 'ur plugin', 'ur a2a', 'ur sdk'],
55
55
  },
56
56
  {
@@ -66,7 +66,7 @@ const commands = [
66
66
  name: 'ur',
67
67
  category: 'Core',
68
68
  aliases: [],
69
- summary: 'Start an interactive UR Agent session in the current workspace.',
69
+ summary: 'Start an interactive UR-AGENT session in the current workspace.',
70
70
  examples: ['ur', 'ur --model qwen3-coder:480b-cloud', 'ur --continue', 'ur --resume'],
71
71
  },
72
72
  {
@@ -297,8 +297,8 @@ const commands = [
297
297
  name: 'plugin',
298
298
  category: 'Interop',
299
299
  aliases: ['plugins'],
300
- summary: 'Manage UR plugins and plugin marketplaces.',
301
- examples: ['ur plugin list', 'ur plugin install hello@ur-plugins-official', 'ur plugin update <plugin>', 'ur plugin disable <plugin>'],
300
+ summary: 'Manage UR plugins and marketplaces for MCP tools, skills, templates, validators, and language adapters.',
301
+ examples: ['ur plugin list', 'ur plugin install hello@ur-plugins-official', 'ur plugin install engineering-discipline@ur-plugins-official', 'ur plugin update <plugin>', 'ur plugin disable <plugin>'],
302
302
  },
303
303
  {
304
304
  name: 'repo-edit',
@@ -374,7 +374,7 @@ const commands = [
374
374
  name: 'update',
375
375
  category: 'Ops',
376
376
  aliases: ['upgrade'],
377
- summary: 'Check for updates and install if available. Interactive sessions also show an update-available notice when a newer package is published.',
377
+ summary: 'Check npm for UR-AGENT updates. Interactive sessions also show an update-available notice when a newer package is published.',
378
378
  examples: ['ur update', 'ur upgrade'],
379
379
  },
380
380
  {
@@ -1,5 +1,5 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" width="1120" height="560" viewBox="0 0 1120 560" role="img" aria-labelledby="title desc">
2
- <title id="title">UR Agent runtime architecture</title>
2
+ <title id="title">UR-AGENT runtime architecture</title>
3
3
  <desc id="desc">A diagram showing users, the UR CLI, project context, tools, agent orchestration, local Ollama models, and outputs.</desc>
4
4
  <defs>
5
5
  <linearGradient id="panel" x1="0" x2="1" y1="0" y2="1">
@@ -3,8 +3,8 @@
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1">
6
- <title>UR Agent Documentation</title>
7
- <meta name="description" content="Professional documentation, tutorials, examples, and command reference for UR Agent.">
6
+ <title>UR-AGENT Documentation</title>
7
+ <meta name="description" content="Professional documentation, tutorials, examples, and command reference for UR-AGENT.">
8
8
  <link rel="stylesheet" href="styles.css">
9
9
  </head>
10
10
  <body>
@@ -14,7 +14,7 @@
14
14
  <div class="brand">
15
15
  <div class="brand-mark" aria-hidden="true">UR</div>
16
16
  <div>
17
- <strong>UR Agent</strong>
17
+ <strong>UR-AGENT</strong>
18
18
  <span>Documentation</span>
19
19
  </div>
20
20
  </div>
@@ -43,9 +43,9 @@
43
43
  <main id="content" class="content">
44
44
  <header class="topbar">
45
45
  <div>
46
- <p class="eyebrow">Version 1.22.3</p>
47
- <h1>UR Agent Documentation</h1>
48
- <p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR Agent.</p>
46
+ <p class="eyebrow">Version 1.24.0</p>
47
+ <h1>UR-AGENT Documentation</h1>
48
+ <p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-AGENT.</p>
49
49
  </div>
50
50
  <div class="topbar-actions">
51
51
  <a class="button" href="#quickstart">Start</a>
@@ -56,8 +56,8 @@
56
56
  <section id="overview" class="section">
57
57
  <div class="section-heading">
58
58
  <p class="eyebrow">What UR Is</p>
59
- <h2>Terminal coding agent with local-first model routing</h2>
60
- <p>UR runs from the terminal, uses the local Ollama app for model calls, and combines project context, tools, MCP, plugins, skills, workflows, automations, and agent orchestration into one CLI.</p>
59
+ <h2>Autonomous engineering workflow engine</h2>
60
+ <p>UR is not only chat, autocomplete, or code edits. It turns work into a plan, executes patches, tests and verifies them, documents the result, benchmarks behavior, and keeps the run reproducible from the terminal.</p>
61
61
  </div>
62
62
  <div class="stat-grid">
63
63
  <article>
@@ -72,6 +72,10 @@
72
72
  <strong>Agent platform</strong>
73
73
  <span>Workflows, patterns, crews, goals, evals, memory, knowledge, A2A, provenance, and templates are first-class commands.</span>
74
74
  </article>
75
+ <article>
76
+ <strong>Plugin marketplace</strong>
77
+ <span>Plugins can add MCP tools, skills, templates, validators, language adapters, LSP servers, agents, hooks, and output styles.</span>
78
+ </article>
75
79
  <article>
76
80
  <strong>Reliable repo editing</strong>
77
81
  <span><code>ur repo-edit</code> indexes files and symbols, plans AST-aware renames, previews patches, and rolls back failed multi-file applies.</span>
@@ -86,7 +90,7 @@
86
90
  </article>
87
91
  <article>
88
92
  <strong>Release checks</strong>
89
- <span>Typecheck, tests, bundle verification, smoke, package checks, and secret scan are part of the release path.</span>
93
+ <span>Typecheck, tests, bundle verification, smoke, package checks, secret scan, and dry-run publish are part of the release path.</span>
90
94
  </article>
91
95
  </div>
92
96
  </section>
@@ -130,7 +134,7 @@ ur -p --output-format json "Review the current diff"</code></pre>
130
134
  <p>The CLI is the control plane. Project context and <code>.ur</code> assets feed agent orchestration, which uses local Ollama models and approved tools to produce code, docs, PRs, reports, and automation outputs.</p>
131
135
  </div>
132
136
  <figure class="diagram">
133
- <img src="assets/ur-architecture.svg" alt="UR Agent runtime architecture diagram">
137
+ <img src="assets/ur-architecture.svg" alt="UR-AGENT runtime architecture diagram">
134
138
  </figure>
135
139
  </section>
136
140
 
@@ -442,7 +446,7 @@ UR_VERIFIER_AUTO_SUBAGENT=1</code></pre>
442
446
  ur mcp add-json local-tools '{"command":"node","args":["server.js"]}'
443
447
  ur plugin list
444
448
  ur plugin install &lt;plugin&gt;</code></pre>
445
- <p>MCP servers and plugins expand tool access. Treat them as trusted code.</p>
449
+ <p>MCP servers and marketplace plugins expand tools, executable skills, templates, validators, language adapters, and review workflows. Treat them as trusted code.</p>
446
450
  </article>
447
451
  </div>
448
452
  </section>
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "ur-agent",
3
- "version": "1.23.3",
4
- "description": "UR — autonomous engineering workflow engine (plan, execute, test, verify, document, benchmark, reproduce)",
3
+ "version": "1.24.1",
4
+ "description": "UR-AGENT — autonomous engineering workflow engine (plan, execute, test, verify, document, benchmark, reproduce)",
5
5
  "type": "module",
6
6
  "packageManager": "bun@1.3.14",
7
7
  "repository": {
8
8
  "type": "git",
9
- "url": "git+https://github.com/Maitham16/UR-mapek.git"
9
+ "url": "git+https://github.com/Maitham16/UR.git"
10
10
  },
11
11
  "bugs": {
12
- "url": "https://github.com/Maitham16/UR-mapek/issues"
12
+ "url": "https://github.com/Maitham16/UR/issues"
13
13
  },
14
- "homepage": "https://github.com/Maitham16/UR-mapek#readme",
15
- "license": "LicenseRef-UR-Agent-Non-Commercial-Self-Responsibility",
14
+ "homepage": "https://github.com/Maitham16/UR#readme",
15
+ "license": "LicenseRef-UR-AGENT-Non-Commercial-Self-Responsibility",
16
16
  "keywords": [
17
17
  "agent",
18
18
  "cli",
@@ -30,15 +30,20 @@
30
30
  "documentation",
31
31
  "extensions",
32
32
  "examples",
33
+ "plugins",
33
34
  "CHANGELOG.md",
35
+ "CONTRIBUTING.md",
34
36
  "QUALITY.md",
35
37
  "README.md",
38
+ "RELEASE.md",
39
+ "SECURITY.md",
36
40
  "LICENSE"
37
41
  ],
38
42
  "scripts": {
39
43
  "start": "node ./bin/ur.js",
40
44
  "dev": "bun --watch run src/entrypoints/cli.tsx",
41
45
  "bundle": "node scripts/bundle.mjs",
46
+ "build": "node scripts/bundle.mjs",
42
47
  "release:check": "node scripts/release-check.mjs",
43
48
  "typecheck": "bun run tsc --noEmit",
44
49
  "lint": "node scripts/lint.mjs",
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Bun plugin that provides a runtime implementation of the `bun:bundle` module.
3
+ *
4
+ * In production, Bun's bundler statically replaces `feature()` calls at compile
5
+ * time. During development (running unbundled with `bun run`), this plugin
6
+ * intercepts `bun:bundle` imports and returns a stub where every feature flag
7
+ * is `false` by default.
8
+ *
9
+ * To enable specific flags during dev, set the env var FEATURE_FLAGS as a
10
+ * comma-separated list:
11
+ *
12
+ * FEATURE_FLAGS=KAIROS,VOICE_MODE bun run src/main.tsx
13
+ */
14
+ import { plugin } from 'bun'
15
+
16
+ const enabledFlags = new Set(
17
+ (process.env.FEATURE_FLAGS ?? '').split(',').filter(Boolean),
18
+ )
19
+
20
+ plugin({
21
+ name: 'bun-bundle-dev',
22
+ setup(build) {
23
+ build.module('bun:bundle', () => ({
24
+ exports: {
25
+ feature(flag: string): boolean {
26
+ return enabledFlags.has(flag)
27
+ },
28
+ },
29
+ loader: 'object',
30
+ }))
31
+ },
32
+ })
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,69 @@
1
+ # plugins/core/
2
+
3
+ First-party plugins for the **ur-plugins-official** marketplace.
4
+
5
+ Each subdirectory here is a self-contained plugin. The marketplace
6
+ manifest at `.ur-plugin/marketplace.json` (at the repo root) lists which of
7
+ them are published.
8
+
9
+ ## Shipped plugins
10
+
11
+ | Plugin | Slash command | What it does |
12
+ | --- | --- | --- |
13
+ | [`hello`](./hello) | `/hello [name]` | Example greeting. Use as a template. |
14
+ | [`git-summary`](./git-summary) | `/git-summary` | One-paragraph factual summary of the working tree and recent commits. |
15
+ | [`code-review`](./code-review) | `/code-review [base-ref]` | Structured review of the working diff. Correctness, style, test coverage, security, TL;DR verdict. |
16
+ | [`explain-error`](./explain-error) | `/explain-error [command]` | Re-runs a failing command and decodes the error in plain English with two next steps. |
17
+ | [`release-notes`](./release-notes) | `/release-notes [since-ref]` | Drafts release notes grouped by Features / Fixes / Documentation / Other since the last tag. |
18
+ | [`evaluate-response`](./evaluate-response) | `/evaluate-response` | Adversarial self-evaluation of the most recent assistant turn. |
19
+ | [`obsidian`](./obsidian) | `/second-brain` (+4) | Operate an Obsidian vault as a second brain — atomic notes, daily notes, MOCs, backlinks, cited search. Direct file edits or the Local REST API MCP server. |
20
+ | [`github`](./github) | `/gh-pr-review` (+3) | Review and open pull requests, triage issues, check repo health — via the official GitHub MCP server or the `gh` CLI. |
21
+ | [`gitlab`](./gitlab) | `/gl-mr-review` (+3) | Review and open merge requests, triage issues, watch CI/CD pipelines — via the official GitLab MCP server or the `glab` CLI. |
22
+ | [`huggingface`](./huggingface) | `/hf-model-search` (+3) | Search, vet, and download Hub models and datasets — via the official Hugging Face MCP server or the `hf` CLI. |
23
+ | [`word`](./word) | `/docx-new` (+3) | Create, convert, review, and edit Word documents — via the Office Word MCP server or a pandoc / python-docx fallback. |
24
+ | [`powerpoint`](./powerpoint) | `/pptx-new` (+3) | Build, convert, review, and theme PowerPoint decks — via the Office PowerPoint MCP server or a python-pptx fallback. |
25
+ | [`miro`](./miro) | `/miro-board` (+3) | Create boards, diagrams, and sticky clusters and summarize boards — via Miro's official MCP server or the REST API. |
26
+ | [`skill-forge`](./skill-forge) | `/forge-skill` (+1) | The active model authors a complete `SKILL.md` from your description and saves it to your skills directory. |
27
+ | [`engineering-discipline`](./engineering-discipline) | `/discipline-check` | Reference plugin that ships a command, executable skill, agent template, validator, and Markdown language adapter metadata. |
28
+
29
+ Seven of these are **integration plugins**: each bundles an official MCP server,
30
+ several slash commands, and a methodology skill, and prompts for its config
31
+ (tokens, vault path, output folders) on enable. The Office plugins run their MCP
32
+ server through `uvx` (install `uv`) and fall back to local Python libraries.
33
+ Secrets are stored in secure storage, never in plaintext settings.
34
+
35
+ [`skill-forge`](./skill-forge) is a **meta plugin** (no MCP): its commands run as
36
+ prompts, so the active session model authors and saves the skill for you.
37
+
38
+ [`engineering-discipline`](./engineering-discipline) is a **marketplace
39
+ capability reference plugin**. It demonstrates every standard extension surface
40
+ UR accepts from marketplace plugins: commands, executable skills, reusable agent
41
+ templates, deterministic validators, language adapters, and LSP server metadata.
42
+
43
+ ## Adding a new plugin
44
+
45
+ 1. Copy `hello/` to a new directory, e.g. `plugins/core/my-plugin/`.
46
+ 2. Edit `my-plugin/.ur-plugin/plugin.json` with the plugin's real metadata.
47
+ 3. Replace the example command in `my-plugin/commands/` with your own.
48
+ 4. Add optional extension folders as needed:
49
+ - `skills/<name>/SKILL.md`
50
+ - `templates/<name>.md`
51
+ - `validators/<name>.json`
52
+ - `mcpServers` or `lspServers` in `.ur-plugin/plugin.json`
53
+ - `languageAdapters` in `.ur-plugin/plugin.json`
54
+ 5. Add an entry to `.ur-plugin/marketplace.json` (sibling to existing
55
+ entries).
56
+ 6. Set the entry's `capabilities` array so users can see whether it adds MCP
57
+ tools, skills, templates, validators, language adapters, LSP servers,
58
+ commands, agents, or hooks before installation.
59
+ 7. Open a PR against `Maitham16/UR`.
60
+
61
+ See [`hello/README.md`](./hello/README.md) for the smallest possible example.
62
+
63
+ ## Schemas
64
+
65
+ The shapes for `marketplace.json` and `plugin.json` are defined in the
66
+ agent source — see `src/utils/plugins/schemas.ts` (`PluginMarketplaceSchema`
67
+ and `PluginManifestSchema`). The schemas are strict-by-default but
68
+ unknown fields on marketplace entries are silently stripped so future
69
+ versions stay forward-compatible.
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "code-review",
3
+ "version": "0.1.0",
4
+ "description": "Adds /code-review — structured review of the working diff against a base ref.",
5
+ "author": {
6
+ "name": "Maitham Al-rubaye",
7
+ "url": "https://github.com/Maitham16/UR"
8
+ },
9
+ "homepage": "https://github.com/Maitham16/UR/tree/master/plugins/core/code-review",
10
+ "repository": "https://github.com/Maitham16/UR",
11
+ "license": "LicenseRef-UR-AGENT-Non-Commercial-Self-Responsibility",
12
+ "keywords": ["code-review", "git", "diff", "quality"]
13
+ }
@@ -0,0 +1,37 @@
1
+ # code-review
2
+
3
+ Adds `/code-review` — a structured review of the working diff against a
4
+ base ref.
5
+
6
+ ## Use
7
+
8
+ ```text
9
+ /code-review
10
+ /code-review main
11
+ /code-review v1.2.0
12
+ ```
13
+
14
+ If no base ref is given, the plugin tries `main`, then `master`, then
15
+ `HEAD~5`.
16
+
17
+ ## What it does
18
+
19
+ Runs `git diff <base>...HEAD`, then asks the model for a markdown report
20
+ with four sections (Correctness, Style, Test coverage, Security) and a
21
+ mandatory one-line TL;DR (`Looks good` / `Has nits` / `Has blockers`).
22
+
23
+ Sections with no findings are omitted, not padded.
24
+
25
+ ## Install
26
+
27
+ ```text
28
+ /plugin install code-review@ur-plugins-official
29
+ ```
30
+
31
+ ## Pair with the verifier
32
+
33
+ `/code-review` is a *static* read of the diff. The verifier subagent
34
+ (`/verify` or auto on every "done") is a *dynamic* check — it actually
35
+ runs builds, tests, and lints. They're complementary: code-review catches
36
+ things the verifier can't (style, subtle logic), and the verifier catches
37
+ things code-review can't (does it actually compile and pass tests).