docs(config): align inline comments and sync model defaults

This commit is contained in:
Chummy 2026-02-18 17:43:02 +08:00
parent 9410e4e78e
commit 461a4563f8
6 changed files with 41 additions and 41 deletions

View file

@ -329,9 +329,9 @@ The agent automatically recalls, saves, and manages memory via tools.
```toml ```toml
[memory] [memory]
backend = "sqlite" # "sqlite", "lucid", "markdown", "none" backend = "sqlite" # "sqlite", "lucid", "markdown", "none"
auto_save = true auto_save = true
embedding_provider = "none" # "none", "openai", "custom:https://..." embedding_provider = "none" # "none", "openai", "custom:https://..."
vector_weight = 0.7 vector_weight = 0.7
keyword_weight = 0.3 keyword_weight = 0.3
@ -341,12 +341,12 @@ keyword_weight = 0.3
# sqlite_open_timeout_secs = 30 # sqlite_open_timeout_secs = 30
# Optional for backend = "lucid" # Optional for backend = "lucid"
# ZEROCLAW_LUCID_CMD=/usr/local/bin/lucid # default: lucid # ZEROCLAW_LUCID_CMD=/usr/local/bin/lucid # default: lucid
# ZEROCLAW_LUCID_BUDGET=200 # default: 200 # ZEROCLAW_LUCID_BUDGET=200 # default: 200
# ZEROCLAW_LUCID_LOCAL_HIT_THRESHOLD=3 # local hit count to skip external recall # ZEROCLAW_LUCID_LOCAL_HIT_THRESHOLD=3 # local hit count to skip external recall
# ZEROCLAW_LUCID_RECALL_TIMEOUT_MS=120 # low-latency budget for lucid context recall # ZEROCLAW_LUCID_RECALL_TIMEOUT_MS=120 # low-latency budget for lucid context recall
# ZEROCLAW_LUCID_STORE_TIMEOUT_MS=800 # async sync timeout for lucid store # ZEROCLAW_LUCID_STORE_TIMEOUT_MS=800 # async sync timeout for lucid store
# ZEROCLAW_LUCID_FAILURE_COOLDOWN_MS=15000 # cooldown after lucid failure to avoid repeated slow attempts # ZEROCLAW_LUCID_FAILURE_COOLDOWN_MS=15000 # cooldown after lucid failure to avoid repeated slow attempts
``` ```
## Security ## Security
@ -477,23 +477,23 @@ default_temperature = 0.7
# default_provider = "anthropic-custom:https://your-api.com" # default_provider = "anthropic-custom:https://your-api.com"
[memory] [memory]
backend = "sqlite" # "sqlite", "lucid", "markdown", "none" backend = "sqlite" # "sqlite", "lucid", "markdown", "none"
auto_save = true auto_save = true
embedding_provider = "none" # "none", "openai", "custom:https://..." embedding_provider = "none" # "none", "openai", "custom:https://..."
vector_weight = 0.7 vector_weight = 0.7
keyword_weight = 0.3 keyword_weight = 0.3
# backend = "none" disables persistent memory via no-op backend # backend = "none" disables persistent memory via no-op backend
[gateway] [gateway]
port = 3000 # default port = 3000 # default
host = "127.0.0.1" # default host = "127.0.0.1" # default
require_pairing = true # require pairing code on first connect require_pairing = true # require pairing code on first connect
allow_public_bind = false # refuse 0.0.0.0 without tunnel allow_public_bind = false # refuse 0.0.0.0 without tunnel
[autonomy] [autonomy]
level = "supervised" # "readonly", "supervised", "full" (default: supervised) level = "supervised" # "readonly", "supervised", "full" (default: supervised)
workspace_only = true # default: true — scoped to workspace workspace_only = true # default: true — scoped to workspace
allowed_commands = ["git", "npm", "cargo", "ls", "cat", "grep"] allowed_commands = ["git", "npm", "cargo", "ls", "cat", "grep"]
forbidden_paths = ["/etc", "/root", "/proc", "/sys", "~/.ssh", "~/.gnupg", "~/.aws"] forbidden_paths = ["/etc", "/root", "/proc", "/sys", "~/.ssh", "~/.gnupg", "~/.aws"]
@ -501,8 +501,8 @@ forbidden_paths = ["/etc", "/root", "/proc", "/sys", "~/.ssh", "~/.gnupg", "~/.a
kind = "native" # "native" or "docker" kind = "native" # "native" or "docker"
[runtime.docker] [runtime.docker]
image = "alpine:3.20" # container image for shell execution image = "alpine:3.20" # container image for shell execution
network = "none" # docker network mode ("none", "bridge", etc.) network = "none" # docker network mode ("none", "bridge", etc.)
memory_limit_mb = 512 # optional memory limit in MB memory_limit_mb = 512 # optional memory limit in MB
cpu_limit = 1.0 # optional CPU limit cpu_limit = 1.0 # optional CPU limit
read_only_rootfs = true # mount root filesystem as read-only read_only_rootfs = true # mount root filesystem as read-only
@ -514,27 +514,27 @@ enabled = false
interval_minutes = 30 interval_minutes = 30
[tunnel] [tunnel]
provider = "none" # "none", "cloudflare", "tailscale", "ngrok", "custom" provider = "none" # "none", "cloudflare", "tailscale", "ngrok", "custom"
[secrets] [secrets]
encrypt = true # API keys encrypted with local key file encrypt = true # API keys encrypted with local key file
[browser] [browser]
enabled = false # opt-in browser_open + browser tools enabled = false # opt-in browser_open + browser tools
allowed_domains = ["docs.rs"] # required when browser is enabled allowed_domains = ["docs.rs"] # required when browser is enabled
backend = "agent_browser" # "agent_browser" (default), "rust_native", "computer_use", "auto" backend = "agent_browser" # "agent_browser" (default), "rust_native", "computer_use", "auto"
native_headless = true # applies when backend uses rust-native native_headless = true # applies when backend uses rust-native
native_webdriver_url = "http://127.0.0.1:9515" # WebDriver endpoint (chromedriver/selenium) native_webdriver_url = "http://127.0.0.1:9515" # WebDriver endpoint (chromedriver/selenium)
# native_chrome_path = "/usr/bin/chromium" # optional explicit browser binary for driver # native_chrome_path = "/usr/bin/chromium" # optional explicit browser binary for driver
[browser.computer_use] [browser.computer_use]
endpoint = "http://127.0.0.1:8787/v1/actions" # computer-use sidecar HTTP endpoint endpoint = "http://127.0.0.1:8787/v1/actions" # computer-use sidecar HTTP endpoint
timeout_ms = 15000 # per-action timeout timeout_ms = 15000 # per-action timeout
allow_remote_endpoint = false # secure default: only private/localhost endpoint allow_remote_endpoint = false # secure default: only private/localhost endpoint
window_allowlist = [] # optional window title/process allowlist hints window_allowlist = [] # optional window title/process allowlist hints
# api_key = "..." # optional bearer token for sidecar # api_key = "..." # optional bearer token for sidecar
# max_coordinate_x = 3840 # optional coordinate guardrail # max_coordinate_x = 3840 # optional coordinate guardrail
# max_coordinate_y = 2160 # optional coordinate guardrail # max_coordinate_y = 2160 # optional coordinate guardrail
# Rust-native backend build flag: # Rust-native backend build flag:
# cargo build --release --features browser-native # cargo build --release --features browser-native
@ -551,12 +551,12 @@ window_allowlist = [] # optional window title/process allowlist
# Response: {"success": true, "data": {...}} or {"success": false, "error": "..."} # Response: {"success": true, "data": {...}} or {"success": false, "error": "..."}
[composio] [composio]
enabled = false # opt-in: 1000+ OAuth apps via composio.dev enabled = false # opt-in: 1000+ OAuth apps via composio.dev
# api_key = "cmp_..." # optional: stored encrypted when [secrets].encrypt = true # api_key = "cmp_..." # optional: stored encrypted when [secrets].encrypt = true
entity_id = "default" # default user_id for Composio tool calls entity_id = "default" # default user_id for Composio tool calls
[identity] [identity]
format = "openclaw" # "openclaw" (default, markdown files) or "aieos" (JSON) format = "openclaw" # "openclaw" (default, markdown files) or "aieos" (JSON)
# aieos_path = "identity.json" # path to AIEOS JSON file (relative to workspace or absolute) # aieos_path = "identity.json" # path to AIEOS JSON file (relative to workspace or absolute)
# aieos_inline = '{"identity":{"names":{"first":"Nova"}}}' # inline AIEOS JSON # aieos_inline = '{"identity":{"names":{"first":"Nova"}}}' # inline AIEOS JSON
``` ```

View file

@ -122,9 +122,9 @@ default_model = "anthropic/claude-sonnet-4-6"
default_temperature = 0.7 default_temperature = 0.7
[memory] [memory]
backend = "sqlite" # sqlite | lucid | markdown | none backend = "sqlite" # sqlite | lucid | markdown | none
auto_save = true auto_save = true
embedding_provider = "none" # none | openai | custom:https://... embedding_provider = "none" # none | openai | custom:https://...
[gateway] [gateway]
host = "127.0.0.1" host = "127.0.0.1"

View file

@ -31,7 +31,7 @@ Edit `~/.zeroclaw/config.toml`:
```toml ```toml
[peripherals] [peripherals]
enabled = true enabled = true
datasheet_dir = "docs/datasheets" # optional: RAG for "turn on red led" → pin 13 datasheet_dir = "docs/datasheets" # optional: RAG for "turn on red led" → pin 13
[[peripherals.boards]] [[peripherals.boards]]
board = "nucleo-f401re" board = "nucleo-f401re"

View file

@ -118,7 +118,7 @@ nano ~/.zeroclaw/config.toml
```toml ```toml
api_key = "YOUR_OPENROUTER_API_KEY" api_key = "YOUR_OPENROUTER_API_KEY"
default_provider = "openrouter" default_provider = "openrouter"
default_model = "anthropic/claude-sonnet-4" default_model = "anthropic/claude-sonnet-4-6"
[peripherals] [peripherals]
enabled = false enabled = false

View file

@ -13,7 +13,7 @@ Config file path:
| Key | Default | Notes | | Key | Default | Notes |
|---|---|---| |---|---|---|
| `default_provider` | `openrouter` | provider ID or alias | | `default_provider` | `openrouter` | provider ID or alias |
| `default_model` | `anthropic/claude-sonnet-4` | model routed through selected provider | | `default_model` | `anthropic/claude-sonnet-4-6` | model routed through selected provider |
| `default_temperature` | `0.7` | model temperature | | `default_temperature` | `0.7` | model temperature |
## `[gateway]` ## `[gateway]`

View file

@ -127,7 +127,7 @@ Telegram uses **long-polling** by default:
```toml ```toml
[channels_config.telegram] [channels_config.telegram]
bot_token = "YOUR_BOT_TOKEN" bot_token = "YOUR_BOT_TOKEN"
allowed_users = [] # deny-by-default, bind identities explicitly allowed_users = [] # deny-by-default, bind identities explicitly
``` ```
Run `zeroclaw daemon` — Telegram channel starts automatically. Run `zeroclaw daemon` — Telegram channel starts automatically.