본문으로 이동geul.io

Cloudflare 생일 주간 첫날, 오픈소스 업데이트 8가지

올린이 geul날짜 조회 2
  • Cloudflare 생일 주간(Birthday Week) 첫날인 2026년 9월 28일, 개발자 및 AI 부문 VP인 Rita Kozlov가 오픈소스 업데이트 8가지를 한 번에 정리함

  • 새로 공개한 프로젝트와 기존 프로젝트의 정식 버전 출시가 섞여 있음

  • 공통 키워드는 에이전트. CLI, CMS, 브라우저, 개발 도구까지 사람뿐 아니라 AI 에이전트가 쓰기 좋게 만드는 방향

Forge: SDK, CLI, 문서를 자동 생성하는 오픈소스 파이프라인

  • API 명세를 넣으면 SDK, CLI, 문서 등을 생성해 주는 파이프라인으로, CI에서 돌아감. Apache 2.0 라이선스

  • 만든 이유

    • Cloudflare API는 수백 개 서비스에 걸친 3,500개 이상의 작업(operation) 으로 구성됨

    • PR마다 미리보기 빌드를 만들고, 생성 실패를 운영 반영 전에 잡을 방법이 필요했음

    • 기존 호스팅형 SDK 생성 서비스는 문을 닫았거나 이 규모를 감당하지 못했다고 밝힘

  • 입력은 현재 OpenAPI만 지원. AsyncAPI, GraphQL, Cap'n Proto, Protobuf는 추후 지원 예정

  • 출력을 연쇄로 연결할 수 있음

    • 예: TypeScript SDK를 먼저 생성하고, 그 SDK로 CLI와 Cap'n Web 명세를 다시 생성

  • 일반 SDK 외에 TanStack Query 훅, Zod 스키마, MCP 서버 등도 생성 가능

  • 앞으로 Cloudflare의 TypeScript, Rust, Python, Go, PHP SDK와 Terraform 프로바이더도 Forge로 생성할 예정

cf CLI: Cloudflare API 전체를 다루는 에이전트용 CLI

  • Forge로 만든 첫 결과물이며, Cloudflare 자신이 Forge의 첫 고객

  • 기존 Wrangler가 수작업으로 만든 명령 약 280개를 지원했다면, cf는 3,000개 이상의 API 작업 전체를 지원함

    • Workers 배포뿐 아니라 도메인 구매, WAF 설정, 접근 제어까지 CLI 하나로 처리

  • 에이전트를 주 사용자로 가정한 설계

    • 기본 출력이 JSON

    • cf cli search로 필요한 명령을 자연어로 검색

    • 복잡한 작업은 검증된 입력 양식으로 진행

  • 설정 파일이 TOML, JSONC에서 cloudflare.config.ts 로 바뀜

    • 타입 검사와 자동 완성이 되고, 설정을 코드로 동적으로 만들 수 있어 내부 설정 일부는 40% 줄었다고 함

  • 3월 말 기준 Wrangler 사용의 48%가 에이전트였음 (1년 전에는 한 자릿수)

  • Wrangler는 cf 정식 출시 후 18개월간 계속 지원

  • 설치: npm i -g cf

vinext 1.0: Vite 위에서 돌아가는 Next.js

  • Next.js 앱을 Vite로 빌드해 Cloudflare Workers, Netlify, AWS Lambda, Node.js 어디서나 돌릴 수 있게 하는 프레임워크

  • 2월에 엔지니어 한 명이 AI로 일주일 만에 Next.js를 다시 구현한 실험(트윗 표현으로는 "slopfork")에서 시작

  • 7개월 만에 1.0이 됐고, 이미 여러 조직이 트래픽 많은 실서비스에 쓰고 있다고 함

  • 1.0 주요 내용

    • App Router, Pages Router, 둘을 섞은 앱까지 지원. RSC, Server Actions, 미들웨어 포함

    • 고객이 요청한 주요 기능의 테스트 호환성 99% 이상

    • Next.js E2E 테스트 스위트를 매일 밤 vinext에 돌려 회귀를 막음

    • 캐시 워밍: 빌드 시점에 모든 페이지를 미리 렌더링하는 대신, 배포 전에 Cloudflare 네트워크에서 트래픽이 많은 페이지 위주로 미리 렌더링

    • OpenTelemetry 지원

EmDash 1.0: Cloudflare 블로그를 돌리는 오픈소스 CMS

  • Astro 기반의 무료 오픈소스 CMS. 개발자는 Astro로 사이트를 만들고, 편집자는 관리 화면에서, 에이전트는 API, CLI, 내장 MCP 서버로 작업

  • 5개월 개발 끝에 1.0 정식 출시

  • 핵심은 보안을 강화한 플러그인 레지스트리

    • 플러그인은 격리된 런타임에서 자기 저장소에만 접근하고, 권한은 명시적으로 받음

    • 레지스트리는 AT Protocol 기반이라 플러그인 소유권과 배포 이력은 개발자가 가짐. 운영 측은 카탈로그에서 숨길 수는 있어도 릴리스를 고치거나 뺏을 수 없음

  • Cloudflare 블로그가 EmDash로 운영 중이며, 주간 수백만 페이지뷰, 초당 5,000 요청을 처리

  • WordPress에서 넘어온 사례(Avulux)는 에이전트 스킬로 하루 안에 이전을 마침

  • 기여자 175명 이상, 커밋 1,800개 이상, 25개 언어 번역

