AI 인사이트

Claude 에이전트가 Cloudflare 위에서 코드를 직접 실행하는 시대

seunghyeonlab 2026. 5. 20. 23:02

hero

Cloudflare가 Anthropic의 Claude Managed Agents를 자사 인프라에 통합했다. 에이전트가 코드를 "작성"하는 데서 멈추지 않고, 격리된 실행 환경 안에서 실제로 코드를 "돌리는" 구조다. 배포 자동화, 데이터 처리, 멀티스텝 워크플로우를 에이전트에 맡기려는 사람이라면 이 변화가 실무에 어떤 의미인지 따져봐야 한다.


1. 왜 지금 이걸 봐야 하나

에이전트를 프로덕션에 올리는 데 가장 큰 장벽은 모델 성능이 아니었다. "이 에이전트가 어디서, 무엇을, 어떤 권한으로 실행하는지 내가 통제할 수 있는가"라는 질문이었다.

기존 구조에서는 Claude 에이전트가 코드를 생성하면 그걸 어딘가에서 실행하는 별도 레이어를 개발자가 직접 구성해야 했다. 실행 환경을 직접 만들고, 권한 범위를 직접 설정하고, 격리 방식을 직접 검증해야 했다. 이 비용이 에이전트 도입을 가장 현실적으로 막는 요인이었다.

멀티스텝 에이전트가 외부 API를 호출하거나, 파일 시스템을 건드리거나, 다음 단계 입력을 이전 실행 결과에서 가져오는 워크플로우를 운영해본 사람이라면 이 문제가 얼마나 실질적인지 알 것이다. 격리 환경 없이는 에이전트가 의도치 않은 시스템에 접근하거나 과도한 권한으로 명령을 실행하는 사고가 구조적으로 열려 있다.


2. 핵심 아이디어

Claude 에이전트가 Cloudflare의 격리 실행 환경 위에서 직접 코드를 돌릴 수 있게 됐다. 실행 경계가 인프라 수준에서 강제된다.

기존 Claude 에이전트를 "설계도를 그려주는 건축가"라고 하면, 이번 통합 이후는 설계도를 그리고 직접 현장에 들어가 벽도 세우는 구조다. Cloudflare Environments가 그 현장이 된다.

핵심 변화 세 가지를 정리하면 이렇다.

항목 기존 방식 Cloudflare 통합 이후
실행 위치 개발자가 별도 환경 구성 Cloudflare Sandbox에서 자동 격리
권한 경계 직접 설정·검증 필요 인프라 수준에서 강제 적용
실행 지연 환경마다 다름 엣지 네트워크 기반, 낮은 레이턴시
기존 연동 Claude Code·API와 연동 가능

보안 측면에서 가장 눈에 띄는 부분은 격리 방식이다. 에이전트가 외부 코드를 실행할 때 위험한 건 권한 범위가 불분명한 환경에서 실행이 일어나는 상황이다. Cloudflare의 격리 실행은 그 경계를 인프라가 직접 강제하기 때문에, 에이전트가 실수로 과도한 권한으로 명령을 실행하는 시나리오가 구조적으로 차단된다.

이건 단순한 편의 기능이 아니다. 프로덕션 도입을 막던 가장 현실적인 걱정을 정면으로 다룬 변화다.


3. 바로 따라하는 방법

Cloudflare Environments에서 Claude Managed Agents를 연동하는 기본 흐름이다. Cloudflare Workers 환경이 이미 있다고 가정한다.

1단계: Cloudflare Workers 프로젝트 초기화

npm create cloudflare@latest my-agent-worker
cd my-agent-worker
npm install @anthropic-ai/sdk

2단계: wrangler.toml에 환경 격리 설정 추가

name = "my-agent-worker"
main = "src/index.ts"
compatibility_date = "2025-05-01"

[vars]
ANTHROPIC_API_KEY = "your-api-key"  # 실제 배포 시 Secrets 사용

[[unsafe.bindings]]
type = "ai"
name = "AI"

3단계: 에이전트 실행 핸들러 작성

import Anthropic from "@anthropic-ai/sdk";

