Codex config.toml 위치와 핵심 설정 — 메모리 켜는 법 포함
한줄평
개인 기본값은 ~/.codex/config.toml에, 팀 공유 값은 신뢰된 프로젝트의 .codex/config.toml에 두는 게 맞다고 봐요. 로컬 메모리는 [features] memories = true 한 줄로 켜요.
Codex 설정을 바꾸려면 어디에 무엇을 적어야 할까요? 답은 대부분 ~/.codex/config.toml이에요. 저는 공식 레퍼런스 전체를 외울 필요는 없고, 위치·덮어쓰기 순서·자주 쓰는 키 세 가지만 알면 실무에서 충분하다고 봐요. 이 글에서는 그 세 가지를 2026년 9월 공식 문서 기준으로 정리해요.
Codex config.toml은 어디에 있나요?
사용자(개인) 설정 파일은 아래 경로예요.
| OS | 경로 |
|---|---|
| macOS / Linux | ~/.codex/config.toml |
| Windows | %USERPROFILE%\.codex\config.toml |
CODEX_HOME 환경 변수를 바꾸면 홈이 ~/.codex 대신 그 경로가 돼요. 같은 폴더에는 auth.json(파일 저장 인증을 쓸 때), history.jsonl(대화 기록), 로그·캐시도 함께 쌓여요.
프로젝트마다 다른 값이 필요하면 리포 안에 .codex/config.toml을 두면 돼요. 다만 Codex는 프로젝트를 신뢰(trusted)했을 때만 이 파일을 읽어요. 신뢰하지 않은 프로젝트에서는 프로젝트 쪽 .codex/ 설정·훅·규칙을 건너뛰고, 개인·시스템 설정만 남겨 둬요.
IDE 확장에서 열려면 우측 상단 톱니바퀴 → Codex Settings → Open config.toml이에요. CLI와 IDE 확장은 같은 설정 계층을 공유해요.
편집 편의용으로 VS Code / Cursor의 Even Better TOML 확장을 쓰면, 파일 맨 위에 아래 한 줄을 넣어 자동완성을 켤 수 있어요.
#:schema https://developers.openai.com/codex/config-schema.json설정은 어떤 순서로 적용되나요?
같은 키가 여러 파일에 있으면, 위쪽일수록 이깁니다 (2026년 9월 Config basics 기준).
- CLI 플래그와
-c/--config한 번만 덮어쓰기 - 신뢰된 프로젝트의
.codex/config.toml(루트에서 현재 폴더로 내려가며 읽고, 가까운 파일이 이김) --profile 이름으로 고른~/.codex/이름.config.toml- 개인
~/.codex/config.toml - 로그인한 워크스페이스의 클라우드 관리 기본값 (있으면)
- 시스템
/etc/codex/config.toml(Unix, 있으면) - 내장 기본값
실무 팁은 단순해요. 모든 프로젝트에 공통인 값은 개인 config.toml에 두고, 한 리포만 다른 값은 프로젝트 .codex/config.toml에 두고, 오늘만 바꿀 값은 CLI -c로 넘기면 돼요.
프로필은 Codex 0.134.0부터 방식이 바뀌었어요. 예전처럼 config.toml 안의 [profiles.이름] 테이블이 아니라, 옆 파일 ~/.codex/이름.config.toml에 차이만 적고 codex --profile 이름으로 고릅니다.
프로젝트 파일에는 넣어도 무시되는 키가 있어요. 대표적으로 model_provider, model_providers, openai_base_url, chatgpt_base_url, notify, profile, profiles, otel이에요. 인증·프로바이더·알림·텔레메트리는 개인 ~/.codex/config.toml에 두세요.
회사 PC라면 관리자가 requirements.toml로 더 강한 제한을 걸 수 있어요. 사용자가 approval_policy = "never"처럼 풀어도 막히는 경우가 그거예요. 관리 강제 쪽은 Codex Business·Enterprise 가이드에 더 자세히 적어 두었어요.
실무에서 자주 바꾸는 설정은 뭔가요?
공식 문서가 꼽는 “자주 바꾸는 옵션”과, 검색으로 많이 찾는 메모리·이미지 관련 키를 한곳에 모았어요.
기본 모델과 추론 세기
model = "gpt-6-sol"
model_reasoning_effort = "medium"model_reasoning_effort에 쓸 수 있는 값은 모델·클라이언트마다 달라요. 문서 예시는 low, medium, high, xhigh, max, ultra 등을 언급해요.
승인·샌드박스
approval_policy = "on-request"
sandbox_mode = "workspace-write"approval_policy = "untrusted"는 이제 지원하지 않아요. on-failure도 폐기 예정이니 on-request(대화형) 또는 never(비대화형)를 쓰세요. 프로젝트 단위로 더 엄격하게 가려면 개인 설정의 projects."<경로>".trust_level = "untrusted"를 쓰면 돼요.
로컬 메모리 켜기
로컬 Memories는 기본값이 꺼짐이에요.
[features]
memories = true켜 둔 뒤에도 주입·생성만 따로 끌 수 있어요.
[memories]
use_memories = true
generate_memories = true
disable_on_external_context = falseGUI로는 ChatGPT 데스크톱 → Settings → Personalization → Enable memories 경로도 있어요. 메모리 계층과 이미지 입력·생성 흐름은 Codex 메모리·이미지 가이드에 따로 정리해 두었어요.
웹 검색 모드
web_search = "cached" # 기본값. OpenAI가 유지하는 검색 인덱스
# web_search = "live" # 실시간 웹 (--search와 같음)
# web_search = "disabled"--yolo처럼 전체 접근 샌드박스를 쓰면 기본이 live로 바뀌어요.
이미지 생성 스킬 끄기
팀에서 이미지 생성을 막고 싶다면 스킬 단위로 끌 수 있어요.
[[skills.config]]
path = "imagegen"
enabled = false생성 턴은 일반 텍스트 턴보다 포함 한도를 평균 3~5배 빠르게 소모한다고 공식 이미지 생성 문서에 적혀 있어요 (2026년 9월 기준).
한 번에 쓰는 최소 예시
개인 파일에 아래 정도만 있어도 시작하기 좋아요.
#:schema https://developers.openai.com/codex/config-schema.json
model = "gpt-6-sol"
model_reasoning_effort = "medium"
approval_policy = "on-request"
sandbox_mode = "workspace-write"
web_search = "cached"
[features]
memories = true
[history]
persistence = "save-all"대화 기록을 남기지 않으려면 persistence = "none"으로 바꾸면 돼요. 디스크를 많이 먹는 사례는 에이전트 실행 영수증 글에서도 다룬 적이 있어요.
키 이름이 맞는지 헷갈리면 CLI에서 /debug-config로 어떤 계층이 어떤 값을 넣었는지 볼 수 있어요 (커뮤니티·서드파티 가이드에서 자주 안내하는 확인법이에요). 최종 권위는 항상 Configuration Reference예요.
자주 묻는 질문
Codex config.toml 위치가 Windows에서도 같나요?
홈만 달라요. Windows는 %USERPROFILE%\.codex\config.toml이에요. 네이티브 Windows 샌드박스는 [windows] sandbox = "elevated"가 권장값이에요.
프로젝트 .codex/config.toml이 안 먹혀요
프로젝트가 신뢰(trusted) 상태인지 먼저 보세요. 신뢰하지 않으면 프로젝트 설정을 읽지 않아요. 또 model_provider 같은 무시 키를 프로젝트 파일에 넣었는지도 확인하세요.
메모리는 config.toml로만 켜나요?
아니요. 데스크톱 Settings → Personalization → Enable memories로도 켤 수 있어요. 파일로는 [features] memories = true예요.
예전에 쓰던 [profiles.이름]은 어떻게 되나요?
Codex 0.134.0부터는 ~/.codex/이름.config.toml 파일로 옮기고 --profile 이름으로 고르세요. 옛 테이블과 최상위 profile = "..." 선택자는 더 이상 읽지 않아요.
참고 문서: Config basics, Advanced Config, Configuration Reference, Image generation, config schema
광고
Claude Code, OpenCode 같은 AI 코딩 도구를 직접 쓰면서 AI 업계의 변화를 개발자 관점에서 기록합니다. 단순 번역이 아니라 써본 경험과 해석을 함께 남기려고 해요.
관련 글
Codex 요금제 정리: Business vs Enterprise 가격 차이와 크레딧 과금 (2026)
코덱스(Codex) 비즈니스 플랜과 엔터프라이즈 플랜의 가격 차이, 토큰 사용량에 연동된 크레딧 과금 방식, 모델별 크레딧 요율을 2026년 9월 공식 문서 기준으로 정리했어요. 관리자 통제 설정과 회사 도입 순서까지 함께 담았어요.
OpenAI Codex 메모리·이미지 기능 완전 정리 — 켜는 법, 설정, 검열 정책까지
Codex의 메모리는 기본 꺼짐이고, 로컬 클라이언트와 ChatGPT 웹의 메모리는 서로 다른 저장소예요. 이미지는 입력뿐 아니라 생성(gpt-image-2)까지 되고요. 공식 문서 기준으로 메모리 3계층 구조, config.toml 설정, 이미지 생성 사용법과 검열(moderation) 동작까지 실무자용으로 정리했어요.
엔터프라이즈 졸업, 그 다음 — Notion·Nextdoor·LSEG가 Codex로 바꾼 것
지난주에 저는 엔터프라이즈가 AI 코딩 '파일럿을 졸업했다'고 썼어요. 6월 사례들을 보니 이건 도입 선언이 아니라 그다음 단계, 즉 개발 생산성을 어디에 쓸지를 다시 배치하는 이야기예요. Notion·Nextdoor·LSEG가 서로 다른 자리에서 같은 변화를 가리킨다고 봅니다.