xiaowei-system/config.yaml

751 lines
17 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

model:
default: deepseek-v4-flash
provider: deepseek
api_key_env: DEEPSEEK_API_KEY
base_url: https://api.deepseek.com/v1
context_length: 1048576
fallback_providers:
- gmi-cloud
- llama-local
- zhipu
providers:
agnes:
base_url: https://apihub.agnes-ai.com/v1
cost_factor: 0.0
default_model: agnes-2.5-flash
key_env: AGNES_API_KEY
models:
- agnes-2.5-flash
rate_limit: 1000
timeout: 60
deepseek:
base_url: https://api.deepseek.com
cost_factor: 0.0
default_model: deepseek-v4-flash
key_env: DEEPSEEK_API_KEY
models:
- deepseek-v4-flash
- deepseek-v4-pro
rate_limit: 1000
timeout: 30
mimo:
base_url: https://token-plan-cn.xiaomimimo.com/v1
cost_factor: 0.0
default_model: mimo-v2.5-pro
key_env: XIAOMI_API_KEY
models:
- mimo-v2.5-pro
- mimo-v2.5
rate_limit: 1000
timeout: 60
newapi-local:
api_key: 0ExNiLblJvIWBDpkS50fwOBw4MmqLyKdHJK5iQtlw9dOMWBP
base_url: http://127.0.0.1:3000/v1
cost_factor: 0.0
default_model: nvidia/nemotron-3-super-120b-a12b
models:
- nvidia/nemotron-mini-4b-instruct
- openai/gpt-oss-120b
- nvidia/nvidia-nemotron-nano-9b-v2
- meta/llama-3.1-8b-instruct
rate_limit: 1000
timeout: 30
omniroute-local:
api_key: local-test-key
base_url: http://127.0.0.1:3001/v1
cost_factor: 0.0
default_model: auto/chat
models:
- auto/chat
- auto/best-free
- auto/coding
rate_limit: 1000
timeout: 30
opencode-free:
api_key: opencode-zen-free-keyless
base_url: https://opencode.ai/zen/v1
cost_factor: 0.0
default_model: x-preview-f-free
models:
- x-preview-f-free
- hy3-free
- laguna-s-2.1-free
- nemotron-3-ultra-free
- nemotron-3.5-lightning-free
- muse-spark-1.2-contributor-free
rate_limit: 1000
timeout: 30
sensenova:
api_key: ${SENSENOVA_API_KEY}
base_url: https://token.sensenova.cn/v1
cost_factor: 0.0
default_model: deepseek-v4-flash
models:
- deepseek-v4-flash
- glm-5.2
- sensenova-6.8-flash-lite
rate_limit: 1000
timeout: 30
zhipu:
api_key: ${ZHIPU_API_KEY}
base_url: https://open.bigmodel.cn/api/paas/v4
models:
- glm-4-flash
- glm-4-air
- glm-4-long
type: openai
llama-local:
api_key: local-key
base_url: http://127.0.0.1:8080/v1
cost_factor: 0.0
default_model: minicpm5-2b
models:
- minicpm5-2b
rate_limit: 100
timeout: 300
context_length: 45056 # 2026-09-10 双槽 44K×2
gmi-cloud:
api_key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImFlZGEwZTJmLTI1N2ItNGEwYi04NzBhLWUwZjI3MzQ0NWM2YSIsInNjb3BlIjoiaWVfbW9kZWwiLCJwcm9kdWN0IjoiSUUiLCJvd25lcklkIjoiOTYxZGY1MWUtMjAyMi00ZDZjLWI2YTgtNWMxN2M5NzA1NjEyIn0.7v6kPl4VcNHtOcU3hN2FAMGVEuDxvym1h9FwXZBaD7M
base_url: https://api.gmi-serving.com/v1
default_model: MiniMaxAI/MiniMax-M3
cost_factor: 0.0
timeout: 180
rate_limit: 100
context_length: 1048576
default_headers:
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like
Gecko) Chrome/120.0 Safari/537.36
fallback_providers:
- provider: agnes
model: agnes-2.5-flash
- provider: zhipu
model: glm-4-flash
- provider: sensenova
model: deepseek-v4-flash
- provider: opencode-free
model: x-preview-f-free
toolsets:
- hermes-cli
- web
agent:
max_turns: 90
gateway_timeout: 1800
restart_drain_timeout: 180
api_max_retries: 2
service_tier: ''
tool_use_enforcement: auto
task_completion_guidance: true
environment_probe: true
environment_hint: ''
verify_on_stop: false
gateway_timeout_warning: 900
clarify_timeout: 600
gateway_notify_interval: 180
gateway_auto_continue_freshness: 3600
image_input_mode: auto
disabled_toolsets: []
terminal:
backend: local
modal_mode: auto
cwd: .
timeout: 180
env_passthrough: []
shell_init_files: []
auto_source_bashrc: true
docker_image: nikolaik/python-nodejs:python3.11-nodejs20
docker_forward_env: []
singularity_image: docker://nikolaik/python-nodejs:python3.11-nodejs20
modal_image: nikolaik/python-nodejs:python3.11-nodejs20
daytona_image: nikolaik/python-nodejs:python3.11-nodejs20
vercel_runtime: node24
container_cpu: 1
container_memory: 5120
container_disk: 51200
container_persistent: true
docker_volumes: []
docker_mount_cwd_to_workspace: false
docker_extra_args: []
docker_run_as_host_user: false
persistent_shell: true
web:
backend: ''
search_backend: ''
extract_backend: ''
browser:
inactivity_timeout: 120
command_timeout: 30
record_sessions: false
allow_private_urls: false
engine: auto
auto_local_for_private_urls: true
cdp_url: ''
dialog_policy: must_respond
dialog_timeout_s: 300
camofox:
managed_persistence: false
user_id: ''
session_key: ''
adopt_existing_tab: false
rewrite_loopback_urls: false
loopback_host_alias: host.docker.internal
cloud_provider: local
use_gateway: false
checkpoints:
enabled: true
max_snapshots: 50
max_total_size_mb: 500
max_file_size_mb: 10
auto_prune: false
retention_days: 7
min_interval_hours: 24
delete_orphans: true
file_read_max_chars: 100000
tool_output:
max_bytes: 50000
max_lines: 2000
max_line_length: 2000
tool_loop_guardrails:
warnings_enabled: true
hard_stop_enabled: false
warn_after:
exact_failure: 2
same_tool_failure: 3
idempotent_no_progress: 2
hard_stop_after:
exact_failure: 5
same_tool_failure: 8
idempotent_no_progress: 5
compression:
enabled: true
threshold: 0.45
target_ratio: 0.2
protect_last_n: 20
hygiene_hard_message_limit: 400
protect_first_n: 3
abort_on_summary_failure: false
prompt_caching:
cache_ttl: 5m
long_lived_prefix: true
long_lived_ttl: 1h
openrouter:
response_cache: true
response_cache_ttl: 300
min_coding_score: 0.65
bedrock:
region: ''
discovery:
enabled: true
provider_filter: []
refresh_interval: 3600
guardrail:
guardrail_identifier: ''
guardrail_version: ''
stream_processing_mode: async
trace: disabled
auxiliary:
vision:
provider: agnes
model: agnes-2.5-flash
base_url: ''
api_key: ''
timeout: 120
download_timeout: 30
fallback_chain:
- provider: newapi-local
model: meta/llama-3.2-11b-vision-instruct
base_url: http://127.0.0.1:3000/v1
api_key: 0ExNiLblJvIWBDpkS50fwOBw4MmqLyKdHJK5iQtlw9dOMWBP
timeout: 90
compression:
provider: agnes
model: agnes-2.5-flash
context_length: 512000
fallback_chain:
- provider: zhipu
model: glm-4-flash
base_url: https://open.bigmodel.cn/api/paas/v4
key_env: ZHIPU_API_KEY
timeout: 90
base_url: https://apihub.agnes-ai.com/v1
api_key: sk-7k9e9KGcoZdDuYt2LSA4YXdBTioczleGJm2zzLWCku072ikW
timeout: 120
skills_hub:
provider: zhipu
model: glm-4-flash
base_url: ''
api_key: ''
timeout: 30
approval:
provider: llama-local
model: minicpm5-2b
base_url: ''
api_key: ''
timeout: 30
mcp:
provider: agnes
model: agnes-2.5-flash
base_url: ''
api_key: ''
timeout: 30
title_generation:
provider: llama-local
model: minicpm5-2b
base_url: ''
api_key: ''
timeout: 30
triage_specifier:
provider: llama-local
model: minicpm5-2b
base_url: ''
api_key: ''
timeout: 120
kanban_decomposer:
provider: agnes
model: agnes-2.5-flash
base_url: ''
api_key: ''
timeout: 180
profile_describer:
provider: llama-local
model: minicpm5-2b
base_url: ''
api_key: ''
timeout: 60
curator:
provider: agnes
model: agnes-2.5-flash
base_url: ''
api_key: ''
timeout: 600
session_search:
api_key: ''
base_url: ''
extra_body: {}
max_concurrency: 3
model: ''
provider: auto
timeout: 30
web_extract:
api_key: ''
base_url: ''
model: ''
provider: auto
timeout: 360
display:
compact: false
personality: ''
resume_display: full
resume_exchanges: 10
resume_max_user_chars: 300
resume_max_assistant_chars: 200
resume_max_assistant_lines: 3
resume_skip_tool_only: true
busy_input_mode: interrupt
tui_auto_resume_recent: false
bell_on_complete: false
show_reasoning: false
streaming: false
timestamps: false
final_response_markdown: strip
persistent_output: true
persistent_output_max_lines: 200
inline_diffs: true
file_mutation_verifier: true
show_cost: false
skin: default
language: en
tui_status_indicator: kaomoji
user_message_preview:
first_lines: 2
last_lines: 2
interim_assistant_messages: true
tool_progress_command: false
tool_preview_length: 0
ephemeral_system_ttl: 0
runtime_footer:
fields:
- model
- context_pct
- cwd
copy_shortcut: auto
tool_progress: all
tool_progress_style: accumulate
dashboard:
theme: default
show_token_analytics: false
oauth:
client_id: ''
portal_url: ''
public_url: ''
privacy:
redact_pii: false
tts:
provider: edge
edge:
voice: zh-CN-XiaoyiNeural
elevenlabs:
voice_id: pNInz6obpgDQGcFmaJgB
model_id: eleven_multilingual_v2
openai:
model: gpt-4o-mini-tts
voice: alloy
xai:
voice_id: eve
language: en
sample_rate: 24000
bit_rate: 128000
mistral:
model: voxtral-mini-tts-2603
voice_id: c69964a6-ab8b-4f8a-9465-ec0925096ec8
neutts:
ref_audio: ''
ref_text: ''
model: neuphonic/neutts-air-q4-gguf
device: cpu
piper:
voice: en_US-lessac-medium
providers:
mimo:
command: bash /home/muc/.hermes/scripts/mimo_tts.sh {input_path} {output_path}
{voice}
output_format: opus
type: command
voice: 冰糖
use_gateway: false
stt:
enabled: true
local:
model: base
language: ''
openai:
model: whisper-1
mistral:
model: voxtral-mini-latest
provider: local
voice:
record_key: ctrl+b
max_recording_seconds: 120
auto_tts: true
beep_enabled: true
silence_threshold: 200
silence_duration: 3.0
human_delay:
mode: 'off'
min_ms: 800
max_ms: 2500
context:
engine: compressor
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 1375
provider: zhiyi
delegation:
model: agnes-2.5-flash
provider: agnes
base_url: ''
api_key: ''
api_mode: ''
inherit_mcp_toolsets: true
max_iterations: 250
child_timeout_seconds: 600
reasoning_effort: ''
max_concurrent_children: 10
max_spawn_depth: 1
orchestrator_enabled: true
subagent_auto_approve: false
prefill_messages_file: ''
goals:
max_turns: 20
moa:
default_preset: expert-panel
save_traces: false
presets:
expert-panel:
aggregator:
model: deepseek-v4-flash
provider: deepseek
enabled: true
fanout: user_turn
reference_max_tokens: 800
reference_models:
- model: deepseek-v4-flash
provider: deepseek
- model: agnes-2.5-flash
provider: agnes
- model: glm-4-flash
provider: zhipu
skills:
external_dirs: []
template_vars: true
inline_shell: false
inline_shell_timeout: 10
guard_agent_created: false
curator:
enabled: true
interval_hours: 168
min_idle_hours: 2
stale_after_days: 30
archive_after_days: 90
backup:
enabled: true
keep: 5
timezone: ''
slack:
require_mention: true
free_response_channels: ''
allowed_channels: ''
discord:
require_mention: true
free_response_channels: ''
allowed_channels: ''
auto_thread: true
thread_require_mention: false
history_backfill: true
history_backfill_limit: 50
reactions: true
dm_role_auth_guild: ''
server_actions: ''
allow_any_attachment: false
max_attachment_bytes: 33554432
telegram:
reactions: false
allowed_chats: ''
mattermost:
require_mention: true
free_response_channels: ''
allowed_channels: ''
matrix:
require_mention: true
free_response_rooms: ''
allowed_rooms: ''
approvals:
mode: manual
timeout: 60
cron_mode: deny
mcp_reload_confirm: true
destructive_slash_confirm: false
command_allowlist:
- SQL TRUNCATE
- overwrite system file via redirection
- script execution via -e/-c flag
- stop/restart system service
- pipe decoded content to shell (possible command obfuscation)
- copy/move file into sensitive credential/SSH/shell-rc path
- copy/move file into system config path
- recursive delete
- kill hermes/gateway process (self-termination)
- overwrite system file via tee
- pipe remote content to shell
- script execution via heredoc
- shell command via -c/-lc flag
- force kill processes (killall -KILL)
- in-place edit of Hermes config/env
- command parser limit or malformed executable payload
- git force push (rewrites remote history)
- force kill processes
- stop/restart hermes gateway (kills running agents)
- sudo with privilege flag (stdin/askpass/shell/list)
- git force push short flag (rewrites remote history)
- SQL DELETE without WHERE
- git branch force delete
- overwrite system config
- stop/restart hermes gateway via shell-spliced verb (kills running agents)
- execute_code
- copy/move file into /etc/
- find -delete
- delete in root path
- kill process via pgrep expansion (self-termination)
- overwrite project env/config file
- hermes update (restarts gateway, kills running agents)
- sudo with combined-flag privilege escalation
- disk copy
- in-place edit of system config
- overwrite project env/config via redirection
- world/other-writable permissions
- start gateway outside systemd (use 'systemctl --user restart hermes-gateway')
- shell execution via heredoc
plugins:
disabled: []
enabled:
- agentic-sms-gateway
- cronalytics
- rtk-rewrite
hooks_auto_accept: false
security:
allow_private_urls: false
redact_secrets: true
tirith_enabled: true
tirith_path: tirith
tirith_timeout: 5
tirith_fail_open: true
website_blocklist:
enabled: false
domains: []
shared_files: []
acked_advisories: []
allow_lazy_installs: true
cron:
model: glm-4-flash
model_provider: zhipu
provider: ''
wrap_response: true
default_deliver: origin,feishu:oc_81f6df701c872a1122f32080e366543f
fallback_model: agnes-2.5-flash
fallback_provider: agnes
gateway_required: true
kanban:
dispatch_in_gateway: true
dispatch_interval_seconds: 30
failure_limit: 2
worker_log_rotate_bytes: 2097152
worker_log_backup_count: 1
orchestrator_profile: orchestrator
default_assignee: prof-b
auto_decompose: true
auto_decompose_per_tick: 3
dispatch_stale_timeout_seconds: 14400
code_execution:
mode: project
tools:
tool_search:
enabled: auto
threshold_pct: 10
search_default_limit: 5
max_search_limit: 20
logging:
level: INFO
max_size_mb: 5
backup_count: 3
memory_monitor:
enabled: true
interval_seconds: 300
model_catalog:
enabled: true
url: https://hermes-agent.nousresearch.com/docs/api/model-catalog.json
ttl_hours: 1
network:
force_ipv4: false
gateway:
strict: false
media_delivery_allow_dirs: []
trust_recent_files: true
trust_recent_files_seconds: 600
multiplex_profiles: false
sessions:
auto_prune: false
retention_days: 90
vacuum_after_prune: true
min_interval_hours: 24
write_json_snapshots: false
onboarding:
seen:
busy_input_prompt: true
openclaw_residue_cleanup: true
tool_progress_prompt: true
profile_build_offered: true
updates:
pre_update_backup: false
backup_keep: 5
lsp:
enabled: true
wait_mode: document
wait_timeout: 5.0
install_strategy: auto
x_search:
model: grok-4.20-reasoning
timeout_seconds: 180
retries: 2
secrets:
bitwarden:
enabled: false
access_token_env: BWS_ACCESS_TOKEN
project_id: ''
cache_ttl_seconds: 300
override_existing: true
auto_install: true
server_url: ''
paste_collapse_threshold: 5
paste_collapse_threshold_fallback: 5
paste_collapse_char_threshold: 2000
_config_version: 39
known_plugin_toolsets:
cli:
- spotify
mcp_servers:
codebase-memory-mcp:
command: /home/muc/.local/bin/codebase-memory-mcp
enabled: true
dbx:
args:
- -y
- '@dbx-app/mcp-server'
command: npx
connect_timeout: 60
enabled: true
timeout: 120
firecrawl:
connect_timeout: 30
timeout: 120
url: https://mcp.firecrawl.dev/v2/mcp
github:
args:
- -y
- '@modelcontextprotocol/server-github'
command: npx
enabled: true
env:
GITHUB_PERSONAL_ACCESS_TOKEN: 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
timeout: 60
openclaw:
args:
- mcp
- serve
command: /home/muc/nodejs/node-v24.16.0-linux-x64/bin/openclaw
connect_timeout: 60
timeout: 300
platform_toolsets:
cli:
- browser
- clarify
- code_execution
- computer_use
- cronjob
- delegation
- file
- image_gen
- memory
- session_search
- skills
- terminal
- todo
- tts
- vision
- web
- mcp-codebase-memory-mcp
firecrawl:
connect_timeout: 30
timeout: 120
url: https://mcp.firecrawl.dev/v2/mcp
platforms:
feishu:
app_id: cli_a95d7ff06b789bb4
app_secret: Gm7eo0aD9Luka8mHxApRufYIDwmpGsGf
enabled: true
webhook:
enabled: true
extra:
host: 0.0.0.0
port: 8644
session_reset: {}
weixin:
enabled: true
extra:
account_id: bef3c3d39904@im.bot
base_url: https://ilinkai.weixin.qq.com
dm_policy: open
group_policy: open
token: bef3c3d39904@im.bot:060000740c190c21262c8edf68365d5d112e0d
user_id: o9cq800DqpnMoqzXmJ4zozKiM8OI@im.wechat