Tutorial ini menunjukkan cara menggunakan Agent Skills untuk membuat presentasi PowerPoint. Anda akan mempelajari cara mengaktifkan Skills, membuat permintaan sederhana, dan mengakses file yang dihasilkan.
Agent Skills bawaan memperluas kemampuan Claude dengan keahlian khusus untuk tugas-tugas seperti membuat dokumen, menganalisis data, dan memproses file. Anthropic menyediakan Agent Skills bawaan berikut di API:
Ingin membuat Skills kustom? Lihat Agent Skills Cookbook untuk contoh membangun Skills Anda sendiri dengan keahlian spesifik domain.
Pertama, periksa Skills apa saja yang tersedia. Gunakan Skills API untuk menampilkan daftar semua Skills yang dikelola Anthropic:
Anda akan melihat Skills berikut: pptx, xlsx, docx, dan pdf.
API ini mengembalikan metadata setiap Skill: nama dan deskripsinya. Claude memuat metadata ini saat startup untuk mengetahui Skills apa saja yang tersedia. Ini adalah tingkat pertama dari "progressive disclosure" (pengungkapan progresif), di mana Claude menemukan Skills tanpa memuat instruksi lengkapnya terlebih dahulu.
Sekarang gunakan PowerPoint Skill untuk membuat presentasi tentang energi terbarukan. Tentukan Skills menggunakan parameter container di Messages API:
Mari kita uraikan fungsi setiap bagian:
container.skills: Menentukan Skills mana yang dapat digunakan Claudetype: "anthropic": Menunjukkan bahwa ini adalah Skill yang dikelola Anthropicskill_id: "pptx": Pengidentifikasi PowerPoint Skillversion: "latest": Versi Skill yang diatur ke versi terbaru yang dipublikasikantools: Mengaktifkan eksekusi kode (diperlukan untuk Skills)code-execution-2025-08-25 dan skills-2025-10-02Contoh di sini menggunakan versi alat code_execution_20250825 dengan header beta code-execution-2025-08-25 yang sesuai. Skills juga berfungsi dengan revisi alat eksekusi kode yang lebih baru (code_execution_20260120 dan setelahnya); versi alat eksekusi kode mana pun memenuhi persyaratan Skills. Versi mana pun yang Anda gunakan, pastikan type alat dan header beta-nya konsisten dengan halaman alat eksekusi kode, dan selalu sertakan skills-2025-10-02.
Saat Anda membuat permintaan ini, Claude secara otomatis mencocokkan tugas Anda dengan Skill yang relevan. Karena Anda meminta presentasi, Claude menentukan bahwa PowerPoint Skill relevan dan memuat instruksi lengkapnya: tingkat kedua dari progressive disclosure. Kemudian Claude mengeksekusi kode Skill tersebut untuk membuat presentasi Anda.
Presentasi dibuat di dalam container eksekusi kode dan disimpan sebagai file. Respons menyertakan referensi file dengan ID file. Ekstrak ID file tersebut dan unduh menggunakan Files API:
Untuk detail lengkap tentang bekerja dengan file yang dihasilkan, lihat dokumentasi alat eksekusi kode.
Sekarang setelah Anda membuat dokumen pertama dengan Skills, coba variasi berikut:
Sekarang setelah Anda menggunakan Agent Skills bawaan, Anda dapat:
Gunakan Skills dengan Claude API
Unggah Skills Anda sendiri untuk tugas-tugas khusus
Pelajari praktik terbaik untuk menulis Skills yang efektif
Was this page helpful?
# Daftar Skill yang dikelola Anthropic
ant beta:skills list --source anthropic# Buat pesan dengan Skill PowerPoint
response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "pptx", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Create a presentation about renewable energy with 5 slides",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)
print(f"stop_reason={response.stop_reason}, blocks={len(response.content)}")# Ekstrak ID file dari hasil alat code-execution. Skill mungkin menjalankan
# tugasnya melalui alat code-execution Python atau bash, jadi periksa
# kedua jenis hasil tersebut.
file_id = None
for block in response.content:
if block.type == "code_execution_tool_result":
if block.content.type == "code_execution_result":
for output in block.content.content:
file_id = output.file_id
elif block.type == "bash_code_execution_tool_result":
if block.content.type == "bash_code_execution_result":
for output in block.content.content:
file_id = output.file_id
if file_id:
# Unduh file dan simpan
output_path = Path(tempfile.gettempdir()) / "renewable_energy.pptx"
file_content = client.beta.files.download(file_id=file_id)
file_content.write_to_file(output_path)
print(f"Presentation saved to {output_path}")response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "xlsx", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Create a quarterly sales tracking spreadsheet with sample data",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "docx", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Write a 2-page report on the benefits of renewable energy",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)response = client.beta.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [{"type": "anthropic", "skill_id": "pdf", "version": "latest"}]
},
messages=[
{
"role": "user",
"content": "Generate a PDF invoice template",
}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}],
)Pelajari tentang Skills di Claude Code