Claude API

Dùng Agent Skills qua Claude API: tạo file Office, PDF và skill riêng

Tóm tắt

Messages API cho gắn tối đa 20 skill mỗi request qua container.skills, cần code execution tool. Dùng skill dựng sẵn cho file Office/PDF, tải skill riêng qua /v1/skills, lấy file qua Files API; ghim phiên bản và nhớ skill thuộc cả workspace.

Skill không chỉ dành cho Claude Code. Qua Messages API, ứng dụng của bạn cũng gắn được skill cho Claude: dùng skill dựng sẵn của Anthropic để tạo file PowerPoint, Excel, Word, PDF, hoặc tải lên skill tự viết chứa quy trình nghiệp vụ của công ty. Nhờ cơ chế nạp dần (progressive disclosure), bạn có thể gắn nhiều skill mà không làm phình context mỗi request.

Cần những gì?

  • Code execution tool trong tools: skill chạy trong container thực thi code.
  • Tham số container.skills: danh sách skill, tối đa 20 skill mỗi request.
  • Mỗi skill có type (anthropic hoặc custom), skill_id và version tuỳ chọn (ghim phiên bản hoặc latest).
{
  "model": "claude-opus-5-5",
  "max_tokens": 4096,
  "container": {
    "skills": [{"type": "anthropic", "skill_id": "pptx", "version": "latest"}]
  },
  "messages": [{"role": "user", "content": "Tạo slide 5 trang về kết quả quý 3"}],
  "tools": [{"type": "code_execution_20250825", "name": "code_execution"}]
}

Skill dựng sẵn và skill tự viết

LoạiVí dụID và phiên bản
Anthropicpptx, xlsx, docx, pdfID ngắn; phiên bản dạng ngày hoặc latest
CustomQuy trình báo cáo, template công tyskill_01…, skver_01… hoặc latest

Tải lên skill tự viết

  • Gọi POST /v1/skills (multipart), phiên bản mới qua POST /v1/skills/{skill_id}/versions.
  • Gói zip hoặc file lẻ, có SKILL.md ở gốc; tổng dưới 30 MB khi giải nén.
  • Frontmatter: name tối đa 64 ký tự, chỉ chữ thường, số, gạch nối, không chứa từ dành riêng anthropic, claude; description tối đa 1.024 ký tự.
  • Mỗi phiên bản là ảnh chụp đầy đủ: file không gửi lên sẽ không được giữ lại từ bản trước.
  • Khi chạy, file skill nằm ở /skills/{skill-name}/ trong container.

Lấy file kết quả

File skill tạo ra xuất hiện dưới dạng file_id trong kết quả của code execution. Dùng Files API: lấy metadata để biết tên file, rồi tải nội dung về. Hội thoại nhiều lượt dùng lại response.container.id để giữ trạng thái; gặp stop_reason: "pause_turn" thì gửi response lại để Claude làm tiếp.

Vì sao không tốn context?

Ban đầu Claude chỉ nhận tên và description của mỗi skill. Nội dung đầy đủ chỉ được nạp khi skill liên quan tới yêu cầu. Vì vậy description quyết định skill có được dùng đúng lúc hay không.

Rủi ro và lưu ý

  • Phạm vi workspace: skill tự viết thuộc cả workspace; mọi API key có quyền workspace đều đọc, dùng, xoá được. Với ứng dụng nhiều khách hàng, tài liệu khuyên mỗi khách một workspace.
  • Skill chạy code: chỉ tải lên skill bạn đã đọc và tin tưởng; kiểm tra script đi kèm.
  • Chi phí: code execution và các file tạo ra có chi phí riêng ngoài token; kiểm tra bảng giá hiện hành.
  • Ghim phiên bản cho production: latest tiện khi thử nghiệm nhưng có thể đổi hành vi bất ngờ.

Áp dụng thế nào?

  • Dev: Thay code tự sinh file Office bằng skill xlsx/pptx dựng sẵn; lưu file qua Files API.
  • Tech Lead: Đóng gói quy trình nghiệp vụ lặp lại (định dạng báo cáo, checklist) thành custom skill có version, review như code.
  • PM: Tính năng "xuất báo cáo ra slide/Excel" giờ có thể làm nhanh mà không cần đội riêng viết thư viện xử lý file.

Nguồn & tham khảo

  1. Using Agent Skills with the API — Claude Docs
  2. Agent Skills overview — Claude Docs