omnius 1.0.591 → 1.0.592
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 +15 -1
- package/.aiwg/addons/omnius-docs/manifest.json +28 -68
- package/.aiwg/addons/omnius-docs/skills/agent-failure-recovery/SKILL.md +2 -1
- package/.aiwg/addons/omnius-docs/skills/browser-interaction-validation/SKILL.md +2 -1
- package/.aiwg/addons/omnius-docs/skills/evidence-directed-delivery/SKILL.md +2 -1
- package/.aiwg/addons/omnius-docs/skills/hardware-evidence-audit/SKILL.md +2 -1
- package/.aiwg/addons/omnius-docs/skills/omnius-docs/SKILL.md +17 -7
- package/.aiwg/addons/omnius-docs/skills/omnius-inference-docs/SKILL.md +27 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-integration-docs/SKILL.md +21 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-ops-docs/SKILL.md +2 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-realtime-docs/SKILL.md +2 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-sponsor-docs/SKILL.md +2 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-telegram-docs/SKILL.md +2 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-tools-docs/SKILL.md +23 -0
- package/.aiwg/addons/omnius-docs/skills/omnius-version-compatibility-docs/SKILL.md +23 -0
- package/.aiwg/addons/omnius-docs/skills/runtime-provenance-audit/SKILL.md +2 -1
- package/.aiwg/addons/omnius-docs/skills/secrets-and-config-audit/SKILL.md +2 -1
- package/.aiwg/addons/omnius-docs/skills/test-surface-audit/SKILL.md +2 -1
- package/.aiwg/addons/omnius-docs/skills/workspace-reality-audit/SKILL.md +2 -1
- package/.aiwg/addons/omnius-rest-docs/README.md +3 -0
- package/.aiwg/addons/omnius-rest-docs/manifest.json +27 -20
- package/.aiwg/addons/omnius-rest-docs/skills/omnius-rest-docs/SKILL.md +9 -5
- package/README.md +36 -0
- package/dist/discovery.d.ts +50 -0
- package/dist/index.js +5975 -4021
- package/dist/library.d.ts +7 -0
- package/dist/library.js +950 -0
- package/dist/postinstall-daemon.cjs +18 -0
- package/dist/providerRegistry.d.ts +80 -0
- package/dist/service-version.d.ts +35 -0
- package/docs/.vitepress/config.mts +8 -0
- package/docs/DISCOVERY.json +20224 -0
- package/docs/DISCOVERY.md +648 -0
- package/docs/HANDOFF-crl-encoder-decoder-fix.md +129 -0
- package/docs/agent-memory/INDEX.md +9 -4
- package/docs/agent-memory/index.md +7 -0
- package/docs/concept-relational-language.md +869 -0
- package/docs/context-management-medium-models-proposal.md +449 -0
- package/docs/dedup-false-positive-meta-analysis.md +96 -0
- package/docs/discovery/catalog-overrides.json +724 -0
- package/docs/duplicate-calls-root-cause-analysis.md +91 -0
- package/docs/duplicate-calls-root-cause-deep.md +155 -0
- package/docs/ephemeral-skill-pack-small-context.md +57 -0
- package/docs/explorations/context-window-todo-association.md +156 -0
- package/docs/explorations/todo-association-verify.json +30 -0
- package/docs/explorations/verification-ledger.json +45 -0
- package/docs/explorations/verify-todo-association.sh +30 -0
- package/docs/flowstate.md +806 -0
- package/docs/getting-started/install.md +24 -0
- package/docs/getting-started/model-providers.md +13 -0
- package/docs/guides/agent-integration.md +87 -0
- package/docs/guides/bring-your-own-inference.md +126 -0
- package/docs/guides/tools-and-web-search.md +95 -0
- package/docs/index.md +14 -0
- package/docs/longhaul-35b-workorders.md +496 -0
- package/docs/memory-integration-analysis.md +303 -0
- package/docs/model-capability-awareness-and-multimodal-memory-root-fix.md +799 -0
- package/docs/multimodal-identity-memory-implementation.md +76 -0
- package/docs/omnius-self-edit-eval-2026-06-10.md +169 -0
- package/docs/opencode-agentic-loop-comparison.md +290 -0
- package/docs/operations/security-and-remote-access.md +2 -2
- package/docs/operations/version-compatibility.md +63 -0
- package/docs/proposals/git-progress-tracking-strategy.md +289 -0
- package/docs/proposals/opencode-modules/backendAdapter.ts +443 -0
- package/docs/proposals/opencode-modules/childSession.ts +288 -0
- package/docs/proposals/opencode-modules/compactionAgent.ts +101 -0
- package/docs/proposals/opencode-modules/orchestrator.ts +387 -0
- package/docs/proposals/opencode-modules/runner.ts +258 -0
- package/docs/reference/auth-map.md +87 -196
- package/docs/reference/configuration.md +27 -0
- package/docs/reference/rest-api.md +7 -0
- package/docs/reference/slash-commands.md +125 -2
- package/docs/research/_archived/README.md +18 -0
- package/docs/research/_archived/context_window_attention_model.py +418 -0
- package/docs/research/_archived/context_window_attention_spec.md +55 -0
- package/docs/research/_archived/context_window_attention_weights.json +68 -0
- package/docs/research/k-splanifolds.pdf +0 -0
- package/docs/research/personality-verbosity-control.md +293 -0
- package/docs/rest/INDEX.md +7 -0
- package/docs/rest/QUICKREF.md +18 -0
- package/docs/rest/REST-DOCS-MANIFEST.json +1 -0
- package/docs/rest/auth-and-scopes.md +7 -1
- package/docs/rest/endpoints/discovery.md +44 -0
- package/docs/rest/endpoints/events.md +5 -0
- package/docs/rest/endpoints/tools.md +9 -0
- package/docs/reviews/adversary-system-review.md +42 -0
- package/docs/sana-and-video-generation-integration-plan.md +712 -0
- package/docs/session-diary-llm-training-analysis.md +218 -0
- package/docs/telegram-dmn-curiosity-outreach-scaffold.md +91 -0
- package/docs/telegram-mid-horizon-download-loop-handoff.md +468 -0
- package/docs/telegram-reflection-corpus-integration-plan.md +306 -0
- package/docs/telegram-unified-tooling-architecture.md +332 -0
- package/docs/threat-model.md +868 -0
- package/docs/trajectory-grounding.md +160 -0
- package/docs/voice-flow-architecture.md +489 -0
- package/docs/work-orders/WO-AM-GAPS.md +638 -0
- package/docs/work-orders/daemon-hud-ui-overhaul.md +82 -0
- package/docs/work-orders/hermes-architecture-deltas/01-public-scrutiny-provenance-control/INDEX.md +21 -0
- package/docs/work-orders/hermes-architecture-deltas/01-public-scrutiny-provenance-control/WORKORDER.md +225 -0
- package/docs/work-orders/hermes-architecture-deltas/02-context-engine-plugin-boundary/INDEX.md +20 -0
- package/docs/work-orders/hermes-architecture-deltas/02-context-engine-plugin-boundary/WORKORDER.md +198 -0
- package/docs/work-orders/hermes-architecture-deltas/03-typed-gateway-event-stream/INDEX.md +19 -0
- package/docs/work-orders/hermes-architecture-deltas/03-typed-gateway-event-stream/WORKORDER.md +172 -0
- package/docs/work-orders/hermes-architecture-deltas/04-task-local-gateway-context/INDEX.md +19 -0
- package/docs/work-orders/hermes-architecture-deltas/04-task-local-gateway-context/WORKORDER.md +169 -0
- package/docs/work-orders/hermes-architecture-deltas/05-process-lifecycle-monitoring-notifications/INDEX.md +22 -0
- package/docs/work-orders/hermes-architecture-deltas/05-process-lifecycle-monitoring-notifications/WORKORDER.md +189 -0
- package/docs/work-orders/hermes-architecture-deltas/06-vision-evidence-routing-ladder/INDEX.md +22 -0
- package/docs/work-orders/hermes-architecture-deltas/06-vision-evidence-routing-ladder/WORKORDER.md +199 -0
- package/docs/work-orders/hermes-architecture-deltas/07-durable-multi-agent-kanban/INDEX.md +20 -0
- package/docs/work-orders/hermes-architecture-deltas/07-durable-multi-agent-kanban/WORKORDER.md +174 -0
- package/docs/work-orders/hermes-architecture-deltas/08-completion-critic-reconciliation-ledger/INDEX.md +22 -0
- package/docs/work-orders/hermes-architecture-deltas/08-completion-critic-reconciliation-ledger/WORKORDER.md +226 -0
- package/docs/work-orders/hermes-architecture-deltas/INDEX.md +38 -0
- package/docs/work-orders/omnius-context-engineering-behavior-fixes.md +281 -0
- package/docs/work-orders/telegram-dropbear-context-rca-workorder.md +202 -0
- package/docs/work-orders/world-class-memory-compiler/README.md +162 -0
- package/docs/work-orders/world-class-memory-compiler/TRACKER.md +179 -0
- package/docs/work-orders/world-class-memory-compiler/WO-01-exact-request-budget.md +79 -0
- package/docs/work-orders/world-class-memory-compiler/WO-02-typed-memory-fabric.md +65 -0
- package/docs/work-orders/world-class-memory-compiler/WO-03-dependency-working-set.md +55 -0
- package/docs/work-orders/world-class-memory-compiler/WO-04-inference-memory-compiler.md +67 -0
- package/docs/work-orders/world-class-memory-compiler/WO-05-artifact-fidelity-materialization.md +72 -0
- package/docs/work-orders/world-class-memory-compiler/WO-06-temporal-hybrid-retrieval.md +49 -0
- package/docs/work-orders/world-class-memory-compiler/WO-07-evaluation-harness.md +45 -0
- package/docs/work-orders/world-class-memory-compiler/WO-08-rollout-legacy-removal.md +45 -0
- package/docs/x402-remote-inference-plan.md +323 -0
- package/npm-shrinkwrap.json +108 -117
- package/package.json +7 -6
- package/templates/AGENTS.md +6 -0
- package/templates/OMNIUS.md +20 -0
|
@@ -18,6 +18,20 @@ omnius
|
|
|
18
18
|
|
|
19
19
|
The first launch opens the setup flow, probes local capabilities, and asks which endpoint and model path to use.
|
|
20
20
|
|
|
21
|
+
The installer prints a short agent-discovery primer. It does not print keys or
|
|
22
|
+
other secrets. You can run the discovery commands at any time:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
omnius discover "bring your own inference"
|
|
26
|
+
omnius show tool.web-search
|
|
27
|
+
omnius docs
|
|
28
|
+
omnius init
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
`omnius init` adds a managed Omnius discovery block to the project guidance
|
|
32
|
+
files without replacing content outside that block. `--check` reports whether
|
|
33
|
+
the guidance is current and `--dry-run` previews changes.
|
|
34
|
+
|
|
21
35
|
## Start The REST Daemon
|
|
22
36
|
|
|
23
37
|
```bash
|
|
@@ -36,6 +50,16 @@ Open API docs:
|
|
|
36
50
|
http://127.0.0.1:11435/docs
|
|
37
51
|
```
|
|
38
52
|
|
|
53
|
+
Agent-readable daemon entrypoints:
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
http://127.0.0.1:11435/help
|
|
57
|
+
http://127.0.0.1:11435/openapi.json
|
|
58
|
+
http://127.0.0.1:11435/v1/discovery
|
|
59
|
+
http://127.0.0.1:11435/v1/tools
|
|
60
|
+
http://127.0.0.1:11435/v1/skills
|
|
61
|
+
```
|
|
62
|
+
|
|
39
63
|
## Workspace Development
|
|
40
64
|
|
|
41
65
|
```bash
|
|
@@ -10,6 +10,9 @@ Supported endpoint patterns include:
|
|
|
10
10
|
- Omnius-managed Ollama pool
|
|
11
11
|
- vLLM
|
|
12
12
|
- OpenAI-compatible HTTP servers
|
|
13
|
+
- Anthropic Claude through the native Messages API
|
|
14
|
+
- Google Gemini through its official OpenAI-compatible endpoint
|
|
15
|
+
- OpenAI
|
|
13
16
|
- OpenRouter
|
|
14
17
|
- Groq
|
|
15
18
|
- Chutes
|
|
@@ -29,6 +32,16 @@ Use:
|
|
|
29
32
|
|
|
30
33
|
Endpoint history records recently used URLs and auth metadata so users can return to external routers without retyping them.
|
|
31
34
|
|
|
35
|
+
For the complete protocol, authentication, and fail-closed behavior, read
|
|
36
|
+
[Bring Your Own Inference](../guides/bring-your-own-inference.md). The important
|
|
37
|
+
distinction is that provider names are not cosmetic:
|
|
38
|
+
|
|
39
|
+
- Ollama uses the `ollama` protocol.
|
|
40
|
+
- Anthropic uses `anthropic-messages` and `POST /v1/messages`.
|
|
41
|
+
- Gemini and the other compatible providers use `openai-chat`.
|
|
42
|
+
- A custom URL must declare its protocol. Omnius does not send a probe or
|
|
43
|
+
inference request when it cannot determine the protocol safely.
|
|
44
|
+
|
|
32
45
|
## Model Discovery Rule
|
|
33
46
|
|
|
34
47
|
When multiple endpoints are enabled, model lists should be consolidated from all toggled enabled endpoints. This applies to:
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# Agent And Service Integration
|
|
2
|
+
|
|
3
|
+
An integration should discover Omnius at runtime instead of encoding a partial
|
|
4
|
+
provider or tool list.
|
|
5
|
+
|
|
6
|
+
## Bootstrap Sequence
|
|
7
|
+
|
|
8
|
+
1. Read `GET /version` and assert the minimum compatible Omnius package
|
|
9
|
+
version.
|
|
10
|
+
2. Read `GET /v1/discovery` or the bundled `docs/DISCOVERY.json`.
|
|
11
|
+
3. Search by user intent, then expand the chosen stable ID.
|
|
12
|
+
4. Follow the returned interface and reference links.
|
|
13
|
+
5. For live work, send `X-Omnius-Min-Version` on execution requests.
|
|
14
|
+
|
|
15
|
+
Human and CLI equivalents:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
omnius docs
|
|
19
|
+
omnius discover "<user need>"
|
|
20
|
+
omnius show <stable-id>
|
|
21
|
+
omnius capabilities --json
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Stable Discovery Surfaces
|
|
25
|
+
|
|
26
|
+
| Surface | Use |
|
|
27
|
+
| --- | --- |
|
|
28
|
+
| `docs/DISCOVERY.json` | offline package catalog |
|
|
29
|
+
| `docs/DISCOVERY.md` | compact human/agent orientation |
|
|
30
|
+
| `omnius discover` | ranked local lookup |
|
|
31
|
+
| `omnius show` | exact entry expansion |
|
|
32
|
+
| `GET /v1/discovery` | daemon lookup |
|
|
33
|
+
| `GET /v1/discovery/{id}` | daemon exact entry |
|
|
34
|
+
| `GET /openapi.json` | canonical HTTP wire contract |
|
|
35
|
+
| `GET /v1/tools` | live tool metadata |
|
|
36
|
+
| `GET /v1/skills` | live skill catalog |
|
|
37
|
+
|
|
38
|
+
The discovery catalog describes how to find a capability; live OpenAPI,
|
|
39
|
+
provider, tool, auth, and policy state determine whether it can be used by the
|
|
40
|
+
current caller.
|
|
41
|
+
|
|
42
|
+
## Search Contract
|
|
43
|
+
|
|
44
|
+
Search accepts a query, optional `kind`, and result limit. Prefer stable IDs
|
|
45
|
+
in stored integrations. Use free text only to find an ID or handle a user's
|
|
46
|
+
new intent. Exact IDs, aliases, and titles should rank above prefix and token
|
|
47
|
+
matches.
|
|
48
|
+
|
|
49
|
+
Supported kinds are `capability`, `provider`, `tool`, `api`, `command`,
|
|
50
|
+
`skill`, `guide`, `config`, and `operation`.
|
|
51
|
+
|
|
52
|
+
## Bring Your Own Inference
|
|
53
|
+
|
|
54
|
+
Do not infer provider protocol in an account adapter from a display label or
|
|
55
|
+
from “has an API key.” Resolve the provider descriptor and preserve its
|
|
56
|
+
protocol:
|
|
57
|
+
|
|
58
|
+
- `anthropic-messages` for Anthropic/Claude;
|
|
59
|
+
- `openai-chat` for Gemini and registered OpenAI-compatible providers;
|
|
60
|
+
- `ollama` for Ollama;
|
|
61
|
+
- explicit protocol for custom endpoints.
|
|
62
|
+
|
|
63
|
+
See [Bring Your Own Inference](./bring-your-own-inference.md).
|
|
64
|
+
|
|
65
|
+
## Tool Invocation
|
|
66
|
+
|
|
67
|
+
Treat invocation mode as data. A tool in the catalog may be agent-bound even
|
|
68
|
+
when its schema and security classification are visible. `web_search` is the
|
|
69
|
+
important example: offer it to an Omnius agent loop instead of assuming
|
|
70
|
+
`POST /v1/tools/web_search/call`.
|
|
71
|
+
|
|
72
|
+
See [Tools And Web Search](./tools-and-web-search.md).
|
|
73
|
+
|
|
74
|
+
## Version Precondition
|
|
75
|
+
|
|
76
|
+
Reading `/version` is useful for diagnostics, but there is a race between a
|
|
77
|
+
version check and job submission. Send the same minimum version on each
|
|
78
|
+
execution request so a stale daemon rejects the request before it creates a
|
|
79
|
+
job or invokes a model/tool. See
|
|
80
|
+
[Service Version Compatibility](../operations/version-compatibility.md).
|
|
81
|
+
|
|
82
|
+
## Secret Boundary
|
|
83
|
+
|
|
84
|
+
Store provider and daemon credentials separately. Discovery results, project
|
|
85
|
+
guidance, error messages, URLs, logs, and telemetry must never contain raw
|
|
86
|
+
keys. Prefer scoped REST bearer keys and the narrowest compatible tool
|
|
87
|
+
profile for remote agents.
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# Bring Your Own Inference
|
|
2
|
+
|
|
3
|
+
Omnius routes local and hosted models through an explicit provider descriptor.
|
|
4
|
+
The descriptor determines the wire protocol, URL paths, authentication
|
|
5
|
+
headers, and supported operations. It is the source of truth used by setup,
|
|
6
|
+
model discovery, TUI runs, REST chat, summaries, voice, Telegram, sponsors,
|
|
7
|
+
and endpoint probes.
|
|
8
|
+
|
|
9
|
+
## Discover The Provider Contract
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
omnius discover "bring your own inference"
|
|
13
|
+
omnius show provider.anthropic
|
|
14
|
+
omnius show provider.gemini
|
|
15
|
+
omnius discover "provider protocol" --kind provider
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
From the daemon:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
curl -s "http://127.0.0.1:11435/v1/discovery?q=provider&kind=provider"
|
|
22
|
+
curl -s "http://127.0.0.1:11435/v1/discovery/provider.anthropic"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Protocol Matrix
|
|
26
|
+
|
|
27
|
+
| Provider | Protocol | Canonical base | Authentication |
|
|
28
|
+
| --- | --- | --- | --- |
|
|
29
|
+
| Ollama | `ollama` | `http://127.0.0.1:11434` | none by default |
|
|
30
|
+
| LM Studio, vLLM | `openai-chat` | local configured URL | optional Bearer |
|
|
31
|
+
| OpenAI | `openai-chat` | `https://api.openai.com/v1` | Bearer |
|
|
32
|
+
| Anthropic / Claude | `anthropic-messages` | `https://api.anthropic.com/v1` | `x-api-key` plus `anthropic-version` |
|
|
33
|
+
| Google Gemini | `openai-chat` | `https://generativelanguage.googleapis.com/v1beta/openai` | Bearer plus Omnius client header |
|
|
34
|
+
| OpenRouter, Groq, Chutes, DeepInfra, Together, Fireworks, Mistral, Cerebras, SambaNova, NVIDIA NIM, Hyperbolic | `openai-chat` | provider preset | Bearer |
|
|
35
|
+
| Sponsor and COHERE peers | negotiated Omnius endpoint | discovered peer | peer/session policy |
|
|
36
|
+
| Custom | explicitly selected | user supplied | configured for that endpoint |
|
|
37
|
+
|
|
38
|
+
Known aliases include `claude` for Anthropic and `google` / `google-ai` for
|
|
39
|
+
Gemini.
|
|
40
|
+
|
|
41
|
+
## Anthropic Messages Translation
|
|
42
|
+
|
|
43
|
+
Anthropic is not treated as an OpenAI-shaped URL. Omnius sends
|
|
44
|
+
`POST /v1/messages` with `x-api-key`, `anthropic-version: 2023-06-01`, and
|
|
45
|
+
JSON content type. The shared adapter translates:
|
|
46
|
+
|
|
47
|
+
- the OpenAI-style system message into Anthropic's top-level `system`;
|
|
48
|
+
- ordinary user and assistant messages into Messages content blocks;
|
|
49
|
+
- tool definitions into Anthropic tool declarations;
|
|
50
|
+
- assistant tool calls into `tool_use` blocks;
|
|
51
|
+
- tool results into `tool_result` blocks;
|
|
52
|
+
- Anthropic text, tool calls, streaming events, stop reasons, and usage back
|
|
53
|
+
into Omnius' common completion shape.
|
|
54
|
+
|
|
55
|
+
This behavior follows Anthropic's
|
|
56
|
+
[Messages API](https://platform.claude.com/docs/en/api/messages/create) and
|
|
57
|
+
[authentication contract](https://platform.claude.com/docs/en/manage-claude/authentication).
|
|
58
|
+
|
|
59
|
+
## Gemini OpenAI Compatibility
|
|
60
|
+
|
|
61
|
+
Gemini uses Google's official OpenAI-compatible prefix:
|
|
62
|
+
|
|
63
|
+
```text
|
|
64
|
+
https://generativelanguage.googleapis.com/v1beta/openai
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Omnius appends compatible resources such as `/models`,
|
|
68
|
+
`/chat/completions`, and `/embeddings`, authenticates with
|
|
69
|
+
`Authorization: Bearer <key>`, and identifies the client with
|
|
70
|
+
`x-goog-api-client: omnius/<version>`. See Google's
|
|
71
|
+
[OpenAI compatibility guide](https://ai.google.dev/gemini-api/docs/openai).
|
|
72
|
+
|
|
73
|
+
The compatibility API is not a promise that every Gemini-native feature is
|
|
74
|
+
available. Discover Omnius' advertised provider capabilities before depending
|
|
75
|
+
on a provider-specific extension.
|
|
76
|
+
|
|
77
|
+
## Key Resolution
|
|
78
|
+
|
|
79
|
+
Omnius resolves upstream provider credentials in this exact order:
|
|
80
|
+
|
|
81
|
+
```text
|
|
82
|
+
OMNIUS_PROVIDER_API_KEY
|
|
83
|
+
→ OMNIUS_MODEL_API_KEY
|
|
84
|
+
→ OMNIUS_UPSTREAM_API_KEY
|
|
85
|
+
→ OMNIUS_API_KEY
|
|
86
|
+
→ VLLM_API_KEY
|
|
87
|
+
→ persisted endpoint configuration
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
The first defined credential wins. REST bearer keys are a separate boundary:
|
|
91
|
+
use `OMNIUS_REST_API_KEY` or `OMNIUS_REST_API_KEYS` for callers of the daemon.
|
|
92
|
+
Never put either provider or REST credentials in URLs, logs, discovery data,
|
|
93
|
+
or agent guidance files.
|
|
94
|
+
|
|
95
|
+
## Fail-Closed Custom Endpoints
|
|
96
|
+
|
|
97
|
+
Omnius may infer a protocol only for a registered provider or an unambiguous
|
|
98
|
+
legacy configuration:
|
|
99
|
+
|
|
100
|
+
- a known host selects its registered protocol;
|
|
101
|
+
- a legacy `ollama` backend selects `ollama`;
|
|
102
|
+
- a legacy `vllm` backend selects `openai-chat`;
|
|
103
|
+
- a custom or ambiguous endpoint must declare its protocol explicitly.
|
|
104
|
+
|
|
105
|
+
When the protocol is ambiguous, Omnius performs no model listing, health
|
|
106
|
+
probe, embeddings request, chat request, or generated-token request. It keeps
|
|
107
|
+
the saved endpoint disabled and returns an actionable configuration error.
|
|
108
|
+
It never falls back to Ollama, CPU, a different provider, or a guessed
|
|
109
|
+
OpenAI-compatible path.
|
|
110
|
+
|
|
111
|
+
## Hardware Gate
|
|
112
|
+
|
|
113
|
+
The repository's `AGENTS.md` requires a live hardware preflight before local
|
|
114
|
+
inference. Confirm the designated endpoint, exact model tag, actual GPU
|
|
115
|
+
placement with `nvidia-smi`, and absence of the test runner on an unintended
|
|
116
|
+
device before generating tokens. If the endpoint-to-GPU mapping cannot be
|
|
117
|
+
verified, stop instead of falling back.
|
|
118
|
+
|
|
119
|
+
## Verify Without Generating Tokens
|
|
120
|
+
|
|
121
|
+
Use discovery and configuration inspection first. Endpoint/model probes may
|
|
122
|
+
contact a provider and therefore still require the correct protocol and
|
|
123
|
+
credential. A local model-load probe must obey the hardware gate.
|
|
124
|
+
|
|
125
|
+
For a service integration, also require the minimum Omnius version described
|
|
126
|
+
in [Service Version Compatibility](../operations/version-compatibility.md).
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Tools And Web Search
|
|
2
|
+
|
|
3
|
+
Omnius has two related tool surfaces:
|
|
4
|
+
|
|
5
|
+
- the agent tool catalog offered to a model during an Omnius run; and
|
|
6
|
+
- the daemon's direct-call registry exposed by `/v1/tools`.
|
|
7
|
+
|
|
8
|
+
Discovering a tool does not imply that it is directly callable. Always inspect
|
|
9
|
+
the tool metadata and its invocation interfaces.
|
|
10
|
+
|
|
11
|
+
## Discover Before Calling
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
omnius discover "web search"
|
|
15
|
+
omnius show tool.web-search
|
|
16
|
+
omnius discover "tools API" --kind api
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Daemon metadata:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
curl -s http://127.0.0.1:11435/v1/tools
|
|
23
|
+
curl -s http://127.0.0.1:11435/v1/tools/web_search
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
`GET /v1/tools/{name}` describes the schema, scope, risk, network behavior,
|
|
27
|
+
and invocation mode. A tool is directly callable only when its returned
|
|
28
|
+
metadata says `direct_callable: true`.
|
|
29
|
+
|
|
30
|
+
## `web_search` Is Agent-Bound
|
|
31
|
+
|
|
32
|
+
`web_search` is intentionally documented as agent-bound. Inspect its schema
|
|
33
|
+
through discovery or `GET /v1/tools/web_search`, then execute it through an
|
|
34
|
+
agent loop:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
curl -s -X POST http://127.0.0.1:11435/v1/chat/completions \
|
|
38
|
+
-H 'content-type: application/json' \
|
|
39
|
+
-H 'authorization: Bearer <run-key>' \
|
|
40
|
+
-H 'x-omnius-min-version: <required-version>' \
|
|
41
|
+
-d '{
|
|
42
|
+
"model": "<configured-model>",
|
|
43
|
+
"messages": [{"role":"user","content":"Find current primary sources for this claim."}],
|
|
44
|
+
"agent_loop": true,
|
|
45
|
+
"include_daemon_tools": ["read"],
|
|
46
|
+
"prompt_template": "factual-first"
|
|
47
|
+
}'
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Equivalent agentic entrypoints are `POST /v1/chat` and `POST /v1/run`.
|
|
51
|
+
`include_daemon_tools: ["read"]` offers read-scope tools such as
|
|
52
|
+
`web_search`, `web_fetch`, and safe file inspection to the model.
|
|
53
|
+
`prompt_template: "factual-first"` requests a search-first policy but does not
|
|
54
|
+
expand auth scope or bypass the tool policy.
|
|
55
|
+
|
|
56
|
+
Do not call `POST /v1/tools/web_search/call` unless the live metadata for the
|
|
57
|
+
installed service explicitly marks it direct-callable. Catalog presence,
|
|
58
|
+
read-scope classification, or a tool schema alone does not grant that
|
|
59
|
+
invocation mode.
|
|
60
|
+
|
|
61
|
+
## Direct Tools
|
|
62
|
+
|
|
63
|
+
For a tool marked `direct_callable: true`, use:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
curl -s -X POST http://127.0.0.1:11435/v1/tools/<name>/call \
|
|
67
|
+
-H 'content-type: application/json' \
|
|
68
|
+
-H 'authorization: Bearer <key>' \
|
|
69
|
+
-H 'x-omnius-min-version: <required-version>' \
|
|
70
|
+
-d '{"args":{}}'
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
The body wrapper is always `args`; the nested shape comes from the tool
|
|
74
|
+
metadata. Direct calls are still gated by bearer scope, tool policy, profile,
|
|
75
|
+
origin, network/off-device policy, and risk.
|
|
76
|
+
|
|
77
|
+
## External And MCP Tools
|
|
78
|
+
|
|
79
|
+
- `POST /v1/tools/register` registers an HTTP- or MCP-backed application tool.
|
|
80
|
+
- `GET /v1/mcps` lists connected MCP servers.
|
|
81
|
+
- `POST /v1/mcps/{name}/call` invokes a connected MCP tool through the daemon.
|
|
82
|
+
- `tool_search` and `explore_tools` help an agent discover a large catalog
|
|
83
|
+
without loading every schema into its context.
|
|
84
|
+
|
|
85
|
+
See [Tools, MCP, Hooks, Agents, And Code Graph](../rest/endpoints/tools.md) for
|
|
86
|
+
the complete REST contract.
|
|
87
|
+
|
|
88
|
+
## Failure Rules
|
|
89
|
+
|
|
90
|
+
- Unknown tool: refresh discovery/metadata; do not retry the same name.
|
|
91
|
+
- Tool not direct-callable: move the request to an agent loop.
|
|
92
|
+
- `401` or `403`: fix bearer auth or scope; do not expose the key in output.
|
|
93
|
+
- Version `412`: update the Omnius daemon before resubmitting work.
|
|
94
|
+
- Provider/tool unavailable: report the prerequisite; do not silently
|
|
95
|
+
substitute another network service.
|
package/docs/index.md
CHANGED
|
@@ -2,11 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
Omnius is an autonomous local-first agent runtime with a TUI, REST daemon, P2P sponsor mesh, Telegram bridge, realtime conversation mode, media generation routes, and AIWG-compatible documentation skills.
|
|
4
4
|
|
|
5
|
+
## Discover Before Navigating
|
|
6
|
+
|
|
7
|
+
- [Discovery Cascade](./DISCOVERY.md)
|
|
8
|
+
- [Machine Discovery Catalog](./DISCOVERY.json)
|
|
9
|
+
- [Agent And Service Integration](./guides/agent-integration.md)
|
|
10
|
+
|
|
11
|
+
Agents should begin with `omnius discover "<need>"`, expand a result with
|
|
12
|
+
`omnius show <id>`, and read only the referenced artifact needed for the
|
|
13
|
+
current task.
|
|
14
|
+
|
|
5
15
|
## Start Here
|
|
6
16
|
|
|
7
17
|
- [Install](./getting-started/install.md)
|
|
8
18
|
- [First Run](./getting-started/first-run.md)
|
|
9
19
|
- [Model Providers](./getting-started/model-providers.md)
|
|
20
|
+
- [Bring Your Own Inference](./guides/bring-your-own-inference.md)
|
|
10
21
|
- [Architecture](./architecture/overview.md)
|
|
11
22
|
|
|
12
23
|
## Workflows
|
|
@@ -16,18 +27,21 @@ Omnius is an autonomous local-first agent runtime with a TUI, REST daemon, P2P s
|
|
|
16
27
|
- [Realtime Conversation](./guides/realtime.md)
|
|
17
28
|
- [Telegram](./guides/telegram.md)
|
|
18
29
|
- [Media Generation](./guides/media-generation.md)
|
|
30
|
+
- [Tools And Web Search](./guides/tools-and-web-search.md)
|
|
19
31
|
|
|
20
32
|
## Reference
|
|
21
33
|
|
|
22
34
|
- [REST API](./reference/rest-api.md)
|
|
23
35
|
- [Slash Commands](./reference/slash-commands.md)
|
|
24
36
|
- [Configuration](./reference/configuration.md)
|
|
37
|
+
- [Authentication Map](./reference/auth-map.md)
|
|
25
38
|
- [Agent Memory Index](./agent-memory/)
|
|
26
39
|
|
|
27
40
|
## Operations
|
|
28
41
|
|
|
29
42
|
- [Security And Remote Access](./operations/security-and-remote-access.md)
|
|
30
43
|
- [Runtime Hygiene](./operations/runtime-hygiene.md)
|
|
44
|
+
- [Service Version Compatibility](./operations/version-compatibility.md)
|
|
31
45
|
|
|
32
46
|
## Proposals
|
|
33
47
|
|