# OpenAI Codex SDK CODEX_API_KEY= OPENAI_API_KEY= # OPENAI_AUTH_MODE: auto | chatgpt | api_key # - auto: prefer CODEX_API_KEY/OPENAI_API_KEY when set; otherwise use Codex CLI login # - chatgpt: always use Codex CLI login (ChatGPT subscription auth), ignore API keys # - api_key: use CODEX_API_KEY/OPENAI_API_KEY when set OPENAI_AUTH_MODE=auto OPENAI_BASE_URL= CODEX_SKIP_GIT_CHECK=true MCP_CONFIG_PATH=./mcp.config.json # Anthropic Claude Agent SDK # CLAUDE_CODE_OAUTH_TOKEN takes precedence over ANTHROPIC_API_KEY when both are set. CLAUDE_CODE_OAUTH_TOKEN= ANTHROPIC_API_KEY= CLAUDE_MODEL= CLAUDE_CODE_PATH= CLAUDE_MAX_TURNS=2 # Claude binary observability: off | stdout | file | both CLAUDE_OBSERVABILITY_MODE=off # CLAUDE_OBSERVABILITY_VERBOSITY: summary | full CLAUDE_OBSERVABILITY_VERBOSITY=summary # Relative to repository workspace root in UI/provider runs. CLAUDE_OBSERVABILITY_LOG_PATH=.ai_ops/events/claude-trace.ndjson CLAUDE_OBSERVABILITY_INCLUDE_PARTIAL=false CLAUDE_OBSERVABILITY_DEBUG=false CLAUDE_OBSERVABILITY_DEBUG_LOG_PATH= # Agent management limits AGENT_MAX_CONCURRENT=4 AGENT_MAX_SESSION=2 AGENT_MAX_RECURSIVE_DEPTH=3 # Schema-driven orchestration limits AGENT_STATE_ROOT=.ai_ops/state AGENT_PROJECT_CONTEXT_PATH=.ai_ops/project-context.json AGENT_TOPOLOGY_MAX_DEPTH=4 AGENT_TOPOLOGY_MAX_RETRIES=2 AGENT_RELATIONSHIP_MAX_CHILDREN=4 AGENT_MERGE_CONFLICT_MAX_ATTEMPTS=2 # Resource provisioning (hard + soft constraints) AGENT_WORKTREE_ROOT=.ai_ops/worktrees AGENT_WORKTREE_BASE_REF=HEAD # Optional relative path inside each worktree; enables sparse-checkout and sets working directory there. AGENT_WORKTREE_TARGET_PATH= AGENT_PORT_BASE=36000 AGENT_PORT_BLOCK_SIZE=32 AGENT_PORT_BLOCK_COUNT=512 AGENT_PORT_PRIMARY_OFFSET=0 AGENT_PORT_LOCK_DIR=.ai_ops/locks/ports AGENT_DISCOVERY_FILE_RELATIVE_PATH=.agent-context/resources.json # Security middleware # AGENT_SECURITY_VIOLATION_MODE: hard_abort | validation_fail | dangerous_warn_only AGENT_SECURITY_VIOLATION_MODE=hard_abort AGENT_SECURITY_ALLOWED_BINARIES=git,npm,node,cat,ls,pwd,echo,bash,sh AGENT_SECURITY_COMMAND_TIMEOUT_MS=120000 AGENT_SECURITY_AUDIT_LOG_PATH=.ai_ops/security/command-audit.ndjson AGENT_SECURITY_ENV_INHERIT=PATH,HOME,TMPDIR,TMP,TEMP,LANG,LC_ALL AGENT_SECURITY_ENV_SCRUB= AGENT_SECURITY_DROP_UID= AGENT_SECURITY_DROP_GID= # Runtime events / telemetry AGENT_RUNTIME_EVENT_LOG_PATH=.ai_ops/events/runtime-events.ndjson AGENT_RUNTIME_DISCORD_WEBHOOK_URL= # AGENT_RUNTIME_DISCORD_MIN_SEVERITY: info | warning | critical AGENT_RUNTIME_DISCORD_MIN_SEVERITY=critical AGENT_RUNTIME_DISCORD_ALWAYS_NOTIFY_TYPES=session.started,session.completed,session.failed # Local operator UI AGENT_UI_HOST=127.0.0.1 AGENT_UI_PORT=4317 # Runtime-injected (do not set manually): # AGENT_REPO_ROOT, AGENT_WORKTREE_PATH, AGENT_WORKTREE_BASE_REF, # AGENT_PORT_RANGE_START, AGENT_PORT_RANGE_END, AGENT_PORT_PRIMARY, AGENT_DISCOVERY_FILE