AIREITER

Claude Skills API GA: 달라진 점과 실전 사용법

마지막 업데이트: 2026-08-21 00:24:48

Anthropic이 2026년 8월 20일 Claude Skills API, computer use, Files API를 정식 출시(GA)했다. 이제 베타 헤더는 필요 없고, computer use는 한 번의 모델 호출에서 여러 작업을 처리하며, browser use 도구도 새로 추가됐다. 다만 GA가 해결하지 못한 문제가 하나 있다. 스킬 실행 여부는 여전히 Claude의 판단에 달려 있으므로, 버전 고정과 활성화 설계는 개발자가 직접 챙겨야 한다.

computer use, Skills API, Files API의 정식 출시를 알리는 Anthropic 발표

8월 20일 GA 전환으로 실제로 바뀐 것들

기존 베타 통합은 마이그레이션 과정에서도 계속 작동한다. 그 외에도 Anthropic의 출시 발표에는 다음과 같은 구체적인 변경 사항이 담겼다.

  • 베타 헤더가 사라졌다. 현재 Skills 가이드가 요구하는 조건은 Claude API 키와 요청에서의 code execution 활성화, 두 가지뿐이다. GA 이전 튜토리얼에 등장하던 베타 헤더는 문서에서 빠졌다.
  • 한 번에 여러 작업 실행. 업데이트된 computer use 도구는 모델 호출 한 번에 클릭, 입력, 키 입력, 스크린샷 등 여러 동작을 수행한다. 이전에는 한 번에 하나씩만 처리했다. Anthropic의 @ClaudeDevs 계정에 따르면 얼리 액세스 고객은 작업당 왕복 횟수를 20~40% 줄였다.
  • browser use 도구 추가. 스크린샷과 페이지 구조를 함께 활용해 픽셀 좌표가 아니라 특정 입력란이나 버튼을 겨냥한다. 보험 청구 포털 같은 웹 서비스 자동화를 염두에 둔 기능이다.
  • Files API 확장. 조직당 스토리지는 1TB, 속도 제한은 5배 높아졌으며 @ClaudeDevs 스레드 기준으로 500 RPM이다. 파일 자동 만료도 지원한다.
  • 규제 환경 지원. computer use는 이제 Anthropic BAA에 따라 HIPAA 규제를 받는 워크로드에도 사용할 수 있다.
  • 클라우드 제공 범위 확대. Skills API와 Files API는 Microsoft Foundry에서도 이용할 수 있다. 업데이트된 computer use와 browser use 도구는 Vertex AI에 "곧 제공"될 예정이지만, 구체적인 일정은 공개되지 않았다.

Files·Skills·computer use를 잇는 작업 흐름

Anthropic의 보험 청구 에이전트 사례는 세 API가 연결되는 방식을 잘 보여준다. Files API로 file ID 기반의 접수 문서를 가져오고, Skills API로 청구 절차가 담긴 스킬을 적용한 뒤, computer use의 browser use로 보험사 포털을 작성한다. 마지막으로 확인 결과를 파일로 저장한다. 문서는 한 번만 업로드한 뒤 이후 요청에서는 매번 재전송하지 않고 file_id로 참조한다.

출시와 함께 공개된 두 가지 수치는 모두 공급사 측이 제시한 결과다. 출시 발표에서 리서치 엔지니어 Davide Locatelli는 가장 긴 보험 청구 워크플로가 32분에서 13분으로 줄고 완료율은 100%에 도달했다고 밝혔다. 별도로 Asteroid 공동 창업자 David Mlčoch는 얼리 액세스 기간에 의료 분야 computer use 흐름을 테스트했다.

"모델 호출 수 32~52% 감소, 작업당 비용 25~32% 절감, 모든 워크플로에서 완료율 100% 달성. 기존 77%에서 상승" — @MlcochDavid

얼리 액세스 고객이 보고한 GA 에이전트 도구 도입 전후 보험 청구 워크플로 시간 및 완료율

