Implement BackendAdapter interface with four CLI backends: - ClaudeCodeBackend (extracted from AgentRuntime) - CodexBackend (OpenAI Codex CLI) - GeminiBackend (Google Gemini CLI) - OpenCodeBackend (OpenCode CLI) Add BackendRegistry for resolution/creation via AGENT_BACKEND env var. Refactor AgentRuntime to delegate to BackendAdapter instead of hardcoding Claude CLI. Update GatewayConfig with new env vars (AGENT_BACKEND, BACKEND_CLI_PATH, BACKEND_MODEL, BACKEND_MAX_TURNS). Includes 10 property-based test files and unit tests for edge cases.
21 lines
774 B
Plaintext
21 lines
774 B
Plaintext
# Required
|
|
DISCORD_BOT_TOKEN=your-discord-bot-token-here
|
|
|
|
# Recommended
|
|
OUTPUT_CHANNEL_ID=your-discord-channel-id-for-heartbeat-cron-output
|
|
|
|
# Optional
|
|
# CLAUDE_CLI_PATH=claude # Deprecated: use BACKEND_CLI_PATH instead
|
|
# AGENT_BACKEND=claude # claude | codex | gemini | opencode
|
|
# BACKEND_CLI_PATH=claude # Path to CLI binary (defaults to backend name)
|
|
# BACKEND_MODEL= # Optional model override for the active backend
|
|
# BACKEND_MAX_TURNS=25 # Max agentic turns per query
|
|
# CONFIG_DIR=./config
|
|
# ALLOWED_TOOLS=Read,Write,Edit,Glob,Grep,WebSearch,WebFetch
|
|
# PERMISSION_MODE=bypassPermissions
|
|
# QUERY_TIMEOUT_MS=120000
|
|
# MAX_CONCURRENT_QUERIES=5
|
|
# MAX_QUEUE_DEPTH=100
|
|
# IDLE_SESSION_TIMEOUT_MS=1800000
|
|
# LOG_LEVEL=info
|