Repository navigation
Expand file tree
/
Copy path.env.example
More file actions
74 lines (60 loc) · 3.11 KB
/
Copy path.env.example
File metadata and controls
74 lines (60 loc) · 3.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# ---- Claude Code ----
# Custom Claude CLI executable path (defaults to /opt/homebrew/bin/claude or PATH).
# CLAUDE_PATH=/opt/homebrew/bin/claude
# Default model for spawned Claude Code sessions (optional; SDK default otherwise).
CLAUDE_MODEL=
# Comma-separated model list offered as buttons by the Telegram /models command
# (optional; env wins over config.yaml defaults.models). Users pick per chat via
# /models; no chat pick + unset CLAUDE_MODEL = SDK default.
# CLAUDE_MODELS=deepseek-v4-pro[1m],claude-sonnet-5
# Permission mode — only these two work for a headless bot (no terminal to answer
# interactive prompts). The SDK's default/plan/dontAsk modes need a TTY the bot
# can't provide, so writes get auto-denied — do NOT use them.
# acceptEdits (recommended) auto-accept file edits + auto-approve other tools
# bypassPermissions skip ALL permission checks (requires CLAUDE_ALLOW_DANGEROUS_SKIP_PERMISSIONS=true)
CLAUDE_PERMISSION_MODE=acceptEdits
# Hard per-task wall-clock timeout (ms). A task that hangs (e.g. waiting on a
# permission prompt) is auto-aborted so it can't block the chat. Prefer setting
# this via config.yaml (defaults.taskTimeoutMs) or the admin panel; this env var
# takes precedence and would override admin edits. Set 0 to disable the watchdog.
# CLAUDE_TASK_TIMEOUT_MS=1800000
# Comma-separated tool names to allow (optional). e.g. "Bash(git *),Edit,Read"
CLAUDE_ALLOWED_TOOLS=
# DANGEROUS: set to true to pass --dangerously-skip-permissions. Off by default.
CLAUDE_ALLOW_DANGEROUS_SKIP_PERMISSIONS=false
# Cap agentic turns per task (runs at 50 via config.yaml defaults.maxTurns by default).
# Bounds a runaway tool loop so it can't run to the watchdog. Unset = SDK default.
CLAUDE_MAX_TURNS=
# ---- Antigravity CLI (agy) ----
# Custom agy executable path (defaults to /opt/homebrew/bin/agy or PATH).
# AGY_PATH=/opt/homebrew/bin/agy
# AGY_MODEL=gemini-3.8-flash-high
# AGY_AGENT=coder
# AGY_EFFORT=high # low|medium|high
# AGY_AUTO_APPROVE=true # auto-approve permissions
# AGY_TASK_TIMEOUT_MS=600000
# ---- CoBot & Telegram ----
# Telegram bot token & allowed users normally live in config.yaml (telegram.botToken /
# telegram.allowedUsers). These env vars override config.yaml when set.
# TELEGRAM_BOT_TOKEN=
# TELEGRAM_ALLOWED_USERS=12345678
# SQLite database path (under data/ by default).
COBOT_DB_PATH=./data/cobot.db
# Outbound HTTP proxy for reaching Telegram (when the direct path is blocked or
# TLS-intercepted). If unset, the macOS system proxy (scutil --proxy) is used.
# COBOT_PROXY=http://127.0.0.1:10808
# Daily budget ceilings per chat (override config.yaml defaults).
# COBOT_DAILY_COST_CAP_USD=5.0
# COBOT_DAILY_TOKEN_CAP=200000
# Interactive approval settings (override config.yaml approval section).
# COBOT_APPROVAL_MODE=auto
# COBOT_APPROVAL_TIMEOUT_MS=300000
# COBOT_APPROVAL_TIMEOUT_ACTION=allow
# COBOT_APPROVAL_SKIP_TOOLS=Read,LS,Glob,Grep,TodoWrite
# Admin panel settings (override config.yaml admin section).
# COBOT_ADMIN_ENABLED=true
# COBOT_ADMIN_HOST=127.0.0.1
# COBOT_ADMIN_PORT=8085
# COBOT_ADMIN_API_KEY=
# Log level: trace|debug|info|warn|error
LOG_LEVEL=info