본문으로 건너뛰기

Codex Agent Plugins & 카탈로그 페더레이션 (v0.147.0): 실전 가이드

중급

2026년 8월 7일 OpenAI가 Codex CLI v0.147.0을 출시했습니다. 대부분의 보도는 이를 하나의 불렛으로 납작하게 만들었습니다 ("이제 플러그인, 멋짐"). 실제 릴리스는 네 가지를 한꺼번에 바꾸며, 그중 셋은 당신이 오늘 CI에 갖고 있을 스크립트를 조용히 깨뜨립니다: 이식 가능한 Agent Plugins가 임시 스킬 설치를 대체하고 4계층 카탈로그에서 병합됨; 새로운 --approve-for-me 플래그는 "모두 자동 승인"처럼 읽히지만 그렇지 않음; 오래된 --full-auto 단축키는 제거됨; 그리고 Codex가 이제 옵트인 MCP 2026-07-28과 비차단 서버 시작을 제공. 각각 업그레이드 전에 알아야 할 함정이 있습니다.

이 페이지는 Claude Code Skills, subagents, MCP를 이미 이해하는 독자를 위한 실전 필드 가이드 — Codex 버전이 실제로 무엇을 하는지, 어디가 다른지, 월요일 아침 워크플로에서 무엇을 바꿔야 하는지 알고 싶은 사람을 위한 것입니다.

What you'll learn
  • Codex CLI v0.146.1(8월 5일)과 v0.147.0(8월 7일)에서 정확히 무엇이 출시됐고 왜 둘이 함께 중요한지 파악
  • 4계층 플러그인 카탈로그 — 로컬, 개인, 워크스페이스, 리모트 — 와 실제로 어떤 플러그인이 이기는지 결정하는 병합/중복 제거 규칙 이해
  • `--approve-for-me`를 올바르게 읽기: 이것은 리뷰 패스이지 샌드박스 우회가 아님; OS 레벨 샌드박스는 유지됨
  • 다음 CI 실행이 조용히 실패하기 전에 제거된 `--full-auto` 플래그에서 마이그레이션
  • Codex에서 MCP 2026-07-28에 옵트인할 시점 결정 — 그리고 비차단 서버 시작이 무엇을 주는지

두 릴리스 그림: 0.146.1 그다음 0.147.0

8월 드롭은 실제로 48시간 간격의 릴리스이며, 이를 하나로 읽으면 무엇이 바뀌었는지 혼란스러워집니다.

Guided walkthrough1 of 3
  1. 조용한 포인트 릴리스이지만, 사이버 능력 태그가 붙은 모델(GPT-5.6-Cyber를 포함하는 같은 클래스)의 *시작 자세*를 바꿨습니다. 자동 승인 기본값이 조여집니다: 네트워크, 자격증명 읽기, 프로세스 관리는 이제 오래된 관대한 기준선에 의존하는 대신 명시적 화이트리스트가 필요합니다. Codex는 또한 터미널에서 권한 변경을 설명하기 시작했습니다 — 요청이 왜 차단됐는지 볼 수 있지 그냥 차단됐다는 것만 보이지 않습니다.

이식 가능한 Agent Plugins: 파일 수준에서 무엇이 바뀌었나

Codex는 2026년 내내 Skills — 어떤 규격에 맞는 에이전트든 로드할 수 있는 SKILL.md + 형제 폴더 — 를 가지고 있었습니다. v0.147.0은 그 위에 패키지 계층을 추가합니다: Agent Plugins. 플러그인은 카탈로그에서 이름으로 설치할 수 있는 단일 아티팩트로 하나 이상의 스킬, MCP 서버, 프롬프트, 설정을 번들할 수 있는 배포 가능한 단위입니다. Skills는 에이전트 간 이식성을 유지하며, 플러그인은 Codex 자체의 패키징 및 배포 계층입니다.

중요한 변화는 어떻게 발견되는지입니다. v0.147.0 이전에는 스킬 디렉토리를 프로젝트나 개인 폴더에 손으로 복사했습니다. v0.147.0 이후에는 Codex가 네 곳을 보고 결과를 병합합니다.

4계층 카탈로그 — 그리고 누가 이기는지 결정하는 병합 규칙

