|
| 1 | +# ============================================================ |
| 2 | +# Herald Configuration |
| 3 | +# Copy this file to .env and fill in your values |
| 4 | +# ============================================================ |
| 5 | + |
| 6 | +# --- Required --- |
| 7 | + |
| 8 | +# Telegram bot token from @BotFather |
| 9 | +TELEGRAM_BOT_TOKEN=your_bot_token_here |
| 10 | + |
| 11 | +# Comma-separated list of allowed Telegram user IDs |
| 12 | +# Get yours from @userinfobot on Telegram |
| 13 | +ALLOWED_TELEGRAM_USER_IDS=123456789 |
| 14 | + |
| 15 | +# --- Paths --- |
| 16 | + |
| 17 | +# Path to your second brain / knowledge base directory |
| 18 | +# SECOND_BRAIN_PATH=/path/to/your/second-brain |
| 19 | + |
| 20 | +# Herald memory directory (relative to SECOND_BRAIN_PATH) |
| 21 | +# MEMORY_PATH=areas/herald |
| 22 | + |
| 23 | +# Override chat history location (relative to SECOND_BRAIN_PATH) |
| 24 | +# CHAT_HISTORY_PATH_OVERRIDE=custom/chat-history |
| 25 | + |
| 26 | +# --- Server --- |
| 27 | + |
| 28 | +# HOST=0.0.0.0 |
| 29 | +# PORT=8080 |
| 30 | +# WEBHOOK_PATH=/webhook |
| 31 | + |
| 32 | +# Max execution time per message (seconds) |
| 33 | +# COMMAND_TIMEOUT=300 |
| 34 | + |
| 35 | +# --- Claude --- |
| 36 | + |
| 37 | +# Override Claude model (e.g., claude-opus-4-6, claude-sonnet-4-5-20250929) |
| 38 | +# CLAUDE_MODEL= |
| 39 | + |
| 40 | +# Enable experimental agent teams (multi-agent for complex tasks) |
| 41 | +# AGENT_TEAMS=false |
| 42 | + |
| 43 | +# --- Heartbeat (Proactive Check-ins) --- |
| 44 | + |
| 45 | +# Enable periodic heartbeat checks |
| 46 | +# HEARTBEAT_ENABLED=false |
| 47 | + |
| 48 | +# Check interval (e.g., 15m, 1h, 2h30m) |
| 49 | +# HEARTBEAT_EVERY=30m |
| 50 | + |
| 51 | +# Custom prompt for heartbeat checks (inline) |
| 52 | +# HEARTBEAT_PROMPT=Check for overdue tasks and unprocessed inbox items |
| 53 | + |
| 54 | +# Load heartbeat prompt from file (overrides HEARTBEAT_PROMPT) |
| 55 | +# HEARTBEAT_PROMPT_FILE=/path/to/heartbeat-prompt.md |
| 56 | + |
| 57 | +# Where to deliver heartbeat alerts: "last" (most recent chat) or a chat ID |
| 58 | +# HEARTBEAT_TARGET=last |
| 59 | + |
| 60 | +# Only run heartbeats during these hours (24h format, in HEARTBEAT_TIMEZONE) |
| 61 | +# HEARTBEAT_ACTIVE_HOURS=08:00-22:00 |
| 62 | + |
| 63 | +# Timezone for active hours (e.g., America/New_York, Europe/London) |
| 64 | +# HEARTBEAT_TIMEZONE=UTC |
| 65 | + |
| 66 | +# Suppress "all clear" responses shorter than this |
| 67 | +# HEARTBEAT_ACK_MAX_CHARS=300 |
| 68 | + |
| 69 | +# Model override for heartbeats (e.g., sonnet for cheaper checks) |
| 70 | +# HEARTBEAT_MODEL= |
| 71 | + |
| 72 | +# Path to HEARTBEAT.md file injected into heartbeat context |
| 73 | +# HEARTBEAT_FILE= |
0 commit comments