Messages API 요청에 Claude Skills API 붙이기

스킬 연결에 필요한 것은 파라미터 하나다. Messages API 요청의 container 객체 안에 skills 배열을 넣으면 된다. 각 항목에는 type(anthropic 또는 custom), skill_id, 그리고 선택 사항인 version을 지정한다.

이 파라미터와 함께 알아둘 동작 방식은 공식 Skills 가이드에 정리돼 있다.

  • code execution을 활성화해야 하며 모델도 이를 지원해야 한다. 가이드 예제는 claude-opus-5, code_execution_20250825 도구 타입, max_tokens=4096을 사용한다.
  • 요청 하나에 연결할 수 있는 스킬은 최대 20개다.
  • 스킬은 Anthropic의 code execution 샌드박스에서 실행된다. 네트워크 접근과 런타임 패키지 설치는 불가능하다. 응답으로 받은 container.id를 턴 간 재사용하지 않는 한 요청마다 새 컨테이너가 생성되며, 각 응답에는 expires_at도 포함된다.
  • 스킬 파일을 직접 호스팅할 필요는 없다. Anthropic이 컨테이너 안에서 실행한다.
response = client.messages.create(
    model="claude-opus-5",
    max_tokens=4096,
    tools=[{"type": "code_execution_20250825"}],
    container={
        "skills": [
            {"type": "anthropic", "skill_id": "xlsx", "version": "20251013"},
            {"type": "custom", "skill_id": "skill_01...", "version": "skver_01..."},
        ]
    },
    messages=[{"role": "user", "content": "Build the Q3 revenue summary"}],
)

입력 문서는 반대 순서로 처리한다. 먼저 Files API로 업로드하고, 이후 컨테이너 업로드 블록에서 참조한다. 요청 형식은 표준 Anthropic Messages API와 같으므로 직접 발급한 키는 물론 AIReiter's Claude API 같은 Anthropic 호환 릴레이에서도 사용할 수 있다.

내장 스킬은 pptx, xlsx, docx, pdf처럼 짧고 읽기 쉬운 ID를 사용한다. 버전은 20251013 또는 latest처럼 날짜 형식으로 지정한다. 커스텀 스킬에는 워크스페이스 범위의 skill_01... ID가 부여된다.

커스텀 Skill 배포 전 반드시 확인할 제한

커스텀 스킬은 최상위에 YAML 프런트매터(name, description)를 담은 SKILL.md 파일이 있는 디렉터리다. 필요하면 스크립트와 참조 파일을 함께 넣을 수 있다. 최소한의 구성은 다음과 같다.

---
name: eu-claims-filing
description: Use when filing or amending EU insurance claims. Loads the
  carrier-specific submission procedure, required fields, and rejection
  codes before filling any portal form.
---

# EU claims filing procedure
1. Pull the intake document by file_id ...

ZIP 아카이브나 개별 파일로 업로드할 수 있으며, Python SDK는 files_from_dir를 제공한다. 다만 스킬이 실행되기 전부터 Anthropic이 엄격한 제한을 적용한다. 모든 제한은 Skills 가이드에서 확인할 수 있다.

항목제한
name64자 이하, 소문자·숫자·하이픈만 사용 가능, anthropic과 claude는 예약어
description1~1,024자, 비어 있으면 안 되며 XML 태그 사용 불가
display_name (선택)255자 이하
번들 크기압축 해제 기준 30MB 미만
요청당 스킬 수20개
조직당 워크스페이스 수기본 100개

동일한 가이드에 따르면 관리는 ant CLI 또는 그 뒤에서 동작하는 API 엔드포인트로 수행한다. 파일에서 고정 버전까지 만드는 과정은 다음과 같다.

ant skills create ./eu-claims-filing   # returns skill_01...
ant skills:versions create skill_01...  # returns skver_01... — pin this in production

