TL;DR
Cloudflare는 흩어진 엔지니어링 규격을 중앙화한 Cloudflare Codex를 구축해 사람과 에이전트가 작업 시점에 일관된 지침을 활용하도록 했습니다. Codex는 RFC 형식과 도메인별 거버넌스를 기반으로 하며 SHOULD·MUST 문장을 목적특화 에이전트가 추출한 구조화된 JSON으로 제공해 LLM 컨텍스트 부담을 줄입니다. 이 데이터를 바탕으로 AI code reviewer는 약 23만 건의 위반을 감지하고 약 1만6천 건을 병합 보류시켰으며, spec reviewer와 incident reviewer도 수백 건의 설계·사고보고서를 자동 평가해 조직적 일관성을 높였습니다.
섹션별 상세
이미지 분석

이 다이어그램은 RFC의 생애주기(authoring → automated checks → governance → approved → enforced)를 단계별로 보여주며 각 단계에서 발생하는 자동화 검증과 승격 절차를 시각화합니다. 특히 승인(approved) 상태와 강제(enforced) 상태를 분리해 팀의 흡수 기간을 허용하고, MUST 위반에 대한 차단 행동이 언제 발생하는지 흐름으로 표현해 두었습니다. 에이전트 설계자와 도메인 소유자가 규격의 적용 범위와 운영적 영향을 빠르게 이해하는 데 유용합니다.
RFC 제안부터 적용(enforcement)까지의 워크플로를 보여주는 다이어그램.

이 스크린샷은 Spec reviewer가 실제로 생성하는 아키텍처 노트, 심각도 태그, Codex 위반 항목을 어떻게 표시하는지를 보여주어 자동 리뷰의 출력 형태를 구체적으로 드러냅니다. 화면에는 'critical' 레이블의 아키텍처 지적과 반복 발생하는 위반 항목 참조(RFC-013)가 나와 있어 모델 결과를 사람이 후속 조치로 쉽게 연결할 수 있음을 확인할 수 있습니다. 개발자와 도메인 소유자가 리뷰 결과를 검토하고 추적하는 워크플로를 설계하는 데 직접적 근거를 제공합니다.
Spec reviewer의 사용자 인터페이스 스크린샷으로, 스펙 검토 노트와 Codex 위반 항목을 보여줌.
용어 해설
- 요청 의견서(RFC)(RFC)
- — Cloudflare Codex에서 규격과 요구사항을 기록하는 형식으로, RFC 2119의 SHOULD·MUST 키워드를 사용하여 권장 사항과 필수 요구를 구분합니다. RFC는 메타데이터(front matter)와 본문을 포함하며 도메인 소유자가 최종 승인하면 Codex에 게시됩니다. 개발자는 머지 리퀘스트를 통해 RFC를 제안하고 여러 차례 피드백을 거쳐 승인 단계로 진입합니다.
- SHOULD와 MUST(SHOULD / MUST)
- — RFC 2119에서 정의한 권고 수준 표기법으로 Codex 문서의 각 진술(statement)에 적용되어 에이전트의 심각도 판단과 차단 여부 결정을 좌우합니다. APPROVED 상태의 SHOULD는 권고로 처리되고 ENFORCED 상태의 MUST는 위반 시 병합 차단 등 강제 동작을 유발할 수 있습니다. 이는 자동화된 검출과 조직적 수용 기간을 구분하기 위한 핵심 메커니즘입니다.
- Codex 추출 JSON(Codex JSON)
- — Codex의 SHOULD·MUST 문장을 에이전트가 효율적으로 소비하도록 추출·요약해 구조화한 JSON 포맷입니다. 각 문장에 안정적인 slug 식별자를 부여하고 도메인·섹션·레벨·링크 등 메타데이터를 포함해 LLM의 컨텍스트 범위를 좁힙니다. 이 구조는 lazy discovery와 progressive disclosure를 가능하게 하여 대형 모델의 컨텍스트 제약을 완화합니다.
- 개발자 플랫폼(Developer Platform)
- — Codex 기반 에이전트들이 실행되는 기술 스택을 의미하며, Cloudflare Worker에서 실행되는 스캔러, D1에 결과 저장, AI Gateway를 통한 모델 요청 라우팅, Cron Trigger로 스캔 예약 같은 구성요소를 포함합니다. 이 플랫폼은 사양·사고보고서·코드 리포지토리와 연동해 자동 검사를 수행합니다. 동일한 빌딩블록을 여러 에이전트에서 재사용하도록 설계되었습니다.
- oxlint 린터(oxlint)
- — Codex 규격의 기계적 검증이 가능한 요구는 언어별 린터 구성으로 제공되어 즉시 피드백을 줄 수 있도록 했습니다. TypeScript용 oxlint가 먼저 도입되었고 Rust·Go용 린터도 차례로 개발 중입니다. 린터는 CI에서 수밀도 높은 검사 대신 수 밀리초 수준의 고속 실행으로 개발자 경험을 개선합니다.
코드 예제
{ "rfc": 14, "title": "Control Plane Services", "status": "approved", "domain": "control-plane", "statements": [ { "slug": "use-quicksilver-for-edge-configuration-propagation", "section": ["Proposal", "Infrastructure"], "level": "SHOULD", "text": "If you need to propagate system or customer configuration to the edge, use Quicksilver via the outbox pattern", "href": "/rfcs/014-control-plane-services/#infrastructure" }, { "slug": "api-schemas-must-be-documented-in-openapi-spec", "section": ["Proposal", "API Gateway"], "level": "MUST", "text": "API request and response schemas MUST be documented using an OpenAPI spec", "href": "/rfcs/014-control-plane-services/#api-gateway" } ] }이 JSON 예시는 RFC 본문에서 추출된 SHOULD·MUST 진술을 구조화한 샘플입니다. 각 진술은 고유한 slug와 적용 섹션, 레벨, 본문 텍스트와 원문 링크를 포함해 에이전트가 필요한 부분만 빠르게 검색해 사용할 수 있게 합니다. 이 구조는 전체 RFC를 매번 로드하지 않고도 위반 검출과 설명 생성에 충분한 정보를 제공하기 위해 고안되었습니다.
근거 모음
- AI 코드 리뷰어가 약 230,000건의 위반을 감지했고 그중 약 16,000건은 MUST 위반으로 병합 보류를 발생시켰다. — 도입부와 'AI code reviewer' 단락에서 감지된 위반 수와 병합 차단 수가 제시됨. 숫자는 도입부 문장과 코드 리뷰 섹션에 걸쳐 명시되어 있음.
- spec reviewer는 600개가량의 고유 스펙을 검토했고 재실행을 포함하면 3,200회 이상의 리뷰가 발생했으며 결과 심각도는 major 65%, minor 29%, critical 6%였다. — 'Spec reviewer' 단락에 수행 횟수와 심각도 분포 수치가 포함되어 있음.
- incident report reviewer는 200건 이상의 사고 보고서를 평가했고 그중 93%는 저영향·내부 전용·사전 선언된 사건이었다. — 'Incident report reviewer' 단락에서 검사 대상 수와 93% 통계가 제공되어 있음.
기술
- Quicksilver
- OpenAPI
- TypeScript
- Rust
- Go
- oxlint
- Cloudflare Worker
- D1
- AI Gateway
- OpenCode
- Astro
활용 사례
- 머지 리퀘스트 자동 검토 및 규격 준수 검사
- 설계 문서(스펙) 자동 평가로 아키텍처 실수 사전 차단
- 사고 보고서(postmortem) 완전성 및 후속 조치 검증
- 언어별 린터로 실시간 규격 피드백 제공
- 로컬 CLI로 CI 없이 동일한 자동 검토 실행
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.

