Skip to main content

codex-cli

OpenAI Codex CLI(`codex`) 사용 스킬. 터미널에서 OpenAI 코딩 에이전트를 호출해 비대화형 작업(`codex exec`), 코드 리뷰(`codex review`), 세션 재개(`codex resume`), MCP 서버 등록(`codex mcp`)을 수행한다. 사용 시점: 사용자가 'codex', 'codex cli', 'codex exec', 'OpenAI 코덱스', 'GPT 로 한 번 더', 'codex 로 두 번째 의견', 'codex 로 리뷰', 'codex 로 패치', 'OpenAI 모델로 코딩 시켜', 'codex 백그라운드 실행', 'codex JSON 출력', 'codex 샌드박스', 'codex MCP 등록' 등을 언급할 때. Claude Code 자체 작업에 OpenAI 의 두 번째 시각을 더하거나, 별도 모델로 동일 작업을 비교할 때 반드시 이 스킬을 사용한다. 단, ChatGPT 웹/앱·OpenAI Responses API 직접 호출·gpt-image-2 이미지 생성은 이 스킬의 범위가 아니다.

来源信息

仓库
revfactory/skills
最近来源活动
2026年5月5日 16:15
检测到的 SKILL.md 语言
韩语
星标
159
分支
44

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
2 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
codex-cli
description
OpenAI Codex CLI(`codex`) 사용 스킬. 터미널에서 OpenAI 코딩 에이전트를 호출해 비대화형 작업(`codex exec`), 코드 리뷰(`codex review`), 세션 재개(`codex resume`), MCP 서버 등록(`codex mcp`)을 수행한다. 사용 시점: 사용자가 'codex', 'codex cli', 'codex exec', 'OpenAI 코덱스', 'GPT 로 한 번 더', 'codex 로 두 번째 의견', 'codex 로 리뷰', 'codex 로 패치', 'OpenAI 모델로 코딩 시켜', 'codex 백그라운드 실행', 'codex JSON 출력', 'codex 샌드박스', 'codex MCP 등록' 등을 언급할 때. Claude Code 자체 작업에 OpenAI 의 두 번째 시각을 더하거나, 별도 모델로 동일 작업을 비교할 때 반드시 이 스킬을 사용한다. 단, ChatGPT 웹/앱·OpenAI Responses API 직접 호출·gpt-image-2 이미지 생성은 이 스킬의 범위가 아니다.
# OpenAI Codex CLI OpenAI 의 코딩 에이전트 CLI(`codex`)를 Claude Code 세션 안에서 안전하게 호출하기 위한 스킬. (참고: codex-cli 0.128 / 2026-04 기준) Codex CLI 는 Claude Code 와 같은 결의 코딩 에이전트지만 모델이 OpenAI(이 빌드 기본은 `gpt-5.5`, 또는 `--oss` 로컬) 라는 점이 핵심 차이. 이 스킬은 주로 **`codex exec` 비대화형 호출**을 통해 Claude 가 자신의 작업에 OpenAI 시각을 더하거나, 독립 작업을 위임할 때 쓴다. **중요한 동작 원리.** `codex exec` 는 비대화형이므로 승인(approval) 개념 자체가 없다. 모든 명령은 자동으로 시도되고, 위험성은 오직 `--sandbox` 정책으로만 제어한다. 따라서 인터랙티브 `codex` 의 `--ask-for-approval` 플래그는 `codex exec` 에서 **에러**를 낸다. 이 스킬의 모든 예제는 이 점을 반영한다. ## 언제 쓰는가 - **두 번째 의견(second opinion)**. 중요한 설계·디버깅 결정에 OpenAI 모델의 독립 분석을 받고 싶을 때 - **병렬 위임**. 메인 컨텍스트를 보호하면서 Codex 에 별개 하위 작업(빌드 검증, 리팩터 초안 등)을 시킬 때 - **코드 리뷰**. `codex review` 로 브랜치/커밋/언커밋 변경을 비대화형 리뷰 - **JSON 자동화**. `--json --output-last-message` 조합으로 결과를 파일·파이프라인에 흘려보낼 때 - **MCP 동기화**. Codex 에 MCP 서버를 등록·관리해 도구 풀을 확장할 때 대화형 TUI(`codex` 인자 없이) 자체는 사람이 직접 다루는 모드라, 에이전트 입장에서는 거의 항상 `codex exec` 를 쓴다. ## 사전 점검 (호출 전 1회) ```bash codex --version # 설치 확인 codex login status # 인증 상태 (logged in 이면 OK) ``` `codex login status` 가 실패하면 사용자에게 다음 중 하나를 안내한다. ```bash codex login # ChatGPT OAuth (권장) codex login --device-auth # 헤드리스 환경 printenv OPENAI_API_KEY | codex login --with-api-key # API 키 사용 ``` API 키 모드는 사용량이 OpenAI Platform 결제로 계산되므로 ChatGPT Plus/Pro/Team 구독자라면 OAuth 로그인이 비용상 유리하다. ## 핵심 패턴: `codex exec` 기본 골격. ```bash codex exec [OPTIONS] "프롬프트" ``` 작은 작업이라도 Claude 가 호출할 때는 **항상 비대화형 옵션을 명시**한다. 그렇지 않으면 TUI 가 떠서 세션이 멈춘다. ### 1) 안전한 읽기 전용 호출 (분석·리뷰) ```bash codex exec \ --sandbox read-only \ --skip-git-repo-check \ --output-last-message /tmp/codex-out.md \ "이 디렉토리의 src/auth/*.ts 파일을 읽고 잠재적 보안 취약점을 마크다운 표로 정리해라" ``` `read-only` 샌드박스는 부작용이 없어 자동화의 가장 안전한 기본값이다. 결과물은 `--output-last-message` 로 받는 게 확실하다(stdout 에는 헤더·진행 로그·토큰 사용량이 섞인다). ### 2) 워크스페이스 쓰기 호출 (패치 생성) ```bash codex exec \ --sandbox workspace-write \ --cd /path/to/repo \ --output-last-message /tmp/codex-patch.md \ "tests/integration/login.spec.ts 에서 401 케이스가 빠져 있다. 추가하고 npm test 로 통과시켜라" ``` `workspace-write` 는 작업 루트(또는 `--cd`)와 `--add-dir` 로 추가한 디렉토리에만 쓰기를 허용한다. 비대화형이라 사람에게 묻지 않으므로, 결과를 사용자에게 다시 보여 주고 검토받는 흐름을 유지하라. ### 3) JSONL 이벤트 스트림 (파이프라인 통합) ```bash codex exec \ --json \ --sandbox read-only \ --output-last-message /tmp/last.txt \ "package.json 의 의존성을 분석해 outdated 한 것만 JSON 배열로 알려줘" \ > /tmp/codex.jsonl ``` `--json` 은 줄 단위 JSON 이벤트(시작·도구 호출·메시지·완료)를 stdout 에 흘리고, `--output-last-message` 는 모델 최종 답만 별도 파일로 떨어뜨린다. CI 자동화에서는 둘을 함께 쓴다. ### 4) 출력 스키마 강제 ```bash codex exec \ --output-schema /tmp/schema.json \ --output-last-message /tmp/result.json \ --sandbox read-only \ "이 README 에서 설치 명령어들을 추출해 schema 에 맞춰 JSON 으로 반환" ``` `--output-schema` 에 JSON Schema 파일 경로를 주면 최종 응답이 그 형태로 검증된다. 표/엔터티 추출 같은 구조화 작업에 쓴다. ### 5) stdin 으로 큰 컨텍스트 전달 ```bash git diff main..HEAD | codex exec \ --sandbox read-only \ -o /tmp/review.md \ "표준 입력으로 들어온 diff 를 리뷰해라. 위험·개선·테스트 가능성 순으로 정리" ``` PROMPT 인자에 `-` 만 주거나 인자를 생략하면 stdin 전체가 프롬프트가 된다. PROMPT 와 stdin 을 동시에 주면 stdin 이 `<stdin>` 블록으로 덧붙는다. ### 6) 이미지 첨부 ```bash codex exec -i screenshot.png \ --sandbox read-only \ -o /tmp/codex-out.md \ "이 스크린샷의 UI 구조를 React 컴포넌트 트리로 표현해줘" ``` `-i` 는 반복 가능. PNG/JPG/WebP 등을 멀티 첨부할 수 있다. ## 샌드박스 정책 가이드 | Sandbox | 적합한 상황 | |---------|-------------| | `read-only` | 분석·문서화·리뷰. **에이전트 호출 기본값.** | | `workspace-write` | 자동화된 패치 생성. 작업 루트·`--add-dir` 만 쓰기 가능. | | `danger-full-access` | 사용 금지 — 사용자의 명시 요청 + 격리 환경에서만. | `--dangerously-bypass-approvals-and-sandbox`(별칭 `--yolo`)는 격리된 컨테이너 외부에서는 절대 쓰지 않는다. > **인터랙티브 `codex` 는 다르다.** TUI 모드에서만 `-a, --ask-for-approval <untrusted|on-request|never>` 가 의미를 가진다. `codex exec` 에 같은 플래그를 주면 즉시 에러로 종료하므로 절대 섞지 말 것. ## 모델 / 프로파일 선택 ```bash codex exec -m gpt-5.5 "..." # 모델 직접 지정 codex exec -p review "..." # ~/.codex/config.toml 의 [profiles.review] 사용 codex exec --oss --local-provider ollama -m gpt-oss:20b "..." # 로컬 OSS 모델 ``` 기본 모델은 ChatGPT 계정 플랜과 `~/.codex/config.toml` 의 `model =` 설정에 따른다 (이 빌드 기본 `gpt-5.5`). 모델 카탈로그는 `codex debug models` 로 확인. `-c model_reasoning_effort=high` 같은 인라인 오버라이드도 동일 효과. ## 두 번째 의견(second opinion) 패턴 Claude 의 분석을 그대로 두고, 같은 입력을 OpenAI 에 한 번 더 돌려 비교하는 구조. ```bash # 1) Claude 가 결론을 적어 둔 메모 echo "## Claude 결론\n$CLAUDE_CONCLUSION" > /tmp/handoff.md echo "## 원본 컨텍스트" >> /tmp/handoff.md cat path/to/relevant.ts >> /tmp/handoff.md # 2) Codex 에 독립 판단 요청 codex exec \ --sandbox read-only \ -o /tmp/codex-opinion.md \ "$(cat /tmp/handoff.md)\n\n위 결론에 동의하는지, 놓친 부분은 없는지 독립적으로 판단해 마크다운으로 답해라." ``` 핵심은 Claude 의 결론을 같이 넘기되 "독립적으로" 판단하라고 명시하는 것. 동일 모델 반복보다 가짜 합의(echo chamber)를 줄인다. ## 코드 리뷰: `codex review` 브랜치/커밋/언커밋 단위로 리뷰만 돌리는 전용 서브커맨드. `codex exec` 와 달리 리뷰 포맷이 정형화돼 있다. ```bash codex review --base main # main 대비 현재 브랜치 codex review --uncommitted # 스테이징·언스테이징·언트랙 codex review --commit abc1234 # 특정 커밋 codex review --base main --title "Auth refactor" # 요약 헤더용 제목 codex review - # stdin 으로 커스텀 지시 받기 ``` `-c model="..."`, `--enable`/`--disable` 같은 글로벌 플래그도 동일하게 받는다. 결과는 stdout 으로 흘러나오므로 `tee` 로 저장한다. ## 세션 재개·포크 ```bash codex resume --last # 가장 최근 인터랙티브 세션 재개 (TUI) codex resume --all # 모든 디렉토리의 세션 중 선택 codex exec resume --last "추가 지시" # 비대화형으로 마지막 exec 세션 이어가기 codex fork --last # 분기 (원본 보존) ``` `codex exec` 도 기본적으로 세션을 디스크에 남긴다. 일회성이라면 `--ephemeral` 로 비활성화. ## MCP 서버 관리 ```bash codex mcp list codex mcp add my-tool -- node mcp-server.js # stdio 서버 codex mcp add web-tool --url https://mcp.example.com # HTTP 서버 codex mcp add github --url https://api.githubcopilot.com/mcp \ --bearer-token-env-var GITHUB_TOKEN codex mcp get my-tool --json codex mcp login web-tool --scopes "read:repo,write:repo" codex mcp remove my-tool ``` Claude Code 의 `claude mcp` 와 별개로, Codex 자신이 사용하는 MCP 풀을 관리한다. 같은 서버를 두 CLI 가 공유하려면 양쪽에 각각 등록한다. Codex 자체를 MCP 서버로 띄우려면(다른 에이전트의 도구로 노출): ```bash codex mcp-server # stdio 기반. 호출 측 MCP 클라이언트가 spawn ``` ## 자주 쓰는 글로벌 옵션 | 플래그 | 효과 | |--------|------| | `-c key=value` | `~/.codex/config.toml` 값을 임시 오버라이드. 값은 TOML 로 파싱 (실패 시 문자열). 예: `-c model="gpt-5.4-high" -c 'sandbox_permissions=["disk-full-read-access"]'` | | `--enable <feature>` / `--disable <feature>` | 피처 플래그 토글. `codex features list` 로 목록 확인 | | `-C, --cd <DIR>` | 작업 루트 변경 | | `--add-dir <DIR>` | `workspace-write` 에서 추가로 쓰기 가능한 디렉토리 | | `--skip-git-repo-check` | Git 리포지토리 밖에서도 실행 | | `--ignore-user-config` | `config.toml` 무시 (재현성 보장) | | `--ignore-rules` | 사용자/프로젝트 execpolicy `.rules` 무시 | | `--search` | `web_search` 툴 활성화 (라이브 검색) | 전체 플래그·서브커맨드 목록은 `references/cli-reference.md` 참고. ## 비용·속도 가이드 - 단발성 분석은 `--sandbox read-only` + 짧은 프롬프트가 가장 저렴·빠름 - 큰 컨텍스트는 stdin 으로 흘려라(인자 길이 제한·이스케이프 회피) - 동일 작업을 반복할 거라면 `~/.codex/config.toml` 에 프로파일 정의하고 `-p name` 으로 호출 — 인자 노이즈 감소 - 매 호출마다 세션이 디스크에 남는다. 일회성·민감 데이터는 `--ephemeral` ## 안티패턴 - **TUI 모드 호출**. 인자 없는 `codex` 또는 `codex "..."`(서브커맨드 없이)는 풀스크린 TUI. 자동화에서 절대 쓰지 말 것 — 항상 `codex exec` 로 시작. - **`codex exec` 에 `--ask-for-approval` 부착**. 비대화형엔 승인 개념이 없어 즉시 에러로 종료한다. 인터랙티브 `codex` 전용 옵션이다. - **`--yolo`/`-c sandbox=danger-full-access`**. 사용자의 명시 동의 없이 절대 사용 금지. - **stdout 만으로 결과 파싱**. 진행 이벤트가 섞여 들어온다. `--output-last-message` 로 최종 메시지만 파일 캡처. - **장시간 작업을 포그라운드로**. 5분 이상 걸릴 작업은 Bash `run_in_background: true` 와 결합하고, 완료 알림으로 결과 파일을 읽는다. - **민감 정보 로그 남김**. 기본 세션은 `~/.codex/sessions/` 에 저장된다. 비밀 데이터는 `--ephemeral` 또는 사용자 동의 후 삭제. ## 트러블슈팅 - `not logged in` → `codex login status` 후 위 로그인 명령 중 택일 - `not in a git repository` → `--skip-git-repo-check` - `unexpected argument '--ask-for-approval'` → `codex exec` 에 인터랙티브 전용 플래그를 줬다. 빼고 `--sandbox` 만 사용. - TUI 가 떠서 멈춤 → `codex exec` 가 아닌 `codex` 로 호출했는지 확인 - 출력이 어디 갔는지 모를 때 → `--json` 으로 이벤트 스트림 확인 + `--output-last-message` 로 최종 답 분리 - `workspace-write` 인데 권한 거부 → 파일이 작업 루트 밖. `--add-dir` 또는 `--cd` 로 루트 변경 - 모델·플랜 한도 초과 → `-m` 으로 다른 모델 지정, 또는 `--oss` + 로컬 모델 ## 확장 레퍼런스 - `references/cli-reference.md` — 전체 서브커맨드·플래그·예제 (exec / review / resume / fork / login / mcp / sandbox / features / cloud / app-server / debug 등)
在 GitHub 查看