처음 도입한 팀이 자주 놓치는 동작은 두 가지다. 새 버전은 전체 스냅샷이므로 파일 전체를 다시 업로드해야 하며, 빠진 파일은 이전 버전에서 이어지지 않는다. 또한 스킬을 삭제하면 해당 스킬의 모든 버전도 함께 삭제된다.

프로덕션 체크리스트: 버전 고정, 격리, 캐시

프로덕션에서 문제가 되는 지점은 변경 가능한 버전, 워크스페이스 전체 권한, 캐시 미스다. Skills 가이드도 이 세 가지를 명확히 짚고 있다.

  1. 버전을 고정한다. latest를 쓰거나 버전을 지정하지 않으면, 워크스페이스 접근 권한이 있는 누군가 새 버전을 업로드하는 즉시 배포된 에이전트의 실행 내용도 바뀐다. 프로덕션에서는 skver_... ID를 고정하고, 활발히 개발하는 동안에만 latest를 사용하자.
  2. 워크스페이스를 테넌트 경계로 본다. 워크스페이스 안의 모든 API 키는 그곳의 모든 커스텀 스킬을 읽고, 호출하고, 삭제할 수 있다. 격리 경계는 사용자나 세션이 아니라 워크스페이스다. 멀티테넌트 애플리케이션이라면 테넌트마다 워크스페이스를 하나씩 사용해야 하며, 기본 한도는 100개라는 점도 고려해야 한다.
  3. 캐시를 위해 스킬 목록을 고정한다. 순서를 포함해 스킬 목록이 바뀌면 시스템 프롬프트 접두사가 달라지고 프롬프트 캐시가 무효화된다. 커스텀 버전을 고정하면 이 접두사도 보호할 수 있다. 재업로드된 latest의 설명이 접두사를 바꿀 수 있기 때문이다. 토큰 단위 과금에서는 요청마다 스킬 목록이 미세하게 달라지는 것만으로도 캐시 적중 비용 절감 효과가 조용히 사라진다.
  4. pause_turn을 처리한다. 오래 실행되는 스킬은 stop_reason: "pause_turn"을 반환한다. 계속 진행하려면 반환된 콘텐츠를 이후 요청에 다시 보내고, 중단하려면 대화를 수정하면 된다.
  5. 데이터 보존 정책을 확인한다. Agent Skills는 zero-data-retention 약정의 대상에 포함되지 않는다. 스킬 정의와 실행 데이터에는 Anthropic의 표준 보존 정책이 적용된다. Compliance API를 활성화하면 Activity Feed에 스킬과 스킬 버전의 생성·삭제 기록이 남지만, 활성화 이후의 이벤트만 기록된다.
  6. 적절한 오류를 잡는다. 호출을 anthropic.BadRequestError로 감싸고, 스킬 관련 실패와 다른 잘못된 요청 오류를 구분해야 한다.
  7. 쓰지 않는 스킬은 붙이지 않는다. 문서에도 명시돼 있듯, 사용하지 않는 스킬을 포함하면 성능에 영향을 준다.

GA로도 해결되지 않는 스킬 활성화 문제

GA는 스킬 주변 인프라를 개선했을 뿐, Claude가 스킬 사용을 결정하는 방식까지 바꾸지는 않았다. 아래 사용자 스레드에서 반복적으로 나오는 지적도 이 부분이다. 스킬은 두 번째 시스템 프롬프트가 아니라, 조건이 맞을 때 실행되는 절차에 가깝다.

"Claude Skills의 문제는 이게 스킬이 아니라는 점입니다. Claude가 실제로 쓰도록 강제할 방법이 없어요. Claude는 제멋대로 합니다... 결국 md 파일일 뿐이죠." — @Yampeleg, GA 이전에 작성; 호출 메커니즘은 그대로다

스킬이 정말 작동하는지 다룬 r/ClaudeAI 스레드에서는 실용적인 대응책을 다음처럼 요약한다.