Codex는 고정된 우선순위 순서로 네 카탈로그를 검색합니다. 두 카탈로그가 같은 이름의 플러그인을 담고 있으면 우선순위가 높은 것이 이기고 낮은 우선순위의 사본은 숨겨집니다.

계층위치소유자일반적 사용
1. 로컬리포 안의 .codex/plugins/프로젝트에 커밋됨리포 특유의 도구; 브랜치와 함께 이동
2. 개인~/.codex/plugins/당신, 당신의 머신에만자체 손수 만든 또는 실험적 플러그인
3. 워크스페이스팀 공유 워크스페이스 스코프공유 컨벤션, 리뷰 플로우, 배포 스크립트
4. 리모트구성한 마켓플레이스 루트벤더 + 커뮤니티marketplace.openai.com 또는 내부 레지스트리의 공개 플러그인

병합 규칙: 결과는 플러그인 이름별로 중복 제거되며, 가장 높은 우선순위 사본이 먼저 표면화됩니다. 리포의 .codex/plugins/terraform-drift/에 커밋된 terraform-drift 플러그인은 같은 이름의 리모트 카탈로그 버전을 조용히 가립니다. 이는 설계상 그렇습니다 — 리포가 알려진 좋은 버전을 고정할 수 있어야 함 — 하지만 업그레이드 시 "왜 내 플러그인이 문서와 다르게 동작하지?"의 1위 원인입니다.

:::tip 동작을 디버그하기 전에 codex plugin list를 읽으세요 codex plugin list는 각각이 해결된 소스 계층과 함께 설치된 플러그인을 보여줍니다. 플러그인이 놀라운 일을 하고 있다면 이것이 처음 실행할 명령입니다 — 사용하고 있는 버전이 생각하는 버전이 아닐 수 있습니다. :::

카탈로그 구성 — 최소 config.toml

마켓플레이스 엔드포인트와 자동 업데이트 동작은 Codex의 config.toml에서 설정됩니다. v0.147.0 기본값은 auto_update = false를 유지하며, 재현성에 옳은 선택이지만 업데이트를 의도적으로 실행해야 함을 의미합니다.

# ~/.codex/config.toml
[plugins]
enabled = true
marketplace_roots = [
"https://plugins.internal.example.com",
"https://marketplace.openai.com"
]
auto_update = false
update_check_interval_hours = 24

카탈로그 항목 제한이 v0.147.0에서 512에서 2,048로 상향되었습니다 — 큰 내부 레지스트리를 가리키면 중요한 작은 숫자. 512 아래에서는 상한을 넘는 플러그인이 검색 결과에서 조용히 잘렸습니다; 엔터프라이즈 팀이 이걸 자주 부딪히자 OpenAI가 천장을 올렸습니다.

플러그인 작업 — 일상 명령

병합된 카탈로그를 대화형 선택기에서 탐색

/plugins

네 계층 모두 한 번에 검색

codex plugin marketplace search "terraform"

이름으로 가장 높은 우선순위 매치 설치

codex plugin install terraform-drift

설치된 것과 각각이 어느 계층에서 왔는지 보기

codex plugin list

설치된 모든 플러그인 업데이트 (옵트인 — auto_update 기본 꺼짐)

codex plugin update

플러그인 설치 내부의 세 가지 보안 강화

v0.147.0의 플러그인 설치 경로는 세 가지를 조용히 조였습니다 — 모두 "설치 작동"의 의미를 바꾸므로 알아둘 가치가 있습니다.

Guided walkthrough1 of 3
  1. 플러그인 패키지에 심링크가 있으면 Codex는 따라가는 대신 심링크를 건너뜁니다. 이는 경로 순회 공격의 전체 클래스를 차단합니다 — 악의적인 플러그인이 더 이상 `plugin/config` → `/etc/passwd`를 링크할 수 없습니다. 트레이드오프: 공유 자산을 위해 심링크를 사용한 합법 패키지는 인라인해야 합니다.

--approve-for-me: 실제로 하는 일 (그리고 하지 않는 일)