VoidZero 합류 4개월: 개발 도구 체인 속도 개선

  • Vite, Vitest, Oxc, Rolldown을 만드는 VoidZero가 Cloudflare에 합류한 지 4개월 동안 80개 이상의 릴리스를 내고 이슈 1,200개 이상을 닫음

  • 주요 수치

    • Oxc React Compiler: 기존 Babel 구현보다 React 앱 컴파일이 10배 빠름

    • Vitest 5: Vitest 4보다 최대 50% 빠름

    • tsgolint: 정식 버전이 됨. 타입 인식 규칙 59개 지원, 큰 코드베이스에서 typescript-eslint를 쓴 ESLint보다 최대 18배 빠름

    • Oxfmt: JSON, CSS, YAML 등 포매터를 Rust로 다시 작성해 Prettier보다 7배 빠르고, 결과물은 Prettier와 호환

  • 모든 도구는 오픈소스이며 특정 벤더에 묶이지 않는다고 강조

Cloudflare Workers에서 네이티브 Rust 실험 지원

  • wasm-bindgen에 Emscripten 타깃(wasm32-unknown-emscripten) 지원을 실험적으로 추가

  • 기존 wasm32-unknown-unknown 타깃은 타이머, 파일 시스템, 소켓이 없어 못 쓰는 크레이트가 많았음

  • 이제 가능해진 것

    • Tokio 비동기 런타임을 Workers 이벤트 루프와 연동

    • TCP, UDP 소켓

    • Node.js 호환 API를 통한 파일 시스템 접근

  • 데모로 Rust로 만든 마인크래프트 서버(Pumpkin)를 Durable Object 안에서 실제 TCP 소켓으로 띄움

  • 아직 사전 공개 단계이며, 예제는 cloudflare/workers-rs 저장소에 있음

Kitesurf: Workers 위에서 도는 에이전트용 브라우저

  • Chrome 기능을 전부 따라 하는 대신, 에이전트에게 필요한 것만 담아 Workers 위에서 돌아가는 오픈소스 브라우저

  • 이번 업데이트

    • WebMCP 지원: 사이트가 searchFlights() 같은 함수를 에이전트에게 직접 노출할 수 있음. 화면을 클릭하는 방식보다 안정적

    • 웹 표준 테스트(WPT) 통과 서브테스트가 23만 개에서 73만 개 이상으로 늘었는데, 실행 시간과 CPU 사용량은 출시 때와 비슷하게 유지

    • 터미널 렌더링: Kitty, Ghostty, WezTerm 그래픽 프로토콜이나 순수 ANSI 텍스트로 페이지를 보여줌

    • Browser Run과 연동해 CDP, Playwright, Puppeteer, MCP 모두 지원

  • 특별한 권한 없이 일반 고객과 같은 공개 API만으로 Workers 위에서 돈다는 점을 강조

BEACON: 실사용자 웹 성능 공개 데이터셋

  • Cloudflare 네트워크의 상위 약 1만 개 사이트에서 모은 수십억 건의 실사용자 성능 측정값을 익명화해 공개

  • Google BigQuery에서 누구나 조회할 수 있고 매일 갱신됨. 에이전트로 분석해 보라는 취지

  • Core Web Vitals 세 가지(LCP, CLS, INP)와 세부 단계, 사이트 업종 분류까지 포함

  • 도메인과 URL 경로는 제거했고, 데이터가 5건 미만인 레코드는 버려 개인과 사이트를 특정할 수 없게 함

  • 흥미로운 결과

    • 전반적으로 WebKit(Safari)이 가장 빠르지만, 46개국에서는 Chrome 등 Blink 계열보다 느림. 캄보디아에서는 로드 시간이 50% 더 나쁨

    • 소프트 내비게이션이 전체 페이지 이동보다 2~3배 빠르게 렌더링됨

    • 정부, 의료, 어린이 사이트가 광고, 종교, 날씨 사이트보다 빠름

참고

  • Rita Kozlov는 "지난주에도 큰 발표를 여러 개 했고 아직 한 주가 더 남았다"고 덧붙임. 생일 주간 동안 발표가 이어질 예정

원문: https://x.com/ritakozlov/status/2104660106369438109 관련 글

좋아요저장

댓글

로그인 후 댓글을 남길 수 있습니다.

아직 댓글이 없습니다.