mirror of
https://github.com/coleam00/Archon
synced 2026-04-21 13:37:41 +00:00
* Add Archon distribution config and directory structure
- Create centralized path resolution in src/utils/archon-paths.ts
- Add YAML configuration system (src/config/) with layered loading
- Update Dockerfile and docker-compose for /.archon/ directory
- Add GHCR publish workflow for multi-arch Docker builds
- Create deploy/ directory with end-user docker-compose
- Add /init command to create .archon structure in repos
- Add docs/configuration.md reference guide
- Update README with Quick Start section
- Add bun run validate script
- Update tests for new path defaults (~/.archon/)
Directory structure:
- Local: ~/.archon/{workspaces,worktrees,config.yaml}
- Docker: /.archon/{workspaces,worktrees}
- Repo: .archon/{commands,workflows,config.yaml}
Legacy WORKSPACE_PATH and WORKTREE_BASE env vars still supported.
* Complete Archon distribution config implementation
- Wire up config system in src/index.ts (Task 3.5)
- Remove legacy WORKSPACE_PATH and WORKTREE_BASE support
- Add logConfig() function to config-loader.ts
- Update docker-compose.yml to use ARCHON_DOCKER env var
- Remove legacy env vars from .env.example
- Update all documentation to reference ARCHON_HOME
- Create scripts/validate-setup.sh for setup validation
- Add setup:check script to package.json
- Create docs/getting-started.md guide
- Create docs/archon-architecture.md technical docs
- Update tests to use ARCHON_HOME instead of legacy vars
- Fix validate.md command template for new paths
All plan phases now complete:
- Phase 1: Archon Directory Structure
- Phase 2: Docker Distribution
- Phase 3: YAML Configuration System
- Phase 4: Developer Experience
- Phase 5: Documentation
96 lines
3.6 KiB
Text
96 lines
3.6 KiB
Text
# Database
|
|
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/remote_coding_agent
|
|
|
|
# AI Assistants
|
|
# Claude - Choose one:
|
|
CLAUDE_CODE_OAUTH_TOKEN=sk-ant-oat01-...
|
|
# OR
|
|
# CLAUDE_API_KEY=sk-ant-...
|
|
|
|
# Codex Authentication (get from ~/.codex/auth.json after running 'codex login')
|
|
# Required if using Codex as AI assistant
|
|
# On Linux/Mac: cat ~/.codex/auth.json
|
|
# On Windows: type %USERPROFILE%\.codex\auth.json
|
|
CODEX_ID_TOKEN=eyJ...
|
|
CODEX_ACCESS_TOKEN=eyJ...
|
|
CODEX_REFRESH_TOKEN=rt_...
|
|
CODEX_ACCOUNT_ID=6a6a7ba6-...
|
|
|
|
# Default AI Assistant (claude | codex)
|
|
# Used for new conversations when no codebase specified
|
|
DEFAULT_AI_ASSISTANT=claude
|
|
|
|
# GitHub Token (for GitHub CLI and commands)
|
|
GH_TOKEN=ghp_...
|
|
GITHUB_TOKEN=ghp_... # Same as GH_TOKEN, used by adapter
|
|
|
|
# GitHub Webhooks
|
|
WEBHOOK_SECRET=your_random_secret_string
|
|
|
|
# GitHub User Whitelist (optional - comma-separated usernames)
|
|
# When set, only listed GitHub users can trigger webhook processing
|
|
# When empty/unset, webhooks are processed for all users
|
|
# Usernames are case-insensitive (octocat == Octocat)
|
|
GITHUB_ALLOWED_USERS=octocat,monalisa
|
|
|
|
# Platforms - set the tokens for the ones you want to use
|
|
# Telegram - <get token from @BotFather>
|
|
TELEGRAM_BOT_TOKEN=
|
|
# Discord - <get token from Discord Developer Portal>
|
|
DISCORD_BOT_TOKEN=
|
|
|
|
# Slack Bot (Socket Mode)
|
|
# Create app at https://api.slack.com/apps - see docs/slack-setup.md
|
|
SLACK_BOT_TOKEN=xoxb-...
|
|
SLACK_APP_TOKEN=xapp-...
|
|
|
|
# Slack User Whitelist (optional - comma-separated user IDs)
|
|
# When set, only listed Slack users can interact with the bot
|
|
# When empty/unset, bot responds to all users
|
|
# Get user IDs: Slack profile > ... > Copy member ID
|
|
SLACK_ALLOWED_USER_IDS=U1234ABCD,W5678EFGH
|
|
|
|
# Discord User Whitelist (optional - comma-separated user IDs)
|
|
# When set, only listed Discord users can interact with the bot
|
|
# When empty/unset, bot responds to all users
|
|
# Get user IDs in Discord: Settings > Advanced > Developer Mode, then right-click user > Copy ID
|
|
DISCORD_ALLOWED_USER_IDS=123456789012345678,987654321098765432
|
|
|
|
# Telegram User Whitelist (optional - comma-separated user IDs)
|
|
# When set, only listed Telegram users can interact with the bot
|
|
# When empty/unset, bot responds to all users
|
|
# Get your user ID by messaging @userinfobot on Telegram
|
|
TELEGRAM_ALLOWED_USER_IDS=123456789,987654321
|
|
|
|
# Platform Streaming Mode (stream | batch)
|
|
TELEGRAM_STREAMING_MODE=stream # stream (default) | batch
|
|
DISCORD_STREAMING_MODE=batch # batch (default) | stream
|
|
SLACK_STREAMING_MODE=batch # batch (default) | stream
|
|
GITHUB_STREAMING_MODE=batch # batch (default) | stream
|
|
|
|
# Bot Display Name (shown in batch mode "starting" message)
|
|
BOT_DISPLAY_NAME=CodingAgent # e.g., "My-bot", "CodeBot", etc.
|
|
|
|
# GitHub Bot Mention (optional - for @mention detection in GitHub issues/PRs)
|
|
# When set, the bot will respond to this mention name instead of the default @remote-agent
|
|
# If not set, falls back to BOT_DISPLAY_NAME, then defaults to "remote-agent"
|
|
GITHUB_BOT_MENTION=remote-agent
|
|
|
|
# Optional
|
|
PORT=3000
|
|
|
|
# ============================================
|
|
# Archon Directory Configuration (NEW)
|
|
# ============================================
|
|
# All Archon-managed files go in ~/.archon/ by default
|
|
# Override with ARCHON_HOME to use a custom location
|
|
# ARCHON_HOME=~/.archon
|
|
|
|
# Concurrency
|
|
MAX_CONCURRENT_CONVERSATIONS=10 # Maximum concurrent AI conversations (default: 10)
|
|
|
|
# Builtin Command Templates
|
|
# Set to 'false' to disable loading the maintained workflow commands
|
|
# (plan, implement, commit, review-pr, etc.) that ship with this repo.
|
|
# These are updated by the repo maintainers with each release.
|
|
LOAD_BUILTIN_COMMANDS=true # true (default) | false
|