Skip to content

Add MiniMax M2 API and additional environment variables to subprocess allowlist #1070

@rager306

Description

@rager306

Archon Issue: Add MiniMax M2 and GLM API and additional environment variables to subprocess allowlist

Description

During deployment of Archon with MiniMax M2 API, several environment variables required for AI assistant operation were missing from the subprocess environment allowlist, preventing proper authentication and configuration inside Docker containers. Additionally, the Settings UI displayed hardcoded "Not configured" status for all platforms regardless of actual adapter state.

Problems Identified

1. Missing Auth Variables in Allowlist

  • ANTHROPIC_API_KEY — not in SUBPROCESS_ENV_ALLOWLIST
  • ANTHROPIC_AUTH_TOKEN — not in SUBPROCESS_ENV_ALLOWLIST
  • CLAUDE_API_KEY was present, but the legacy ANTHROPIC_AUTH_TOKEN (used by MiniMax, GLM in Claude code) was blocked

2. Missing MiniMax M2 Configuration Variables

The following variables from Minimax (https://platform.minimax.io/docs/token-plan/claude-code) were not in the allowlist:

  • API_TIMEOUT_MS
  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC
  • ANTHROPIC_MODEL
  • ANTHROPIC_SMALL_FAST_MODEL
  • ANTHROPIC_DEFAULT_SONNET_MODEL
  • ANTHROPIC_DEFAULT_OPUS_MODEL
  • ANTHROPIC_DEFAULT_HAIKU_MODEL

3. Settings UI Platform Status Hardcoded (separate issue)

  • SettingsPage.tsx displays hardcoded connected: false for Slack, Telegram, Discord, GitHub
  • Only Web shows actual status via adapter === 'web' check
  • No dynamic status from backend health endpoint

Code Changes Made

File: packages/core/src/utils/env-allowlist.ts

Added MiniMax M2 and auth-related environment variables to SUBPROCESS_ENV_ALLOWLIST:

  // Claude auth and config
  'CLAUDE_USE_GLOBAL_AUTH',
  'CLAUDE_API_KEY',
+ 'ANTHROPIC_API_KEY',
+ 'ANTHROPIC_AUTH_TOKEN',
  'CLAUDE_CODE_OAUTH_TOKEN',
  'CLAUDE_CODE_USE_BEDROCK',
  'CLAUDE_CODE_USE_VERTEX',
  'ANTHROPIC_BASE_URL',
  'ANTHROPIC_BEDROCK_BASE_URL',
  'ANTHROPIC_VERTEX_PROJECT_ID',
  'ANTHROPIC_VERTEX_REGION',
  // Archon runtime config
  'ARCHON_HOME',
  'ARCHON_DOCKER',
  'IS_SANDBOX',
  'WORKSPACE_PATH',
  'LOG_LEVEL',
  // Git identity (used by git commits inside workflows)
  'GIT_AUTHOR_NAME',
  'GIT_AUTHOR_EMAIL',
  'GIT_COMMITTER_NAME',
  'GIT_COMMITTER_EMAIL',
  'GIT_SSH_COMMAND',
  // GitHub CLI (used by Claude Code tools)
  'GITHUB_TOKEN',
  'GH_TOKEN',
+ // MiniMax M2 API configuration
+ 'API_TIMEOUT_MS',
+ 'CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC',
+ 'ANTHROPIC_MODEL',
+ 'ANTHROPIC_SMALL_FAST_MODEL',
+ 'ANTHROPIC_DEFAULT_SONNET_MODEL',
+ 'ANTHROPIC_DEFAULT_OPUS_MODEL',
+ 'ANTHROPIC_DEFAULT_HAIKU_MODEL',

Environment Variables Now Supported

ANTHROPIC_API_KEY
ANTHROPIC_AUTH_TOKEN
API_TIMEOUT_MS
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC
ANTHROPIC_MODEL
ANTHROPIC_SMALL_FAST_MODEL
ANTHROPIC_DEFAULT_SONNET_MODEL
ANTHROPIC_DEFAULT_OPUS_MODEL
ANTHROPIC_DEFAULT_HAIKU_MODEL

Files Modified

File Changes
packages/core/src/utils/env-allowlist.ts Added 10 environment variables to allowlist

Recommended Settings for MiniMax M2

Add to .env:

ANTHROPIC_BASE_URL=https://api.minimax.io/anthropic
ANTHROPIC_AUTH_TOKEN=<your-token>
ANTHROPIC_API_KEY=<your-token>
CLAUDE_API_KEY=<your-token>
CLAUDE_USE_GLOBAL_AUTH=false
ANTHROPIC_MODEL=MiniMax-M2.7
ANTHROPIC_SMALL_FAST_MODEL=MiniMax-M2.7
ANTHROPIC_DEFAULT_SONNET_MODEL=MiniMax-M2.7
ANTHROPIC_DEFAULT_OPUS_MODEL=MiniMax-M2.7
ANTHROPIC_DEFAULT_HAIKU_MODEL=MiniMax-M2.7
API_TIMEOUT_MS=3000000
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1

Related Issues (Separate)

  1. Settings UI Hardcoded Status: packages/web/src/routes/SettingsPage.tsx needs to be updated to show actual adapter status from /api/health endpoint instead of hardcoded connected: false values for non-Web platforms.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions