0.143.0에서 압축 옵트아웃 삭제. 조정할 것들.

Codex 0.143.0-alpha.14 주석: 압축 옵트아웃 제거, 파일시스템 RPC 61% 감소, 새 TOML 소스 허용목록.

0.143.0에서 압축 옵트아웃 삭제. 조정할 것들.
Share

0.143.0 프리릴리스 연속 배포에서 무엇이 나왔나?

0.143.0 개발 주기에서는 2026년 6월 23-24일 약 16시간 36분 동안 rust-v0.143.0-alpha.6부터 alpha.14까지 아홉 개의 알파 태그가 연속으로 나왔고, 마지막 alpha.14는 커밋 34c2459를 기준으로 github-actions[bot] 파이프라인에서 잘렸습니다 . 대부분의 빌드는 릴리스 봇이 만들었지만, alpha.8alpha.10은 메인테이너 rka-oai가 수동으로 잘랐습니다 .

아래 내용을 볼 때 전제해야 할 한 가지가 있습니다. 모든 알파 태그에는 자동 생성된 상용구 릴리스 노트("Release 0.143.0-alpha.N")만 포함되어 있고, OpenAI의 정리된 변경 로그는 안정 버전 라인만 문서화합니다. 최신 항목은 0.142.0(2026-06-22)과 0.141.0(2026-06-18)입니다 . 따라서 빌드별 실질 내용은 공식 로그가 아니라 병합된 PR과 commit/compare diffs에서 추론한 것입니다.

이번 주기에는 다섯 가지 흐름이 반복됩니다.

  • 파일시스템 효율 — 스킬 검색을 위한 제한된 fs/walk RPC와 플러그인 네임스페이스 캐싱.
  • 컨텍스트 창 일관성auto_compaction 옵트아웃 제거 포함.
  • 마켓플레이스 거버넌스 — 플러그인 패키지 소스 허용 목록.
  • 프로토콜 종료 처리 — 대체된 MCP 매니저를 종료해 stdio 프로세스 누수를 방지.
  • 의존성 관리hono 4.12.25와 fast-uri 3.1.1 고정, rmcp 1.7.0→1.8.0 업데이트.
태그커밋파일주요 흐름배포자
alpha.6618MCP / Codex Apps 배관 작업
alpha.7525재개 지연 시간 + 보안
alpha.8317롤아웃 지표, 리마인더수동
alpha.9522MCP 매니저 종료 처리
alpha.1032331문서화되지 않음(차이 표시 안 됨)수동
alpha.1111버전 업데이트
alpha.12865압축 + 도구
alpha.13415컨텍스트 창 재사용
alpha.14799마켓플레이스 거버넌스

규모 수치는 태그별 비교 페이지에서 가져온 것입니다 . alpha.10은 가장 불투명합니다. GitHub는 alpha.9 이후 커밋 32개와 변경 파일 331개를 보고하지만, 비교 페이지가 커밋 목록을 끝내 렌더링하지 못했기 때문에 신뢰할 만한 공개 요약은 없습니다 .

제한된 walk가 파일시스템 왕복을 크게 줄인 방식

Compaction has no opt-out in 0.143.0. Here's what to adjust.

이번 주기에서 가장 실용적인 변화는 스킬 검색 중 파일별 메타데이터 폴링을 대체하는 제한된 파일시스템 walk입니다. 이전 Codex는 반복적인 readDirectorygetMetadata 호출로 스킬을 열거했습니다. 파일마다 한 번씩 왕복이 발생했기 때문에 총 스킬 수에 따라 비용이 늘어났습니다. 새 경로는 대신 플러그인 루트 수에 맞춰 확장되며, 이 점이 플러그인이 많은 워크스페이스에서 속도 향상을 만듭니다.

이 변경은 세 개의 PR로 들어갔습니다. PR #29841은 exec 서버에 fs/walk RPC를 도입하며, 깊이, 항목 수, 응답 크기에 명시적 제한을 둡니다. 끝없는 디렉터리 순회가 아니라 제한된 단일 요청입니다. PR #29842는 환경 스킬 검색을 이 walk로 전환합니다. PR #29831은 executor 스킬 검색 중 플러그인 네임스페이스를 캐시해 같은 네임스페이스를 두 번 해석하지 않게 합니다.

0.143.0 주기에서 병합된 PR을 기준으로 보고된 결과는 대략 파일시스템 RPC 61% 감소, 로드 시간 약 2.9배 개선입니다 . 두 수치 모두 정리된 변경 로그가 아니라 PR별 설명에서 나온 것입니다. OpenAI의 공개 변경 로그는 안정 버전 라인만 문서화하며 최신 항목은 0.142.0과 0.141.0입니다 . 따라서 독립적으로 감사된 수치라기보다 개발자가 보고한 벤치마크로 보는 편이 맞습니다.

이전 방식이 왜 느려졌는지가 핵심입니다. PR 논의에서는 이렇게 설명합니다.

PR #29841 discussion에 따르면, "모든 파일에 대해 getMetadata 호출을 날리면 지연 시간이 플러그인 수가 아니라 스킬 수에 선형으로 증가합니다. 스킬이 수백 개 있는 워크스페이스는 에이전트가 어떤 작업도 시작하기 전에 수백 번의 왕복 비용을 치르게 됩니다."

수정은 확장 기준을 바꿉니다. 그래서 효과는 균일하지 않습니다. 스킬이 적은 워크스페이스에서는 차이가 작지만, 플러그인 루트가 많고 스킬 트리가 큰 워크스페이스에서는 이득이 가장 큽니다. 이 작업은 알파 빌드 전반에 나뉘어 들어갔습니다. 제한된 walk와 검색 전환이 먼저 들어가고, 네임스페이스 캐싱이 함께 붙었습니다. 따라서 0.143.0이 안정화되면 함께 반영될 가능성이 큽니다 .

압축을 항상 실행하게 된 이유: opt-out이 사라졌습니다

자동 히스토리 압축은 더 이상 끌 수 있는 기능이 아닙니다. PR #29815에서 auto_compaction opt-out 플래그가 제거되면서, 이제 압축은 세 지점에서 항상 실행됩니다: 턴 시작 전, 모델 전환 시, 그리고 턴 진행 중 . 설정이나 래퍼 도구에서 auto_compaction=false를 넘기고 있었다면, 이 설정은 아무 효과가 없어집니다. 0.143.0이 stable에 도달하는 순간 동작은 조용히 항상 켜짐으로 바뀝니다 .

인접한 두 변경은 이 항상 켜진 경로를 더 안심하고 의존할 수 있게 만듭니다. alpha.13에 포함된 PR #29762는 새 컨텍스트 창을 설치할 때 압축된 히스토리 교체 경로를 재사용합니다. 그래서 새 창과 이전 창 사이에서 item ID와 체크포인트가 어긋나지 않고 일관되게 유지됩니다 . 이는 중요합니다. 압축은 대화를 다시 쓰기 때문입니다. ID가 재생성되면 체크포인트, 재개, 참조처럼 그 ID를 키로 삼는 모든 것이 깨질 수 있습니다.

Alpha.12는 재개 흐름을 한층 더 단단하게 만들었습니다. PR #29829는 inter-agent 메시지를 재개 시 다시 만들지 않고, amsg_ ID를 가진 ResponseItem::AgentMessage로 직접 영속화합니다 . 같은 빌드에서는 토큰 예산 압축도 서버 또는 로컬 요약을 요청하는 대신 새로운 로컬 컨텍스트 창으로 리셋되도록 바뀌었습니다. 메커니즘은 다르지만, 결정적이고 로컬이 소유하는 히스토리 상태로 옮겨가려는 같은 흐름의 일부입니다.

실제 영향 범위는 좁지만 분명히 존재합니다. 이들은 기본 stable 설치가 아니라 사전 릴리스 alpha 빌드이므로, @alpha 채널을 추적하거나 소스에서 빌드하지 않는 한 오늘 당장 달라지는 것은 없습니다. 하지만 마이그레이션 비용은 미리 치러야 합니다:

  • Codex 설정과 오케스트레이션 스크립트에서 auto_compaction을 grep하세요. 이 키는 사라집니다.
  • 긴 세션에서는 턴 진행 중에도 압축이 실행될 수 있다고 예상하세요. 고정된 창을 가정하지 말고 그에 맞춰 예산을 잡아야 합니다.
  • response-item ID를 파싱하거나 저장한다면, amsg_ 접두사가 붙은 agent 메시지를 처리하는지 확인하세요.

0.143.0이 아직 alpha인 지금 감사해 두는 편이 낫습니다. stable 컷 이후에 무조건 실행 동작을 발견하는 것보다 비용이 적습니다 .

스킬 패키지 유입 제어: allowlist 메커니즘

Compaction has no opt-out in 0.143.0. Here's what to adjust.

0.143.0 사이클에는 조직이 스킬 패키지와 플러그인의 출처를 제한할 수 있는 source-admission 계층이 추가됩니다. 이 변경은 2026년 6월 24일에 컷된 alpha.14에 집중되어 있습니다 . 핵심은 PR #29690입니다. 이 PR은 restrict_to_allowed_sourcesallowed_sources 목록을 담는 TOML marketplaces requirements 형태를 도입하며, 각 항목은 git, host_pattern, local 타입을 가집니다 . 그 결과 관리자는 개발자가 가리키는 임의의 레지스트리를 신뢰하는 대신 선언적인 allowlist를 사용할 수 있습니다.

두 동반 변경은 allowlist가 단순 권고가 아니라 실제로 집행되도록 만듭니다:

  • 중앙화된 검증(PR #29753): source-admission 검사는 세 개의 관문에서 실행됩니다. marketplace 추가, 플러그인 설치, 설정된 Git marketplace 업그레이드입니다. 따라서 허용되지 않은 source는 최초 추가 시점뿐 아니라 모든 진입 경로에서 거부됩니다 .
  • 레거시 억제(PR #29765): Codex-backend auth 아래에서 원격 카탈로그가 활성화되면 로컬 openai-curated 플러그인 항목이 억제됩니다. 그래서 오래된 로컬 사본이 관리되는 원격 source를 가리거나 경쟁하지 못합니다 .

함께 보면, 이 변경들은 스킬 설치를 조직 관리자가 소유하는 정책 결정으로 바꿉니다. host_pattern을 통해 내부 Git 호스트로 설치를 고정하고, 오프라인 작업용으로 검증된 local 경로를 허용하며, 나머지는 모두 거부할 수 있습니다. 공유 CI runner나 여러 개발자가 쓰는 워크스페이스에서는, 어떤 기여자든 임의의 marketplace 패키지를 설치할 수 있었던 빈틈을 막아 줍니다.

실제 적용 순서가 중요합니다. 0.143.0을 공유 환경에 롤아웃하기 전에 restrict_to_allowed_sourcesallowed_sources 항목을 설정하세요. 먼저 배포하고 나중에 gate를 걸면, 개발자들이 이미 차단하려는 source에서 플러그인을 설치했을 수 있고, 예방이 아니라 상태 정리 작업을 하게 됩니다. 아직 이 내용은 curated public changelog에 없습니다. 문서화된 것은 stable 0.142.0과 0.141.0 라인뿐입니다. 따라서 0.143.0이 alpha로 남아 있는 동안에는 main의 PR diff를 권위 있는 기준으로 보아야 합니다 .

Stdio 프로세스 누수 종료: 매니저 정리가 주는 것

Compaction has no opt-out in 0.143.0. Here's what to adjust.

Alpha.9는 Codex가 MCP 서버를 관리하는 방식에서 생기던 리소스 누수를 막았습니다. 교체된 연결 매니저가 이제 조용히 버려지는 대신 명시적으로 종료됩니다. 이전에는 오래된 매니저가 stdio 자식 프로세스를 계속 살려둘 수 있었고, 그 결과 MCP 서버를 교체하거나 재설정하면 실행 중인 하위 프로세스가 고아 상태로 남았습니다. 수정 후에는 정리 과정에서 해당 프로세스가 회수되며, MCP 서버를 반복적으로 바꾸는 장시간 세션에서는 이 차이가 중요합니다 .

같은 빌드에서는 인라인 압축도 수정되어, 오래된 스냅샷이 아니라 모델이 실제로 본 해당 턴 소유의 WorldState를 대상으로 동작합니다. 자동 압축을 사용한다면(0.143.0에서는 이제 무조건 실행됨), 요약기가 현재 턴과 더 이상 맞지 않는 컨텍스트를 압축하는 일을 막아 줍니다. 단순 정리가 아니라 정확성 수정입니다 .

alpha.7의 앞선 보안 항목 두 가지도 강화 작업을 보완합니다.

  • 경로 순회 차단: PathUri에 URI 네이티브 어휘적 포함 검사가 추가되어, 퍼센트 인코딩된 디렉터리 구분자를 닫힌 방식으로 실패 처리합니다. 이로써 인코딩된 경로 우회 벡터가 제거되었습니다 .
  • 의존성 위생: rmcprmcp-macros는 1.7.0에서 1.8.0으로 올라갔고, 취약한 JavaScript 의존성도 고정되었습니다. 최근 Hono 권고와 퍼센트 인코딩 경로 순회 이슈에 대응해 hono는 4.12.25로, fast-uri는 3.1.1로 고정되었습니다 .

이 중 어느 것도 설정 표면을 바꾸지는 않습니다. 바로 그 점이 핵심입니다. 업그레이드만으로 조용히 얻게 되는 안정성과 보안 수정입니다. 실제 이점은 사용자 지정 MCP 서버를 중심으로 Codex를 스크립팅하는 사람들에게 있습니다. 고아 stdio 버그는 오류 메시지로 드러나기보다 CI 러너나 개발자 노트북에서 프로세스 수가 계속 늘어나는 식으로 나타나는 유형입니다. 오래된 하위 프로세스를 수동으로 죽이는 방식으로 우회하고 있었다면, alpha.9에서는 그럴 필요가 없어집니다.

이번 주기의 다른 수정들과 마찬가지로, 이 내용은 정리된 changelog가 아니라 커밋 기록에만 나타납니다. 따라서 의존하기 전에 main에 병합된 PR 기준으로 동작을 확인하세요 .

0.143.0 안정화 전 지금 할 일

오늘 기준으로는 0.143.0을 채택할 대상이 아니라 계속 움직이는 대상으로 추적하는 것이 맞습니다. 안정 채널은 여전히 0.142.0이며, 이 버전은 2026-06-22에 공개되었습니다. 안정 0.143.0 날짜는 아직 발표되지 않았습니다. 이번 흐름 전체가 사전 릴리스입니다. alpha.6부터 alpha.14까지 아홉 개의 alpha 태그가 2026년 6월 23~24일에 걸쳐 나왔고, 사람 손으로 정리한 changelog가 아니라 자동 생성된 상용구 노트가 붙었습니다 .

검토가 어려운 빌드도 하나 있습니다. alpha.10의 compare 페이지는 alpha.9 대비 커밋 32개, 변경 파일 331개, 기여자 16명을 보고하지만, 커밋 목록은 끝내 렌더링되지 않았습니다. 따라서 무엇이 바뀌었는지에 대한 신뢰할 만한 공개 요약은 없습니다. 알아야 한다면 GitHub UI를 믿기보다 저장소를 클론해 두 태그를 로컬에서 diff하세요.

기존 설정을 깨는 변경 두 가지와 분명한 이점 두 가지가 있습니다. 마이그레이션 전에 따져보세요.

유형변경안정화 전 조치
Breakingauto_compaction 옵트아웃 플래그 제거(#29815)설정에서 해당 플래그를 제거하고, 턴 시작 전, 모델 전환, 턴 중간 단계에서 무조건 압축이 실행된다고 예상하세요
Breaking토큰 예산 압축이 새로운 로컬 컨텍스트 창으로 재설정됨(alpha.12)서버/로컬 요약을 가정하던 장시간 실행 에이전트를 다시 테스트하세요
Win파일시스템 RPC 약 61% 감소, skill/plugin 탐색 약 2.9배 빨라짐안정화 후 플러그인이 많은 워크스페이스의 업그레이드를 계획하세요
WinMarketplace 소스 허용 목록: restrict_to_allowed_sources, allowed_sources(#29690)깔끔한 전환을 위해 지금 marketplaces TOML 초안을 작성하세요

RPC 61% 감소와 로드 시간 2.9배 개선 수치는 공식 벤치마크가 아니라 PR 수준 보고에서 나온 것입니다 . 속도 향상을 전제로 삼기 전에 본인의 plugin root 기준으로 검증하세요.

구체적인 결론은 이렇습니다. 프로덕션은 0.142.0에 유지하고, 관심 있는 변경은 상용구 릴리스 노트가 아니라 main에 병합된 PR에서 읽으세요 . alpha 릴리스 주기가 잦아드는 동안 안정 0.143.0 태그가 나오는지는 releases page에서 확인하세요. 안정 태그가 나오면 마이그레이션은 설정 두 곳을 고치고 회귀 테스트를 한 번 도는 일이지, 갑작스러운 일이 아닙니다.

Last updated: 2026-06-25. 2026년 6월 23~25일에 확인된 openai/codex 릴리스, 태그, main 커밋 기록을 기준으로 검토했습니다.

자주 묻는 질문

0.143.0-alpha.14를 지금 설치해도 안전한가요?

프로덕션용으로는 아닙니다. rust-v0.143.0-alpha.14는 릴리스 봇이 2026년 6월 24일 잘라낸 프리릴리스이며, 자동 생성된 기본 안내문만 포함합니다. 안정 채널은 여전히 2026-06-22에 릴리스된 0.142.0입니다. 최신 기능이 꼭 필요하고, 깨짐이나 문서화되지 않은 회귀를 감수할 수 있을 때만 @alpha npm 태그로 설치하거나 소스에서 빌드하세요.

auto_compaction을 비활성화해 두었다면 무엇을 바꿔야 하나요?

제거하세요. PR #29815에서 턴 시작 전, 모델 전환, 턴 중 단계의 무조건적 자동 압축이 복원되면서, auto_compaction 옵트아웃 플래그는 0.143.0에서 더 이상 존재하지 않습니다. auto_compaction=false를 전달하는 설정 파일이나 래퍼 도구를 점검하세요. 새 빌드에서는 조용히 무시되거나 거부되므로, 전체 컨텍스트를 보존하려고 의존하던 설정이 더 이상 적용되지 않습니다.

alpha.10은 왜 변경 파일이 331개로 표시되는데 커밋 목록은 없나요?

GitHub는 alpha.9와 alpha.10 사이에 커밋 32개, 변경 파일 331개, 기여자 16명이 있다고 보고하지만, 조사 당시 비교 페이지에는 커밋 목록이 렌더링되지 않았습니다. 이 구간에 대해 신뢰할 만한 공개 커밋별 분석은 없습니다. 실제 변경 내용을 보려면 openai/codex를 로컬에 클론한 뒤 git log rust-v0.143.0-alpha.9..rust-v0.143.0-alpha.10으로 두 태그를 직접 비교하세요.

0.143.0은 언제 안정 버전에 도달하나요?

발표된 날짜는 없습니다. 알파 릴리스는 2026-06-24의 alpha.14에서 멈췄고, OpenAI의 선별 changelog에는 아직 안정 버전 라인만 문서화되어 있습니다. 참고로 직전 주기에서는 0.141.0(2026-06-18)에서 0.142.0(2026-06-22)까지 약 4일이 걸렸습니다. 안정 0.143.0 태그는 GitHub 릴리스 페이지에서 확인하세요.

스킬 패키지가 많은 워크스페이스에서 bounded-walk 변경은 얼마나 도움이 되나요?

개선 폭은 전체 스킬 수가 아니라 플러그인 루트 수에 따라 커집니다. PR #29841에서 보고된 bounded fs/walk 작업은 파일시스템 RPC를 약 61% 줄이고 로드 시간을 약 2.9배 단축했습니다. 플러그인과 스킬이 많은 워크스페이스는 0.143.0이 안정화되면 시작 속도 개선을 가장 크게 체감할 수 있고, 플러그인 루트가 적은 가벼운 구성에서는 차이가 크지 않을 것입니다.