Claude의 커스텀 스킬은 특정 도구나 API와 연동하여 AI가 외부 작업을 수행할 수 있도록 하는 기능입니다. 이는 AI의 활용 범위를 넓히고, 복잡한 워크플로우를 자동화하는 데 기여합니다. API 호출을 위해 Ruby HTTP 클라이언트 라이브러리(예: Net::HTTP 또는 HTTParty gem)가 필요하며, API 키는 환경 변수로 안전하게 관리하는 것이 권장됩니다. 모든 API 요청은 유효한 API 키를 포함하는 x-api-key 헤더를 통해 인증되어야 하며, Claude API의 기본 엔드포인트는 https://api.anthropic.com입니다.
커스텀 스킬 목록 조회
GET /v1/skills 엔드포인트로 요청을 보내 등록된 모든 커스텀 스킬의 목록을 JSON 형식으로 받습니다.
```ruby
require ‘net/http’
require ‘json’
uri = URI(‘https://api.anthropic.com/v1/skills’) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true
request = Net::HTTP::Get.new(uri.path, { ‘x-api-key’ => ENV[‘ANTHROPIC_API_KEY’], ‘anthropic-beta’ => ‘skills-2024-08-08’, ‘Content-Type’ => ‘application/json’ })
response = http.request(request) # puts JSON.parse(response.body) ```
커스텀 스킬 활용
스킬을 활용하려면 Claude 모델에 스킬 사용을 지시하는 메시지를 전송해야 합니다. 메시지 내에서 tool_use 블록을 사용하여 특정 스킬과 인수를 지정하며, POST /v1/messages 엔드포인트에 요청을 보냅니다.
ruby
# (생략: 메시지 구성 및 POST 요청 로직)
# 예시:
# {
# "model": "claude-3-opus-20240229",
# "max_tokens": 1024,
# "messages": [
# {
# "role": "user",
# "content": "이메일 초안을 작성해줘."
# }
# ],
# "tools": [
# # 스킬 정의
# ]
# }
API 응답은 JSON 형식이며, 스킬 목록이나 스킬 활용 결과(예: tool_use 또는 tool_result)를 포함합니다. 개발자는 이 응답을 파싱하여 애플리케이션 로직에 활용해야 합니다.