@bitkyc08/opencodex 2.77.0 → 2.78.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/ocx.mjs +11 -10
- package/gui/dist/assets/App-BtfG5id-.js +54 -0
- package/gui/dist/assets/App-lCIslZ1L.css +1 -0
- package/gui/dist/assets/{Tray-gloIYNaW.js → Tray-DiJpSub0.js} +1 -1
- package/gui/dist/assets/index-Btc3Ogw4.js +94 -0
- package/gui/dist/assets/index-DmQB8D_R.css +1 -0
- package/gui/dist/assets/quota-summary-B_a96nXj.js +1 -0
- package/gui/dist/index.html +2 -2
- package/package.json +1 -1
- package/src/adapters/anthropic/beta-allowlist.ts +19 -2
- package/src/adapters/anthropic/client-identity.ts +13 -4
- package/src/adapters/anthropic/native-client-preamble.ts +31 -0
- package/src/adapters/anthropic/passthrough.ts +103 -25
- package/src/adapters/devin/cloud-direct/chat.ts +7 -2
- package/src/adapters/devin/trajectory.ts +49 -0
- package/src/adapters/devin.ts +13 -0
- package/src/adapters/ollama-native.ts +35 -19
- package/src/claude/intercept/client-hello.ts +103 -0
- package/src/claude/intercept/model-bindings.ts +3 -2
- package/src/claude/intercept/picker-listener.ts +279 -66
- package/src/cli/access-audio-input.ts +84 -0
- package/src/cli/access-audio-live.ts +99 -0
- package/src/cli/access-audio.ts +123 -0
- package/src/cli/access-data-client.ts +127 -0
- package/src/cli/access-data-plane.ts +104 -0
- package/src/cli/access-data-response.ts +76 -0
- package/src/cli/access.ts +65 -2
- package/src/cli/account-api.ts +30 -6
- package/src/cli/account-auth.ts +111 -42
- package/src/cli/account-key-quota.ts +118 -0
- package/src/cli/account-main.ts +11 -4
- package/src/cli/account-next-actions.ts +63 -0
- package/src/cli/account-policy-dto.ts +68 -0
- package/src/cli/account-policy.ts +167 -0
- package/src/cli/account-target.ts +8 -0
- package/src/cli/account.ts +34 -8
- package/src/cli/agent-runtime-settings.ts +130 -0
- package/src/cli/agent-settings.ts +101 -0
- package/src/cli/agent.ts +19 -2
- package/src/cli/alias.ts +7 -2
- package/src/cli/aside-profiles.ts +2 -2
- package/src/cli/capabilities-access-remote.ts +147 -0
- package/src/cli/capabilities-accounts.ts +195 -0
- package/src/cli/capabilities-agents-routing.ts +414 -0
- package/src/cli/capabilities-base.ts +783 -0
- package/src/cli/capabilities-command.ts +1 -0
- package/src/cli/capabilities-integrations.ts +264 -0
- package/src/cli/capabilities-lab.ts +214 -0
- package/src/cli/capabilities-observe-system.ts +662 -0
- package/src/cli/capabilities-provider-models.ts +302 -0
- package/src/cli/capabilities.ts +30 -1199
- package/src/cli/capability-types.ts +54 -0
- package/src/cli/catalog-command-result.ts +57 -0
- package/src/cli/chatgpt-command.ts +25 -2
- package/src/cli/claude-agent-startup-sync.ts +17 -0
- package/src/cli/claude-desktop-profile.ts +100 -0
- package/src/cli/claude-desktop.ts +39 -6
- package/src/cli/codex-shim-autorestore.ts +2 -1
- package/src/cli/codex-shim-readiness.ts +23 -3
- package/src/cli/combo-input.ts +88 -0
- package/src/cli/combo-result.ts +52 -0
- package/src/cli/combo-stats.ts +123 -0
- package/src/cli/combo.ts +37 -14
- package/src/cli/companion-timeline.ts +142 -0
- package/src/cli/companion-usage.ts +146 -0
- package/src/cli/companion.ts +12 -3
- package/src/cli/config-command.ts +24 -8
- package/src/cli/dispatch.ts +52 -79
- package/src/cli/doctor.ts +22 -4
- package/src/cli/help-catalog.ts +31 -14
- package/src/cli/help-recovery.ts +2 -2
- package/src/cli/help.ts +25 -11
- package/src/cli/index.ts +38 -27
- package/src/cli/injection-follow.ts +35 -0
- package/src/cli/inspect.ts +5 -0
- package/src/cli/integration-aside-sync.ts +69 -0
- package/src/cli/integration-cursor.ts +106 -0
- package/src/cli/integration-input.ts +60 -0
- package/src/cli/integration-journal.ts +49 -0
- package/src/cli/integration-plan-dto.ts +156 -0
- package/src/cli/integration-preview.ts +215 -0
- package/src/cli/integrations.ts +24 -18
- package/src/cli/json-input.ts +134 -0
- package/src/cli/link.ts +32 -4
- package/src/cli/local-sync-result.ts +41 -0
- package/src/cli/log-follow.ts +84 -0
- package/src/cli/log-view-filter.ts +146 -0
- package/src/cli/logout-command.ts +44 -0
- package/src/cli/model-picker-ordering.ts +137 -0
- package/src/cli/models-custom-input.ts +107 -0
- package/src/cli/models-custom-runtime.ts +112 -0
- package/src/cli/models-order.ts +194 -0
- package/src/cli/models-runtime-subcommands.ts +2 -0
- package/src/cli/models-runtime.ts +7 -0
- package/src/cli/models.ts +66 -81
- package/src/cli/observe-stream.ts +142 -0
- package/src/cli/observe.ts +75 -34
- package/src/cli/provider-batch.ts +77 -0
- package/src/cli/provider-lifecycle-runtime.ts +170 -0
- package/src/cli/provider-result.ts +124 -0
- package/src/cli/provider-runtime.ts +15 -12
- package/src/cli/provider-settings.ts +143 -0
- package/src/cli/provider.ts +112 -34
- package/src/cli/registry.ts +62 -20
- package/src/cli/remote-workspace-hub.ts +83 -0
- package/src/cli/remote-workspace.ts +6 -1
- package/src/cli/restart-failure.ts +27 -0
- package/src/cli/root.ts +12 -0
- package/src/cli/route-policy-write.ts +137 -0
- package/src/cli/route-policy.ts +8 -0
- package/src/cli/runtime-api.ts +56 -79
- package/src/cli/secret-args.ts +149 -0
- package/src/cli/settings-result.ts +30 -0
- package/src/cli/storage.ts +77 -7
- package/src/cli/system-command.ts +60 -2
- package/src/cli/system-restart-client.ts +20 -3
- package/src/cli/system-settings-parity.ts +83 -0
- package/src/cli/update-restart-candidate.ts +21 -0
- package/src/cli/update-restart-child.ts +81 -0
- package/src/cli/update-restart-home.ts +38 -0
- package/src/cli/update-restart-transport.ts +193 -0
- package/src/cli/update-restart.ts +260 -0
- package/src/cli/usage-model-search.ts +58 -0
- package/src/cli/usage-report.ts +13 -5
- package/src/cli/v2-input.ts +66 -0
- package/src/cli/v2-local-output.ts +37 -0
- package/src/cli/v2-runtime.ts +90 -0
- package/src/cli/v2.ts +102 -144
- package/src/clients/config-export/dsh.ts +21 -0
- package/src/clients/config-export.ts +7 -1
- package/src/codex/catalog/build-entries.ts +1 -1
- package/src/codex/catalog/bundled.ts +9 -2
- package/src/codex/catalog/heal-observation.ts +66 -0
- package/src/codex/catalog/publication-observer.ts +19 -0
- package/src/codex/catalog/remote.ts +13 -15
- package/src/codex/catalog/restore.ts +19 -6
- package/src/codex/catalog/retained-sync.ts +58 -10
- package/src/codex/catalog/routed-removal.ts +116 -0
- package/src/codex/catalog/write-audit-contract.ts +21 -0
- package/src/codex/catalog/write-audit.ts +171 -0
- package/src/codex/catalog-self-heal.ts +284 -0
- package/src/codex/catalog-write-serialization.ts +71 -7
- package/src/codex/codex-home-owner.ts +124 -0
- package/src/codex/convergence.ts +55 -15
- package/src/codex/features.ts +8 -1
- package/src/codex/inject/restore.ts +46 -4
- package/src/codex/inject.ts +11 -1
- package/src/codex/internal/catalog-writer.ts +120 -13
- package/src/codex/journal.ts +49 -13
- package/src/codex/management-convergence.ts +3 -0
- package/src/codex/quota-types.ts +3 -0
- package/src/codex/quota.ts +13 -3
- package/src/codex/refresh.ts +20 -9
- package/src/codex/runtime.ts +7 -1
- package/src/codex/shim-diagnostics.ts +80 -0
- package/src/codex/shim-fingerprint.ts +7 -2
- package/src/codex/shim-migration.ts +153 -0
- package/src/codex/shim-overlay.ts +509 -0
- package/src/codex/shim-path-resolution.ts +14 -2
- package/src/codex/shim-probe.ts +4 -3
- package/src/codex/shim-state-file.ts +93 -7
- package/src/codex/shim.ts +15 -68
- package/src/codex/sync.ts +24 -4
- package/src/combos/failover.ts +19 -0
- package/src/combos/index.ts +1 -0
- package/src/combos/resolve.ts +12 -0
- package/src/config/atomic-write.ts +13 -8
- package/src/config/diagnostics.ts +19 -1
- package/src/config/load-degrade.ts +3 -0
- package/src/config/schema/chatgpt-desktop.ts +22 -0
- package/src/config/schema/config-schema.ts +32 -14
- package/src/config/schema/leaf-validators.ts +3 -2
- package/src/generated/compatibility-version.json +445 -129
- package/src/integrations/merge.ts +13 -5
- package/src/integrations/mutation-plan.ts +46 -3
- package/src/integrations/omp-yaml-source.ts +181 -1
- package/src/integrations/ownership-policy.ts +66 -0
- package/src/integrations/registry.ts +50 -1
- package/src/integrations/state.ts +46 -21
- package/src/integrations/target.ts +25 -2
- package/src/integrations/writer.ts +89 -31
- package/src/lib/package-tree-integrity.ts +42 -1
- package/src/lib/proxy-env.ts +3 -0
- package/src/lib/test-home-guard.ts +2 -1
- package/src/oauth/anthropic-account-refusal.ts +19 -8
- package/src/oauth/anthropic-routing.ts +17 -12
- package/src/oauth/anthropic.ts +27 -2
- package/src/oauth/index.ts +6 -8
- package/src/oauth/pool-settings-capability.ts +9 -2
- package/src/protocols/plan-snapshot.ts +1 -1
- package/src/protocols/settings.ts +28 -4
- package/src/server/caller-session-identity.ts +32 -0
- package/src/server/claude-messages.ts +11 -4
- package/src/server/index/serve-options.ts +12 -7
- package/src/server/index.ts +1 -1
- package/src/server/management/agent-settings-routes.ts +6 -5
- package/src/server/management/context.ts +8 -1
- package/src/server/management/cursor-integration-routes.ts +3 -3
- package/src/server/management/integration-routes.ts +5 -5
- package/src/server/management/model-routes.ts +3 -3
- package/src/server/management/native-integration-routes.ts +2 -2
- package/src/server/management/oauth-account-routes.ts +96 -30
- package/src/server/management/route-registry.ts +25 -24
- package/src/server/messages-native-eligibility.ts +3 -6
- package/src/server/messages-native-oauth.ts +82 -35
- package/src/server/messages-native.ts +78 -16
- package/src/server/responses/adapter-dispatch.ts +53 -28
- package/src/server/responses/core-auth.ts +10 -4
- package/src/server/responses/core-combo.ts +46 -6
- package/src/service/cli.ts +6 -1
- package/src/service/ownership-mutation-lease.d.mts +26 -0
- package/src/service/ownership-mutation-lease.mjs +76 -1
- package/src/types/config.ts +2 -0
- package/src/types/provider.ts +10 -10
- package/src/update/index.ts +2 -1
- package/src/update/update-failure-guidance.d.mts +6 -0
- package/src/update/update-failure-guidance.mjs +30 -5
- package/gui/dist/assets/App-COdEeqSj.css +0 -1
- package/gui/dist/assets/App-DEpCJEP_.js +0 -54
- package/gui/dist/assets/index-Cd7ittMv.css +0 -1
- package/gui/dist/assets/index-DwJKFJm5.js +0 -94
- package/gui/dist/assets/quota-summary-DGcEJU3h.js +0 -1
|
@@ -0,0 +1,414 @@
|
|
|
1
|
+
import type { Capability } from "./capability-types";
|
|
2
|
+
|
|
3
|
+
export const AGENT_ROUTING_CAPABILITIES: readonly Capability[] = [
|
|
4
|
+
{
|
|
5
|
+
command: ["agent", "status"],
|
|
6
|
+
usage: "ocx agent status [--json]",
|
|
7
|
+
summary: "Read agent mode, delegation, effort caps, roster, fallback and sidecars.",
|
|
8
|
+
routes: [{"method": "GET", "path": "/api/v2"}, {"method": "GET", "path": "/api/injection-model"}, {"method": "GET", "path": "/api/effort-caps"}, {"method": "GET", "path": "/api/subagent-models"}, {"method": "GET", "path": "/api/subagent-model-fallback"}, {"method": "GET", "path": "/api/sidecar-settings"}],
|
|
9
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
10
|
+
mutates: false,
|
|
11
|
+
json: "envelope",
|
|
12
|
+
details: [],
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
command: ["agent", "effort"],
|
|
16
|
+
usage: "ocx agent effort status [--json]",
|
|
17
|
+
summary: "Read or set main and subagent effort caps.",
|
|
18
|
+
routes: [{"method": "GET", "path": "/api/effort-caps"}],
|
|
19
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
20
|
+
mutates: false,
|
|
21
|
+
json: "payload",
|
|
22
|
+
details: ["set requires at least one cap; a null clears it."],
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
command: ["agent", "effort", "set"],
|
|
26
|
+
usage: "ocx agent effort set [--main <level|->] [--subagent <level|->] [--json]",
|
|
27
|
+
summary: "Read or set main and subagent effort caps.",
|
|
28
|
+
routes: [{"method": "PUT", "path": "/api/effort-caps"}],
|
|
29
|
+
flags: [{"name": "--main", "value": "string", "summary": "Main effort cap; - clears."}, {"name": "--subagent", "value": "string", "summary": "Subagent effort cap; - clears."}, {"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
30
|
+
mutates: true,
|
|
31
|
+
json: "payload",
|
|
32
|
+
details: ["set requires at least one cap; a null clears it."],
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
command: ["agent", "subagents"],
|
|
36
|
+
usage: "ocx agent subagents status [--json]",
|
|
37
|
+
summary: "Read, replace or clear the ordered featured subagent roster.",
|
|
38
|
+
routes: [{"method": "GET", "path": "/api/subagent-models"}],
|
|
39
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
40
|
+
mutates: false,
|
|
41
|
+
json: "payload",
|
|
42
|
+
details: ["At most five models; clear sends an empty roster. agent roster is an alias."],
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
command: ["agent", "subagents", "set"],
|
|
46
|
+
usage: "ocx agent subagents set <model,model...> [--json]",
|
|
47
|
+
summary: "Read, replace or clear the ordered featured subagent roster.",
|
|
48
|
+
routes: [{"method": "PUT", "path": "/api/subagent-models"}],
|
|
49
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
50
|
+
mutates: true,
|
|
51
|
+
json: "payload",
|
|
52
|
+
details: ["At most five models; clear sends an empty roster. agent roster is an alias."],
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
command: ["agent", "subagents", "clear"],
|
|
56
|
+
usage: "ocx agent subagents clear [--json]",
|
|
57
|
+
summary: "Clear the saved subagents models.",
|
|
58
|
+
routes: [{"method": "PUT", "path": "/api/subagent-models"}],
|
|
59
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
60
|
+
mutates: true,
|
|
61
|
+
json: "payload",
|
|
62
|
+
details: ["At most five models; clear sends an empty roster. agent roster is an alias."],
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
command: ["agent", "fallback"],
|
|
66
|
+
usage: "ocx agent fallback status [--json]",
|
|
67
|
+
summary: "Read, replace or clear fallback models and polling interval.",
|
|
68
|
+
routes: [{"method": "GET", "path": "/api/subagent-model-fallback"}],
|
|
69
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
70
|
+
mutates: false,
|
|
71
|
+
json: "payload",
|
|
72
|
+
details: ["set requires models and/or --poll-ms; clear empties the models and may also set --poll-ms."],
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
command: ["agent", "fallback", "set"],
|
|
76
|
+
usage: "ocx agent fallback set [model,model...] [--poll-ms <5000-600000>] [--json]",
|
|
77
|
+
summary: "Read, replace or clear fallback models and polling interval.",
|
|
78
|
+
routes: [{"method": "PUT", "path": "/api/subagent-model-fallback"}],
|
|
79
|
+
flags: [{"name": "--poll-ms", "value": "number", "summary": "Polling interval, 5000-600000 milliseconds."}, {"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
80
|
+
mutates: true,
|
|
81
|
+
json: "payload",
|
|
82
|
+
details: ["set requires models and/or --poll-ms; clear empties the models and may also set --poll-ms."],
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
command: ["agent", "fallback", "clear"],
|
|
86
|
+
usage: "ocx agent fallback clear [--poll-ms <5000-600000>] [--json]",
|
|
87
|
+
summary: "Clear the saved fallback models.",
|
|
88
|
+
routes: [{"method": "PUT", "path": "/api/subagent-model-fallback"}],
|
|
89
|
+
flags: [{"name": "--poll-ms", "value": "number", "summary": "Polling interval, 5000-600000 milliseconds."}, {"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
90
|
+
mutates: true,
|
|
91
|
+
json: "payload",
|
|
92
|
+
details: ["set requires models and/or --poll-ms; clear empties the models and may also set --poll-ms."],
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
command: ["agent", "sidecar"],
|
|
96
|
+
usage: "ocx agent sidecar status [--json]",
|
|
97
|
+
summary: "Read configured sidecars and candidate models.",
|
|
98
|
+
routes: [{"method": "GET", "path": "/api/sidecar-settings"}],
|
|
99
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
100
|
+
mutates: false,
|
|
101
|
+
json: "payload",
|
|
102
|
+
details: [],
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
command: ["agent","sidecar","web"],
|
|
106
|
+
usage: "ocx agent sidecar web (--list | [--model <id|->] [--backend <openai|anthropic|xai|gemini|exa|->] [--reasoning <level>] [--enabled <on|off>] [--stream-routed-output <on|off>]) [--json]",
|
|
107
|
+
summary: "List web candidates or change the web sidecar.",
|
|
108
|
+
routes: [{"method":"GET","path":"/api/sidecar-settings"},{"method":"PUT","path":"/api/sidecar-settings"}],
|
|
109
|
+
flags: [{"name":"--list","value":"boolean","summary":"Read candidates only; cannot combine with setting flags."},{"name":"--model","value":"string","summary":"Model selector; - clears."},{"name":"--backend","value":"string","summary":"Backend selector; - clears."},{"name":"--reasoning","value":"string","summary":"Reasoning level."},{"name":"--enabled","value":"string","summary":"on or off."},{"name":"--json","value":"boolean","summary":"Emit structured JSON."},{"name":"--stream-routed-output","value":"string","summary":"Stream routed web-search model output; web only."}],
|
|
110
|
+
mutates: true,
|
|
111
|
+
json: "payload",
|
|
112
|
+
details: ["Without --list at least one setting is required. Stored settings and Codex application outcomes remain distinct.","Web reasoning remains supported even though the mutation reply does not echo it. max-descriptions and timeout belong only to vision. New-option replies project the saved web settings and actual native apply report."],
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
command: ["agent","sidecar","vision"],
|
|
116
|
+
usage: "ocx agent sidecar vision (--list | [--model <id|->] [--backend <openai|anthropic|routed|->] [--reasoning <level>] [--max-descriptions <n>] [--enabled <on|off>] [--timeout-ms <1-2147483647>]) [--json]",
|
|
117
|
+
summary: "List vision candidates or change the vision sidecar.",
|
|
118
|
+
routes: [{"method":"GET","path":"/api/sidecar-settings"},{"method":"PUT","path":"/api/sidecar-settings"}],
|
|
119
|
+
flags: [{"name":"--list","value":"boolean","summary":"Read candidates only; cannot combine with setting flags."},{"name":"--model","value":"string","summary":"Model selector; - clears."},{"name":"--backend","value":"string","summary":"Backend selector; - clears."},{"name":"--reasoning","value":"string","summary":"Reasoning level."},{"name":"--max-descriptions","value":"number","summary":"Positive description limit."},{"name":"--enabled","value":"string","summary":"on or off."},{"name":"--json","value":"boolean","summary":"Emit structured JSON."},{"name":"--timeout-ms","value":"number","summary":"Vision request timeout, integer1–2147483647 milliseconds."}],
|
|
120
|
+
mutates: true,
|
|
121
|
+
json: "payload",
|
|
122
|
+
details: ["Without --list at least one setting is required. Stored settings and Codex application outcomes remain distinct.","Stream-routed-output belongs only to web. Timeout changes preserve siblings; native apply and saved state are distinct."],
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
command: ["effort"],
|
|
126
|
+
usage: "ocx effort [status|low|medium|high|xhigh|max|ultra|->] [--json]",
|
|
127
|
+
summary: "Read effort settings or set the main cap with a shorthand level.",
|
|
128
|
+
routes: [{"method": "GET", "path": "/api/effort-caps"}, {"method": "GET", "path": "/api/injection-model"}, {"method": "PUT", "path": "/api/effort-caps"}],
|
|
129
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
130
|
+
mutates: true,
|
|
131
|
+
json: "envelope",
|
|
132
|
+
details: ["Uses the live proxy when available, otherwise local config. Once live is selected, errors never fall back to local writes; set reads back live status and can report partial application.", "The shorthand ocx effort <low|medium|high|xhigh|max|ultra|-> changes only the main cap; unset aliases clear."],
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
command: ["effort", "set"],
|
|
136
|
+
usage: "ocx effort set [--main <level|->] [--subagent <level|->] [--injection <level|->] [--json]",
|
|
137
|
+
summary: "Set one or more effort fields.",
|
|
138
|
+
routes: [{"method": "PUT", "path": "/api/effort-caps"}, {"method": "PUT", "path": "/api/injection-model"}, {"method": "GET", "path": "/api/effort-caps"}, {"method": "GET", "path": "/api/injection-model"}],
|
|
139
|
+
flags: [{"name": "--main", "value": "string", "summary": "Main cap; - clears."}, {"name": "--subagent", "value": "string", "summary": "Subagent cap; - clears."}, {"name": "--injection", "value": "string", "summary": "Delegation effort; - clears; also accepts none/minimal."}, {"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
140
|
+
mutates: true,
|
|
141
|
+
json: "envelope",
|
|
142
|
+
details: ["Local configuration is used when no live proxy is found; runtime failures are not silent offline success."],
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
command: ["effort", "clear"],
|
|
146
|
+
usage: "ocx effort clear [--json]",
|
|
147
|
+
summary: "Clear both caps while retaining delegation effort.",
|
|
148
|
+
routes: [{"method": "PUT", "path": "/api/effort-caps"}, {"method": "GET", "path": "/api/effort-caps"}, {"method": "GET", "path": "/api/injection-model"}],
|
|
149
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
150
|
+
mutates: true,
|
|
151
|
+
json: "envelope",
|
|
152
|
+
details: ["Local configuration is used when no live proxy is found; runtime failures are not silent offline success."],
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
command: ["effort", "model"],
|
|
156
|
+
usage: "ocx effort model <provider/model|model> [--json]",
|
|
157
|
+
summary: "Inspect a model effort ladder and wire mappings from local configuration.",
|
|
158
|
+
routes: [],
|
|
159
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
160
|
+
mutates: false,
|
|
161
|
+
json: "envelope",
|
|
162
|
+
details: ["Local configuration/catalog derivation; routes is empty because no management API is called."],
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
command: ["v2","status"],
|
|
166
|
+
usage: "ocx v2 [status] [--live] [--json]",
|
|
167
|
+
summary: "Report local multi-agent mode and Codex feature settings.",
|
|
168
|
+
routes: [{"method":"GET","path":"/api/v2"}],
|
|
169
|
+
flags: [{"name":"--live","value":"boolean","summary":"Use the selected runtime; otherwise preserve the local native/config operation."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
170
|
+
mutates: false,
|
|
171
|
+
json: "envelope",
|
|
172
|
+
details: ["Local and live targets never fall back into each other. Parse failures occur before native effects; JSON is one safe state/change/sync result, not collected log text.","Local mode/keep-native and changed on/off preserve their existing sync calls even without a discovered port; threads/hints and unchanged toggles do not gain sync. Unknown or failed sync evidence is nonzero with landed state visible.","Live writes use actual post-write state and full catalog outcomes; a502 can mean partial native changes. Read back before retrying; no rollback is implied."],
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
command: ["v2","on"],
|
|
176
|
+
usage: "ocx v2 on [--live] [--json]",
|
|
177
|
+
summary: "Enable the local Codex multi_agent_v2 feature.",
|
|
178
|
+
routes: [{"method":"PUT","path":"/api/v2"}],
|
|
179
|
+
flags: [{"name":"--live","value":"boolean","summary":"Use the selected runtime; otherwise preserve the local native/config operation."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
180
|
+
mutates: true,
|
|
181
|
+
json: "envelope",
|
|
182
|
+
details: ["Local and live targets never fall back into each other. Parse failures occur before native effects; JSON is one safe state/change/sync result, not collected log text.","Local mode/keep-native and changed on/off preserve their existing sync calls even without a discovered port; threads/hints and unchanged toggles do not gain sync. Unknown or failed sync evidence is nonzero with landed state visible.","Live writes use actual post-write state and full catalog outcomes; a502 can mean partial native changes. Read back before retrying; no rollback is implied."],
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
command: ["v2","off"],
|
|
186
|
+
usage: "ocx v2 off [--live] [--json]",
|
|
187
|
+
summary: "Disable the local Codex multi_agent_v2 feature.",
|
|
188
|
+
routes: [{"method":"PUT","path":"/api/v2"}],
|
|
189
|
+
flags: [{"name":"--live","value":"boolean","summary":"Use the selected runtime; otherwise preserve the local native/config operation."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
190
|
+
mutates: true,
|
|
191
|
+
json: "envelope",
|
|
192
|
+
details: ["Local and live targets never fall back into each other. Parse failures occur before native effects; JSON is one safe state/change/sync result, not collected log text.","Local mode/keep-native and changed on/off preserve their existing sync calls even without a discovered port; threads/hints and unchanged toggles do not gain sync. Unknown or failed sync evidence is nonzero with landed state visible.","Live writes use actual post-write state and full catalog outcomes; a502 can mean partial native changes. Read back before retrying; no rollback is implied."],
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
command: ["v2","mode"],
|
|
196
|
+
usage: "ocx v2 mode <v1|default|v2> [--live] [--json] [--acknowledge-surface-advisory]",
|
|
197
|
+
summary: "Set local model-catalog multi-agent mode.",
|
|
198
|
+
routes: [{"method":"PUT","path":"/api/v2"}],
|
|
199
|
+
flags: [{"name":"--live","value":"boolean","summary":"Use the selected runtime; otherwise preserve the local native/config operation."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."},{"name":"--acknowledge-surface-advisory","value":"boolean","summary":"Explicit live mode only; never implicitly acknowledged."}],
|
|
200
|
+
mutates: true,
|
|
201
|
+
json: "envelope",
|
|
202
|
+
details: ["Local and live targets never fall back into each other. Parse failures occur before native effects; JSON is one safe state/change/sync result, not collected log text.","Local mode/keep-native and changed on/off preserve their existing sync calls even without a discovered port; threads/hints and unchanged toggles do not gain sync. Unknown or failed sync evidence is nonzero with landed state visible.","Live writes use actual post-write state and full catalog outcomes; a502 can mean partial native changes. Read back before retrying; no rollback is implied."],
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
command: ["v2","keep-native-v1"],
|
|
206
|
+
usage: "ocx v2 keep-native-v1 <on|off> [--live] [--json]",
|
|
207
|
+
summary: "Keep native ChatGPT on v1 while routed models use v2.",
|
|
208
|
+
routes: [{"method":"PUT","path":"/api/v2"}],
|
|
209
|
+
flags: [{"name":"--live","value":"boolean","summary":"Use the selected runtime; otherwise preserve the local native/config operation."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
210
|
+
mutates: true,
|
|
211
|
+
json: "envelope",
|
|
212
|
+
details: ["Local and live targets never fall back into each other. Parse failures occur before native effects; JSON is one safe state/change/sync result, not collected log text.","Local mode/keep-native and changed on/off preserve their existing sync calls even without a discovered port; threads/hints and unchanged toggles do not gain sync. Unknown or failed sync evidence is nonzero with landed state visible.","Live writes use actual post-write state and full catalog outcomes; a502 can mean partial native changes. Read back before retrying; no rollback is implied."],
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
command: ["v2","threads"],
|
|
216
|
+
usage: "ocx v2 threads <n> [--live] [--json]",
|
|
217
|
+
summary: "Set the local active-mode thread limit (integer at least 1).",
|
|
218
|
+
routes: [{"method":"PUT","path":"/api/v2"}],
|
|
219
|
+
flags: [{"name":"--live","value":"boolean","summary":"Use the selected runtime; otherwise preserve the local native/config operation."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
220
|
+
mutates: true,
|
|
221
|
+
json: "envelope",
|
|
222
|
+
details: ["Local and live targets never fall back into each other. Parse failures occur before native effects; JSON is one safe state/change/sync result, not collected log text.","Local mode/keep-native and changed on/off preserve their existing sync calls even without a discovered port; threads/hints and unchanged toggles do not gain sync. Unknown or failed sync evidence is nonzero with landed state visible.","Live writes use actual post-write state and full catalog outcomes; a502 can mean partial native changes. Read back before retrying; no rollback is implied."],
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
command: ["v2","mode-hint"],
|
|
226
|
+
usage: "ocx v2 mode-hint <text|--clear> [--live] [--json]; ocx v2 mode-hint [--live] [--json] -- <literal-text>",
|
|
227
|
+
summary: "Set nonblank local delegation hint text or restore effort-derived policy.",
|
|
228
|
+
routes: [{"method":"PUT","path":"/api/v2"}],
|
|
229
|
+
flags: [{"name":"--clear","value":"boolean","summary":"Unset the hint."},{"name":"--live","value":"boolean","summary":"Use the selected runtime; otherwise preserve the local native/config operation."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
230
|
+
mutates: true,
|
|
231
|
+
json: "envelope",
|
|
232
|
+
details: ["Local and live targets never fall back into each other. Parse failures occur before native effects; JSON is one safe state/change/sync result, not collected log text.","Local mode/keep-native and changed on/off preserve their existing sync calls even without a discovered port; threads/hints and unchanged toggles do not gain sync. Unknown or failed sync evidence is nonzero with landed state visible.","Live writes use actual post-write state and full catalog outcomes; a502 can mean partial native changes. Read back before retrying; no rollback is implied.","Use -- before one literal hint that equals a reserved control such as --live, --json or --clear. Text after the terminator is never interpreted as a target/output flag."],
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
command: ["combo", "list"],
|
|
236
|
+
usage: "ocx combo list [--json]",
|
|
237
|
+
summary: "List saved combos.",
|
|
238
|
+
routes: [{"method": "GET", "path": "/api/combos"}],
|
|
239
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
240
|
+
mutates: false,
|
|
241
|
+
json: "payload",
|
|
242
|
+
details: [],
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
command: ["combo", "show"],
|
|
246
|
+
usage: "ocx combo show <id> [--json]",
|
|
247
|
+
summary: "Read one saved combo from the collection.",
|
|
248
|
+
routes: [{"method": "GET", "path": "/api/combos"}],
|
|
249
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
250
|
+
mutates: false,
|
|
251
|
+
json: "payload",
|
|
252
|
+
details: [],
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
command: ["combo","set"],
|
|
256
|
+
usage: "ocx combo set <id> [--targets <provider/model[:weight],...> | --targets-file <FILE|->] [--strategy <failover|round-robin|random|least-used|reset-window|jev>] [--sticky <1-100|->] [--effort <low|medium|high|xhigh|max|ultra|->] [--effort-mode <fallback|force|->] [--alias <name|->] [--native-alias [on|off]] [--display-name <label|->] [--decision-provider <provider|-> | --decision-model <route|->] [--decision-timeout <ms|->] [--rename-from <id>] [--image-input <auto|disabled>] [--reasoning-effort-mode <strict|adaptive>] [--json]",
|
|
257
|
+
summary: "Create, update or rename a combo.",
|
|
258
|
+
routes: [{"method":"GET","path":"/api/combos"},{"method":"PUT","path":"/api/combos"}],
|
|
259
|
+
flags: [{"name":"--targets","value":"string","summary":"Ordered provider/model[:weight] list; required for creation."},{"name":"--strategy","value":"string","summary":"Routing strategy."},{"name":"--sticky","value":"string","summary":"Round-robin limit 1-100; - resets."},{"name":"--effort","value":"string","summary":"Default effort; - clears."},{"name":"--effort-mode","value":"string","summary":"fallback or force; - resets to fallback."},{"name":"--alias","value":"string","summary":"Alias; - clears."},{"name":"--display-name","value":"string","summary":"Label; - clears."},{"name":"--decision-provider","value":"string","summary":"JEV provider; - clears."},{"name":"--decision-model","value":"string","summary":"JEV route; - clears; exclusive with provider."},{"name":"--decision-timeout","value":"string","summary":"JEV deadline 1000-120000 ms; - clears."},{"name":"--rename-from","value":"string","summary":"Existing combo ID to rename."},{"name":"--json","value":"boolean","summary":"Emit structured JSON."},{"name":"--native-alias","value":"string","summary":"Bare legacy flag means on; explicit on/off preserves presence, including false."},{"name":"--targets-file","value":"string","summary":"Bounded ordered target JSON array, exclusive with --targets; preserves effort/profile/last-resort metadata."},{"name":"--image-input","value":"string","summary":"auto or disabled; explicit auto clears the previous disabled choice."},{"name":"--reasoning-effort-mode","value":"string","summary":"strict or adaptive, distinct from --effort-mode fallback/force."}],
|
|
260
|
+
mutates: true,
|
|
261
|
+
json: "payload",
|
|
262
|
+
details: ["create and update are aliases of set. Existing fields are read before writing; --targets replaces targets.","force overrides valid client effort and may increase cost and latency.","Only the implemented target grammar is supported; full GUI target metadata and routing-profile writes are separate tasks.","New file/flag conflicts refuse before transport. Partial edits preserve target metadata; explicit false/default values override server carry. Turning a native alias off may also require clearing its incompatible alias.","Read/merge/write uses one target and remains an upsert without revision CAS. Saved-but-incomplete catalog outcomes return nonzero with their receipt."],
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
command: ["combo", "remove"],
|
|
266
|
+
usage: "ocx combo remove <id> --yes [--json]",
|
|
267
|
+
summary: "Remove a saved combo after explicit confirmation.",
|
|
268
|
+
routes: [{"method": "DELETE", "path": "/api/combos"}],
|
|
269
|
+
flags: [{"name": "--yes", "value": "boolean", "summary": "Confirm deletion.", "required": true}, {"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
270
|
+
mutates: true,
|
|
271
|
+
json: "payload",
|
|
272
|
+
details: ["delete is an alias; the ID is encoded in the id query parameter."],
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
command: ["route", "policy", "list"],
|
|
276
|
+
usage: "ocx route policy list [--json]",
|
|
277
|
+
summary: "List saved routing profiles and revisions.",
|
|
278
|
+
routes: [{"method": "GET", "path": "/api/routing-profiles"}],
|
|
279
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
280
|
+
mutates: false,
|
|
281
|
+
json: "payload",
|
|
282
|
+
details: [],
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
command: ["route", "policy", "show"],
|
|
286
|
+
usage: "ocx route policy show <id> [--json]",
|
|
287
|
+
summary: "Read one saved routing profile.",
|
|
288
|
+
routes: [{"method": "GET", "path": "/api/routing-profiles"}],
|
|
289
|
+
flags: [{"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
290
|
+
mutates: false,
|
|
291
|
+
json: "payload",
|
|
292
|
+
details: [],
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
command: ["route", "policy", "dry-run"],
|
|
296
|
+
usage: "ocx route policy dry-run <id> [--model-context <tokens>] [--tools] [--image] [--structured-output] [--json]",
|
|
297
|
+
summary: "Evaluate a saved profile against explicit requirements without changing it.",
|
|
298
|
+
routes: [{"method": "POST", "path": "/api/routing-profiles/dry-run"}],
|
|
299
|
+
flags: [{"name": "--model-context", "value": "number", "summary": "Positive context window requirement."}, {"name": "--tools", "value": "boolean", "summary": "Require tools."}, {"name": "--image", "value": "boolean", "summary": "Require image input."}, {"name": "--structured-output", "value": "boolean", "summary": "Require structured output."}, {"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
300
|
+
mutates: true,
|
|
301
|
+
json: "payload",
|
|
302
|
+
details: ["evaluate and dry-run do not save the profile, but their POST can activate Lab and start automation already enabled by local policy. No profile create, update or delete is exposed."],
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
command: ["route", "policy", "evaluate"],
|
|
306
|
+
usage: "ocx route policy evaluate <id> [--model-context <tokens>] [--tools] [--image] [--structured-output] [--json]",
|
|
307
|
+
summary: "Evaluate a saved profile against explicit requirements without changing it.",
|
|
308
|
+
routes: [{"method": "POST", "path": "/api/routing-profiles/dry-run"}],
|
|
309
|
+
flags: [{"name": "--model-context", "value": "number", "summary": "Positive context window requirement."}, {"name": "--tools", "value": "boolean", "summary": "Require tools."}, {"name": "--image", "value": "boolean", "summary": "Require image input."}, {"name": "--structured-output", "value": "boolean", "summary": "Require structured output."}, {"name": "--json", "value": "boolean", "summary": "Emit structured JSON."}],
|
|
310
|
+
mutates: true,
|
|
311
|
+
json: "payload",
|
|
312
|
+
details: ["evaluate and dry-run do not save the profile, but their POST can activate Lab and start automation already enabled by local policy. No profile create, update or delete is exposed."],
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
command: ["route","policy","create"],
|
|
316
|
+
usage: "ocx route policy create <id> --file <FILE|-> [--json]",
|
|
317
|
+
summary: "Create a routing profile from an editable-only document.",
|
|
318
|
+
routes: [{"method":"PUT","path":"/api/routing-profiles"}],
|
|
319
|
+
flags: [{"name":"--file","value":"string","summary":"Bounded editable profile JSON; omit show DTO id/model/revision fields.","required":true},{"name":"--json","value":"boolean","summary":"Emit the validated command result as JSON."}],
|
|
320
|
+
mutates: true,
|
|
321
|
+
json: "envelope",
|
|
322
|
+
details: ["The server validates provider/alias/routing relationships and may activate Lab plus automation already enabled on the target. No implicit decision/inference probe follows the save.","An existing ID refuses rather than becoming an update.","Unknown/readonly/nested unsupported file fields refuse; no raw validator issues or file contents are echoed."],
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
command: ["route","policy","update"],
|
|
326
|
+
usage: "ocx route policy update <id> --file <FILE|-> --expected-revision <revision> [--json]",
|
|
327
|
+
summary: "Update a routing profile from an editable-only document.",
|
|
328
|
+
routes: [{"method":"PUT","path":"/api/routing-profiles"}],
|
|
329
|
+
flags: [{"name":"--file","value":"string","summary":"Bounded editable profile JSON; omit show DTO id/model/revision fields.","required":true},{"name":"--expected-revision","value":"string","summary":"Exact nonblank revision observed by the caller; never automatically refreshed.","required":true},{"name":"--json","value":"boolean","summary":"Emit the validated command result as JSON."}],
|
|
330
|
+
mutates: true,
|
|
331
|
+
json: "envelope",
|
|
332
|
+
details: ["The server validates provider/alias/routing relationships and may activate Lab plus automation already enabled on the target. No implicit decision/inference probe follows the save.","Stale revision is exit5 with no overwrite/retry; missing profile is exit4.","Unknown/readonly/nested unsupported file fields refuse; no raw validator issues or file contents are echoed."],
|
|
333
|
+
},
|
|
334
|
+
{
|
|
335
|
+
command: ["route","policy","remove"],
|
|
336
|
+
usage: "ocx route policy remove <id> --yes [--json]",
|
|
337
|
+
summary: "Remove one exact routing profile ID.",
|
|
338
|
+
routes: [{"method":"DELETE","path":"/api/routing-profiles"}],
|
|
339
|
+
flags: [{"name":"--yes","value":"boolean","summary":"Explicitly confirm removal.","required":true},{"name":"--json","value":"boolean","summary":"Emit the validated command result as JSON."}],
|
|
340
|
+
mutates: true,
|
|
341
|
+
json: "envelope",
|
|
342
|
+
details: ["Uses the internal stored ID, not a public model alias. DELETE has no revision guard. Saved/catalog outcomes remain distinct; no alternate-target retry."],
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
command: ["combo","stats"],
|
|
346
|
+
usage: "ocx combo stats <id> [--range <7d|30d|all>] [--json]",
|
|
347
|
+
summary: "Read JEV decision and token coverage for an exact combo ID.",
|
|
348
|
+
routes: [{"method":"GET","path":"/api/usage"}],
|
|
349
|
+
flags: [{"name":"--range","value":"string","summary":"7d,30d or all; default30d."},{"name":"--json","value":"boolean","summary":"Emit the validated command result as JSON."}],
|
|
350
|
+
mutates: false,
|
|
351
|
+
json: "envelope",
|
|
352
|
+
details: ["Uses jev=1,comboId and range. Preserves actual counts, nullable averages, measurement coverage and incomplete/truncated history.","No monetary cost or comparative savings baseline exists in this DTO. This is not a decision probe and makes no model inference request."],
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
command: ["agent","memory-models","show"],
|
|
356
|
+
usage: "ocx agent memory-models show [--json]",
|
|
357
|
+
summary: "Read the memory model override block.",
|
|
358
|
+
routes: [{"method":"GET","path":"/api/settings"}],
|
|
359
|
+
flags: [{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
360
|
+
mutates: false,
|
|
361
|
+
json: "envelope",
|
|
362
|
+
details: ["An omitted phase keeps its existing/default route; this does not disable extraction, consolidation or the memory pipeline. File{} means no configured overrides, while clear sends null.","Set replaces the full block, preserving canonical schema normalization only. No synthetic inference verifies the save. Writes report the actual normalized block and catalogRefreshPending, which is not a full catalog receipt."],
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
command: ["agent","memory-models","set"],
|
|
366
|
+
usage: "ocx agent memory-models set (--file <FILE|-> | [--extract-model <model> [--extract-effort <effort>]] [--consolidation-model <model> [--consolidation-effort <effort>]]) [--json]",
|
|
367
|
+
summary: "Replace the memory model override block.",
|
|
368
|
+
routes: [{"method":"PUT","path":"/api/settings"}],
|
|
369
|
+
flags: [{"name":"--file","value":"string","summary":"Bounded strict block JSON or explicit stdin; exclusive with all scalar fields."},{"name":"--extract-model","value":"string","summary":"Extraction override model."},{"name":"--extract-effort","value":"string","summary":"Requires an extraction model."},{"name":"--consolidation-model","value":"string","summary":"Consolidation override model."},{"name":"--consolidation-effort","value":"string","summary":"Requires a consolidation model."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
370
|
+
mutates: true,
|
|
371
|
+
json: "envelope",
|
|
372
|
+
details: ["An omitted phase keeps its existing/default route; this does not disable extraction, consolidation or the memory pipeline. File{} means no configured overrides, while clear sends null.","Set replaces the full block, preserving canonical schema normalization only. No synthetic inference verifies the save. Writes report the actual normalized block and catalogRefreshPending, which is not a full catalog receipt."],
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
command: ["agent","memory-models","clear"],
|
|
376
|
+
usage: "ocx agent memory-models clear [--json]",
|
|
377
|
+
summary: "Clear the memory model override block.",
|
|
378
|
+
routes: [{"method":"PUT","path":"/api/settings"}],
|
|
379
|
+
flags: [{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
380
|
+
mutates: true,
|
|
381
|
+
json: "envelope",
|
|
382
|
+
details: ["An omitted phase keeps its existing/default route; this does not disable extraction, consolidation or the memory pipeline. File{} means no configured overrides, while clear sends null.","Set replaces the full block, preserving canonical schema normalization only. No synthetic inference verifies the save. Writes report the actual normalized block and catalogRefreshPending, which is not a full catalog receipt."],
|
|
383
|
+
},
|
|
384
|
+
{
|
|
385
|
+
command: ["agent","compaction-routing","show"],
|
|
386
|
+
usage: "ocx agent compaction-routing show [--json]",
|
|
387
|
+
summary: "Read the compaction routing override block.",
|
|
388
|
+
routes: [{"method":"GET","path":"/api/settings"}],
|
|
389
|
+
flags: [{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
390
|
+
mutates: false,
|
|
391
|
+
json: "envelope",
|
|
392
|
+
details: ["Clear restores ordinary compaction routing; it does not disable compaction. Omitted triggers/sources retain server defaults.","Set replaces the full block, preserving canonical schema normalization only. No synthetic inference verifies the save. Writes report the actual normalized block and catalogRefreshPending, which is not a full catalog receipt."],
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
command: ["agent","compaction-routing","set"],
|
|
396
|
+
usage: "ocx agent compaction-routing set (--file <FILE|-> | --model <model> [--effort <effort>] [--triggers <manual,auto>] [--sources <selector,...>]) [--json]",
|
|
397
|
+
summary: "Replace the compaction routing override block.",
|
|
398
|
+
routes: [{"method":"PUT","path":"/api/settings"}],
|
|
399
|
+
flags: [{"name":"--file","value":"string","summary":"Bounded strict block JSON or explicit stdin; exclusive with all scalar fields."},{"name":"--model","value":"string","summary":"Required routing override model in scalar mode."},{"name":"--effort","value":"string","summary":"Optional canonical pinned effort."},{"name":"--triggers","value":"string","summary":"Unique nonempty manual/auto values; no lossy filtering."},{"name":"--sources","value":"string","summary":"Unique exact selectors or provider/* patterns; omitted means all/default scope."},{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
400
|
+
mutates: true,
|
|
401
|
+
json: "envelope",
|
|
402
|
+
details: ["Clear restores ordinary compaction routing; it does not disable compaction. Omitted triggers/sources retain server defaults.","Set replaces the full block, preserving canonical schema normalization only. No synthetic inference verifies the save. Writes report the actual normalized block and catalogRefreshPending, which is not a full catalog receipt."],
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
command: ["agent","compaction-routing","clear"],
|
|
406
|
+
usage: "ocx agent compaction-routing clear [--json]",
|
|
407
|
+
summary: "Clear the compaction routing override block.",
|
|
408
|
+
routes: [{"method":"PUT","path":"/api/settings"}],
|
|
409
|
+
flags: [{"name":"--json","value":"boolean","summary":"Emit the validated task result as one JSON document."}],
|
|
410
|
+
mutates: true,
|
|
411
|
+
json: "envelope",
|
|
412
|
+
details: ["Clear restores ordinary compaction routing; it does not disable compaction. Omitted triggers/sources retain server defaults.","Set replaces the full block, preserving canonical schema normalization only. No synthetic inference verifies the save. Writes report the actual normalized block and catalogRefreshPending, which is not a full catalog receipt."],
|
|
413
|
+
},
|
|
414
|
+
];
|