feat: openclaw-style secrets (env.vars + \) and per-task model routing

- Replace python-dotenv with config.json env.vars block + \ substitution
- Add models section for per-task model routing (heartbeat, subagent, default)
- Heartbeat/subagent tasks can use different models/providers than main chat
- Remove python-dotenv from dependencies
- Update all docs to reflect new config approach
- Reorganize docs into project/ and research/ subdirectories
This commit is contained in:
2026-02-20 23:49:05 -05:00
parent 55c6767e69
commit 82c2640481
35 changed files with 2904 additions and 422 deletions

View File

@@ -1,23 +1,30 @@
# =============================================================================
# Aetheel Secrets (.env)
# Aetheel .env (LEGACY — optional fallback)
# =============================================================================
# This file holds SECRETS ONLY (tokens, passwords, API keys).
# All other configuration lives in ~/.aetheel/config.json.
# Secrets now live in ~/.aetheel/config.json under the "env.vars" block.
# Process environment variables still override everything.
#
# Copy this file to .env and fill in your values.
# Example config.json:
#
# {
# "env": {
# "vars": {
# "SLACK_BOT_TOKEN": "xoxb-your-bot-token",
# "DISCORD_BOT_TOKEN": "your-discord-token"
# }
# },
# "discord": {
# "enabled": true,
# "bot_token": "${DISCORD_BOT_TOKEN}"
# }
# }
#
# If you still prefer a .env file, set these and they will be picked up
# from the process environment as a final override.
# --- Slack Tokens ------------------------------------------------------------
SLACK_BOT_TOKEN=xoxb-your-bot-token-here
SLACK_APP_TOKEN=xapp-your-app-token-here
# --- Telegram Bot Token (optional) -------------------------------------------
# SLACK_BOT_TOKEN=xoxb-your-bot-token-here
# SLACK_APP_TOKEN=xapp-your-app-token-here
# TELEGRAM_BOT_TOKEN=your-telegram-bot-token-here
# --- Discord Bot Token (optional) --------------------------------------------
# DISCORD_BOT_TOKEN=your-discord-bot-token-here
# --- OpenCode Server Password (optional, SDK mode only) ----------------------
# OPENCODE_SERVER_PASSWORD=your-server-password
# --- Anthropic API Key (optional, for Claude Code runtime) -------------------
# ANTHROPIC_API_KEY=sk-ant-...