이름은 "모든 요청을 자동 승인"처럼 읽힙니다. 그것이 플래그가 하는 일이 아닙니다. --approve-for-me는 활성 샌드박스 모드와 승인 정책 구성에 대해 각 요청을 판결하는 자동 리뷰 패스를 통해 승인 요청을 라우팅합니다. 정책이 "예, 이것은 화이트리스트 안에 있음"이라고 하면 요청이 프롬프트 없이 진행됩니다. 정책이 "아니오 또는 불명확"이라고 하면 요청이 거부됩니다 — 단지 실행 중간에 질문받지 않는 것뿐입니다.

두 가지는 여전히 유효합니다:

  • OS 레벨 샌드박스는 여전히 시행됩니다. Linux에서는 Bubblewrap을 통해; macOS에서는 플랫폼 샌드박스를 통해. --approve-for-me는 샌드박스를 벗어날 수 없습니다; 그 안에서 프롬프트를 자동 응답할지 결정할 수 있을 뿐입니다.
  • 사이버 능력 모델은 자동으로 v0.146.1의 더 안전한 기본값을 받습니다. 네트워크 접근, 자격증명 읽기, 프로세스 관리는 --approve-for-me가 뭐라 하든 명시적으로 화이트리스트되지 않으면 거부됩니다.

올바른 멘탈 모델: --approve-for-me정책 파일을 사람으로 바꿉니다. 정책이 느슨하면 이 플래그는 위험합니다; 정책이 엄격하면 이 플래그는 무인 실행을 위한 빠진 조각입니다.

대화형 실행 — 정책이 승인을 판결, 샌드박스는 유지

codex --approve-for-me --sandbox workspace-write "refactor auth and run tests"

구조화된 출력 계약을 가진 exec (비대화형) 실행

codex exec --approve-for-me --sandbox workspace-write \
--output-schema '{"type":"object","properties":{"passed":{"type":"boolean"}}}' \
"run the full test suite"

플래그와 합리적으로 어울리는 최소 승인 정책:

# ~/.codex/config.toml
[approval_policy]
sandbox_mode = "workspace-write"

[approval_policy.network]
allowed = ["api.github.com", "registry.npmjs.org"]

그 허용 목록에 없는 모든 것은 거부됩니다 — --approve-for-me에 의해서도.

조용한 breaking change: --full-auto가 제거됨

codex exec --full-auto를 호출하는 CI나 Makefile이 있으면 v0.147.0에서 깨집니다. 플래그가 사라졌습니다. 대체는 명시적입니다:

# v0.147.0 이전 (이제 깨짐)
codex exec --full-auto "run tests"

# v0.147.0 문법
codex exec --sandbox workspace-write "run tests"

두 개는 동일하지 않습니다: --full-auto는 샌드박스 선택 승인 정책 선택을 결합했습니다. 새 형식은 샌드박스를 명시적으로 명시하도록 요구하며, "나에게 프롬프트하지 마" 절반을 다시 원한다면 --approve-for-me를 추가하세요. 공유 러너를 업그레이드하기 전에 grep해 볼 가치가 있습니다.

Codex에서 MCP 2026-07-28 — 실제로 얻는 세 가지

Codex는 v0.147.0에서 새 MCP 스펙을 옵트인으로 만들었습니다. 의존하는 서버가 마이그레이션했으면 켜세요; 그렇지 않으면 끄세요. 스위치를 넘길 때의 세 가지 구체적 승리:

  • 페이지네이션된 발견. 200개 이상의 도구를 노출하는 서버는 더 이상 거대한 원샷 목록을 강요하지 않습니다; 클라이언트가 페이지를 넘깁니다. 첫 도구까지의 지연 시간이 훨씬 낮아집니다.
  • 다중 라운드 요청. 단일 논리적 작업이 여러 클라이언트↔서버 라운드에 걸칠 수 있습니다 — 대화형 폼, 2단계 확인, 후속 토큰을 반환하는 리소스 읽기를 생각하세요. 2026-07-28 이전에는 이를 하나의 페이로드에 억지로 밀어 넣어야 했습니다.
  • 비차단 서버 시작. Codex는 더 이상 느린 MCP 서버에서 자체 부팅을 차단하지 않습니다. 4초 걸리는 서버가 예전에는 전체 CLI를 얼렸습니다; 이제 Codex는 시작하고 서버는 준비되었을 때 준비됨으로 표시됩니다.

