init
This commit is contained in:
commit
568b7ec257
9 changed files with 844 additions and 0 deletions
487
config.template.toml
Normal file
487
config.template.toml
Normal file
|
|
@ -0,0 +1,487 @@
|
|||
api_key = "API_KEY_PLACEHOLDER"
|
||||
default_provider = "custom:https://llm.lambda.coredump.ru/v1"
|
||||
default_model = "qwen3.5-122b"
|
||||
default_temperature = 0.7
|
||||
provider_timeout_secs = 120
|
||||
model_routes = []
|
||||
embedding_routes = []
|
||||
|
||||
[model_providers]
|
||||
|
||||
[extra_headers]
|
||||
|
||||
[observability]
|
||||
backend = "none"
|
||||
runtime_trace_mode = "none"
|
||||
runtime_trace_path = "state/runtime-trace.jsonl"
|
||||
runtime_trace_max_entries = 200
|
||||
|
||||
[autonomy]
|
||||
level = "full"
|
||||
workspace_only = true
|
||||
allowed_commands = [
|
||||
"git",
|
||||
"npm",
|
||||
"cargo",
|
||||
"ls",
|
||||
"cat",
|
||||
"grep",
|
||||
"find",
|
||||
"echo",
|
||||
"pwd",
|
||||
"wc",
|
||||
"head",
|
||||
"tail",
|
||||
"date",
|
||||
"curl",
|
||||
"wget",
|
||||
]
|
||||
forbidden_paths = [
|
||||
"/etc",
|
||||
"/root",
|
||||
"/home",
|
||||
"/usr",
|
||||
"/bin",
|
||||
"/sbin",
|
||||
"/lib",
|
||||
"/opt",
|
||||
"/boot",
|
||||
"/dev",
|
||||
"/proc",
|
||||
"/sys",
|
||||
"/var",
|
||||
"/tmp",
|
||||
"~/.ssh",
|
||||
"~/.gnupg",
|
||||
"~/.aws",
|
||||
"~/.config",
|
||||
]
|
||||
max_actions_per_hour = 20
|
||||
max_cost_per_day_cents = 500
|
||||
require_approval_for_medium_risk = true
|
||||
block_high_risk_commands = true
|
||||
shell_env_passthrough = []
|
||||
auto_approve = [
|
||||
"file_read",
|
||||
"memory_recall",
|
||||
"http_request",
|
||||
"browser",
|
||||
"web_fetch",
|
||||
"web_search",
|
||||
]
|
||||
always_ask = []
|
||||
allowed_roots = []
|
||||
non_cli_excluded_tools = []
|
||||
|
||||
[security.sandbox]
|
||||
backend = "none"
|
||||
firejail_args = []
|
||||
|
||||
[security.resources]
|
||||
max_memory_mb = 512
|
||||
max_cpu_time_seconds = 60
|
||||
max_subprocesses = 20
|
||||
memory_monitoring = true
|
||||
|
||||
[security.audit]
|
||||
enabled = true
|
||||
log_path = "audit.log"
|
||||
max_size_mb = 100
|
||||
sign_events = false
|
||||
|
||||
[security.otp]
|
||||
enabled = false
|
||||
method = "totp"
|
||||
token_ttl_secs = 30
|
||||
cache_valid_secs = 300
|
||||
gated_actions = [
|
||||
"shell",
|
||||
"file_write",
|
||||
"browser_open",
|
||||
"browser",
|
||||
"memory_forget",
|
||||
]
|
||||
gated_domains = []
|
||||
gated_domain_categories = []
|
||||
|
||||
[security.estop]
|
||||
enabled = false
|
||||
state_file = "~/.zeroclaw/estop-state.json"
|
||||
require_otp_to_resume = true
|
||||
|
||||
[security.nevis]
|
||||
enabled = false
|
||||
instance_url = ""
|
||||
realm = "master"
|
||||
client_id = ""
|
||||
token_validation = "local"
|
||||
role_mapping = []
|
||||
require_mfa = false
|
||||
session_timeout_secs = 3600
|
||||
|
||||
[backup]
|
||||
enabled = true
|
||||
max_keep = 10
|
||||
include_dirs = [
|
||||
"config",
|
||||
"memory",
|
||||
"audit",
|
||||
"knowledge",
|
||||
]
|
||||
destination_dir = "state/backups"
|
||||
compress = true
|
||||
encrypt = false
|
||||
|
||||
[data_retention]
|
||||
enabled = false
|
||||
retention_days = 90
|
||||
dry_run = false
|
||||
categories = []
|
||||
|
||||
[cloud_ops]
|
||||
enabled = false
|
||||
default_cloud = "aws"
|
||||
supported_clouds = [
|
||||
"aws",
|
||||
"azure",
|
||||
"gcp",
|
||||
]
|
||||
iac_tools = ["terraform"]
|
||||
cost_threshold_monthly_usd = 100.0
|
||||
well_architected_frameworks = ["aws-waf"]
|
||||
|
||||
[conversational_ai]
|
||||
enabled = false
|
||||
default_language = "en"
|
||||
supported_languages = [
|
||||
"en",
|
||||
"de",
|
||||
"fr",
|
||||
"it",
|
||||
]
|
||||
auto_detect_language = true
|
||||
escalation_confidence_threshold = 0.3
|
||||
max_conversation_turns = 50
|
||||
conversation_timeout_secs = 1800
|
||||
analytics_enabled = false
|
||||
|
||||
[security_ops]
|
||||
enabled = false
|
||||
playbooks_dir = "~/.zeroclaw/playbooks"
|
||||
auto_triage = false
|
||||
require_approval_for_actions = true
|
||||
max_auto_severity = "low"
|
||||
report_output_dir = "~/.zeroclaw/security-reports"
|
||||
|
||||
[runtime]
|
||||
kind = "native"
|
||||
|
||||
[runtime.docker]
|
||||
image = "alpine:3.20"
|
||||
network = "none"
|
||||
memory_limit_mb = 512
|
||||
cpu_limit = 1.0
|
||||
read_only_rootfs = true
|
||||
mount_workspace = true
|
||||
allowed_workspace_roots = []
|
||||
|
||||
[reliability]
|
||||
provider_retries = 2
|
||||
provider_backoff_ms = 500
|
||||
fallback_providers = []
|
||||
api_keys = []
|
||||
channel_initial_backoff_secs = 2
|
||||
channel_max_backoff_secs = 60
|
||||
scheduler_poll_secs = 15
|
||||
scheduler_retries = 2
|
||||
|
||||
[reliability.model_fallbacks]
|
||||
|
||||
[scheduler]
|
||||
enabled = true
|
||||
max_tasks = 64
|
||||
max_concurrent = 4
|
||||
|
||||
[agent]
|
||||
compact_context = false
|
||||
max_tool_iterations = 20
|
||||
max_history_messages = 50
|
||||
max_context_tokens = 32000
|
||||
parallel_tools = false
|
||||
tool_dispatcher = "auto"
|
||||
tool_call_dedup_exempt = []
|
||||
tool_filter_groups = []
|
||||
|
||||
[skills]
|
||||
open_skills_enabled = true
|
||||
prompt_injection_mode = "full"
|
||||
enabled = ["ege-checker"]
|
||||
|
||||
[query_classification]
|
||||
enabled = false
|
||||
rules = []
|
||||
|
||||
[heartbeat]
|
||||
enabled = true
|
||||
interval_minutes = 30
|
||||
two_phase = false
|
||||
adaptive = true
|
||||
min_interval_minutes = 5
|
||||
max_interval_minutes = 120
|
||||
deadman_timeout_minutes = 0
|
||||
max_run_history = 100
|
||||
|
||||
[cron]
|
||||
enabled = true
|
||||
max_run_history = 50
|
||||
[channels_config]
|
||||
cli = true
|
||||
message_timeout_secs = 300
|
||||
ack_reactions = true
|
||||
show_tool_calls = true
|
||||
session_persistence = true
|
||||
session_backend = "sqlite"
|
||||
session_ttl_hours = 0
|
||||
[channels_config.telegram]
|
||||
bot_token = "TELEGRAM_TOKEN_PLACEHOLDER"
|
||||
stream_mode = "off"
|
||||
allowed_users = ["*"]
|
||||
draft_update_interval_ms = 1000
|
||||
interrupt_on_new_message = false
|
||||
mention_only = false
|
||||
|
||||
[memory]
|
||||
backend = "sqlite"
|
||||
auto_save = true
|
||||
hygiene_enabled = true
|
||||
archive_after_days = 7
|
||||
purge_after_days = 30
|
||||
conversation_retention_days = 30
|
||||
embedding_provider = "none"
|
||||
embedding_model = "text-embedding-3-small"
|
||||
embedding_dimensions = 1536
|
||||
vector_weight = 0.7
|
||||
keyword_weight = 0.3
|
||||
min_relevance_score = 0.4
|
||||
embedding_cache_size = 10000
|
||||
chunk_max_tokens = 512
|
||||
response_cache_enabled = false
|
||||
response_cache_ttl_minutes = 60
|
||||
response_cache_max_entries = 5000
|
||||
response_cache_hot_entries = 256
|
||||
snapshot_enabled = false
|
||||
snapshot_on_hygiene = false
|
||||
auto_hydrate = true
|
||||
|
||||
[memory.qdrant]
|
||||
collection = "zeroclaw_memories"
|
||||
|
||||
[storage.provider.config]
|
||||
provider = ""
|
||||
schema = "public"
|
||||
table = "memories"
|
||||
|
||||
[tunnel]
|
||||
provider = "none"
|
||||
|
||||
[gateway]
|
||||
port = 42617
|
||||
host = "127.0.0.1"
|
||||
require_pairing = true
|
||||
allow_public_bind = false
|
||||
paired_tokens = ["enc2:78a946f8656a7b3aae8634282887e0bde369e156b95ed86570ae4b3c08fa17e69a3cdad4d6a331b4c824c4b0b1870e2ca3b10901ca3d2731cfb82facbda531a3b55c16da7b723d335f89178462a2131f720a95c4de46683209cf0826"]
|
||||
pair_rate_limit_per_minute = 10
|
||||
webhook_rate_limit_per_minute = 60
|
||||
trust_forwarded_headers = false
|
||||
rate_limit_max_keys = 10000
|
||||
idempotency_ttl_secs = 300
|
||||
idempotency_max_keys = 10000
|
||||
|
||||
[composio]
|
||||
enabled = false
|
||||
entity_id = "default"
|
||||
|
||||
[microsoft365]
|
||||
enabled = false
|
||||
auth_flow = "client_credentials"
|
||||
scopes = ["https://graph.microsoft.com/.default"]
|
||||
token_cache_encrypted = true
|
||||
|
||||
[secrets]
|
||||
encrypt = true
|
||||
|
||||
[browser]
|
||||
enabled = true
|
||||
allowed_domains = ["*"]
|
||||
backend = "agent_browser"
|
||||
native_headless = true
|
||||
native_webdriver_url = "http://127.0.0.1:9515"
|
||||
|
||||
[browser.computer_use]
|
||||
endpoint = "http://127.0.0.1:8787/v1/actions"
|
||||
timeout_ms = 15000
|
||||
allow_remote_endpoint = true
|
||||
window_allowlist = []
|
||||
|
||||
[http_request]
|
||||
enabled = true
|
||||
allowed_domains = ["*"]
|
||||
max_response_size = 100000000
|
||||
timeout_secs = 60
|
||||
allow_private_hosts = true
|
||||
|
||||
[multimodal]
|
||||
max_images = 4
|
||||
max_image_size_mb = 5
|
||||
allow_remote_fetch = true
|
||||
|
||||
[web_fetch]
|
||||
enabled = true
|
||||
allowed_domains = ["*"]
|
||||
blocked_domains = []
|
||||
max_response_size = 50000000
|
||||
timeout_secs = 30
|
||||
|
||||
[web_search]
|
||||
enabled = true
|
||||
provider = "duckduckgo"
|
||||
max_results = 25
|
||||
timeout_secs = 30
|
||||
|
||||
[project_intel]
|
||||
enabled = false
|
||||
default_language = "en"
|
||||
report_output_dir = "~/.zeroclaw/project-reports"
|
||||
risk_sensitivity = "medium"
|
||||
include_git_data = true
|
||||
include_jira_data = false
|
||||
|
||||
[proxy]
|
||||
enabled = true
|
||||
no_proxy = ["*"]
|
||||
scope = "zeroclaw"
|
||||
services = []
|
||||
|
||||
[identity]
|
||||
format = "openclaw"
|
||||
|
||||
[cost]
|
||||
enabled = false
|
||||
daily_limit_usd = 10.0
|
||||
monthly_limit_usd = 100.0
|
||||
warn_at_percent = 80
|
||||
allow_override = false
|
||||
|
||||
[cost.prices."anthropic/claude-sonnet-4-20250514"]
|
||||
input = 3.0
|
||||
output = 15.0
|
||||
|
||||
[cost.prices."openai/gpt-4o-mini"]
|
||||
input = 0.15
|
||||
output = 0.6
|
||||
|
||||
[cost.prices."openai/o1-preview"]
|
||||
input = 15.0
|
||||
output = 60.0
|
||||
|
||||
[cost.prices."openai/gpt-4o"]
|
||||
input = 5.0
|
||||
output = 15.0
|
||||
|
||||
[cost.prices."google/gemini-1.5-pro"]
|
||||
input = 1.25
|
||||
output = 5.0
|
||||
|
||||
[cost.prices."anthropic/claude-3-haiku"]
|
||||
input = 0.25
|
||||
output = 1.25
|
||||
|
||||
[cost.prices."anthropic/claude-opus-4-20250514"]
|
||||
input = 15.0
|
||||
output = 75.0
|
||||
|
||||
[cost.prices."google/gemini-2.0-flash"]
|
||||
input = 0.1
|
||||
output = 0.4
|
||||
|
||||
[cost.prices."anthropic/claude-3.5-sonnet"]
|
||||
input = 3.0
|
||||
output = 15.0
|
||||
|
||||
[peripherals]
|
||||
enabled = false
|
||||
boards = []
|
||||
|
||||
[agents]
|
||||
|
||||
[swarms]
|
||||
|
||||
[hooks]
|
||||
enabled = true
|
||||
|
||||
[hooks.builtin]
|
||||
command_logger = false
|
||||
|
||||
[hooks.builtin.webhook_audit]
|
||||
enabled = false
|
||||
url = ""
|
||||
tool_patterns = []
|
||||
include_args = false
|
||||
max_args_bytes = 4096
|
||||
|
||||
[hardware]
|
||||
enabled = false
|
||||
transport = "None"
|
||||
baud_rate = 115200
|
||||
workspace_datasheets = false
|
||||
|
||||
[transcription]
|
||||
enabled = false
|
||||
api_url = "https://api.groq.com/openai/v1/audio/transcriptions"
|
||||
model = "whisper-large-v3-turbo"
|
||||
max_duration_secs = 120
|
||||
|
||||
[tts]
|
||||
enabled = false
|
||||
default_provider = "openai"
|
||||
default_voice = "alloy"
|
||||
default_format = "mp3"
|
||||
max_text_length = 4096
|
||||
|
||||
[mcp]
|
||||
enabled = false
|
||||
deferred_loading = true
|
||||
servers = []
|
||||
|
||||
[nodes]
|
||||
enabled = false
|
||||
max_nodes = 16
|
||||
|
||||
[workspace]
|
||||
enabled = false
|
||||
workspaces_dir = "~/.zeroclaw/workspaces"
|
||||
isolate_memory = true
|
||||
isolate_secrets = true
|
||||
isolate_audit = true
|
||||
cross_workspace_search = false
|
||||
|
||||
[notion]
|
||||
enabled = false
|
||||
api_key = ""
|
||||
database_id = ""
|
||||
poll_interval_secs = 5
|
||||
status_property = "Status"
|
||||
input_property = "Input"
|
||||
result_property = "Result"
|
||||
max_concurrent = 4
|
||||
recover_stale = true
|
||||
|
||||
[node_transport]
|
||||
enabled = true
|
||||
shared_secret = ""
|
||||
max_request_age_secs = 300
|
||||
require_https = true
|
||||
allowed_peers = []
|
||||
mutual_tls = false
|
||||
connection_pool_size = 4
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue