skills/omni-settings/SKILL.md
Read and update global application settings: system prompts, thinking budget, IP filters, payload rules, combo defaults, and require-login configuration.
All requests require a valid Bearer token or session cookie. Obtain a token via POST /api/auth/login or configure REQUIRE_API_KEY=false for local development.
Get memory settings
Returns the extended memory settings including 7 new fields added in plan 21 (embeddingSource, embeddingProviderModel, transformersEnabled, staticEnabled, rerankEnabled, rerankProviderModel, vectorStore).
curl https://localhost:20128/api/settings/memory \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update memory settings
Update any subset of the extended memory settings. All fields are optional; only provided fields are updated. Schema: MemorySettingsExtendedSchema.
curl -X PUT https://localhost:20128/api/settings/memory \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get Qdrant settings
Returns current Qdrant configuration. The apiKey field is never returned raw — use hasApiKey / apiKeyMasked instead.
curl https://localhost:20128/api/settings/qdrant \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update Qdrant settings
Update Qdrant configuration. Pass apiKey: "" to remove the stored key. Schema: QdrantSettingsUpdateSchema.
curl -X PUT https://localhost:20128/api/settings/qdrant \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Qdrant health probe
Performs a liveness check against the configured Qdrant instance. Returns latency and any connection error (sanitized — no stack traces).
curl https://localhost:20128/api/settings/qdrant/health \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Qdrant semantic search test
Performs a test semantic search against the Qdrant collection. Useful for validating that the integration works end-to-end. Schema: QdrantSearchSchema.
curl -X POST https://localhost:20128/api/settings/qdrant/search \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Clean up expired Qdrant points
Removes Qdrant points for memories that have expired or exceeded the configured retention window.
curl -X POST https://localhost:20128/api/settings/qdrant/cleanup \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
List Qdrant embedding models
Returns the list of embedding models available for use with Qdrant.
curl https://localhost:20128/api/settings/qdrant/embedding-models \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Get application settings
curl https://localhost:20128/api/settings \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update settings
curl -X PATCH https://localhost:20128/api/settings \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Clear request log history
Deletes call_logs, legacy request_detail_logs, and local request artifact files under DATA_DIR/call_logs.
curl -X POST https://localhost:20128/api/settings/purge-request-history \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get global compression settings
curl https://localhost:20128/api/settings/compression \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update global compression settings
curl -X PUT https://localhost:20128/api/settings/compression \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get the MCP tool-output accessibility (trimming) config
curl https://localhost:20128/api/settings/compression/mcp-accessibility \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update the MCP tool-output accessibility (trimming) config
Partial-merge update. Numeric floors (e.g. a maxTextChars below the truncation-tail reserve) are folded back to the safe defaults server-side, so the response reflects the effective config.
curl -X PUT https://localhost:20128/api/settings/compression/mcp-accessibility \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get payload rules configuration
Returns the current payload rules used to mutate outgoing request payloads before they are sent upstream.
Requires a dashboard management session cookie when management auth is enabled.
curl https://localhost:20128/api/settings/payload-rules \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update payload rules configuration
Persists and hot reloads payload rules. The legacy input field default-raw is accepted
on writes and normalized to defaultRaw in responses/runtime state.
Requires a dashboard management session cookie when management auth is enabled.
curl -X PUT https://localhost:20128/api/settings/payload-rules \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get combo default settings
curl https://localhost:20128/api/settings/combo-defaults \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Get proxy settings
curl https://localhost:20128/api/settings/proxy \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update proxy settings
curl -X PATCH https://localhost:20128/api/settings/proxy \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Test proxy connection
curl -X POST https://localhost:20128/api/settings/proxy/test \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Toggle login requirement
curl -X POST https://localhost:20128/api/settings/require-login \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get IP filter configuration
Returns the current IP filter settings including blacklist, whitelist, and temp bans.
curl https://localhost:20128/api/settings/ip-filter \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update IP filter configuration
Configure IP filtering with blacklist/whitelist modes, add/remove individual IPs, and manage temp bans.
curl -X PUT https://localhost:20128/api/settings/ip-filter \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get system prompt configuration
Returns the current system prompt injection settings.
curl https://localhost:20128/api/settings/system-prompt \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update system prompt configuration
curl -X PUT https://localhost:20128/api/settings/system-prompt \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Get thinking budget configuration
Returns the current thinking/reasoning budget settings for AI models.
curl https://localhost:20128/api/settings/thinking-budget \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update thinking budget configuration
curl -X PUT https://localhost:20128/api/settings/thinking-budget \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
List Ollama-compatible model tags
Returns models in Ollama /api/tags format for Ollama client compatibility
curl https://localhost:20128/api/tags \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Get current quota store driver settings
Redis URL is masked in the response (shows only scheme+host).
curl https://localhost:20128/api/settings/quota-store \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
Update quota store driver settings
curl -X PUT https://localhost:20128/api/settings/quota-store \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
Purge usage history
Dashboard-only. Purges stored usage-history records.
curl -X POST https://localhost:20128/api/settings/purge-usage-history \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
See the full OpenAPI specification at GET /api/openapi/spec or docs/openapi.yaml for detailed request/response schemas.
Returns proxy-level thinking/reasoning request rewrite settings:
| Field | Meaning |
|---|---|
mode | passthrough (leave client reasoning alone — required for Codex visible thinking), auto (strips all client thinking fields), custom, adaptive |
customBudget | Fixed budget when mode=custom |
effortLevel | Base effort when mode=adaptive |
Not compression and not "decrypt encrypted reasoning". Full guide: docs/guides/THINKING_BUDGET.md.
Example — keep client-controlled reasoning (Codex/Desktop):
curl -X PUT https://localhost:20128/api/settings/thinking-budget \
-H "Authorization: Bearer $OMNIROUTE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode":"passthrough","customBudget":10240,"effortLevel":"medium"}'
Warning: mode=auto deletes reasoning / reasoning_effort / Claude thinking from the outbound body before upstream. That can empty thinking panels even when the client requested Ultra + summary.