xiaowei-system/config.yaml

752 lines
17 KiB
YAML

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.0-flash
key_env: AGNES_API_KEY
models:
- agnes-2.0-flash
- 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: agnes-2.0-flash
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: 8192
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.0-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.0-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.0-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.0-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.0-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.0-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.0-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