View a markdown version of this page

Keterampilan - Batu Dasar Amazon AgentCore

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Keterampilan

Keterampilan Agen adalah kumpulan penurunan harga dan skrip yang memberikan pengetahuan domain agen sesuai permintaan. Setiap keterampilan mengikuti AgentSkills.io standar terbuka: SKILL.md file dengan frontmatter YAML (nama, deskripsi) dan instruksi penurunan harga, ditambah opsional,, dan scripts/ direktorireferences/. assets/

Keterampilan menggunakan pengungkapan progresif: metadata disuntikkan ke dalam prompt sistem di muka (~100 token), dan instruksi lengkap dimuat sesuai permintaan melalui panggilan alat. Ini menghindari membanjiri jendela konteks dengan instruksi yang mungkin tidak diperlukan agen.

Harness mendukung empat sumber keterampilan:

Sumber Deskripsi Kapan harus digunakan

AWS Keterampilan

Pre-built keterampilan untuk AWS layanan dari AWS Agen Toolkit. Aktifkan dengan pola glob.

Anda menginginkan AWS keahlian siap pakai dengan pengaturan nol.

Git (HTTPS)

Mengkloning keterampilan dari repositori Git publik atau pribadi apa pun. Mendukung subdirektori.

Anda ingin mereferensikan keterampilan dari GitHub, GitLab, atau host git apa pun tanpa mengunggah ke S3.

Amazon S3

Ambil keterampilan dari bucket S3 milik pelanggan menggunakan peran eksekusi.

Anda ingin kontrol penuh atas pembuatan versi, enkripsi, dan tata kelola akses.

Jalur (sistem file)

Referensikan keterampilan yang sudah ada di sistem file harness (dimasukkan ke dalam gambar wadah atau diinstal melaluiInvokeAgentRuntimeCommand).

Keterampilan adalah bagian dari gambar kontainer Anda atau diinstal pada sesi dimulai.

Keterampilan diambil sekali per sesi pada pemanggilan pertama. Dalam sesi, keterampilan tetap ada di disk di beberapa pemanggilan. Ketika VM berakhir dan sesi baru dimulai, keterampilan diambil kembali untuk menjamin kesegaran.

Anda dapat mengatur skills sebagai default pada harness (via CreateHarness atauUpdateHarness), atau mengganti per pemanggilan. Invoke-time keterampilan ditambahkan setelah keterampilan waktu pembuatan; jika keduanya mendefinisikan keterampilan dengan nama yang sama, versi waktu panggilan menang.

catatan

Untuk menambahkan keterampilan ke harness secara interaktif, jalankan agentcore untuk membuka TUI, pilih tambah, pilih Harness , lanjutkan ke pengaturan L anjutan, dan aktifkan Keter ampilan. Wizard kemudian meminta sumber keterampilan. Lihat tab Interaktif di bawah Git dan Amazon S3 di bawah untuk langkah-langkah per sumber.

AWS Keterampilan

AWS keterampilan adalah keterampilan yang dibangun sebelumnya yang memungkinkan agen Anda berinteraksi dengan AWS layanan. Mereka diatur secara hierarkis dan dipilih melalui pola glob. Lihat sumbernya di GitHub.

Kategori Pola Keterampilan khas

Keterampilan inti

