환경변수
Gajae-Code 환경변수 분류 레퍼런스 — provider 자격증명, base URL override, 웹 검색 키, 저장소·동작 토글.
Gajae-Code가 런타임에 읽는 환경변수를 분류한 레퍼런스입니다. 모든 *_API_KEY, *_TOKEN, OAuth/bearer 자격증명, 클라우드 자격증명은 비밀입니다 — 로깅·커밋 금지.
.env 해석 순서는 레퍼런스를, 재시도 예산·동작 토글의 맥락은 설정을 보세요.
provider 자격증명
provider 키는 getEnvApiKey()로 사용됩니다. provider별 인증 해석 순서: CLI --api-key → 저장된 자격증명 → 저장된 OAuth → 환경변수 → models.yml의 apiKey. 전체 provider 목록은 길지만(70개 이상) 아래는 주요 항목입니다 — 사용하는 provider의 키만 설정하세요.
| 변수 | provider |
|---|---|
ANTHROPIC_OAUTH_TOKEN / ANTHROPIC_API_KEY | Anthropic (OAuth 토큰 우선) |
OPENAI_API_KEY | OpenAI 계열 provider |
GEMINI_API_KEY | Google Gemini |
OPENROUTER_API_KEY | OpenRouter |
ZAI_API_KEY | z.ai (GLM); z.ai 웹 검색도 사용 |
MINIMAX_API_KEY / MINIMAX_CODE_API_KEY | MiniMax / MiniMax Code |
DEEPSEEK_API_KEY | DeepSeek |
XAI_API_KEY | xAI |
GROQ_API_KEY | Groq |
MISTRAL_API_KEY | Mistral |
CEREBRAS_API_KEY | Cerebras |
FIREWORKS_API_KEY | Fireworks |
TOGETHER_API_KEY | Together |
HUGGINGFACE_HUB_TOKEN / HF_TOKEN | Hugging Face |
MOONSHOT_API_KEY | Moonshot |
QWEN_OAUTH_TOKEN / QWEN_PORTAL_API_KEY | Qwen Portal (OAuth 토큰 우선) |
이 외에도 Synthetic, NVIDIA, NanoGPT, Venice, LiteLLM, LM Studio, Ollama, llama.cpp, Xiaomi, Azure OpenAI, OpenCode, Qianfan, ZenMux, vLLM, Cursor, Vercel AI Gateway, Cloudflare AI Gateway, Alibaba Coding Plan, Kilo, Ollama Cloud, GitLab Duo 등 다수를 지원합니다. 로컬 런타임(LM Studio, Ollama, llama.cpp, vLLM)은 보통 인증이 필요 없습니다. 호스트가 요구하는 경우, 빈 값이 아닌 토큰이면 동작합니다.
GitHub / Copilot 토큰 체인
| 변수 | 용도 | 체인 |
|---|---|---|
COPILOT_GITHUB_TOKEN | GitHub Copilot provider 인증 | COPILOT_GITHUB_TOKEN → GH_TOKEN → GITHUB_TOKEN |
GH_TOKEN / GITHUB_TOKEN | Copilot 폴백; 웹 스크레이퍼 GitHub API 인증 | 스크레이퍼는 GH_TOKEN보다 GITHUB_TOKEN을 먼저 확인 |
클라우드 / 엔터프라이즈 자격증명
| 변수 | provider |
|---|---|
AZURE_OPENAI_API_KEY | Azure OpenAI / Azure OpenAI Responses |
AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY | Amazon Bedrock (IAM 키 경로; profile/SSO/IMDS도 가능) |
AWS_BEARER_TOKEN_BEDROCK | Amazon Bedrock bearer 토큰 경로 |
GOOGLE_APPLICATION_CREDENTIALS | Google Vertex AI (ADC 서비스 계정 파일) |
GOOGLE_CLOUD_API_KEY | Google Vertex AI (직접 API 키 인증) |
ANTHROPIC_FOUNDRY_API_KEY | Azure Foundry 경유 Anthropic (Foundry 모드 시) |
GITLAB_TOKEN | GitLab Duo |
Auth broker와 자격증명 랭킹
| 변수 | 용도 |
|---|---|
GJC_AUTH_BROKER_URL | 원격 auth broker base URL. 설정 시 로컬 SQLite 자격증명을 우회하고 저장 API/OAuth 자격증명을 broker에서 해석합니다. |
GJC_AUTH_BROKER_TOKEN | /v1/healthz를 제외한 broker 엔드포인트 bearer 토큰. auth.broker.token 또는 <config-dir>/auth-broker.token로 폴백합니다. |
GJC_CREDENTIAL_RANKING_MODE | 다중 계정 OAuth 선택 전략. 기본은 balanced, earliest-reset은 quota reset이 가장 빠른 계정을 선호합니다. |
provider base URL override
내장 provider base URL 해석 순서: models.yml의 baseUrl → provider별 base URL env → 번들 기본값.
| provider | 변수 |
|---|---|
| OpenAI | OPENAI_BASE_URL |
| Anthropic | ANTHROPIC_BASE_URL |
| Google Gemini | GOOGLE_BASE_URL, GEMINI_BASE_URL |
| 모든 provider id | 파생 <PROVIDER_ID>_BASE_URL (대문자화, 비영숫자 → _; 예: my-proxy → MY_PROXY_BASE_URL) |
내장 openai provider는 번들 Responses 전송을 유지합니다. OPENAI_BASE_URL은 호스트를 바꾸지만 여전히 <baseUrl>/responses를 호출합니다. 프록시가 Chat Completions만 지원하면 대신 api: openai-completions인 커스텀 models.yml provider를 구성하세요.
로컬 런타임 탐색 base URL도 override할 수 있습니다:
| 변수 | 기본값 |
|---|---|
OLLAMA_BASE_URL | http://127.0.0.1:11434 |
LM_STUDIO_BASE_URL | http://127.0.0.1:1234/v1 |
LLAMA_CPP_BASE_URL | http://127.0.0.1:8080 |
웹 검색 키
각 키는 해당 web_search provider를 켭니다:
| 변수 | provider |
|---|---|
EXA_API_KEY | Exa |
BRAVE_API_KEY | Brave |
PERPLEXITY_API_KEY / PERPLEXITY_COOKIES | Perplexity (API 키 또는 쿠키 인증) |
TAVILY_API_KEY | Tavily |
KAGI_API_KEY | Kagi |
JINA_API_KEY | Jina |
PARALLEL_API_KEY | Parallel |
ZAI_API_KEY | z.ai (저장된 OAuth도 확인) |
SEARXNG_ENDPOINT (+ SEARXNG_TOKEN) | SearXNG 엔드포인트와 선택적 bearer 토큰 |
SEARXNG_BASIC_USERNAME / SEARXNG_BASIC_PASSWORD는 HTTP Basic 인증을 제공합니다. SearXNG는 ~/.gjc/agent/config.yml의 동등한 searxng.* 설정도 읽습니다. env 변수는 폴백입니다. Anthropic 웹 검색 인증 체인은 ANTHROPIC_SEARCH_API_KEY(+ 선택적 ANTHROPIC_SEARCH_BASE_URL)로 시작합니다.
저장소·동작 토글
| 변수 | 효과 |
|---|---|
GJC_CONFIG_DIR | 홈 아래 config 루트 디렉터리명(기본 .gjc). |
GJC_CODING_AGENT_DIR | agent 디렉터리 전체 override(기본 ~/<GJC_CONFIG_DIR 또는 .gjc>/agent). |
GJC_NO_PTY | 1이면 bash 도구의 대화형 PTY 경로를 끔. |
GJC_NOTIFICATIONS | off / 0 / false면 데스크톱 알림 억제. |
GJC_NO_TITLE | 설정 시 자동 세션 제목 생성을 끔. |
GJC_EDIT_VARIANT | edit 도구 variant 강제: patch, replace, hashline, atom, vim, apply_patch. |
GJC_TIMING | 계층적 타이밍 스팬 트리를 stderr로 출력(x = 출력 후 종료, full = 모든 모듈 로드 나열). |
재시도 예산·동작 상세는 설정을 보세요.
보안 민감 변수
다음은 비밀로 다루세요 — 로깅·커밋 금지:
- provider/API 키와 OAuth/bearer 자격증명(모든
*_API_KEY,*_TOKEN, OAuth access/refresh 토큰). - 클라우드 자격증명(
AWS_*;GOOGLE_APPLICATION_CREDENTIALS는 서비스 계정 자료를 가리킬 수 있음). - 검색/provider 인증 변수(
EXA_API_KEY,BRAVE_API_KEY,PERPLEXITY_API_KEY, Anthropic 검색 키). - Foundry mTLS 자료(
ANTHROPIC_MODEL_CODE_CLIENT_CERT,ANTHROPIC_MODEL_CODE_CLIENT_KEY, 사설 CA 번들을 가리키는NODE_EXTRA_CA_CERTS).