Claude Code 프로바이더

Claude Code 프로바이더

ai-sdk-provider-claude-code 커뮤니티 프로바이더를 사용하면 공식 Claude Agent SDK를 통해 Claude 모델에 접근할 수 있어요. API 키를 관리하지 않고 기존 Claude Pro/Max 구독을 사용하고 싶은 개발자에게 특히 유용해요.

출처: 문서

본문

버전 호환성 (Version Compatibility)

프로바이더 버전 AI SDK 버전 NPM 태그 상태
3.x v6 latest 안정 (Stable)
2.x v5 ai-sdk-v5 유지보수 (Maintenance)
0.x v4 ai-sdk-v4 레거시 (Legacy)
# AI SDK v6 (기본값)
npm install ai-sdk-provider-claude-code ai

# AI SDK v5
npm install ai-sdk-provider-claude-code@ai-sdk-v5 ai@^5.0.0

# AI SDK v4
npm install ai-sdk-provider-claude-code@ai-sdk-v4 ai@^4.0.0

설정 (Setup)

프로바이더 인스턴스 (Provider Instance)

ai-sdk-provider-claude-code에서 기본 프로바이더 인스턴스 claudeCode를 임포트할 수 있어요:

import { claudeCode } from 'ai-sdk-provider-claude-code';

커스터마이즈가 필요하면 createClaudeCode를 임포트해 나만의 설정으로 프로바이더 인스턴스를 만들 수 있어요:

import { createClaudeCode } from 'ai-sdk-provider-claude-code';

const claudeCode = createClaudeCode({
  allowedTools: ['Read', 'Write', 'Edit'],
  disallowedTools: ['Bash'],
  mcpServers: {
    'my-server': {
      command: 'node',
      args: ['server.js'],
    },
  },
  permissionMode: 'default',
});

프로바이더 인스턴스를 커스터마이즈하기 위해 다음의 선택적 설정을 사용할 수 있어요:

  • allowedTools string[] - 허용 도구 목록. 지정하면 이 도구들만 사용할 수 있어요.
  • disallowedTools string[] - 금지 도구 목록 (예: ['Bash(rm:*)']).
  • mcpServers Record<string, McpServerConfig> - MCP 서버 설정.
  • permissionMode 'default' | 'acceptEdits' | 'bypassPermissions' | 'plan' - 도구 권한 처리 방식.
  • maxTurns number - 최대 대화 턴 수.
  • cwd string - CLI 작업의 작업 디렉토리.
  • verbose boolean - 디버그 로깅 활성화.

언어 모델 (Language Models)

프로바이더 인스턴스를 사용해 Claude Agent SDK를 통해 Claude를 호출하는 모델을 만들 수 있어요:

const model = claudeCode('sonnet');

지원되는 모델 단축어 (shortcuts):

  • opus: Claude Opus (가장 강력함)
  • sonnet: Claude Sonnet (균형 잡힘)
  • haiku: Claude Haiku (가장 빠름)

전체 모델 식별자를 직접 사용할 수도 있어요:

const model = claudeCode('claude-opus-4-5');
const model = claudeCode('claude-sonnet-4-5-20250514');

예시 (Example)

import { claudeCode } from 'ai-sdk-provider-claude-code';
import { generateText } from 'ai';

const { text } = await generateText({
  model: claudeCode('sonnet'),
  prompt: 'Write a vegetarian lasagna recipe for 4 people.',
});

모델 기능 (Model Capabilities)

모델 이미지 입력 객체 생성 도구 사용 도구 스트리밍
opus
sonnet
haiku

참고: 도구 사용과 도구 스트리밍이 ❌로 표시되는 이유는 이 프로바이더가 AI SDK 커스텀 도구(generateText/streamText에 전달하는 Zod 스키마)를 지원하지 않기 때문이에요. 대신 Claude의 내장 도구(Bash, Edit, Read, Write 등)와 자율적으로 실행되는 MCP 서버를 사용해요. 객체 생성은 스키마 준수를 보장하는 네이티브 구조화 출력을 사용해요. 이미지 입력은 스트리밍 모드와 base64/데이터 URL 형식만 지원해요.

인증 (Authentication)

이 프로바이더는 Claude Code CLI를 통해 기존의 Claude Pro 또는 Max 구독을 사용해요:

claude login

인증을 위해 브라우저 창이 열려요. 인증이 완료되면 프로바이더가 구독을 자동으로 사용해요.

요구 사항 (Requirements)

  • Node.js 22 이상
  • Claude Code CLI 설치 (npm install -g @anthropic-ai/claude-code)
  • Claude Pro 또는 Max 구독

자세한 내용은 프로바이더 문서를 참고하세요.

더 알아보기 (Learn more)

전체 사이트맵