omnius 1.0.608 → 1.0.610
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/.aiwg/addons/omnius-docs/README.md +3 -1
- package/.aiwg/addons/omnius-docs/manifest.json +4 -2
- package/.aiwg/addons/omnius-docs/skills/omnius-agent-onboarding/SKILL.md +70 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-docs/SKILL.md +8 -4
- package/.aiwg/addons/omnius-rest-docs/README.md +2 -1
- package/.aiwg/addons/omnius-rest-docs/skills/omnius-rest-docs/SKILL.md +5 -3
- package/README.md +352 -108
- package/dist/discovery.d.ts +55 -2
- package/dist/index.js +8345 -6382
- package/dist/library.d.ts +2 -2
- package/dist/library.js +67 -7
- package/dist/scripts/vibevoice-asr-worker.py +195 -0
- package/dist/update-worker.js +211 -5
- package/docs/.vitepress/config.mts +3 -0
- package/docs/DISCOVERY.json +27446 -6695
- package/docs/DISCOVERY.md +437 -330
- package/docs/architecture/agent-system-map.md +176 -0
- package/docs/architecture/overview.md +5 -0
- package/docs/discovery/agent-map.json +119 -0
- package/docs/getting-started/install.md +1 -1
- package/docs/guides/agent-integration.md +69 -7
- package/docs/guides/dashboard.md +170 -0
- package/docs/guides/system-tray.md +28 -0
- package/docs/index.md +4 -1
- package/docs/reference/configuration.md +10 -0
- package/docs/reference/rest-api.md +161 -8
- package/docs/reference/slash-commands.md +31 -3
- package/docs/rest/INDEX.md +11 -10
- package/docs/rest/QUICKREF.md +39 -0
- package/docs/rest/endpoints/chat.md +24 -1
- package/docs/rest/endpoints/config.md +8 -1
- package/docs/rest/endpoints/discovery.md +21 -3
- package/docs/rest/endpoints/files.md +7 -2
- package/docs/rest/endpoints/memory.md +4 -0
- package/docs/rest/endpoints/run.md +17 -4
- package/docs/rest/endpoints/voice-vision.md +22 -5
- package/npm-shrinkwrap.json +2 -2
- package/package.json +6 -3
- package/templates/OMNIUS.md +29 -5
- package/voices/personaplex/quantize-weights.py +0 -167
package/README.md
CHANGED
|
@@ -37,8 +37,10 @@ omnius tray install
|
|
|
37
37
|
omnius tray status
|
|
38
38
|
```
|
|
39
39
|
|
|
40
|
-
The per-login indicator observes the daemon over loopback and
|
|
41
|
-
dashboard, logs, and explicit daemon
|
|
40
|
+
The per-login indicator observes the daemon over loopback, checks health and npm
|
|
41
|
+
updates every 10 seconds, and provides dashboard, logs, and explicit daemon
|
|
42
|
+
controls. Its version row is passive when current and becomes a verified global
|
|
43
|
+
update action only when a newer exact semver is available. See the
|
|
42
44
|
[system tray guide](docs/guides/system-tray.md), including Ubuntu/GNOME setup.
|
|
43
45
|
|
|
44
46
|
## Agent Discovery
|
|
@@ -49,6 +51,9 @@ which endpoint owns a capability:
|
|
|
49
51
|
|
|
50
52
|
```bash
|
|
51
53
|
omnius discover "bring your own inference"
|
|
54
|
+
omnius show workflow.choose-entrypoint
|
|
55
|
+
omnius show layer.orchestration
|
|
56
|
+
omnius show store.project
|
|
52
57
|
omnius show provider.anthropic
|
|
53
58
|
omnius show provider.gemini
|
|
54
59
|
omnius show tool.web-search
|
|
@@ -57,14 +62,15 @@ omnius show capability.osint-research
|
|
|
57
62
|
omnius capabilities --json
|
|
58
63
|
```
|
|
59
64
|
|
|
60
|
-
With the daemon running,
|
|
61
|
-
`GET /v1/discovery`, with exact entry expansion at
|
|
65
|
+
With the daemon running, begin at `GET /v1/discovery/bootstrap`. The same
|
|
66
|
+
discovery cascade is available at `GET /v1/discovery`, with exact entry expansion at
|
|
62
67
|
`GET /v1/discovery/{id}`. The live API contract remains available at
|
|
63
68
|
`/openapi.json`, direct tool metadata at `/v1/tools`, and skills at
|
|
64
69
|
`/v1/skills`.
|
|
65
70
|
|
|
66
71
|
Start with [the discovery guide](docs/DISCOVERY.md) when integrating another
|
|
67
|
-
agent or service
|
|
72
|
+
agent or service, and use the [agent system map](docs/architecture/agent-system-map.md)
|
|
73
|
+
to trace layers, modules, runtimes, and state ownership. Use [bring-your-own inference](docs/guides/bring-your-own-inference.md)
|
|
68
74
|
for provider protocols and keys, and [tools and web search](docs/guides/tools-and-web-search.md)
|
|
69
75
|
for the distinction between direct tools and agent-bound tools. The
|
|
70
76
|
[categorized OSINT research guide](docs/guides/osint-research.md) documents
|
|
@@ -91,7 +97,14 @@ omnius serve
|
|
|
91
97
|
/help command help
|
|
92
98
|
/model select or inspect the active model
|
|
93
99
|
/endpoint select or configure local, cloud, sponsor, or peer endpoints
|
|
100
|
+
/title name the current session
|
|
94
101
|
/realtime toggle short ASR/TTS-oriented conversation mode
|
|
102
|
+
/voice choose TTS, voice-clone, voicechat, and ASR controls
|
|
103
|
+
/voice asr select, set up, activate, or test an exact ASR engine/model
|
|
104
|
+
/indicator reconcile the daemon, then start the native tray indicator
|
|
105
|
+
/update check force an update availability check
|
|
106
|
+
/update quick run the verified global update with live TUI progress
|
|
107
|
+
/update full run the full clean/build/install/restart verification flow
|
|
95
108
|
/broker inspect model broker, RAM/VRAM thresholds, and loaded models
|
|
96
109
|
/sponsor expose local or upstream capacity to peers
|
|
97
110
|
/cohere participate in distributed COHERE inference
|
|
@@ -111,9 +124,11 @@ omnius serve
|
|
|
111
124
|
| Bring your own inference | [Provider protocols and keys](docs/guides/bring-your-own-inference.md) |
|
|
112
125
|
| Tools and web search | [Tool discovery and invocation](docs/guides/tools-and-web-search.md) |
|
|
113
126
|
| Terminal workflows | [TUI workflows](docs/guides/tui-workflows.md), [Slash commands](docs/reference/slash-commands.md) |
|
|
127
|
+
| Web dashboard | [All dashboard routes, workspaces, sessions, Voice, Generate, updates, and observability](docs/guides/dashboard.md) |
|
|
114
128
|
| REST daemon | [REST reference](docs/reference/rest-api.md), [REST quickref](docs/rest/QUICKREF.md), [OpenAPI source](docs/rest/openapi-source.md) |
|
|
115
129
|
| System tray | [Cross-platform tray and Ubuntu setup](docs/guides/system-tray.md) |
|
|
116
130
|
| Realtime voice chat | [Realtime guide](docs/guides/realtime.md) |
|
|
131
|
+
| TTS and selectable ASR | [Voice/vision REST guide](docs/rest/endpoints/voice-vision.md), [Dashboard Voice page](docs/guides/dashboard.md#voice-and-asr) |
|
|
117
132
|
| Sponsor and COHERE mesh | [Sponsor and COHERE guide](docs/guides/sponsor-and-cohere.md) |
|
|
118
133
|
| Telegram bridge | [Telegram guide](docs/guides/telegram.md) |
|
|
119
134
|
| Media generation | [Media guide](docs/guides/media-generation.md) |
|
|
@@ -122,6 +137,40 @@ omnius serve
|
|
|
122
137
|
| Architecture | [Architecture overview](docs/architecture/overview.md) |
|
|
123
138
|
| Agent-explorable docs | [Agent memory docs index](docs/agent-memory/INDEX.md) |
|
|
124
139
|
|
|
140
|
+
## Web Dashboard
|
|
141
|
+
|
|
142
|
+
`omnius serve` exposes a self-contained operational dashboard at
|
|
143
|
+
`http://127.0.0.1:11435/`. All pages use the same compact NOCLIP-derived style
|
|
144
|
+
tokens and responsive observability-card grid, while keeping workspace, model,
|
|
145
|
+
session, run, service, and update state visible instead of hiding it behind
|
|
146
|
+
decorative pages.
|
|
147
|
+
|
|
148
|
+
| Route | Purpose |
|
|
149
|
+
| --- | --- |
|
|
150
|
+
| `/chat` (`/`) | Stateful browser and imported TUI chats, full-history hydration, live run recovery, attachments, files, plan/context, and steering check-ins |
|
|
151
|
+
| `/agent` | One-shot task contracts, personas/profiles, tool/isolation controls, run records, output, and events |
|
|
152
|
+
| `/voice` | Voicechat, exact TTS model/options, clone references, ASR engine/model setup and activation, real-file ASR testing, transcript, and TTS testing |
|
|
153
|
+
| `/generate` | Image/video/audio/music jobs, AV analysis, model/store controls, relocation progress, and global gallery |
|
|
154
|
+
| `/projects` | Scan, register, rename, activate, and remove workspaces |
|
|
155
|
+
| `/dashboard` (`/jobs`) | CPU/RAM/GPU/VRAM, processes, scheduler, services, usage, and verified updates |
|
|
156
|
+
| `/activity` | Live run/tool/memory/engine event observability |
|
|
157
|
+
| `/discover` | Agent bootstrap, capability intent search, and exact entry expansion |
|
|
158
|
+
| `/settings` (`/config`) | Models, endpoints, voice, runtime, access, keys, appearance, and services |
|
|
159
|
+
|
|
160
|
+
The clickable sidebar brand opens the registered-workspace picker. Workspace
|
|
161
|
+
selection scopes preferences, files, session history, chat pins/folders/search,
|
|
162
|
+
and agent defaults. Chats, TUI visual history, and one-shot agent runs are
|
|
163
|
+
distinct records: `/quit`, `/exit`, manual-save noise, empty histories, and
|
|
164
|
+
duplicate TUI transcripts are rejected from the chat projection; selecting a
|
|
165
|
+
valid session loads its full history and in-flight status from the daemon.
|
|
166
|
+
|
|
167
|
+
The dashboard checks for updates every 10 seconds. An update button appears only
|
|
168
|
+
for a newer exact semver and drives `POST /v1/update`, then polls the durable
|
|
169
|
+
transaction until the global npm package, resolved executable, restarted daemon,
|
|
170
|
+
package/boot hashes, and tray runtime are reconciled. See the
|
|
171
|
+
[complete dashboard guide](docs/guides/dashboard.md) for state ownership,
|
|
172
|
+
security, page-by-page behavior, and exact REST flows.
|
|
173
|
+
|
|
125
174
|
## Shared Media Dependencies
|
|
126
175
|
|
|
127
176
|
Image, video, audio, and music generation share a **single, system-wide dependency store** instead of duplicating heavy runtimes per project or per Telegram group.
|
|
@@ -171,6 +220,11 @@ The same surface drives the **Generate** tab in the web UI (`http://127.0.0.1:11
|
|
|
171
220
|
|
|
172
221
|
## Recent Highlights
|
|
173
222
|
|
|
223
|
+
- The dashboard now has nine route-level operational surfaces with shared modular observability grids, a searchable workspace picker, and project-scoped navigation state.
|
|
224
|
+
- Chat history unifies persisted browser sessions with quality-filtered TUI transcripts, rejects command/noise sessions such as `/quit`, hydrates full history on selection, and exposes summaries, follow-up suggestions, reactive live deltas, and canonical deletion.
|
|
225
|
+
- `/indicator` reconciles daemon ownership and health before launching the tray; the tray polls every 10 seconds and turns its version row into a retryable verified-update action only when an update exists.
|
|
226
|
+
- Dashboard, tray, and TUI update actions now share an exact-version global transaction with live phase/output and package, executable, daemon, hash, restart, and tray verification.
|
|
227
|
+
- TTS exposes GLaDOS, Overwatch, `luxtts:announcer-testchamber03`, and configurable Voicebox models; ASR independently exposes Whisper, managed `transcribe-cli`, Nemotron readiness, and pinned Microsoft VibeVoice ASR with Jetson/ARM64 CUDA-aware setup.
|
|
174
228
|
- `/realtime` and REST `realtime: true` provide short, natural, SOUL.md-aware conversation for ASR/TTS clients.
|
|
175
229
|
- Endpoint setup and sponsor setup aggregate models from all enabled endpoints, including external OpenAI-compatible routers.
|
|
176
230
|
- `/sponsor` can expose text inference and media generation for image, video, sound, and music with per-modality limits.
|
|
@@ -195,21 +249,42 @@ OMNIUS_REST_API_KEYS="read-key:read:grafana,run-key:run:ci:60:100000:3,admin-key
|
|
|
195
249
|
# then: Authorization: Bearer <key>
|
|
196
250
|
```
|
|
197
251
|
|
|
198
|
-
The complete endpoint inventory follows.
|
|
252
|
+
The complete supported endpoint inventory follows. The canonical machine
|
|
253
|
+
contract is generated from [`packages/cli/src/api/openapi.ts`](packages/cli/src/api/openapi.ts),
|
|
254
|
+
validated against [`docs/reference/rest-api.md`](docs/reference/rest-api.md),
|
|
255
|
+
and projected into the generated block below. `pnpm docs:check` now fails when
|
|
256
|
+
any of those three surfaces drift. Browser HTML pages, Swagger static assets,
|
|
257
|
+
and implementation-only compatibility bridges are intentionally outside this
|
|
258
|
+
stable REST contract.
|
|
199
259
|
|
|
200
|
-
|
|
260
|
+
<!-- BEGIN GENERATED REST INVENTORY -->
|
|
261
|
+
### Docs And Compatibility Aliases
|
|
201
262
|
|
|
202
263
|
| Method | Path | Purpose |
|
|
203
264
|
| --- | --- | --- |
|
|
204
|
-
| `GET` | `/docs`
|
|
205
|
-
| `GET` | `/
|
|
265
|
+
| `GET` | `/docs` | Swagger UI |
|
|
266
|
+
| `GET` | `/api/docs` | Swagger UI alias |
|
|
267
|
+
| `GET` | `/openapi.json` | OpenAPI JSON |
|
|
268
|
+
| `GET` | `/openapi.yaml` | OpenAPI YAML |
|
|
269
|
+
| `GET` | `/v3/api-docs` | OpenAPI alias |
|
|
270
|
+
| `GET` | `/swagger.json` | Swagger-era alias |
|
|
271
|
+
| `GET` | `/api-docs` | OpenAPI alias |
|
|
272
|
+
| `GET` | `/swagger-ui` | Swagger UI alias |
|
|
206
273
|
| `GET` | `/redoc` | ReDoc renderer |
|
|
274
|
+
| `GET` | `/` | HATEOAS API root when the client does not request HTML |
|
|
275
|
+
| `GET` | `/help` | Compact daemon integration help |
|
|
276
|
+
| `GET` | `/v1/routes` | Flat grep-friendly daemon route summary |
|
|
277
|
+
| `GET` | `/routes` | Route-summary compatibility alias |
|
|
278
|
+
| `GET` | `/asyncapi.json` | AsyncAPI 2.6 voicechat WebSocket contract |
|
|
279
|
+
| `GET` | `/asyncapi` | AsyncAPI compatibility alias |
|
|
207
280
|
|
|
208
|
-
### Health
|
|
281
|
+
### Health And Observability
|
|
209
282
|
|
|
210
283
|
| Method | Path | Purpose |
|
|
211
284
|
| --- | --- | --- |
|
|
212
|
-
| `GET` | `/health`
|
|
285
|
+
| `GET` | `/health` | Liveness probe |
|
|
286
|
+
| `GET` | `/health/ready` | Backend readiness |
|
|
287
|
+
| `GET` | `/health/startup` | Startup probe |
|
|
213
288
|
| `GET` | `/version` | Package version and platform |
|
|
214
289
|
| `GET` | `/metrics` | Prometheus metrics |
|
|
215
290
|
| `GET` | `/v1/events` | Server-sent event stream |
|
|
@@ -222,207 +297,376 @@ The complete endpoint inventory follows. It is kept in lockstep with the served
|
|
|
222
297
|
|
|
223
298
|
| Method | Path | Purpose |
|
|
224
299
|
| --- | --- | --- |
|
|
225
|
-
| `GET` | `/v1/discovery` |
|
|
300
|
+
| `GET` | `/v1/discovery/bootstrap` | Compact agent bootstrap and start-here map |
|
|
301
|
+
| `GET` | `/v1/discovery` | Search layers, workflows, runtimes, modules, stores, and capabilities |
|
|
226
302
|
| `GET` | `/v1/discovery/{id}` | Expand one stable capability entry |
|
|
227
303
|
|
|
228
|
-
### Inference
|
|
304
|
+
### Inference And Chat
|
|
229
305
|
|
|
230
306
|
| Method | Path | Purpose |
|
|
231
307
|
| --- | --- | --- |
|
|
232
|
-
| `GET` | `/v1/models`
|
|
308
|
+
| `GET` | `/v1/models` | Aggregated model list |
|
|
233
309
|
| `POST` | `/v1/chat/completions` | OpenAI-compatible chat completion |
|
|
234
310
|
| `POST` | `/v1/chat` | Stateful Omnius chat |
|
|
235
311
|
| `POST` | `/api/chat` | Ollama-compatible chat alias |
|
|
236
|
-
| `POST` | `/v1/generate`
|
|
237
|
-
| `POST` | `/
|
|
238
|
-
| `
|
|
312
|
+
| `POST` | `/v1/generate` | Ollama-compatible one-shot generation |
|
|
313
|
+
| `POST` | `/api/generate` | Ollama-compatible generate alias |
|
|
314
|
+
| `POST` | `/v1/embeddings` | OpenAI-compatible embeddings |
|
|
315
|
+
| `POST` | `/api/embed` | Ollama-compatible embeddings alias |
|
|
316
|
+
| `GET` | `/api/tags` | Ollama-compatible model tags |
|
|
317
|
+
| `POST` | `/realtime` | Text-only voice-adapter reply from a transcript |
|
|
318
|
+
| `POST` | `/v1/realtime` | Auth-scoped realtime adapter alias |
|
|
319
|
+
| `GET` | `/v1/chat/sessions` | Workspace-scoped persisted browser chats and importable TUI sessions |
|
|
320
|
+
| `GET` | `/v1/chat/sessions/{id}` | Hydrate full session history, transcript, and in-flight state |
|
|
321
|
+
| `DELETE` | `/v1/chat/sessions/{id}` | Permanently delete a canonical chat or TUI history session |
|
|
322
|
+
| `POST` | `/v1/chat/sessions/{id}/summarize` | Generate + cache an inference-based session title/summary |
|
|
323
|
+
| `POST` | `/v1/chat/suggest-followup` | Suggest one short next-message follow-up (ghost-text input) |
|
|
324
|
+
| `GET` | `/v1/chat/sessions/{id}/status` | Reactive recall: live run status + unseen deltas (`?since=<seq>`) |
|
|
239
325
|
| `POST` | `/v1/chat/check-in` | Steering check-in for active chat |
|
|
240
|
-
|
|
241
|
-
|
|
326
|
+
| `POST` | `/v1/chat/attachments` | Upload an attachment for a stateful chat |
|
|
327
|
+
|
|
328
|
+
#### Session History Contract
|
|
329
|
+
|
|
330
|
+
`GET /v1/chat/sessions` is a history index, not merely a list of processes that
|
|
331
|
+
are currently active. It returns canonical persisted browser chats for the
|
|
332
|
+
selected workspace and, by default, quality-filtered TUI visual sessions that
|
|
333
|
+
can be imported on demand. Pass `?root=/absolute/workspace` to scope the list and
|
|
334
|
+
`?include_tui=0` to omit TUI history. Exit-only inputs such as `/quit` and
|
|
335
|
+
`/exit`, manual-save noise, empty transcripts, and duplicate normalized TUI
|
|
336
|
+
sessions are rejected by the session-quality projection rather than presented as
|
|
337
|
+
chats.
|
|
338
|
+
|
|
339
|
+
Selecting a row should call `GET /v1/chat/sessions/{id}`. That response hydrates
|
|
340
|
+
the complete public message history (system prompts are intentionally omitted),
|
|
341
|
+
the original TUI transcript when applicable, token counts, timestamps, source
|
|
342
|
+
and project identity, and any in-flight run with a bounded partial-output tail.
|
|
343
|
+
Use the `status` endpoint with `?since=<seq>` for cheap reactive polling while a
|
|
344
|
+
run is active. `DELETE /v1/chat/sessions/{id}` is an admin operation and removes
|
|
345
|
+
the canonical record; deleting only a browser-side row does not remove daemon
|
|
346
|
+
history.
|
|
347
|
+
|
|
348
|
+
`POST /realtime` and `/v1/realtime` are text-only conversation adapters. They
|
|
349
|
+
accept transcript text through `message`, `text`, `recent_turn`, `asr_text`, or
|
|
350
|
+
`callerText`, optionally accept adapter-local `soul_md`, and can return plain
|
|
351
|
+
text with `Accept: text/plain` or `format: "text"`. ASR and TTS remain separate
|
|
352
|
+
operations.
|
|
353
|
+
|
|
354
|
+
### Agentic Runs
|
|
242
355
|
|
|
243
356
|
| Method | Path | Purpose |
|
|
244
357
|
| --- | --- | --- |
|
|
245
358
|
| `POST` | `/v1/run` | Submit agentic task |
|
|
246
|
-
| `GET` | `/v1/runs`
|
|
359
|
+
| `GET` | `/v1/runs` | List runs |
|
|
360
|
+
| `GET` | `/v1/runs/{id}` | Get run details |
|
|
361
|
+
| `GET` | `/v1/runs/{id}/output` | Read captured run output and status |
|
|
247
362
|
| `DELETE` | `/v1/runs/{id}` | Abort run |
|
|
248
|
-
| `POST
|
|
249
|
-
| `GET
|
|
363
|
+
| `POST` | `/v1/todos` | Create or update todos for current session |
|
|
364
|
+
| `GET` | `/v1/todos` | List sessions with todos |
|
|
365
|
+
| `GET` | `/v1/todos/{session_id}` | Get session todos |
|
|
366
|
+
| `DELETE` | `/v1/todos/{session_id}` | Delete session todos |
|
|
250
367
|
| `POST` | `/v1/evaluate` | Evaluate a run |
|
|
251
368
|
| `POST` | `/v1/index` | Trigger repository indexing |
|
|
252
369
|
|
|
253
|
-
### Configuration,
|
|
370
|
+
### Configuration, Keys, Profiles, Projects
|
|
254
371
|
|
|
255
372
|
| Method | Path | Purpose |
|
|
256
373
|
| --- | --- | --- |
|
|
257
|
-
| `GET
|
|
258
|
-
| `
|
|
259
|
-
| `
|
|
260
|
-
| `
|
|
374
|
+
| `GET` | `/v1/config` | Read daemon config |
|
|
375
|
+
| `PATCH` | `/v1/config` | Update daemon config |
|
|
376
|
+
| `GET` | `/v1/config/model` | Current model |
|
|
377
|
+
| `PUT` | `/v1/config/model` | Switch model |
|
|
378
|
+
| `POST` | `/v1/config/model/check` | Probe model readiness with non-empty text |
|
|
379
|
+
| `GET` | `/v1/config/endpoint` | Current endpoint |
|
|
380
|
+
| `PUT` | `/v1/config/endpoint` | Switch endpoint |
|
|
261
381
|
| `POST` | `/v1/config/endpoint/test` | Probe endpoint |
|
|
262
|
-
| `GET
|
|
382
|
+
| `GET` | `/v1/config/endpoint/history` | Endpoint history |
|
|
383
|
+
| `DELETE` | `/v1/config/endpoint/history` | Remove endpoint history item |
|
|
263
384
|
| `POST` | `/v1/share/generate` | Generate remote-access share URL |
|
|
264
|
-
| `GET
|
|
265
|
-
| `
|
|
266
|
-
| `
|
|
267
|
-
| `GET
|
|
268
|
-
| `
|
|
385
|
+
| `GET` | `/v1/keys` | List runtime API keys |
|
|
386
|
+
| `POST` | `/v1/keys` | Mint runtime API key |
|
|
387
|
+
| `DELETE` | `/v1/keys/{prefix}` | Revoke runtime API keys by prefix |
|
|
388
|
+
| `GET` | `/v1/profiles` | List tool profiles |
|
|
389
|
+
| `POST` | `/v1/profiles` | Create tool profile |
|
|
390
|
+
| `GET` | `/v1/profiles/{name}` | Get profile |
|
|
391
|
+
| `DELETE` | `/v1/profiles/{name}` | Delete profile |
|
|
392
|
+
| `GET` | `/v1/projects` | List known projects |
|
|
393
|
+
| `DELETE` | `/v1/projects` | Unregister a project |
|
|
269
394
|
| `GET` | `/v1/projects/current` | Current project |
|
|
270
|
-
| `POST` | `/v1/projects/switch`
|
|
271
|
-
| `
|
|
272
|
-
|
|
273
|
-
|
|
395
|
+
| `POST` | `/v1/projects/switch` | Switch project |
|
|
396
|
+
| `POST` | `/v1/projects/register` | Register project |
|
|
397
|
+
| `POST` | `/v1/projects/rename` | Rename project |
|
|
398
|
+
| `GET` | `/v1/projects/preferences` | Read project preferences |
|
|
399
|
+
| `PUT` | `/v1/projects/preferences` | Patch project preferences |
|
|
400
|
+
| `DELETE` | `/v1/projects/preferences` | Reset project preferences |
|
|
401
|
+
| `GET` | `/v1/projects/scan` | Scan configured roots for discoverable workspaces |
|
|
402
|
+
| `GET` | `/v1/admin/access` | Read the daemon network access mode |
|
|
403
|
+
| `POST` | `/v1/admin/access` | Change and persist access mode from loopback only |
|
|
404
|
+
|
|
405
|
+
### Skills, Commands, Tools, MCP
|
|
274
406
|
|
|
275
407
|
| Method | Path | Purpose |
|
|
276
408
|
| --- | --- | --- |
|
|
277
|
-
| `GET` | `/v1/skills`
|
|
409
|
+
| `GET` | `/v1/skills` | List skills |
|
|
410
|
+
| `GET` | `/v1/skills/{name}` | Load skill content |
|
|
278
411
|
| `GET` | `/v1/commands` | List slash commands |
|
|
279
412
|
| `POST` | `/v1/commands/{cmd}` | Execute slash command |
|
|
280
|
-
| `GET` | `/v1/tools`
|
|
413
|
+
| `GET` | `/v1/tools` | List tools (built-in + external) |
|
|
281
414
|
| `POST` | `/v1/tools/register` | Register an application-specific external tool |
|
|
415
|
+
| `GET` | `/v1/tools/{name}` | Tool metadata |
|
|
282
416
|
| `DELETE` | `/v1/tools/{name}` | Unregister an external tool |
|
|
283
417
|
| `POST` | `/v1/tools/{name}/call` | Call tool |
|
|
284
418
|
| `POST` | `/v1/tools/{name}/eval` | Evaluate an external tool against test cases |
|
|
285
|
-
| `GET` | `/v1/mcps`
|
|
419
|
+
| `GET` | `/v1/mcps` | List MCP servers |
|
|
420
|
+
| `GET` | `/v1/mcps/{name}` | MCP server details |
|
|
286
421
|
| `POST` | `/v1/mcps/{name}/call` | Call MCP tool |
|
|
287
|
-
| `GET` | `/v1/hooks`
|
|
288
|
-
| `GET` | `/v1/
|
|
422
|
+
| `GET` | `/v1/hooks` | Hook registry |
|
|
423
|
+
| `GET` | `/v1/agents` | Agent type registry |
|
|
424
|
+
| `GET` | `/v1/codegraph/snapshot` | Code graph snapshot |
|
|
425
|
+
| `GET` | `/v1/codegraph/events` | Code graph SSE |
|
|
289
426
|
|
|
290
|
-
|
|
427
|
+
#### Registering Application-Specific Tools
|
|
291
428
|
|
|
292
|
-
|
|
429
|
+
Applications can register their own tools so Omnius agents can discover and
|
|
430
|
+
invoke them alongside built-ins. `transport.type` selects the bridge:
|
|
293
431
|
|
|
294
|
-
-
|
|
295
|
-
|
|
432
|
+
- `http` makes Omnius POST `{name, args, session_id}` to the application's
|
|
433
|
+
`callback_url` and relay the result.
|
|
434
|
+
- `mcp` proxies to a named tool on an MCP server and can auto-connect from the
|
|
435
|
+
supplied connection descriptor.
|
|
296
436
|
|
|
297
|
-
|
|
437
|
+
Registrations persist per workspace at `.omnius/external-tools.json`, appear in
|
|
438
|
+
`GET /v1/tools`, and use the same scope and off-device security gates as built-in
|
|
439
|
+
tools. Registration needs `run` scope; a non-loopback caller needs `admin`.
|
|
298
440
|
|
|
299
441
|
```bash
|
|
300
|
-
# Register an HTTP-backed tool
|
|
301
442
|
curl -s -X POST localhost:11435/v1/tools/register -H 'content-type: application/json' -d '{
|
|
302
443
|
"name": "lookup_order",
|
|
303
|
-
"description": "Look up an order by id
|
|
444
|
+
"description": "Look up an order by id",
|
|
304
445
|
"parameters": {"type":"object","properties":{"id":{"type":"string"}},"required":["id"]},
|
|
305
446
|
"security": {"requires_scope":"run","risk":"low"},
|
|
306
447
|
"transport": {"type":"http","callback_url":"https://app.internal/tools/lookup_order","auth_header":"Bearer …"}
|
|
307
448
|
}'
|
|
308
|
-
|
|
309
|
-
# It now appears in the registry and is directly callable
|
|
310
449
|
curl -s localhost:11435/v1/tools/lookup_order
|
|
311
450
|
curl -s -X POST localhost:11435/v1/tools/lookup_order/call -H 'content-type: application/json' -d '{"args":{"id":"A-1001"}}'
|
|
312
|
-
|
|
313
|
-
# Evaluate it against cases during development (pass/fail + metrics)
|
|
314
|
-
curl -s -X POST localhost:11435/v1/tools/lookup_order/eval -H 'content-type: application/json' -d '{
|
|
315
|
-
"cases": [
|
|
316
|
-
{"name":"known order","args":{"id":"A-1001"},"expect":{"success":true,"output_contains":"A-1001"}},
|
|
317
|
-
{"name":"missing order","args":{"id":"nope"},"expect":{"success":false}}
|
|
318
|
-
]
|
|
319
|
-
}'
|
|
320
|
-
|
|
321
|
-
# Unregister when done
|
|
451
|
+
curl -s -X POST localhost:11435/v1/tools/lookup_order/eval -H 'content-type: application/json' -d '{"cases":[{"name":"known","args":{"id":"A-1001"},"expect":{"success":true}}]}'
|
|
322
452
|
curl -s -X DELETE localhost:11435/v1/tools/lookup_order
|
|
323
453
|
```
|
|
324
454
|
|
|
325
|
-
The
|
|
455
|
+
The MCP equivalent uses a transport such as
|
|
456
|
+
`{"type":"mcp","server":"acme","tool":"search","connect":{"url":"https://app.internal/mcp","transport":"streamable-http"}}`.
|
|
326
457
|
|
|
327
458
|
### AIWG
|
|
328
459
|
|
|
329
460
|
| Method | Path | Purpose |
|
|
330
461
|
| --- | --- | --- |
|
|
331
462
|
| `GET` | `/v1/aiwg` | AIWG root and control map |
|
|
332
|
-
| `GET` | `/v1/aiwg/frameworks`
|
|
333
|
-
| `GET` | `/v1/aiwg/
|
|
334
|
-
| `GET` | `/v1/aiwg/
|
|
463
|
+
| `GET` | `/v1/aiwg/frameworks` | List frameworks |
|
|
464
|
+
| `GET` | `/v1/aiwg/frameworks/{name}` | Framework details |
|
|
465
|
+
| `GET` | `/v1/aiwg/frameworks/{name}/content` | Tier-aware content |
|
|
466
|
+
| `GET` | `/v1/aiwg/skills` | List AIWG skills |
|
|
467
|
+
| `GET` | `/v1/aiwg/skills/{name}` | Load AIWG skill |
|
|
468
|
+
| `GET` | `/v1/aiwg/agents` | List AIWG agents |
|
|
469
|
+
| `GET` | `/v1/aiwg/agents/{name}` | Load AIWG agent |
|
|
335
470
|
| `GET` | `/v1/aiwg/addons` | List AIWG addons |
|
|
336
|
-
| `POST` | `/v1/aiwg/use`
|
|
471
|
+
| `POST` | `/v1/aiwg/use` | Tier-sized activation bundle |
|
|
472
|
+
| `POST` | `/v1/aiwg/expand` | Expand matching AIWG item |
|
|
337
473
|
|
|
338
|
-
### Memory,
|
|
474
|
+
### Memory, Sessions, Context
|
|
339
475
|
|
|
340
476
|
| Method | Path | Purpose |
|
|
341
477
|
| --- | --- | --- |
|
|
342
478
|
| `GET` | `/v1/memory` | Memory backend summary |
|
|
343
|
-
| `POST` | `/v1/memory/search`
|
|
344
|
-
| `
|
|
345
|
-
| `GET` | `/v1/
|
|
479
|
+
| `POST` | `/v1/memory/search` | Search memory |
|
|
480
|
+
| `POST` | `/v1/memory/write` | Write memory |
|
|
481
|
+
| `GET` | `/v1/memory/episodes` | List episodes |
|
|
482
|
+
| `GET` | `/v1/memory/failures` | List failure records |
|
|
483
|
+
| `POST` | `/v1/memory/ingest` | Ingest content or files into memory |
|
|
484
|
+
| `GET` | `/v1/memory/entities` | List extracted memory entities |
|
|
485
|
+
| `POST` | `/v1/memory/jobs/run` | Run a named memory-maintenance job |
|
|
486
|
+
| `POST` | `/v1/memory/feedback` | Record relevance or quality feedback for a memory item |
|
|
487
|
+
| `GET` | `/v1/sessions` | List task sessions |
|
|
488
|
+
| `GET` | `/v1/sessions/{id}` | Get session history |
|
|
346
489
|
| `GET` | `/v1/context` | Current context snapshot |
|
|
347
|
-
| `GET` | `/v1/context/window-dumps`
|
|
348
|
-
| `
|
|
490
|
+
| `GET` | `/v1/context/window-dumps` | List persisted outbound model context-window dumps |
|
|
491
|
+
| `GET` | `/v1/context/window-dumps/{id}` | Fetch a full outbound model context-window dump |
|
|
492
|
+
| `POST` | `/v1/context/save` | Save context entry |
|
|
349
493
|
| `GET` | `/v1/context/restore` | Build restore prompt |
|
|
494
|
+
| `POST` | `/v1/context/compact` | Request compaction |
|
|
350
495
|
|
|
351
|
-
Context-window dumps are written
|
|
496
|
+
Context-window dumps are written before backend inference for main agents,
|
|
497
|
+
sub-agents, internal runners, and adversary audits. Query
|
|
498
|
+
`GET /v1/context/window-dumps?agent_type=main` for summaries with signal/noise
|
|
499
|
+
metrics, or fetch a full payload by id. Dumps include focus-supervisor state when
|
|
500
|
+
a next-action contract is active. Set `OMNIUS_CONTEXT_WINDOW_DUMP_DIR` to move
|
|
501
|
+
the store, `OMNIUS_DISABLE_CONTEXT_WINDOW_DUMPS=1` to disable it, and
|
|
502
|
+
`OMNIUS_FOCUS_SUPERVISOR=off|auto|strict` to tune focus enforcement.
|
|
352
503
|
|
|
353
|
-
### Files,
|
|
504
|
+
### Files, Nexus, Ollama Pool
|
|
354
505
|
|
|
355
506
|
| Method | Path | Purpose |
|
|
356
507
|
| --- | --- | --- |
|
|
357
508
|
| `GET` | `/v1/files` | List workspace directory |
|
|
358
509
|
| `POST` | `/v1/files/read` | Read workspace file |
|
|
510
|
+
| `GET` | `/v1/files/raw` | Stream raw workspace bytes with content type and range support |
|
|
511
|
+
| `HEAD` | `/v1/files/raw` | Inspect raw-file response metadata |
|
|
359
512
|
| `GET` | `/v1/nexus/status` | Nexus peer state |
|
|
360
513
|
| `GET` | `/v1/sponsors` | Sponsor directory cache |
|
|
361
514
|
| `GET` | `/v1/ollama/pool/processes` | Ollama process inventory |
|
|
362
515
|
| `POST` | `/v1/ollama/pool/cleanup` | Cleanup stale Ollama pool processes |
|
|
363
516
|
|
|
364
|
-
### Voice,
|
|
517
|
+
### Voice, Audio, Vision
|
|
365
518
|
|
|
366
519
|
| Method | Path | Purpose |
|
|
367
520
|
| --- | --- | --- |
|
|
368
521
|
| `GET` | `/v1/voice/state` | Voice runtime status |
|
|
369
|
-
| `POST` | `/v1/voice/start`
|
|
370
|
-
| `
|
|
371
|
-
| `GET
|
|
372
|
-
| `
|
|
373
|
-
| `
|
|
374
|
-
| `POST` | `/v1/voice/
|
|
375
|
-
| `GET
|
|
376
|
-
| `
|
|
377
|
-
| `
|
|
522
|
+
| `POST` | `/v1/voice/start` | Select an optional model, enable voice, and wait for readiness |
|
|
523
|
+
| `POST` | `/v1/voice/stop` | Pause daemon voice input while leaving TTS warm |
|
|
524
|
+
| `GET` | `/v1/voice/models` | TTS models |
|
|
525
|
+
| `POST` | `/v1/voice/models/switch` | Switch and enable an exact TTS model by default |
|
|
526
|
+
| `GET` | `/v1/voice/supertonic-settings` | Voice tuning settings |
|
|
527
|
+
| `POST` | `/v1/voice/supertonic-settings` | Update voice tuning settings |
|
|
528
|
+
| `GET` | `/v1/asr/engines` | Canonical ASR engines/models, capabilities, readiness, and selection |
|
|
529
|
+
| `GET` | `/v1/asr/status` · `/v1/asr/selection` | Selected engine/model and runtime status |
|
|
530
|
+
| `PATCH` | `/v1/asr/selection` | Persist and activate an exact engine/model |
|
|
531
|
+
| `POST` | `/v1/asr/activate` | Activate and persist an exact engine/model |
|
|
532
|
+
| `POST` | `/v1/asr/engines/{engineId}/setup` | Install a managed runtime and pinned weights |
|
|
533
|
+
| `POST` | `/v1/asr/transcriptions` · `/v1/asr/test` | Transcribe/test using the real selected backend |
|
|
534
|
+
| `GET` | `/v1/voice/asr-models` | Compatibility registry alias |
|
|
535
|
+
| `POST` | `/v1/voice/asr-models/switch` | Compatibility activation alias |
|
|
536
|
+
| `POST` | `/v1/voice/tts` | Synthesize speech |
|
|
537
|
+
| `POST` | `/v1/audio/speech` | OpenAI-compatible TTS alias |
|
|
538
|
+
| `POST` | `/v1/voice/transcribe` | Transcribe audio |
|
|
539
|
+
| `POST` | `/v1/voice/asr` | Legacy transcription alias |
|
|
540
|
+
| `POST` | `/v1/audio/transcriptions` | OpenAI-compatible transcription alias |
|
|
541
|
+
| `POST` | `/v1/voice/transcribe/stream` | Isolated final transcription over SSE (no shared mic state or fake partials) |
|
|
542
|
+
| `POST` | `/v1/voice/clone-refs` | Upload voice clone reference |
|
|
543
|
+
| `GET` | `/v1/voice/clone-refs` | List clone references |
|
|
544
|
+
| `POST` | `/v1/voice/clone-refs/upload` | Upload clone reference |
|
|
545
|
+
| `POST` | `/v1/voice/clone-refs/from-url` | Fetch clone reference |
|
|
546
|
+
| `POST` | `/v1/voice/clone-refs/{filename}/activate` | Activate clone reference |
|
|
547
|
+
| `POST` | `/v1/voice/clone-refs/{filename}/rename` | Rename clone reference |
|
|
378
548
|
| `DELETE` | `/v1/voice/clone-refs/{filename}` | Delete clone reference |
|
|
379
549
|
| `POST` | `/v1/voice/speak` | Broadcast speech to voicechat clients |
|
|
380
550
|
| `GET` | `/v1/voicechat/ws` | WebSocket upgrade for full-duplex voicechat |
|
|
381
551
|
| `POST` | `/v1/vision/describe` | Vision describe placeholder |
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
`
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
552
|
+
| `POST` | `/v1/vision/embed` | Create a vision embedding from media |
|
|
553
|
+
| `POST` | `/v1/audio/embed` | Create an audio embedding from audio input |
|
|
554
|
+
|
|
555
|
+
`POST /v1/voice/tts` and `/v1/audio/speech` automatically warm the daemon.
|
|
556
|
+
An explicit model must render exactly or the request fails; Omnius does not
|
|
557
|
+
silently synthesize with another voice. Responses include `X-Voice-Model`,
|
|
558
|
+
`X-Voice-Backend`, and `X-Sample-Rate`. Available models include GLaDOS,
|
|
559
|
+
Overwatch, `luxtts:announcer-testchamber03`, and the selected Voicebox suite.
|
|
560
|
+
Set `OMNIUS_VOICEBOX_MODELS=all` for every carried-in Voicebox model, leave it
|
|
561
|
+
at `stable` for the default set, or provide a comma-separated subset.
|
|
562
|
+
|
|
563
|
+
ASR selection is independent from TTS selection. The registry currently exposes
|
|
564
|
+
OpenAI Whisper, managed `transcribe-cli`, NVIDIA Nemotron (reported unavailable
|
|
565
|
+
until its legacy bootstrap is migrated), and Microsoft VibeVoice ASR. VibeVoice
|
|
566
|
+
uses the exact pinned `microsoft/VibeVoice-ASR` checkpoint, reports setup and
|
|
567
|
+
activation separately, supports completed files up to 60 minutes with speakers,
|
|
568
|
+
timestamps, and `?context=` hotwords, and is deliberately not advertised as an
|
|
569
|
+
incremental PCM backend. Its managed setup inherits the host CUDA-enabled Torch
|
|
570
|
+
build (needed on Jetson/ARM64), never installs generic PyPI Torch, and activation
|
|
571
|
+
requires one explicit capable GPU. Discrete Linux uses `nvidia-smi` process/GPU
|
|
572
|
+
evidence; Jetson/L4T uses NVIDIA's documented `tegrastats` plus CUDA Torch device
|
|
573
|
+
properties because `nvidia-smi` is unavailable there. Model weights live under
|
|
574
|
+
the unified Omnius ASR cache and are not shipped in the npm package.
|
|
575
|
+
|
|
576
|
+
### Generative Media
|
|
577
|
+
|
|
578
|
+
All generation is backed by the unified `~/.omnius` model store and shared venvs (single source of truth — no per-project duplication). Generated files are consolidated into the global gallery at `~/.omnius/media/{images,videos,audio,music}`.
|
|
392
579
|
|
|
393
580
|
| Method | Path | Purpose |
|
|
394
581
|
| --- | --- | --- |
|
|
395
582
|
| `GET` | `/v1/media/models` | List available image/video/audio/music models |
|
|
396
583
|
| `GET` | `/v1/media/store` | Unified store disk usage + reclaimable legacy caches |
|
|
397
584
|
| `POST` | `/v1/media/migrate` | Dedup + migrate legacy per-group caches into the unified store |
|
|
398
|
-
| `POST` | `/v1/media/
|
|
585
|
+
| `POST` | `/v1/media/relocate` | Relocate the whole media store (weights/venvs/gallery) to a chosen folder |
|
|
586
|
+
| `GET` | `/v1/media/relocate/status` | Status + progress of the media-store relocation job |
|
|
587
|
+
| `POST` | `/v1/media/av/analyze` | Analyze a media file into a grounded entity/event answer (AV comprehension) |
|
|
588
|
+
| `POST` | `/v1/media/image` | Generate an image |
|
|
589
|
+
| `POST` | `/v1/media/video` | Generate a video |
|
|
590
|
+
| `POST` | `/v1/media/audio` | Generate a sound effect |
|
|
591
|
+
| `POST` | `/v1/media/music` | Generate music |
|
|
399
592
|
| `GET` | `/v1/media/gallery` | List previously generated media (global, newest first) |
|
|
400
593
|
| `GET` | `/v1/media/file` | Stream one generated media file |
|
|
401
594
|
|
|
402
|
-
### Engines
|
|
595
|
+
### Engines And Scheduled Jobs
|
|
403
596
|
|
|
404
597
|
| Method | Path | Purpose |
|
|
405
598
|
| --- | --- | --- |
|
|
406
599
|
| `GET` | `/v1/engines` | Long-running engine status |
|
|
407
|
-
| `GET` | `/v1/scheduled`
|
|
408
|
-
| `
|
|
600
|
+
| `GET` | `/v1/scheduled` | List scheduled jobs |
|
|
601
|
+
| `DELETE` | `/v1/scheduled/all` | Delete all tasks, timers, cron entries, and persisted sources |
|
|
602
|
+
| `GET` | `/v1/scheduled/status` | Scheduler status |
|
|
603
|
+
| `POST` | `/v1/scheduled/{id}` | Enable or disable one scheduled task or user timer |
|
|
604
|
+
| `DELETE` | `/v1/scheduled/{id}` | Delete one scheduled task or user timer |
|
|
605
|
+
| `POST` | `/v1/scheduled/kill` | Kill scheduled job |
|
|
606
|
+
| `POST` | `/v1/scheduled/fixup` | Reconcile scheduled state |
|
|
607
|
+
| `GET` | `/v1/scheduled/reconcile` | Preview scheduled reconciliation |
|
|
608
|
+
| `POST` | `/v1/scheduled/reconcile` | Preview or apply scheduled reconciliation |
|
|
409
609
|
| `GET` | `/v1/services/systemd` | Systemd service status |
|
|
610
|
+
| `POST` | `/v1/services/systemd/{unit}` | Act on one user-level systemd unit |
|
|
410
611
|
| `GET` | `/v1/update` | Self-update status |
|
|
612
|
+
| `POST` | `/v1/update` | Start an exact-version verified global update transaction |
|
|
613
|
+
|
|
614
|
+
#### Verified Global Update Transaction
|
|
411
615
|
|
|
412
|
-
|
|
616
|
+
`POST /v1/update` is not a CLI-local package edit. It starts one durable
|
|
617
|
+
transaction that installs the requested exact npm version globally, verifies
|
|
618
|
+
the installed package and resolved `omnius` executable, restarts and verifies
|
|
619
|
+
the daemon, verifies package/hash/runtime agreement, and relaunches the tray if
|
|
620
|
+
it was running. The response is `202` with operation state; poll
|
|
621
|
+
`GET /v1/update` for live phase, subprocess output, verification evidence, and
|
|
622
|
+
the final success or failure. Concurrent transactions and requests with no
|
|
623
|
+
available target return `409`.
|
|
624
|
+
|
|
625
|
+
The web dashboard and native tray both use this same endpoint. Update discovery
|
|
626
|
+
is shared and semver-aware, so an older cached registry result cannot downgrade
|
|
627
|
+
or falsely present an update. A completed transaction means the global package,
|
|
628
|
+
executable, daemon, and tray runtime were all reconciled—not merely that `npm`
|
|
629
|
+
exited successfully.
|
|
630
|
+
|
|
631
|
+
### AIMS Governance
|
|
413
632
|
|
|
414
633
|
| Method | Path | Purpose |
|
|
415
634
|
| --- | --- | --- |
|
|
416
635
|
| `GET` | `/v1/aims` | AIMS root and endpoint index |
|
|
417
|
-
| `GET
|
|
418
|
-
| `
|
|
419
|
-
| `GET
|
|
420
|
-
| `GET` | `/v1/aims/
|
|
421
|
-
| `GET
|
|
422
|
-
| `
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
636
|
+
| `GET` | `/v1/aims/policies` | Policy register |
|
|
637
|
+
| `PUT` | `/v1/aims/policies` | Replace policy register |
|
|
638
|
+
| `GET` | `/v1/aims/roles` | Roles and responsibilities |
|
|
639
|
+
| `GET` | `/v1/aims/resources` | Resource inventory |
|
|
640
|
+
| `GET` | `/v1/aims/impact-assessments` | Impact assessments |
|
|
641
|
+
| `POST` | `/v1/aims/impact-assessments` | File impact assessment |
|
|
642
|
+
| `GET` | `/v1/aims/lifecycle` | Lifecycle state |
|
|
643
|
+
| `GET` | `/v1/aims/data-quality` | Data quality controls |
|
|
644
|
+
| `GET` | `/v1/aims/transparency` | Model cards and transparency |
|
|
645
|
+
| `GET` | `/v1/aims/usage` | AIMS usage view |
|
|
646
|
+
| `GET` | `/v1/aims/suppliers` | Supplier inventory |
|
|
647
|
+
| `GET` | `/v1/aims/incidents` | Incident records |
|
|
648
|
+
| `POST` | `/v1/aims/incidents` | File incident |
|
|
649
|
+
| `GET` | `/v1/aims/oversight` | Human oversight gates |
|
|
650
|
+
| `GET` | `/v1/aims/decisions` | Consequential decision log |
|
|
651
|
+
| `GET` | `/v1/aims/config-history` | Config change history |
|
|
652
|
+
|
|
653
|
+
### Browser And Compatibility Surfaces
|
|
654
|
+
|
|
655
|
+
The dashboard HTML routes (`/`, `/chat`, `/agent`, `/voice`, `/generate`,
|
|
656
|
+
`/projects`, `/dashboard`, `/jobs`, `/activity`, `/discover`, `/settings`, and
|
|
657
|
+
`/config`) are documented in the [dashboard guide](../guides/dashboard.md). They
|
|
658
|
+
are pages, not JSON API operations; `/` returns the HATEOAS JSON root when the
|
|
659
|
+
client does not request HTML.
|
|
660
|
+
|
|
661
|
+
Swagger/ReDoc trailing-slash variants, `/api/docs/*` static assets, and
|
|
662
|
+
`/favicon.ico` exist for browsers. They are delivery details rather than stable
|
|
663
|
+
integration endpoints. The daemon also retains browser/legacy bridges at
|
|
664
|
+
`/v1/model`, `/v1/endpoint`, `/v1/theme`, `/v1/tor/*`, `/v1/remote-proxy`, and
|
|
665
|
+
`/v1/command`. New clients should prefer `/v1/config/model`,
|
|
666
|
+
`/v1/config/endpoint`, `/v1/config`, and `/v1/commands/{cmd}`. Compatibility
|
|
667
|
+
handlers may accept additional HTTP verbs for old dashboard bundles; only the
|
|
668
|
+
methods in the supported inventory above are contractual.
|
|
669
|
+
<!-- END GENERATED REST INVENTORY -->
|
|
426
670
|
## Agent-Explorable Documentation
|
|
427
671
|
|
|
428
672
|
Omnius discovers project-local docs skills from `.aiwg/addons/*/skills`. The docs bundles in this repo expose high-signal entrypoints for agents:
|