omni-settings
GitHub管理应用全局设置,包括系统提示、思考预算、IP过滤及Qdrant向量数据库配置。提供查询、更新、健康检查、语义搜索测试和过期数据清理功能,支持通过API或Cookie认证访问。
Trigger Scenarios
Install
npx skills add diegosouzapw/OmniRoute --skill omni-settings -g -y
SKILL.md
Frontmatter
{
"name": "omni-settings",
"description": "Read and update global application settings: system prompts, thinking budget, IP filters, payload rules, combo defaults, and require-login configuration."
}
Overview
Read and update global application settings: system prompts, thinking budget, IP filters, payload rules, combo defaults, and require-login configuration.
Authentication
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.
Endpoints
GET /api/settings/memory
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"
PUT /api/settings/memory
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 /api/settings/qdrant
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"
PUT /api/settings/qdrant
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 '{}'
GET /api/settings/qdrant/health
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"
POST /api/settings/qdrant/search
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 '{}'
POST /api/settings/qdrant/cleanup
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 '{}'
GET /api/settings/qdrant/embedding-models
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 /api/settings
Get application settings
curl https://localhost:20128/api/settings \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
PATCH /api/settings
Update settings
curl -X PATCH https://localhost:20128/api/settings \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
POST /api/settings/purge-request-history
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 /api/settings/compression
Get global compression settings
curl https://localhost:20128/api/settings/compression \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
PUT /api/settings/compression
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 /api/settings/compression/mcp-accessibility
Get the MCP tool-output accessibility (trimming) config
curl https://localhost:20128/api/settings/compression/mcp-accessibility \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
PUT /api/settings/compression/mcp-accessibility
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 /api/settings/payload-rules
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"
PUT /api/settings/payload-rules
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 /api/settings/combo-defaults
Get combo default settings
curl https://localhost:20128/api/settings/combo-defaults \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
GET /api/settings/proxy
Get proxy settings
curl https://localhost:20128/api/settings/proxy \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
PATCH /api/settings/proxy
Update proxy settings
curl -X PATCH https://localhost:20128/api/settings/proxy \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
POST /api/settings/proxy/test
Test proxy connection
curl -X POST https://localhost:20128/api/settings/proxy/test \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
-H "Content-Type: application/json" \
-d '{}'
POST /api/settings/require-login
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 /api/settings/ip-filter
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"
PUT /api/settings/ip-filter
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 /api/settings/system-prompt
Get system prompt configuration
Returns the current system prompt injection settings.
curl https://localhost:20128/api/settings/system-prompt \
-H "Authorization: Bearer $OMNIROUTE_TOKEN"
PUT /api/settings/system-prompt
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 /api/settings/thinking-budget
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"
PUT /api/settings/thinking-budget
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 '{}'
GET /api/tags
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 /api/settings/quota-store
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"
PUT /api/settings/quota-store
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 '{}'
POST /api/settings/purge-usage-history
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 '{}'
Payloads
See the full OpenAPI specification at GET /api/openapi/spec or docs/openapi.yaml for detailed request/response schemas.
GET /api/settings/thinking-budget — behavior
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.
Version History
-
3d7ed7a
Current 2026-08-20 06:20
修复因手动编辑SKILL.md导致的生成器同步失败问题,将自定义内容移至保留块以确保持久化。
- 1cafd32 2026-07-25 11:48