"userstyle은 매 턴 앞에 붙지만, 스킬은 설명을 기반으로 Claude가 호출하기로 결정할 때만 실행됩니다." — u/samxu01

"스킬에는 Claude가 수행하는 행동에 초점을 맞춘, 단순하고 명확한 메타데이터 설명이 있어야 합니다." — u/Chadum

이 스레드들에서 뽑아낼 수 있는 원칙은 네 가지다.

  • 설명은 페르소나가 아니라 트리거 문구와 수행할 작업을 중심으로 작성한다.
  • 절차, 검증 항목, 규칙, 도구 선택은 본문에 넣는다. u/MartinMystikJonas의 기준은 이렇다. "에이전트가 수행할 단계, 확인할 항목, 따를 규칙, 사용할 도구를 스킬이 정의한다면 유용하다."
  • u/Actual_Committee4670의 조언처럼 Claude가 기본적으로 잘하지 못하는 작업을 담는다.
  • 항상 적용돼야 하는 요구 사항은 시스템 프롬프트나 CLAUDE.md에 넣는다. 위에서 u/samxu01이 말했듯 매 턴 앞에 붙기 때문이다. 훅은 커밋 전처럼 라이프사이클의 특정 시점에만 사용한다.

자주 묻는 질문

Skills API에 베타 헤더가 아직 필요한가?

아니다. 2026년 8월 20일 GA 이후 현재 문서상 요구 사항은 Claude API 키와 활성화된 code execution이며, 베타 헤더는 필요 없다.

스킬이 컨텍스트 윈도우를 차지하나?

처음에는 메타데이터만 차지한다. Skills 가이드에 따르면 Claude는 각 스킬의 프런트매터를 먼저 받고, 파일을 컨테이너에 복사한 다음, 작업상 필요할 때에만 전체 지침을 불러온다. 문서가 미사용 스킬을 붙이지 말라고 경고하는 이유다.

Skill과 MCP의 차이는 무엇인가?

스킬은 네트워크 접근이 없는 Claude 샌드박스 안에서 실행되는 지침과 스크립트 패키지다. 반면 MCP는 Claude를 실시간 외부 시스템에 연결한다. 이는 Anthropic이 Skills 개요에서 구분하는 방식이다. 보험 청구 워크플로에서는 둘을 함께 쓸 수 있다. 예를 들어 정책 데이터베이스에는 MCP 서버를, 청구 절차에는 스킬을 활용하는 식이다.

하나의 SKILL.md를 Claude.ai, Claude Code, API에서 모두 실행할 수 있나?

SKILL.md 형식은 공유하지만, 제공 방식은 환경마다 다르다. API에서는 워크스페이스에 업로드한 스킬을 사용하고, Claude Code에서는 .claude/skills 디렉터리를 사용하며, Claude.ai 앱에서는 플랜 단위 업로드를 사용한다.

Skills API는 zero data retention 환경에서 작동하나?

아니다. Agent Skills는 zero-data-retention 약정에서 제외되며, 스킬 정의와 실행 데이터에는 표준 보존 정책이 적용된다.

요구 사항별로 어떤 기능을 써야 할까

선택 기준은 호출 시점이다.

요구 사항적합한 기능
특정 조건에서 실행해야 하는 전문 작업("보험 청구 시 이 절차를 따르기")Skill
매 턴 반드시 적용해야 하는 규칙System prompt (API) / CLAUDE.md (Claude Code)
라이프사이클의 특정 시점에 수행할 작업(도구 실행 후, 커밋 전)Hook
외부 시스템과의 실시간 연결MCP server
일회성 작업 형식Plain prompt

8월 20일의 변화는 스킬 메커니즘을 프로덕션에 쓸 수 있는 수준으로 끌어올린 것이다. 그렇다고 이 표의 각 항목이 서로 대체 가능해진 것은 아니다.

관련 글: Claude API 모델별·토큰별 가격, Claude Code에서 Claude 스킬 기록하기.