이것이 Claude Code에 어떻게 매핑되는가, 하나의 표로

Claude 본능이라면 이것이 같은 개념의 번역 표입니다.

개념Codex CLI (v0.147.0)Claude Code
이식 가능한 명령 단위Skill (SKILL.md 폴더)Skill (SKILL.md 폴더) — 같은 오픈 스탠다드
패키징 / 배포Agent Plugin (스킬, MCP, 설정 번들)Plugin 마켓플레이스 + 스킬 설치
발견 범위4계층 카탈로그 (로컬 → 개인 → 워크스페이스 → 리모트)프로젝트 + 사용자 + 마켓플레이스
샌드박스 내 자동 승인--approve-for-me + approval_policy~/.claude/settings.json의 권한
샌드박스 시행Bubblewrap (Linux) / macOS 샌드박스자격증명 마스킹이 있는 샌드박스
장기 실행 MCP 서버비차단 시작 (MCP 2026-07-28)옵트인하지 않으면 차단 시작
"리포 안의 명령".codex/plugins/, AGENTS.md.claude/, CLAUDE.md

단일 최대 실용적 차이: 인리포 .codex/plugins/ 가림이 있는 Codex의 4계층 카탈로그는 Claude Code의 기본값보다 더 공격적입니다. 이는 기능입니다 — 리포가 플러그인 버전을 고정하고 모두가 실행함을 확신할 수 있음 — 하지만 "내 플러그인을 업그레이드했는데 아무것도 바뀌지 않았어"는 종종 "당신의 리포가 오래된 사본을 고정했어"입니다.

이미 Codex를 쓰는 팀을 위한 마이그레이션 체크리스트

Guided walkthrough1 of 6
  1. 이는 `codex --version` 점프 후 녹색 CI가 빨간색이 되는 가장 흔한 원인.

Codex 플러그인이 Claude subagent를 이길 때 — 그리고 이기지 못할 때

Codex 플러그인은 재사용 단위가 워크플로 패키지일 때 가장 강합니다 — 리뷰 플로우, 배포 시퀀스, Terraform-drift 스윕 — 팀 전체에 하나의 아티팩트로 배송하고 뒤에 버전 관리와 마켓플레이스가 있는 것. 4계층 카탈로그는 "플랫폼 팀이 배송하는 리뷰어 플러그인, 내 리포가 오버라이드하지 않는 한"이 필요한 조직에서 진정으로 유용합니다.

Claude Code의 subagent+skill 모델은 재사용 단위가 단일 대화형 세션 안에서 자유롭게 조합되는 역할("code-reviewer", "debugger")일 때 더 강하며, 같은 파일이 재패키징 없이 ChatGPT, Cursor, Gemini CLI, Codex에서 실행되기를 원할 때 더 강합니다. Skills는 더 이식 가능한 프리미티브로 남습니다; 플러그인은 더 강력한 배포 계층입니다.

2026년 8월 대부분의 팀에 실용적인 답은 둘 다입니다: 에이전트 간 이동을 위해 파일 수준 프리미티브로 스킬을 유지하고, 마켓플레이스, 카탈로그 페더레이션, 고정이 필요할 때 Codex Agent Plugin으로 감싸세요.

Check yourself

0/4
  1. 두 카탈로그가 `terraform-drift`라는 플러그인을 담고 있습니다: 하나는 리포의 `.codex/plugins/`에 커밋되고, 하나는 `marketplace.openai.com`에 있습니다. Codex는 어느 것을 사용합니까?
  2. `codex exec --approve-for-me --sandbox workspace-write "install curl and hit a random URL"`를 실행합니다. 승인 정책은 `api.github.com`만 허용합니다. 무슨 일이 일어납니까?
  3. CI Makefile이 여전히 `codex exec --full-auto "run tests"`를 호출합니다. v0.147.0으로 업그레이드 후 작업이 실패합니다. 예전 의도를 유지하는 최소한의 수정은?
  4. 'Codex가 한 MCP 서버가 워밍업이 느려서 시작에 4초 걸림'을 가장 직접적으로 고치는 MCP 2026-07-28 기능은?

출처 및 추가 자료