export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const client = new Anthropic({ apiKey: env.ANTHROPIC_API_KEY });

    // Managed Agents API 호출
    const response = await client.messages.create({
      model: "claude-opus-4-5",
      max_tokens: 4096,
      tools: [
        {
          name: "execute_code",
          description: "격리 환경에서 코드를 실행하고 결과를 반환",
          input_schema: {
            type: "object",
            properties: {
              code: { type: "string" },
              language: { type: "string", enum: ["python", "javascript"] },
            },
            required: ["code", "language"],
          },
        },
      ],
      messages: [
        {
          role: "user",
          content: await request.text(),
        },
      ],
    });

    return new Response(JSON.stringify(response), {
      headers: { "Content-Type": "application/json" },
    });
  },
};

4단계: 로컬 테스트

npx wrangler dev

기대 결과: 로컬 엣지 환경에서 에이전트가 요청을 받아 코드를 실행하고 JSON 응답을 반환한다.

5단계: 실제 Secrets 등록 후 배포

npx wrangler secret put ANTHROPIC_API_KEY
npx wrangler deploy

배포 후 https://my-agent-worker.<your-subdomain>.workers.dev로 요청을 보내 응답이 오는지 확인한다.


4. 운영할 때 조심할 점

격리 환경의 실행 제한을 먼저 파악해야 한다.

Cloudflare Workers의 격리 환경은 Node.js 전체 API를 지원하지 않는다. fs, child_process 같은 시스템 접근 모듈은 기본적으로 막혀 있다. 에이전트가 실행할 코드 범위를 이 제한에 맞춰 설계해야 한다.

# Workers 환경에서 지원 API 확인
npx wrangler types

비용 구조가 달라진다.

기존 Lambda나 컨테이너 기반 실행과 과금 방식이 다르다. Workers는 요청 수와 CPU 시간 기준으로 청구된다. 에이전트가 멀티스텝으로 코드를 반복 실행하는 워크플로우라면 CPU 시간 소비를 먼저 측정하고 들어가야 한다.

환경 과금 기준 주의 사항
AWS Lambda 실행 시간·메모리 콜드 스타트 있음
Cloudflare Workers 요청 수·CPU 시간 메모리 한도 128MB
자체 서버 고정 비용 운영 부담 직접 부담

락인 리스크를 팀 안에서 먼저 논의해야 한다.

Cloudflare 의존성이 생기면 멀티클라우드 전략이나 온프레미스 에이전트 운영 방식과 충돌할 수 있다. 특히 GCP, AWS 기반 인프라가 이미 있는 팀이라면 에이전트 실행 레이어만 Cloudflare로 분리했을 때 데이터 이동 경로와 인증 흐름이 복잡해진다. 인프라 락인 허용 범위를 먼저 정하고 도입 여부를 판단해야 한다.

Mac/Linux 개발 환경 차이

wrangler dev는 macOS와 Linux 모두 동일하게 동작한다. 단, Windows에서는 WSL2 환경을 권장한다. Workers 런타임 자체는 V8 기반이라 OS 차이가 실행 결과에 영향을 미치지 않는다.


마무리

아무리 똑똑한 에이전트도 실행 경계가 통제되지 않으면 프로덕션에 올리기 어렵다. Cloudflare와 Claude Managed Agents의 통합은 그 통제 레이어를 인프라 수준에서 제공한다는 점에서 단순한 기능 추가가 아니다.

지금 당장 확인할 것은 세 가지다: Cloudflare Environments 문서에서 에이전트 권한 범위, Workers 실행 격리 방식, 기존 Workers와의 연동 경로. 이미 Claude Code나 API로 에이전트를 운영 중이라면, 자체 실행 환경 구성 비용과 이 구조를 직접 비교해볼 시점이다.

다음 글에서는 멀티스텝 에이전트가 Cloudflare KV와 D1을 상태 저장소로 활용하는 패턴을 다룬다.


🐦 X에서 더 빠르게: @baegseungh7061
📚 이 시리즈 더 보기: AI 인사이트
💌 새 글 알림: X 팔로우 또는 블로그 RSS 구독