ur-agent 1.34.0 → 1.35.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.
- package/CHANGELOG.md +33 -0
- package/QUALITY.md +10 -5
- package/README.md +72 -22
- package/RELEASE.md +11 -1
- package/dist/cli.js +145 -130
- package/docs/AGENT_FEATURES.md +2 -2
- package/docs/AGENT_TRENDS.md +1 -1
- package/docs/CONFIGURATION.md +11 -9
- package/docs/TROUBLESHOOTING.md +204 -0
- package/docs/USAGE.md +38 -16
- package/docs/VALIDATION.md +1 -1
- package/docs/providers.md +29 -21
- package/documentation/app.js +55 -13
- package/documentation/index.html +5 -5
- package/examples/provider_selection.md +45 -0
- package/extensions/vscode-ur-inline-diffs/extension.js +125 -15
- package/extensions/vscode-ur-inline-diffs/package.json +19 -7
- package/package.json +1 -1
- package/docs/AGENT_UPGRADE_1.15.0.md +0 -129
- package/docs/AGENT_UPGRADE_1.16.0.md +0 -102
- package/docs/AGENT_UPGRADE_1.17.0.md +0 -32
- package/docs/AGENT_UPGRADE_1.18.0.md +0 -45
- package/docs/AGENT_UPGRADE_1.19.0.md +0 -41
- package/docs/AGENT_UPGRADE_1.20.0.md +0 -42
- package/docs/AGENT_UPGRADE_1.21.0.md +0 -58
- package/docs/AGENT_UPGRADE_1.22.0.md +0 -48
- package/docs/CODE_FEATURE_INVENTORY.md +0 -1042
|
@@ -1,1042 +0,0 @@
|
|
|
1
|
-
# UR-AGENT code feature inventory
|
|
2
|
-
|
|
3
|
-
This file is a code-derived inventory of what this agent can do in the
|
|
4
|
-
`ur-agent` 1.25.3 source tree. It is meant to cover behavior that is easy to
|
|
5
|
-
miss in user-facing documentation.
|
|
6
|
-
|
|
7
|
-
Sources traced include:
|
|
8
|
-
|
|
9
|
-
- `package.json`
|
|
10
|
-
- `bin/ur.js`
|
|
11
|
-
- `src/entrypoints/cli.tsx`
|
|
12
|
-
- `src/main.tsx`
|
|
13
|
-
- `src/query.ts`
|
|
14
|
-
- `src/commands.ts`
|
|
15
|
-
- `src/tools.ts`
|
|
16
|
-
- `src/constants/prompts.ts`
|
|
17
|
-
- `src/tools/**`
|
|
18
|
-
- `src/commands/**`
|
|
19
|
-
- `src/services/**`
|
|
20
|
-
- `src/security/**`
|
|
21
|
-
- `src/utils/settings/**`
|
|
22
|
-
- `src/utils/plugins/**`
|
|
23
|
-
- `src/entrypoints/mcp.ts`
|
|
24
|
-
- `src/sdk/index.ts`
|
|
25
|
-
- `plugins/core/**`
|
|
26
|
-
|
|
27
|
-
Notes:
|
|
28
|
-
|
|
29
|
-
- "Feature-gated" means the code exists but is conditional on env vars,
|
|
30
|
-
feature flags, build type, user type, or settings.
|
|
31
|
-
- "Internal-only" means the code path is restricted to Anthropic/internal
|
|
32
|
-
user types or similar checks in this tree.
|
|
33
|
-
- "Stub" means the source exposes a command/tool name but the implementation is
|
|
34
|
-
intentionally disabled, null, or placeholder in this build.
|
|
35
|
-
- Copy-artifact files with names like `* 2.ts` are not treated as canonical;
|
|
36
|
-
the cleanup pass removed the stale `escalate 2.ts` and `ollama 2.ts` copies.
|
|
37
|
-
|
|
38
|
-
## Package and binary entry
|
|
39
|
-
|
|
40
|
-
- Publishes the CLI as `ur` from `bin/ur.js`.
|
|
41
|
-
- Uses Bun as the runtime.
|
|
42
|
-
- Runs `dist/cli.js` when present, otherwise `src/entrypoints/cli.tsx` with
|
|
43
|
-
build macros.
|
|
44
|
-
- Exposes package scripts for start, dev, bundling, release checks,
|
|
45
|
-
typechecking, tests, smoke tests, secret scanning, package checks, and
|
|
46
|
-
prepack bundling.
|
|
47
|
-
- Includes a dependency-free TypeScript SDK in `src/sdk/index.ts` that shells
|
|
48
|
-
out to `ur -p --output-format json`.
|
|
49
|
-
|
|
50
|
-
## Startup and runtime modes
|
|
51
|
-
|
|
52
|
-
- Fast `--version`, `-v`, and `-V` handling before full CLI load.
|
|
53
|
-
- Normal interactive terminal UI.
|
|
54
|
-
- Headless print mode with `-p` / `--print`.
|
|
55
|
-
- Output modes:
|
|
56
|
-
- `text`
|
|
57
|
-
- `json`
|
|
58
|
-
- `stream-json`
|
|
59
|
-
- Streaming JSON input mode via `--input-format stream-json`.
|
|
60
|
-
- Structured output through `--json-schema`.
|
|
61
|
-
- Optional inclusion of hook events, partial assistant messages, and replayed
|
|
62
|
-
user messages in streamed output.
|
|
63
|
-
- Debug modes:
|
|
64
|
-
- `--debug`
|
|
65
|
-
- `--debug-to-stderr`
|
|
66
|
-
- `--debug-file`
|
|
67
|
-
- verbose mode
|
|
68
|
-
- Minimal `--bare` mode that forces simple/local behavior and skips many
|
|
69
|
-
startup features such as hooks, LSP, plugin sync, attribution, auto-memory,
|
|
70
|
-
background prefetches, keychain prefetch, and project instruction discovery.
|
|
71
|
-
- Init flows:
|
|
72
|
-
- `--init`
|
|
73
|
-
- `--init-only`
|
|
74
|
-
- maintenance mode
|
|
75
|
-
- Resume flows:
|
|
76
|
-
- continue last session
|
|
77
|
-
- resume by session
|
|
78
|
-
- fork/resume variants
|
|
79
|
-
- resume from pull request context
|
|
80
|
-
- no-persistence mode
|
|
81
|
-
- rewind files
|
|
82
|
-
- Model controls:
|
|
83
|
-
- model selection
|
|
84
|
-
- effort selection
|
|
85
|
-
- fallback model
|
|
86
|
-
- workload flags
|
|
87
|
-
- beta flags
|
|
88
|
-
- custom agents passed by `--agents <json>`
|
|
89
|
-
- Turn and budget controls:
|
|
90
|
-
- max turns
|
|
91
|
-
- task budget
|
|
92
|
-
- max budget
|
|
93
|
-
- thinking controls
|
|
94
|
-
- System prompt controls:
|
|
95
|
-
- override system prompt
|
|
96
|
-
- append system prompt
|
|
97
|
-
- load prompt additions from a file
|
|
98
|
-
- dump system prompt when gated
|
|
99
|
-
- Workspace controls:
|
|
100
|
-
- `--add-dir`
|
|
101
|
-
- `--settings`
|
|
102
|
-
- `--setting-sources`
|
|
103
|
-
- `--ide`
|
|
104
|
-
- `--strict-mcp-config`
|
|
105
|
-
- `--session-id`
|
|
106
|
-
- `--name`
|
|
107
|
-
- `--file`
|
|
108
|
-
- Worktree controls:
|
|
109
|
-
- `-w` / `--worktree [name]`
|
|
110
|
-
- `--tmux`
|
|
111
|
-
- tmux worktree fast path
|
|
112
|
-
- Background session controls, feature-gated:
|
|
113
|
-
- `ps`
|
|
114
|
-
- `logs`
|
|
115
|
-
- `attach`
|
|
116
|
-
- `kill`
|
|
117
|
-
- `--bg` / `--background`
|
|
118
|
-
- Daemon and worker modes, feature-gated:
|
|
119
|
-
- `daemon`
|
|
120
|
-
- `--daemon-worker`
|
|
121
|
-
- environment runner
|
|
122
|
-
- self-hosted runner
|
|
123
|
-
- Browser and desktop integration entrypoints:
|
|
124
|
-
- Chrome MCP mode
|
|
125
|
-
- Chrome native host mode
|
|
126
|
-
- computer-use MCP mode, feature-gated
|
|
127
|
-
- deep-link handling, feature-gated
|
|
128
|
-
- Remote/session server entrypoints:
|
|
129
|
-
- `server`
|
|
130
|
-
- `open <cc-url>`
|
|
131
|
-
- SSH remote runner, feature-gated
|
|
132
|
-
- remote-control / assistant bridge, feature-gated
|
|
133
|
-
- A2A fast path in `bin/ur.js`:
|
|
134
|
-
- local A2A HTTP server
|
|
135
|
-
- health endpoint
|
|
136
|
-
- agent-card endpoint
|
|
137
|
-
- task endpoint
|
|
138
|
-
- loopback-only protection unless bearer token is configured
|
|
139
|
-
- dry-run mode
|
|
140
|
-
- headless `ur -p --output-format json` execution for tasks
|
|
141
|
-
|
|
142
|
-
## Main CLI command families
|
|
143
|
-
|
|
144
|
-
The CLI registers these top-level command families in `src/main.tsx`:
|
|
145
|
-
|
|
146
|
-
- `mcp`: configure and manage MCP servers.
|
|
147
|
-
- `auth`: login, status, and logout.
|
|
148
|
-
- `plugin` / `plugins`: validate, install, update, enable, disable, uninstall,
|
|
149
|
-
and manage marketplaces.
|
|
150
|
-
- `setup-token`: configure a long-lived authentication token.
|
|
151
|
-
- `agents`: list configured agents.
|
|
152
|
-
- `agent-trends`: show coverage against current agent technology trends.
|
|
153
|
-
- `agent-features` / `agent-roadmap`: show or initialize agent feature
|
|
154
|
-
scaffolds.
|
|
155
|
-
- `agent-templates` / `agent-template`: list or install reusable project
|
|
156
|
-
agent templates.
|
|
157
|
-
- `automation` / `automations`: manage project-local automation specs and the
|
|
158
|
-
resident scheduler.
|
|
159
|
-
- `agent-task` / `task-pr`: summarize task state, git diff status, and PR
|
|
160
|
-
handoff commands.
|
|
161
|
-
- `model-doctor` / `model-capabilities`: inspect local Ollama model
|
|
162
|
-
capabilities.
|
|
163
|
-
- `semantic-memory` / `memory-index`: build and search a project memory index.
|
|
164
|
-
- `claim-ledger` / `claims`: manage claim-to-source provenance.
|
|
165
|
-
- `browser-qa`: validate and smoke-run browser QA replay fixtures.
|
|
166
|
-
- `pattern` / `patterns`: run or install multi-agent collaboration patterns.
|
|
167
|
-
- `workflow` / `wf`: create, validate, graph, run, plan, and resume declarative
|
|
168
|
-
workflows.
|
|
169
|
-
- `agent-inspect` / `inspect-agents`: reconstruct subagent timelines from
|
|
170
|
-
transcripts.
|
|
171
|
-
- `route` / `intent`: classify task intent and recommend agents/patterns.
|
|
172
|
-
- `model-route` / `model-pick`: recommend a local Ollama model for a task.
|
|
173
|
-
- `crew` / `crews`: run a headless multi-agent crew with a shared board.
|
|
174
|
-
- `goal` / `goals`: track long-horizon objectives and resume workflows.
|
|
175
|
-
- `spec` / `specs`: spec-driven development scaffolding and execution.
|
|
176
|
-
- `escalate`: capability-aware local model escalation.
|
|
177
|
-
- `arena` / `best-of`: run competing agents in isolated worktrees and judge
|
|
178
|
-
diffs.
|
|
179
|
-
- `bg` / `background-agent`: run detached local background agents with durable
|
|
180
|
-
state, logs, optional worktrees, fanout, live steering, and opt-in PRs.
|
|
181
|
-
- `ci-loop` / `heal`: self-healing build/test loop with bounded fix attempts.
|
|
182
|
-
- `test-first` / `quality-loop` / `tf-loop`: stack-aware compile/test/lint
|
|
183
|
-
loop with failure traces and `.ur/verify.json` gate installation.
|
|
184
|
-
- `safety` / `safety-policy`: inspect project shell safety policy, initialize
|
|
185
|
-
`.ur/safety-policy.json`, and evaluate commands for read/write/execute/network
|
|
186
|
-
permission class, destructive-command approval, sandbox posture, and secret
|
|
187
|
-
exfiltration denial.
|
|
188
|
-
- `context-pack` / `project-manifest` / `ctx-pack`: write
|
|
189
|
-
`.ur/project-manifest.json`, summarize repository architecture under
|
|
190
|
-
`.ur/context/architecture.md`, record task memory, and compress context.
|
|
191
|
-
- `artifacts` / `artifact`: create, review, approve, reject, and capture
|
|
192
|
-
deliverables; comments can steer linked background tasks.
|
|
193
|
-
- `trigger` / `mention`: parse webhook payloads and optionally launch a run.
|
|
194
|
-
- `sdk` / `embed`: show or scaffold programmatic SDK usage.
|
|
195
|
-
- `knowledge` / `kb`: curated project knowledge base with provenance.
|
|
196
|
-
- `eval` / `evals`: public agent eval harness.
|
|
197
|
-
- `code-index` / `codeindex`: semantic code index backed by local embeddings,
|
|
198
|
-
including watch mode for auto-reindex.
|
|
199
|
-
- `repo-edit` / `repoedit` / `reliable-edit`: reliable repo editing with a
|
|
200
|
-
local file/symbol index, AST-aware JavaScript/TypeScript rename plans, patch
|
|
201
|
-
previews, and rollback-safe multi-file apply.
|
|
202
|
-
- `memory retention`: project-local memory retention controls.
|
|
203
|
-
- `ide diff`: editor-readable inline diff bundles for native review surfaces.
|
|
204
|
-
- `role-mode` / `roles`: built-in role modes such as Architect, Code, Debug,
|
|
205
|
-
and Ask.
|
|
206
|
-
- `a2a`: agent-to-agent card, server, and token utilities.
|
|
207
|
-
- `auto-mode`: inspect classifier defaults/config/critique when gated.
|
|
208
|
-
- `doctor`: updater and health diagnostics.
|
|
209
|
-
- `update` / `upgrade`: check and install updates.
|
|
210
|
-
- `install`: install native builds.
|
|
211
|
-
- `completion`: shell completion support.
|
|
212
|
-
|
|
213
|
-
Internal-only or gated command families include rollback, log, error, export,
|
|
214
|
-
task-list management, remote control, assistant bridge, and selected dev
|
|
215
|
-
commands.
|
|
216
|
-
|
|
217
|
-
## Slash command inventory
|
|
218
|
-
|
|
219
|
-
Slash commands are assembled from built-ins, skills, plugins, workflow commands,
|
|
220
|
-
MCP prompt commands, and feature-gated sources in `src/commands.ts`.
|
|
221
|
-
|
|
222
|
-
Code-visible slash command names include:
|
|
223
|
-
|
|
224
|
-
- `a2a-card`
|
|
225
|
-
- `actions`
|
|
226
|
-
- `add-dir`
|
|
227
|
-
- `advisor`
|
|
228
|
-
- `agent-features`
|
|
229
|
-
- `agent-inspect`
|
|
230
|
-
- `agent-task`
|
|
231
|
-
- `agent-templates`
|
|
232
|
-
- `agent-trends`
|
|
233
|
-
- `agents`
|
|
234
|
-
- `analyze`
|
|
235
|
-
- `arena`
|
|
236
|
-
- `artifacts`
|
|
237
|
-
- `automation`
|
|
238
|
-
- `branch`
|
|
239
|
-
- `brief`
|
|
240
|
-
- `browser`
|
|
241
|
-
- `browser-qa`
|
|
242
|
-
- `btw`
|
|
243
|
-
- `chrome`
|
|
244
|
-
- `ci-loop`
|
|
245
|
-
- `test-first`
|
|
246
|
-
- `cite`
|
|
247
|
-
- `claim-ledger`
|
|
248
|
-
- `clear`
|
|
249
|
-
- `code-index`
|
|
250
|
-
- `color`
|
|
251
|
-
- `compact`
|
|
252
|
-
- `compliance`
|
|
253
|
-
- `config`
|
|
254
|
-
- `context`
|
|
255
|
-
- `context-pack`
|
|
256
|
-
- `convert`
|
|
257
|
-
- `copy`
|
|
258
|
-
- `cost`
|
|
259
|
-
- `create-skill`
|
|
260
|
-
- `crew`
|
|
261
|
-
- `desktop`
|
|
262
|
-
- `devcontainer`
|
|
263
|
-
- `diff`
|
|
264
|
-
- `dna`
|
|
265
|
-
- `doctor`
|
|
266
|
-
- `effort`
|
|
267
|
-
- `escalate`
|
|
268
|
-
- `eval`
|
|
269
|
-
- `evidence`
|
|
270
|
-
- `exit`
|
|
271
|
-
- `export`
|
|
272
|
-
- `extra-usage`
|
|
273
|
-
- `fast`
|
|
274
|
-
- `feedback`
|
|
275
|
-
- `files`
|
|
276
|
-
- `forget`
|
|
277
|
-
- `goal`
|
|
278
|
-
- `graph`
|
|
279
|
-
- `guardrails`
|
|
280
|
-
- `harden`
|
|
281
|
-
- `heapdump`
|
|
282
|
-
- `help`
|
|
283
|
-
- `hooks`
|
|
284
|
-
- `ide`
|
|
285
|
-
- `image`
|
|
286
|
-
- `index`
|
|
287
|
-
- `init`
|
|
288
|
-
- `install-github-app`
|
|
289
|
-
- `install-slack-app`
|
|
290
|
-
- `ir`
|
|
291
|
-
- `kali`
|
|
292
|
-
- `keybindings`
|
|
293
|
-
- `knowledge`
|
|
294
|
-
- `lab`
|
|
295
|
-
- `learn`
|
|
296
|
-
- `login`
|
|
297
|
-
- `logout`
|
|
298
|
-
- `mcp`
|
|
299
|
-
- `memory`
|
|
300
|
-
- `mode`
|
|
301
|
-
- `model`
|
|
302
|
-
- `model-doctor`
|
|
303
|
-
- `model-route`
|
|
304
|
-
- `os`
|
|
305
|
-
- `output-style`
|
|
306
|
-
- `paper`
|
|
307
|
-
- `passes`
|
|
308
|
-
- `pattern`
|
|
309
|
-
- `permissions`
|
|
310
|
-
- `plan`
|
|
311
|
-
- `playbook`
|
|
312
|
-
- `plugin`
|
|
313
|
-
- `pr-comments`
|
|
314
|
-
- `privacy-settings`
|
|
315
|
-
- `project`
|
|
316
|
-
- `insights`
|
|
317
|
-
- `rate-limit-options`
|
|
318
|
-
- `read`
|
|
319
|
-
- `release-notes`
|
|
320
|
-
- `reload-plugins`
|
|
321
|
-
- `remember`
|
|
322
|
-
- `remote-control`
|
|
323
|
-
- `remote-env`
|
|
324
|
-
- `rename`
|
|
325
|
-
- `research`
|
|
326
|
-
- `resume`
|
|
327
|
-
- `review` / `ultrareview`
|
|
328
|
-
- `rewind`
|
|
329
|
-
- `role-mode`
|
|
330
|
-
- `route`
|
|
331
|
-
- `sandbox`
|
|
332
|
-
- `safety`
|
|
333
|
-
- `scope`
|
|
334
|
-
- `sdk`
|
|
335
|
-
- `search`
|
|
336
|
-
- `security`
|
|
337
|
-
- `security-review`
|
|
338
|
-
- `semantic-memory`
|
|
339
|
-
- `session`
|
|
340
|
-
- `skills`
|
|
341
|
-
- `spec`
|
|
342
|
-
- `stability`
|
|
343
|
-
- `stats`
|
|
344
|
-
- `status`
|
|
345
|
-
- `statusline`
|
|
346
|
-
- `summarize`
|
|
347
|
-
- `tag`
|
|
348
|
-
- `tasks`
|
|
349
|
-
- `terminal-setup`
|
|
350
|
-
- `theme`
|
|
351
|
-
- `think-back` / `thinkback-play`
|
|
352
|
-
- `threat-model`
|
|
353
|
-
- `toolsmith`
|
|
354
|
-
- `trace`
|
|
355
|
-
- `trigger`
|
|
356
|
-
- `upgrade`
|
|
357
|
-
- `ur-doctor`
|
|
358
|
-
- `ur-init`
|
|
359
|
-
- `usage`
|
|
360
|
-
- `verify`
|
|
361
|
-
- `video`
|
|
362
|
-
- `vim`
|
|
363
|
-
- `voice`
|
|
364
|
-
- `vuln`
|
|
365
|
-
- `web-setup`
|
|
366
|
-
- `workflow`
|
|
367
|
-
- `workspace`
|
|
368
|
-
- `youtube`
|
|
369
|
-
|
|
370
|
-
Internal-only command stubs or restricted commands in the registry include
|
|
371
|
-
backfill sessions, break cache, bughunter, commit, commit/push/PR, context
|
|
372
|
-
visualization, good UR, issue, init verifiers, force snip, mock limits, bridge
|
|
373
|
-
kick, version, ultraplan, subscribe PR, reset limits, onboarding, share,
|
|
374
|
-
summary, teleport, trace/debug helpers, perf issue, env, OAuth refresh,
|
|
375
|
-
debug-tool-call, agents platform, and autofix PR.
|
|
376
|
-
|
|
377
|
-
Remote-safe slash commands are limited to session, exit, clear, help, theme,
|
|
378
|
-
color, vim, cost, usage, copy, btw, feedback, plan, keybindings, and
|
|
379
|
-
statusline.
|
|
380
|
-
|
|
381
|
-
Bridge-safe local commands include compact, clear, cost, summary,
|
|
382
|
-
release-notes, and files. Prompt commands are allowed in the bridge path, while
|
|
383
|
-
local JSX commands are blocked.
|
|
384
|
-
|
|
385
|
-
## Conversation loop features
|
|
386
|
-
|
|
387
|
-
- Maintains an assistant/user/tool message loop in `src/query.ts`.
|
|
388
|
-
- Streams assistant output and tool-use events.
|
|
389
|
-
- Executes tool calls through streaming and non-streaming orchestration.
|
|
390
|
-
- Supports parallel tool calls where the model emits them.
|
|
391
|
-
- Validates and repairs missing tool result blocks.
|
|
392
|
-
- Tracks tool-use summaries.
|
|
393
|
-
- Enforces turn limits and task budgets.
|
|
394
|
-
- Handles retryable API/model errors.
|
|
395
|
-
- Supports fallback models.
|
|
396
|
-
- Handles token-budget continuation.
|
|
397
|
-
- Applies tool result output budgets and content replacement.
|
|
398
|
-
- Supports large-output persistence and references.
|
|
399
|
-
- Performs auto-compaction and micro-compaction.
|
|
400
|
-
- Supports session-memory compaction.
|
|
401
|
-
- Supports post-compact cleanup.
|
|
402
|
-
- Has a disabled/stubbed context-collapse service in this build.
|
|
403
|
-
- Handles prompt-too-long recovery when feature-gated.
|
|
404
|
-
- Supports stop hooks and post-sampling hooks.
|
|
405
|
-
- Tracks verifier state and can inject reminders.
|
|
406
|
-
- Supports structured JSON output through a synthetic output tool.
|
|
407
|
-
|
|
408
|
-
## Prompt and behavioral system
|
|
409
|
-
|
|
410
|
-
The system prompt source in `src/constants/prompts.ts` includes:
|
|
411
|
-
|
|
412
|
-
- UR identity as a coding agent.
|
|
413
|
-
- Concise terminal-oriented output rules.
|
|
414
|
-
- Code editing expectations.
|
|
415
|
-
- Tool-use discipline and preference for file tools over shell ad hoc edits.
|
|
416
|
-
- Planning guidance for multi-step tasks.
|
|
417
|
-
- Guidance for using subagents.
|
|
418
|
-
- Guidance for invoking skills.
|
|
419
|
-
- Optional verification contract.
|
|
420
|
-
- Cyber-safety risk guidance.
|
|
421
|
-
- Hook instructions.
|
|
422
|
-
- MCP instructions.
|
|
423
|
-
- Memory instructions.
|
|
424
|
-
- Language and output-style customization.
|
|
425
|
-
- System reminders.
|
|
426
|
-
- Token-budget instructions.
|
|
427
|
-
- Brief/proactive sections.
|
|
428
|
-
- Scratchpad and function-result clearing sections.
|
|
429
|
-
|
|
430
|
-
For Ollama-backed providers, the prompt adds stricter instructions around:
|
|
431
|
-
|
|
432
|
-
- using structured tool calls rather than raw JSON/tool XML
|
|
433
|
-
- using `Write` and `Edit` for file changes
|
|
434
|
-
- preferring parallel tool calls
|
|
435
|
-
- planning before larger tasks
|
|
436
|
-
- stopping repeated failing calls
|
|
437
|
-
- verifying before claiming completion
|
|
438
|
-
- responding to command failures
|
|
439
|
-
- avoiding empty responses
|
|
440
|
-
|
|
441
|
-
`UR_CODE_SIMPLE` replaces this with a minimal prompt containing identity, cwd,
|
|
442
|
-
and date.
|
|
443
|
-
|
|
444
|
-
## Built-in tools
|
|
445
|
-
|
|
446
|
-
Tool assembly is centralized in `src/tools.ts`. Availability depends on mode,
|
|
447
|
-
feature flags, user type, MCP, and settings.
|
|
448
|
-
|
|
449
|
-
Core tools:
|
|
450
|
-
|
|
451
|
-
- `Bash`: run shell commands with permissions, sandbox checks, timeout,
|
|
452
|
-
background execution, read-only auto-approval heuristics, destructive command
|
|
453
|
-
warnings, output truncation/persistence, image output handling, git operation
|
|
454
|
-
tracking, and UI collapsing for common read/search commands.
|
|
455
|
-
- `PowerShell`: PowerShell command execution with similar permission,
|
|
456
|
-
path-safety, destructive-warning, and constrained-language checks.
|
|
457
|
-
- `Read`: read text files, selected line ranges, images, notebooks, and PDF
|
|
458
|
-
page ranges; blocks binary or risky device paths; enforces size/token limits;
|
|
459
|
-
tracks reads before edits.
|
|
460
|
-
- `Edit`: replace exact strings in files after prior read; validates paths,
|
|
461
|
-
permissions, concurrent modifications, max file size, and secret exposure;
|
|
462
|
-
records diffs/history.
|
|
463
|
-
- `Write`: create or overwrite files; requires prior read for existing files;
|
|
464
|
-
validates permissions and unexpected modifications; records diffs/history.
|
|
465
|
-
- `NotebookEdit`: edit notebook cells.
|
|
466
|
-
- `Glob`: find files by glob pattern.
|
|
467
|
-
- `Grep`: search file contents with optimized ripgrep-backed behavior.
|
|
468
|
-
- `CodeSearch`: semantic code search through a local embedding index.
|
|
469
|
-
- `WebFetch`: fetch a URL and run a prompt over retrieved content.
|
|
470
|
-
- `WebSearch`: web search through the configured model/tool backend.
|
|
471
|
-
- `TodoWrite`: maintain conversation-local todo state.
|
|
472
|
-
- `Agent`: launch subagents synchronously or in the background; supports custom
|
|
473
|
-
agents, built-in agents, plugin agents, MCP requirements, worktree isolation,
|
|
474
|
-
remote mode, permission modes, cwd, background output files, teams, memory,
|
|
475
|
-
and model overrides.
|
|
476
|
-
- `TaskOutput`: read background task output. Deprecated in favor of reading the
|
|
477
|
-
output file directly.
|
|
478
|
-
- `TaskStop`: stop background tasks.
|
|
479
|
-
- `TaskCreate`, `TaskGet`, `TaskUpdate`, `TaskList`: task-list v2 tools for
|
|
480
|
-
tracked work items, ownership, status, and blockers.
|
|
481
|
-
- `TeamCreate`, `TeamDelete`, `SendMessage`: multi-agent team coordination.
|
|
482
|
-
- `AskUserQuestion`: ask structured user questions from the agent loop.
|
|
483
|
-
- `EnterPlanMode` and `ExitPlanMode`: proposal/approval planning flow.
|
|
484
|
-
- `EnterWorktree` and `ExitWorktree`: enter or leave isolated worktree sessions.
|
|
485
|
-
- `Skill`: execute prompt-backed skills from local skills, bundled skills,
|
|
486
|
-
plugins, or MCP.
|
|
487
|
-
- `Brief`: send concise status messages or user-facing updates.
|
|
488
|
-
- `SendUserFile`: send a generated file to the user, feature-gated.
|
|
489
|
-
- `ListMcpResourcesTool` and `ReadMcpResourceTool`: enumerate and read MCP
|
|
490
|
-
resources.
|
|
491
|
-
- `ToolSearch`: deferred tool discovery over tool metadata.
|
|
492
|
-
- `Config`: read/write supported settings, internal-only in this build.
|
|
493
|
-
- `REPL`: internal REPL tooling.
|
|
494
|
-
- `Tungsten`: internal-only tooling.
|
|
495
|
-
- `SuggestBackgroundPR`: internal-only background PR suggestion.
|
|
496
|
-
- `LSP`: language-server diagnostics and symbol context, feature-gated.
|
|
497
|
-
- `WorkflowTool`: workflow execution helper, feature-gated.
|
|
498
|
-
- `CronCreate`, `CronDelete`, `CronList`: schedule recurring tasks,
|
|
499
|
-
feature-gated.
|
|
500
|
-
- `RemoteTrigger`: trigger remote runs, feature-gated.
|
|
501
|
-
- `Monitor`: monitoring helper, feature-gated or stubbed depending on build.
|
|
502
|
-
- `Sleep`: wait/sleep tool.
|
|
503
|
-
- `PushNotification`: push notifications, feature-gated.
|
|
504
|
-
- `SubscribePR`: subscribe to PR changes, feature-gated/internal.
|
|
505
|
-
- `Snip`: snip tool, feature-gated/internal.
|
|
506
|
-
- `WebBrowserTool`, `CtxInspectTool`, `TerminalCaptureTool`: present as
|
|
507
|
-
tool surfaces but stubbed or disabled in this build.
|
|
508
|
-
- `StructuredOutput`: synthetic tool used for JSON-schema output.
|
|
509
|
-
- `mcp__<server>__<tool>`: dynamically assembled MCP server tools.
|
|
510
|
-
|
|
511
|
-
Simple/bare mode keeps the tool set narrow, generally `Bash`, `Read`, and
|
|
512
|
-
`Edit`, with REPL mode substituting `REPL` where applicable.
|
|
513
|
-
|
|
514
|
-
## Built-in agents
|
|
515
|
-
|
|
516
|
-
Built-in agents live under `src/tools/AgentTool/built-in`:
|
|
517
|
-
|
|
518
|
-
- `general-purpose`: broad-purpose subagent with all tools.
|
|
519
|
-
- `Explore`: read/search-only exploration agent, no file writes.
|
|
520
|
-
- `plan`: planning agent for implementation designs, no file writes.
|
|
521
|
-
- `verification`: adversarial verification agent for checking tests, builds,
|
|
522
|
-
browser behavior, and task completion.
|
|
523
|
-
- `statusline-setup`: statusline configuration agent with read/edit tools.
|
|
524
|
-
- `urCodeGuide`: UR documentation and guide agent with read/search/web tools.
|
|
525
|
-
|
|
526
|
-
Custom agents can be loaded from user, project, managed, flag, or plugin
|
|
527
|
-
sources. Agent definitions can configure:
|
|
528
|
-
|
|
529
|
-
- description
|
|
530
|
-
- tool allowlist
|
|
531
|
-
- disallowed tools
|
|
532
|
-
- prompt
|
|
533
|
-
- model
|
|
534
|
-
- effort
|
|
535
|
-
- permission mode
|
|
536
|
-
- required MCP servers
|
|
537
|
-
- hooks
|
|
538
|
-
- max turns
|
|
539
|
-
- skills
|
|
540
|
-
- initial prompt
|
|
541
|
-
- memory
|
|
542
|
-
- background behavior
|
|
543
|
-
- isolation mode
|
|
544
|
-
|
|
545
|
-
Agent resolution considers built-ins, plugins, user settings, project settings,
|
|
546
|
-
CLI-provided agents, and managed settings.
|
|
547
|
-
|
|
548
|
-
## Agent-platform features
|
|
549
|
-
|
|
550
|
-
The `src/services/agents/**` area implements a large set of higher-level agent
|
|
551
|
-
systems:
|
|
552
|
-
|
|
553
|
-
- A2A server and Agent Card metadata, with task submit/list/status/output/cancel
|
|
554
|
-
routes backed by local background tasks.
|
|
555
|
-
- Background-agent runner under `.ur/background`, including stream-json stdin
|
|
556
|
-
injection for live artifact steering.
|
|
557
|
-
- HMAC-based attenuated A2A delegation tokens with audience, subject, scope,
|
|
558
|
-
and TTL.
|
|
559
|
-
- Arena/best-of workflow: run multiple agents in isolated worktrees, judge
|
|
560
|
-
diffs, optionally apply the winner.
|
|
561
|
-
- Reviewable artifacts under `.ur/artifacts`.
|
|
562
|
-
- IDE diff bundles under `.ur/ide/diffs` plus the
|
|
563
|
-
`extensions/vscode-ur-inline-diffs` native VS Code review extension.
|
|
564
|
-
- Benchmark adapters that import local SWE-bench, Terminal-Bench, and Aider
|
|
565
|
-
Polyglot JSON/JSONL exports into UR eval suites.
|
|
566
|
-
- CI loop: run build/test commands, capture failures, spawn a fix agent, rerun
|
|
567
|
-
with bounded attempts, optionally commit/push.
|
|
568
|
-
- Crew mode: lead agent decomposes a goal into a shared task board that worker
|
|
569
|
-
agents claim and execute.
|
|
570
|
-
- Long-horizon goals persisted across sessions.
|
|
571
|
-
- Spec-driven development under `.ur/specs`.
|
|
572
|
-
- Declarative workflows with steps, dependencies, gates, resume state, and
|
|
573
|
-
graph rendering.
|
|
574
|
-
- Live workflow board.
|
|
575
|
-
- Scheduler service for automations through launchd, systemd, cron, or daemon
|
|
576
|
-
mode.
|
|
577
|
-
- Knowledge base with source provenance, chunking, dense embeddings, search,
|
|
578
|
-
list, prune, and status.
|
|
579
|
-
- Learning from artifact outcomes into model/category success stats and
|
|
580
|
-
lessons.
|
|
581
|
-
- Local model routing based on capability fit.
|
|
582
|
-
- Intent routing for task category, agent choice, and collaboration pattern.
|
|
583
|
-
- Multi-agent collaboration patterns such as PEER and DOE.
|
|
584
|
-
- Webhook trigger parsing for GitHub, Slack, and generic payloads.
|
|
585
|
-
- Execution target wrappers for local, Docker, and devcontainer execution.
|
|
586
|
-
- Eval harness with suites, cases, checks, reports, and replayable runs.
|
|
587
|
-
- Agent inspector for reconstructing subagent timelines from transcripts.
|
|
588
|
-
- Capability-aware model escalation between fast and oracle models.
|
|
589
|
-
- Feature scaffold and reusable agent-template installation.
|
|
590
|
-
|
|
591
|
-
## Memory and project knowledge
|
|
592
|
-
|
|
593
|
-
- User/project/team memory loading.
|
|
594
|
-
- Relevant memory scan.
|
|
595
|
-
- Conversation/session memory compaction.
|
|
596
|
-
- Memory extraction from sessions.
|
|
597
|
-
- Auto-dream background memory consolidation.
|
|
598
|
-
- Team memory sync.
|
|
599
|
-
- Secret scanning and guards for team memory writes.
|
|
600
|
-
- Memory commands:
|
|
601
|
-
- remember
|
|
602
|
-
- forget
|
|
603
|
-
- memory
|
|
604
|
-
- semantic-memory
|
|
605
|
-
- knowledge
|
|
606
|
-
- Lightweight project file operations under `src/ur/fileops.ts`:
|
|
607
|
-
- read project files
|
|
608
|
-
- search text-like files
|
|
609
|
-
- maintain `.ur/index/files.txt`
|
|
610
|
-
- Project DNA generation under `src/ur/projectDna.ts`:
|
|
611
|
-
- language detection
|
|
612
|
-
- package manager detection
|
|
613
|
-
- build/test/lint/run command detection, with Node/TypeScript typecheck
|
|
614
|
-
scripts treated as compile evidence
|
|
615
|
-
- key folders
|
|
616
|
-
- git/readme context
|
|
617
|
-
- `.ur/project_dna.md`
|
|
618
|
-
- Project notes and research graph helpers under `src/ur/**`.
|
|
619
|
-
|
|
620
|
-
## Verification and quality gates
|
|
621
|
-
|
|
622
|
-
The verifier service in `src/services/verifier/**` includes:
|
|
623
|
-
|
|
624
|
-
- L1 deterministic verifier enabled by default unless disabled by env.
|
|
625
|
-
- Modes:
|
|
626
|
-
- `off`
|
|
627
|
-
- `loose`
|
|
628
|
-
- `strict`
|
|
629
|
-
- Empty-turn detection.
|
|
630
|
-
- Done-claim detection against actual tool/mutation evidence.
|
|
631
|
-
- Project gates from `.ur/verify.json`.
|
|
632
|
-
- Test-first execution loop under `src/services/agents/testFirstLoop.ts`:
|
|
633
|
-
- automatic stack and command detection
|
|
634
|
-
- compile/test/lint command ordering
|
|
635
|
-
- bounded fix-runner retries
|
|
636
|
-
- failure traces under `.ur/test-first/traces/`
|
|
637
|
-
- gate installation into `.ur/verify.json`
|
|
638
|
-
- Project context pack under `src/services/context/projectContextManifest.ts`:
|
|
639
|
-
- manifest generation from package scripts, Project DNA, instruction files,
|
|
640
|
-
`.ur/verify.json`, `.ur/safety-policy.json`, and other project manifests
|
|
641
|
-
- architecture summary under `.ur/context/architecture.md`
|
|
642
|
-
- task memory JSONL for decisions, constraints, commands, diffs, and notes
|
|
643
|
-
- compressed task context under `.ur/context/compressed.md`
|
|
644
|
-
- Loop detection.
|
|
645
|
-
- Rejection cap.
|
|
646
|
-
- Optional L2 verification subagent through env opt-in.
|
|
647
|
-
- Manual deeper verification through `/verify`.
|
|
648
|
-
- Verifier reminders injected back into the conversation loop.
|
|
649
|
-
|
|
650
|
-
## Permissions and sandboxing
|
|
651
|
-
|
|
652
|
-
Permission modes:
|
|
653
|
-
|
|
654
|
-
- `default`
|
|
655
|
-
- `plan`
|
|
656
|
-
- `acceptEdits`
|
|
657
|
-
- `bypassPermissions`
|
|
658
|
-
- `dontAsk`
|
|
659
|
-
- `auto`, feature-gated
|
|
660
|
-
|
|
661
|
-
Permission features:
|
|
662
|
-
|
|
663
|
-
- Tool-level allow, deny, and ask rules.
|
|
664
|
-
- Project shell safety policy under `src/services/safety/projectSafety.ts`.
|
|
665
|
-
- Command permission classes: read, write, execute, and network.
|
|
666
|
-
- `ur safety check --command <cmd>` previews safety behavior before execution.
|
|
667
|
-
- Bash command permission checks consult the project safety policy before broad
|
|
668
|
-
sandbox auto-allow and exact allow rules.
|
|
669
|
-
- Destructive commands such as recursive remove, hard reset, git clean, forced
|
|
670
|
-
push, recursive chmod/chown, filesystem formatting, infrastructure destroy,
|
|
671
|
-
and cluster delete require approval.
|
|
672
|
-
- Secret exfiltration patterns deny common secret-file reads into transcript
|
|
673
|
-
and likely secret values sent to remote sinks.
|
|
674
|
-
- MCP server/tool permission rules.
|
|
675
|
-
- CLI, command, session, user, project, local, and managed setting sources.
|
|
676
|
-
- Permission request hooks.
|
|
677
|
-
- Permission-denial tracking.
|
|
678
|
-
- Auto-mode classifier integration when gated.
|
|
679
|
-
- Dangerous Bash/PowerShell rule detection.
|
|
680
|
-
- Auto-mode stripping of dangerous rules.
|
|
681
|
-
- Additional directory validation.
|
|
682
|
-
- Security restriction gates.
|
|
683
|
-
|
|
684
|
-
Sandbox configuration supports:
|
|
685
|
-
|
|
686
|
-
- enabled/disabled state
|
|
687
|
-
- fail-if-unavailable
|
|
688
|
-
- automatic Bash approval when sandboxed
|
|
689
|
-
- explicit unsandboxed command allowances
|
|
690
|
-
- network allowed domains
|
|
691
|
-
- managed-only network controls
|
|
692
|
-
- Unix socket controls
|
|
693
|
-
- local binding controls
|
|
694
|
-
- proxy ports
|
|
695
|
-
- filesystem read/write allow and deny rules
|
|
696
|
-
- ignored violations
|
|
697
|
-
- weaker nested/network isolation flags
|
|
698
|
-
- excluded commands
|
|
699
|
-
- custom ripgrep behavior
|
|
700
|
-
|
|
701
|
-
## MCP integration
|
|
702
|
-
|
|
703
|
-
MCP features:
|
|
704
|
-
|
|
705
|
-
- CLI management through `ur mcp`.
|
|
706
|
-
- MCP stdio server via `src/entrypoints/mcp.ts`.
|
|
707
|
-
- Exposes built-in tools through MCP.
|
|
708
|
-
- Converts Zod schemas to JSON schema for MCP tools.
|
|
709
|
-
- Runs tools in non-interactive context with normal permission checks.
|
|
710
|
-
- Server scopes:
|
|
711
|
-
- local
|
|
712
|
-
- user
|
|
713
|
-
- project
|
|
714
|
-
- dynamic
|
|
715
|
-
- enterprise
|
|
716
|
-
- urai
|
|
717
|
-
- managed
|
|
718
|
-
- Transports:
|
|
719
|
-
- stdio
|
|
720
|
-
- SSE
|
|
721
|
-
- HTTP
|
|
722
|
-
- WebSocket
|
|
723
|
-
- SDK/in-process
|
|
724
|
-
- IDE variants
|
|
725
|
-
- UR.ai proxy
|
|
726
|
-
- Config support:
|
|
727
|
-
- command/args/env
|
|
728
|
-
- URL/headers
|
|
729
|
-
- headers helper
|
|
730
|
-
- OAuth
|
|
731
|
-
- client IDs and client secrets
|
|
732
|
-
- callback ports
|
|
733
|
-
- auth server metadata URL
|
|
734
|
-
- XAA identity-provider settings, feature-gated
|
|
735
|
-
- Connection states:
|
|
736
|
-
- connected
|
|
737
|
-
- failed
|
|
738
|
-
- needs auth
|
|
739
|
-
- pending
|
|
740
|
-
- disabled
|
|
741
|
-
- MCP resources and prompt commands.
|
|
742
|
-
- Official registry lookup/cache.
|
|
743
|
-
- Environment variable expansion.
|
|
744
|
-
- Channel allowlists, permissions, and notifications.
|
|
745
|
-
- Elicitation handling.
|
|
746
|
-
- VS Code SDK MCP support.
|
|
747
|
-
- Tool normalization as `mcp__server__tool`.
|
|
748
|
-
|
|
749
|
-
## Hooks
|
|
750
|
-
|
|
751
|
-
Hook events include:
|
|
752
|
-
|
|
753
|
-
- `PreToolUse`
|
|
754
|
-
- `PostToolUse`
|
|
755
|
-
- `PostToolUseFailure`
|
|
756
|
-
- `Notification`
|
|
757
|
-
- `UserPromptSubmit`
|
|
758
|
-
- `SessionStart`
|
|
759
|
-
- `SessionEnd`
|
|
760
|
-
- `Stop`
|
|
761
|
-
- `StopFailure`
|
|
762
|
-
- `SubagentStart`
|
|
763
|
-
- `SubagentStop`
|
|
764
|
-
- `PreCompact`
|
|
765
|
-
- `PostCompact`
|
|
766
|
-
- `PermissionRequest`
|
|
767
|
-
- `PermissionDenied`
|
|
768
|
-
- `Setup`
|
|
769
|
-
- `TeammateIdle`
|
|
770
|
-
- `TaskCreated`
|
|
771
|
-
- `TaskCompleted`
|
|
772
|
-
- `Elicitation`
|
|
773
|
-
- `ElicitationResult`
|
|
774
|
-
- `ConfigChange`
|
|
775
|
-
- `WorktreeCreate`
|
|
776
|
-
- `WorktreeRemove`
|
|
777
|
-
- `InstructionsLoaded`
|
|
778
|
-
- `CwdChanged`
|
|
779
|
-
- `FileChanged`
|
|
780
|
-
|
|
781
|
-
Hook command types:
|
|
782
|
-
|
|
783
|
-
- shell command hooks
|
|
784
|
-
- PowerShell hooks
|
|
785
|
-
- prompt/LLM hooks
|
|
786
|
-
- HTTP hooks
|
|
787
|
-
- agent/verifier hooks
|
|
788
|
-
|
|
789
|
-
Hook features:
|
|
790
|
-
|
|
791
|
-
- conditional `if` permission-rule filters
|
|
792
|
-
- timeouts
|
|
793
|
-
- status messages
|
|
794
|
-
- once-only hooks
|
|
795
|
-
- async command hooks
|
|
796
|
-
- async rewake behavior
|
|
797
|
-
- model selection for prompt/agent hooks
|
|
798
|
-
- HTTP headers and allowed environment variables
|
|
799
|
-
- exit-code semantics that can block, feed stderr to the model, erase prompts,
|
|
800
|
-
or decide permission requests depending on event type
|
|
801
|
-
|
|
802
|
-
## Security features
|
|
803
|
-
|
|
804
|
-
The `src/security/**` subsystem and related slash commands provide:
|
|
805
|
-
|
|
806
|
-
- Security command dispatcher.
|
|
807
|
-
- Source-code security audit.
|
|
808
|
-
- Secret scanning and redaction.
|
|
809
|
-
- Attack-surface mapping.
|
|
810
|
-
- Dependency inventory.
|
|
811
|
-
- OSV vulnerability audit.
|
|
812
|
-
- Dockerfile, Kubernetes, Terraform, and cloud/IaC audit.
|
|
813
|
-
- Threat modeling.
|
|
814
|
-
- Network snapshot and packet-capture summary helpers.
|
|
815
|
-
- Incident response collection.
|
|
816
|
-
- IR timeline support.
|
|
817
|
-
- Containment planning.
|
|
818
|
-
- Compliance reports.
|
|
819
|
-
- SSDF, CIS, ASVS, OWASP, CWE, and MITRE mappings.
|
|
820
|
-
- Playbooks.
|
|
821
|
-
- Local security labs.
|
|
822
|
-
- Hardening checks.
|
|
823
|
-
- Safe command runner.
|
|
824
|
-
- Policy/classifier helpers.
|
|
825
|
-
- Vulnerability-intelligence helpers.
|
|
826
|
-
- Web audit helpers.
|
|
827
|
-
|
|
828
|
-
Security slash-command families include:
|
|
829
|
-
|
|
830
|
-
- `/security`
|
|
831
|
-
- `/security-review`
|
|
832
|
-
- `/threat-model`
|
|
833
|
-
- `/vuln`
|
|
834
|
-
- `/ir`
|
|
835
|
-
- `/compliance`
|
|
836
|
-
- `/playbook`
|
|
837
|
-
- `/lab`
|
|
838
|
-
- `/harden`
|
|
839
|
-
- `/kali`
|
|
840
|
-
|
|
841
|
-
`/security` subcommands include scan, code, secrets, attack-surface,
|
|
842
|
-
dependencies, classify, status, rules, report, scope, mode, threat-model, vuln,
|
|
843
|
-
net, ir, attack, compliance, playbook(s), lab, secure-design, secure-api,
|
|
844
|
-
secure-ci, secure-docker, and secure-deploy.
|
|
845
|
-
|
|
846
|
-
## Plugins and marketplaces
|
|
847
|
-
|
|
848
|
-
Plugin loading supports:
|
|
849
|
-
|
|
850
|
-
- installed marketplace plugins
|
|
851
|
-
- session-only `--plugin-dir`
|
|
852
|
-
- plugin manifests
|
|
853
|
-
- plugin commands
|
|
854
|
-
- plugin agents
|
|
855
|
-
- plugin skills
|
|
856
|
-
- plugin templates
|
|
857
|
-
- plugin validators
|
|
858
|
-
- plugin hooks
|
|
859
|
-
- output styles
|
|
860
|
-
- MCP servers
|
|
861
|
-
- LSP servers
|
|
862
|
-
- language adapters
|
|
863
|
-
- marketplace capability metadata
|
|
864
|
-
- plugin settings
|
|
865
|
-
- duplicate-name handling
|
|
866
|
-
- enable/disable state
|
|
867
|
-
- trust warnings
|
|
868
|
-
- marketplace add/list/remove/update
|
|
869
|
-
- sparse marketplace checkouts
|
|
870
|
-
- cached marketplace installs
|
|
871
|
-
- versioned plugin cache
|
|
872
|
-
- seed caches
|
|
873
|
-
- zip caches
|
|
874
|
-
- legacy cache migration
|
|
875
|
-
- blocked marketplaces
|
|
876
|
-
- strict known-marketplace policy
|
|
877
|
-
- managed plugin settings
|
|
878
|
-
|
|
879
|
-
Bundled marketplace plugin families in `plugins/core/**`:
|
|
880
|
-
|
|
881
|
-
- code review
|
|
882
|
-
- evaluate response
|
|
883
|
-
- explain error
|
|
884
|
-
- git summary
|
|
885
|
-
- GitHub issues, PR creation, PR review, repo health, and GitHub workflow skill
|
|
886
|
-
- GitLab issues, merge request creation/review, pipeline, and GitLab workflow
|
|
887
|
-
skill
|
|
888
|
-
- hello example plugin
|
|
889
|
-
- Hugging Face model/dataset search, downloads, model cards, and HF workflow
|
|
890
|
-
skill
|
|
891
|
-
- Miro board, diagram, export, stickies, and Miro workflow skill
|
|
892
|
-
- Obsidian backlinks, daily notes, MOC, second brain, vault search, and second
|
|
893
|
-
brain skill
|
|
894
|
-
- PowerPoint deck creation, markdown-to-deck, review, theme, and deck-craft
|
|
895
|
-
skill
|
|
896
|
-
- release notes
|
|
897
|
-
- reproducible release discipline, release-gate validator, release verifier
|
|
898
|
-
template, and Markdown language-adapter metadata
|
|
899
|
-
- skill forge and skill authoring
|
|
900
|
-
- Word document creation, markdown-to-docx, edit, review, and document-craft
|
|
901
|
-
skill
|
|
902
|
-
|
|
903
|
-
## Configuration features
|
|
904
|
-
|
|
905
|
-
The Config tool supports these settings where available:
|
|
906
|
-
|
|
907
|
-
- `theme`
|
|
908
|
-
- `editorMode`
|
|
909
|
-
- `verbose`
|
|
910
|
-
- `preferredNotifChannel`
|
|
911
|
-
- `autoCompactEnabled`
|
|
912
|
-
- `autoMemoryEnabled`
|
|
913
|
-
- `autoDreamEnabled`
|
|
914
|
-
- `fileCheckpointingEnabled`
|
|
915
|
-
- `showTurnDuration`
|
|
916
|
-
- `terminalProgressBarEnabled`
|
|
917
|
-
- `todoFeatureEnabled`
|
|
918
|
-
- `model`
|
|
919
|
-
- `alwaysThinkingEnabled`
|
|
920
|
-
- `permissions.defaultMode`
|
|
921
|
-
- `language`
|
|
922
|
-
- `teammateMode`
|
|
923
|
-
- `classifierPermissionsEnabled`, internal-only
|
|
924
|
-
- `voiceEnabled`, feature-gated
|
|
925
|
-
- `remoteControlAtStartup`, feature-gated
|
|
926
|
-
- push-notification settings, feature-gated
|
|
927
|
-
|
|
928
|
-
The broader settings schema also covers:
|
|
929
|
-
|
|
930
|
-
- environment variables
|
|
931
|
-
- API-key helpers
|
|
932
|
-
- AWS/GCP auth refresh
|
|
933
|
-
- XAA identity-provider settings
|
|
934
|
-
- file suggestions
|
|
935
|
-
- gitignore behavior
|
|
936
|
-
- cleanup retention
|
|
937
|
-
- attribution
|
|
938
|
-
- git instructions
|
|
939
|
-
- permission allow/deny/ask/default mode/additional dirs
|
|
940
|
-
- model lists and model overrides
|
|
941
|
-
- MCP allow/deny/project approvals
|
|
942
|
-
- hooks
|
|
943
|
-
- worktree symlink and sparse settings
|
|
944
|
-
- hook disabling
|
|
945
|
-
- default shell
|
|
946
|
-
- managed-only hooks, permissions, and MCP settings
|
|
947
|
-
- HTTP hook URL/env policies
|
|
948
|
-
- strict plugin-only customization
|
|
949
|
-
- statusline command
|
|
950
|
-
- enabled plugins
|
|
951
|
-
- extra marketplaces
|
|
952
|
-
- marketplace blocklists
|
|
953
|
-
- authentication organization/method
|
|
954
|
-
- output style
|
|
955
|
-
- language
|
|
956
|
-
- sandbox settings
|
|
957
|
-
- surveys
|
|
958
|
-
- spinner
|
|
959
|
-
- syntax highlighting
|
|
960
|
-
- terminal title
|
|
961
|
-
- thinking and effort
|
|
962
|
-
- advisor
|
|
963
|
-
- fast mode
|
|
964
|
-
- prompt suggestions
|
|
965
|
-
- agent settings
|
|
966
|
-
- company announcements
|
|
967
|
-
- plugin config
|
|
968
|
-
- remote defaults
|
|
969
|
-
- auto updates/channels
|
|
970
|
-
- reduced motion
|
|
971
|
-
- auto memory and auto dream
|
|
972
|
-
- dangerous-mode prompts
|
|
973
|
-
- auto-mode config
|
|
974
|
-
- SSH configs
|
|
975
|
-
- UR.md excludes
|
|
976
|
-
- plugin trust message state
|
|
977
|
-
|
|
978
|
-
## Model/provider behavior
|
|
979
|
-
|
|
980
|
-
- This external build supports legal provider adapters for subscription CLIs,
|
|
981
|
-
explicit API-key providers, and local/OpenAI-compatible runtimes.
|
|
982
|
-
- The Ollama router inspects local models and classifies likely coding/fast
|
|
983
|
-
capabilities.
|
|
984
|
-
- Auto-routing is on by default through `UR_OLLAMA_AUTO_ROUTE`.
|
|
985
|
-
- Simple prompts can route to a faster model.
|
|
986
|
-
- Complex coding prompts can route to the best available coder model.
|
|
987
|
-
- Model doctor and model route commands expose capability reports and
|
|
988
|
-
recommendations.
|
|
989
|
-
- Embedding-backed features use local Ollama embeddings such as
|
|
990
|
-
`nomic-embed-text` where configured.
|
|
991
|
-
|
|
992
|
-
## UI and terminal experience
|
|
993
|
-
|
|
994
|
-
Terminal/UI features include:
|
|
995
|
-
|
|
996
|
-
- Ink/React interactive UI.
|
|
997
|
-
- Theming and color controls.
|
|
998
|
-
- Vim mode.
|
|
999
|
-
- Status line configuration.
|
|
1000
|
-
- Keybinding help.
|
|
1001
|
-
- Cost and usage displays.
|
|
1002
|
-
- Session browser and resume UI.
|
|
1003
|
-
- Compacting UI.
|
|
1004
|
-
- Permission prompts.
|
|
1005
|
-
- MCP approval UI.
|
|
1006
|
-
- Plugin management UI.
|
|
1007
|
-
- Install/setup flows.
|
|
1008
|
-
- Feedback and BTW commands.
|
|
1009
|
-
- Terminal setup.
|
|
1010
|
-
- Desktop, Chrome, IDE, remote environment, and OS integration commands.
|
|
1011
|
-
- Voice command surface, feature-gated.
|
|
1012
|
-
- Image/video/youtube command surfaces.
|
|
1013
|
-
|
|
1014
|
-
## SDK and embedding
|
|
1015
|
-
|
|
1016
|
-
`src/sdk/index.ts` exposes:
|
|
1017
|
-
|
|
1018
|
-
- `query`
|
|
1019
|
-
- `queryJSON`
|
|
1020
|
-
- `UrClient`
|
|
1021
|
-
- `parseResultText`
|
|
1022
|
-
|
|
1023
|
-
The SDK is intentionally small and dependency-free. It shells out to the local
|
|
1024
|
-
`ur` binary in print mode, uses JSON output, supports cwd/env/bin overrides, and
|
|
1025
|
-
can pass max turns, model, permission mode, and extra args.
|
|
1026
|
-
|
|
1027
|
-
## Documentation gaps this inventory exposes
|
|
1028
|
-
|
|
1029
|
-
The code includes many features that are easy to miss if reading only user docs:
|
|
1030
|
-
|
|
1031
|
-
- Agent-platform workflows, goals, specs, crews, arena, CI loop, artifacts,
|
|
1032
|
-
triggers, evals, and learning.
|
|
1033
|
-
- A2A card/server/token support.
|
|
1034
|
-
- Rich hook event model.
|
|
1035
|
-
- Plugin marketplace and bundled plugin system.
|
|
1036
|
-
- Security audit, incident-response, compliance, and lab features.
|
|
1037
|
-
- Local knowledge, semantic memory, project DNA, and code-index subsystems.
|
|
1038
|
-
- Verifier and project gate logic.
|
|
1039
|
-
- Multiple remote/background/daemon/server modes.
|
|
1040
|
-
- MCP server mode that exposes UR tools to other clients.
|
|
1041
|
-
- Feature-gated browser, Chrome, computer-use, voice, push, cron, and remote
|
|
1042
|
-
features.
|