core-skills/*

EC2, S3, Lambda, DynamoDB,, operasi IAM. CloudWatch

Keterampilan analitik

specialized-skills/analytics-skills/*

Athena, Glue, QuickSight, operasi danau data.

Keterampilan operasi

specialized-skills/operations-skills/*

Pemecahan masalah, diagnostik, analisis log.

Keterampilan penyimpanan

specialized-skills/storage-skills/*

S3, EFS, FSx, operasi cadangan.

Aktifkan semua AWS keterampilan

contoh
AWS CLI/boto3
aws bedrock-agentcore-control create-harness \ --harness-name "MyHarness" \ --execution-role-arn "${ROLE_ARN}" \ --skills '[{"awsSkills": {}}]'

Atau pada waktu pemanggilan:

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[{"awsSkills": {}}], messages=[{"role": "user", "content": [{"text": "List my EC2 instances and their status."}]}], )

Aktifkan keterampilan berdasarkan kategori

Gunakan pola glob untuk mengaktifkan kategori keterampilan tertentu:

contoh
AWS CLI/boto3
aws bedrock-agentcore-control create-harness \ --harness-name "MyHarness" \ --execution-role-arn "${ROLE_ARN}" \ --skills '[{"awsSkills": {"paths": ["core-skills/*", "specialized-skills/operations-skills/*"]}}]'

Aktifkan satu keterampilan khusus

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[{"awsSkills": {"paths": ["core-skills/aws-cdk"]}}], messages=[{"role": "user", "content": [{"text": "Create a CDK stack for a Lambda function."}]}], )

Gabungkan beberapa pola

skills=[{"awsSkills": {"paths": ["core-skills/aws-cdk", "core-skills/aws-serverless", "specialized-skills/storage-skills/*"]}}]
catatan
  • Jalur harus relatif (tidak ada garis depan / atau..). Jalur absolut dan lintasan jalur ditolak.

  • Jika pola glob tidak cocok dengan keterampilan, pemanggilan gagal dengan kesalahan deskriptif.

  • Beberapa awsSkills entri dalam payload yang sama digabungkan.

Keterampilan Git (HTTPS)

Mengkloning keterampilan dari repositori Git publik atau pribadi apa pun. Mendukung subdirektori dalam monorepos menggunakan sparse checkout.

contoh
AWS CLI/boto3

Repositori publik:

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[ {"git": {"url": "https://github.com/anthropics/skills", "path": "skills/docx"}}, ], messages=[{"role": "user", "content": [{"text": "Summarize the attached DOCX file."}]}], )

Repositori pribadi (memerlukan token akses pribadi yang disimpan di AgentCore Identitas):

skills=[ { "git": { "url": "https://github.com/my-org/internal-skills", "path": "excel", "auth": { "credentialArn": "arn:aws:bedrock-agentcore:us-west-2:123456789012:token-vault/default/apikeycredentialprovider/my-github-pat" }, } } ]
AgentCore CLI

Lampirkan keterampilan dari repositori Git publik denganagentcore add skill. Gunakan --git-path untuk menarik satu skill dari subdirektori:

agentcore add skill --harness my-harness \ --git https://github.com/anthropics/skills \ --git-path skills/docx agentcore deploy

Untuk repositori pribadi, --credential berikan nama kredensi kunci API di proyek Anda yang menyimpan token akses pribadi (--usernameopsional, defaultoauth2):

agentcore add skill --harness my-harness \ --git https://github.com/my-org/internal-skills \ --git-path excel \ --credential my-github-pat agentcore deploy
catatan

Hapus skill dengan agentcore remove skill menggunakan flag sumber yang sama. Untuk mengganti keterampilan untuk satu panggilan tanpa mengubah harness, gunakan agentcore invoke --skills <sources> (jalur yang dipisahkan koma, URI, s3:// atau URL https:// Git); Otentikasi Git tidak didukung pada override invoke.

Interactive

Di TUI, tambahkan skill Git ke harness melalui wizard add → Harness.

  1. Lanjutkan ke pengaturan lanj utan, pindah ke Skills, dan tekan Sp asi untuk mengaktifkannya, lalu tekan Enter.

    Pengaturan lanjutan dengan Keterampilan diaktifkan
  2. Pilih Git sebagai sumber keterampilan.

    Jenis sumber keterampilan: Path, S3, atau Git
  3. Masukkan URL repositori HTTPS. Wizard kemudian meminta jalur subdirektori opsional, kredensi opsional untuk repositori pribadi, dan nama pengguna opsional.

    Masukkan URL repositori Git

Konfirmasikan wizard, lalu jalankan agentcore deploy untuk menerapkan.

  • url(wajib) - URL HTTPS dari repositori Git.

  • path(opsional) - subdirektori dalam repo yang berisi keterampilan. Jika dihilangkan, root repositori digunakan.

  • auth.credentialArn(opsional) - ARN dari penyedia kredensia kunci API yang memegang token akses pribadi untuk repo pribadi.

  • auth.username(opsional) - nama pengguna git, default keoauth2.

Git fetch harus selesai dalam waktu 60 detik. Jika repositori memerlukan keluar internet, pastikan VPC Anda memiliki gateway NAT (persyaratan yang sama dengan server MCP jarak jauh dan tarik kontainer khusus).

Keterampilan Amazon S3

Ambil keterampilan dari bucket S3 milik pelanggan. Menggunakan kredentif peran eksekusi harness.

contoh
AWS CLI/boto3
response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[ {"s3": {"uri": "s3://my-skills-bucket/skills/company-style/"}}, ], messages=[{"role": "user", "content": [{"text": "Draft a summary following our style guide."}]}], )
AgentCore CLI

Lampirkan skill dari S3 denganagentcore add skill --s3:

agentcore add skill --harness my-harness \ --s3 s3://my-skills-bucket/skills/company-style/ agentcore deploy

Peran eksekusi membutuhkan s3:GetObject dan s3:ListBucket di bucket. Lihat Kontrol keamanan dan akses.

Interactive

Di TUI, tambahkan skill S3 ke harness melalui wizard add → Harness. Lanjutkan ke pengaturan L anjutan, aktifkan Skills with Space, dan pilih S3 sebagai sumbernya (lihat tab Git Interactive untuk langkah-langkah bersama tersebut).

  1. Masukkan URI S3 dari direktori keterampilan.

    Masukkan URI S3 untuk skill

Konfirmasikan wizard, lalu jalankan agentcore deploy untuk menerapkan.

  • uri(wajib) - URI S3 menunjuk ke direktori keterampilan (mis.,s3://bucket/prefix/).

  • Peran eksekusi harus memiliki s3:GetObject dan s3:ListBucket izin pada bucket. Lihat Kontrol keamanan dan akses.

  • Setiap skill S3 harus berukuran 1 GB atau lebih kecil.

  • Sumber S3 bekerja dengan titik akhir S3 VPC (tidak diperlukan gateway NAT).

Keterampilan jalur sistem file

Referensikan keterampilan yang sudah ada di sistem file harness - dimasukkan ke dalam gambar wadah atau diinstal pada sesi mulai melaluiInvokeAgentRuntimeCommand.

contoh
AWS CLI/boto3
response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[{"path": ".agents/skills/xlsx"}], messages=[{"role": "user", "content": [{"text": "Find errors in the Excel files."}]}], )

Panggang ke dalam gambar wadah

Sertakan direktori keterampilan dalam gambar kustom Anda:

COPY skills/xlsx .agents/skills/xlsx

Instal saat sesi dimulai

Gunakan InvokeAgentRuntimeCommand sebelum pemanggilan agen pertama:

agentcore invoke --exec --harness my-agent --session-id "$SESSION" \ "git clone --depth 1 https://github.com/anthropics/skills /tmp/skills && cp -r /tmp/skills/skills/xlsx .agents/skills/xlsx"

Gabungkan beberapa sumber keterampilan

Keempat jenis sumber dapat hidup berdampingan dalam satu payload:

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, skills=[ {"awsSkills": {"paths": ["core-skills/aws-cdk"]}}, {"git": {"url": "https://github.com/anthropics/skills", "path": "skills/docx"}}, {"s3": {"uri": "s3://my-bucket/skills/company-style/"}}, {"path": ".agents/skills/xlsx"}, ], messages=[{"role": "user", "content": [{"text": "Help me with this project."}]}], )

Penanganan kesalahan

Semua kegagalan pengambilan gagal dalam pemanggilan dengan kesalahan deskriptif. Keterampilan tidak pernah dilewati secara diam-diam.

Kegagalan Pesan kesalahan

Akses S3 ditolak

Failed to fetch skill: AccessDeniedException. Ensure execution role has s3:GetObject permission.

Objek S3 tidak ditemukan

Skill source not found: s3://…​

Git clone gagal (jaringan)

Failed to clone skill: could not resolve host

Auth git ditolak

Failed to clone skill: authentication failed

Jalur Git tidak ditemukan di repo

Skill path 'x' not found in repository

Batas waktu Git (60s)

Failed to clone skill: operation timed out after 60s

Keterampilan melebihi batas 1 GB

Skill exceeds 1GB size limit

AWS jalur keterampilan tidak cocok

AWS skill path 'x' matched no skills

Jalur lintasan () ..

Invalid AWS skill path: must be a relative path without '..'

AWS bundel keterampilan tidak ada

AWS Skills are not available in this runtime (missing directory: /opt/amazon/skills)