Buat dan gunakan skill di Bob Shell
Buat skill yang dapat digunakan kembali yang mengajarkan Bob Shell alur kerja changelog-entry yang berulang, lalu aktifkan secara eksplisit dan biarkan Bob mengaktifkannya secara otomatis.
Skill Bob Shell IBM adalah set instruksi yang dapat digunakan kembali, disimpan dalam file SKILL.md, yang mengajarkan Bob alur kerja yang berulang. Dalam tutorial ini, kamu membangun skill changelog-entry yang menambahkan entri Keep a Changelog ke CHANGELOG.md, menjalankannya secara eksplisit dengan $changelog-entry, kemudian mengamati Bob mengaktifkannya secara otomatis ketika prompt cocok dengan deskripsi skill.
Skill menghemat waktu dari mengetik ulang aturan format atau checklist yang sama di setiap prompt. Kamu mendefinisikan alur kerja sekali, dan Bob mengikutinya setiap kali skill berlaku.
Prasyarat
Bob Shell
Instal Bob Shell v2.x atau yang lebih baru dan masuk.
Git
Kamu perlu Git untuk meng-clone repositori contoh.
- Jika belum memilikinya, clone demo Galaxium Travels.
git clone https://github.com/IBM/galaxium-travels - Meski tidak wajib, pertimbangkan untuk menyelesaikan Mulai proyek dengan /init dan AGENTS.md dan Tulis prompt yang efektif untuk Bob Shell terlebih dahulu.
Buat skill changelog-entry
Bob Shell memuat skill dari folder yang berisi file SKILL.md. Skill proyek disimpan di .bob/skills/ di root proyek, sehingga Git melacaknya bersama codebase dan timmu dapat menggunakannya. Skill global disimpan di ~/.bob/skills/ dan berlaku untuk semua proyekmu.
Buat folder skill
Pindah ke direktori root Galaxium Travels dan buat folder untuk skill:
cd galaxium-travels
mkdir -p .bob/skills/changelog-entryTulis file SKILL.md
Buat .bob/skills/changelog-entry/SKILL.md dengan konten berikut. Kamu dapat menggunakan editor teks apa pun, atau jalankan perintah seperti yang tertulis:
cat > .bob/skills/changelog-entry/SKILL.md <<'EOF'
---
name: changelog-entry
description: Adds an entry to CHANGELOG.md using the Keep a Changelog format, creating the file if it does not exist, so change history stays consistent and release-ready.
locale: id
---
Add an entry to CHANGELOG.md using the Keep a Changelog format (https://keepachangelog.com/).
- If CHANGELOG.md does not exist, create it at the project root with this structure before adding an entry:
# Changelog
All notable changes to this project are documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
## [Unreleased]
- Add new entries under the `## [Unreleased]` section, under one of these subheadings: `### Added`, `### Changed`, `### Fixed`, `### Removed`. Create the subheading if it is not already present under `## [Unreleased]`.
- Write each entry as a single bullet point in the imperative mood ("Add", not "Added"), starting with a capital letter, with no trailing period.
- Base the entry on the actual diff, not on the wording of the request. Run `git diff` to review what changed before writing the entry.
- Only edit CHANGELOG.md. Do not stage or commit the change.
EOFFront matter mendefinisikan dua field wajib:
name: Nama skill. Sesuaikan dengan nama folder, karena Bob Shell menggunakan nama folder untuk mereferensikan skill, misalnya$changelog-entry.description: Yang dibaca Bob untuk memutuskan apakah skill berlaku untuk permintaan ketika kamu tidak mereferensikannya berdasarkan nama. Jika kamu menghilangkannya, Bob menggunakan baris pertama instruksi sebagai gantinya, jadi selalu tulis deskripsi yang jelas.
Semua yang berada di bawah penutup --- adalah set instruksi yang diikuti Bob saat skill diaktifkan.
Mulai Bob Shell
Mulai sesi interaktif dalam mode Agent dari direktori root Galaxium Travels:
bob chat --mode agentMode Agent memberikan Bob akses tool yang dibutuhkan untuk mengaktifkan skill dan mengedit file. Jika Bob Shell bertanya apakah kamu mempercayai folder tersebut, percayai folder tersebut agar Bob dapat memuat skill proyek.
Aktifkan skill secara langsung
Referensikan skill berdasarkan nama agar kamu dapat melihat instruksi yang diikuti Bob.
Edit README.md
Minta Bob untuk membuat pengeditan kecil yang berisiko rendah agar kamu memiliki sesuatu untuk dicatat:
Add a one-line note to the end of the README.md that says "Powered by IBM Bob."Bob menampilkan perubahan yang diusulkan sebagai diff. Pilih Approve untuk menerapkan pengeditan.
Catat perubahan dengan skill
Ketik $ untuk membuka pemilih skill, lalu pilih changelog-entry. Bob Shell menyisipkan referensi skill ke promptmu:
$changelog-entry Add a changelog entry for this change.Bob meminta izin untuk menggunakan skill dan mengedit file. Setujui setiap permintaan. Bob memuat skill changelog-entry dan membuat CHANGELOG.md, karena proyek belum memilikinya. Bob kemudian menambahkan entri seperti berikut:
## [Unreleased]
### Added
- Add "Powered by IBM Bob." note to the end of README.mdVerifikasi entri changelog pertama
Minta Bob untuk menampilkan changelog:
Show me @CHANGELOG.mdEntri tersebut cocok dengan entri changelog yang dihasilkan Bob di Catat perubahan dengan skill.
Biarkan Bob mengaktifkan skill secara otomatis
Buat perubahan kedua dan minta Bob untuk mencatatnya tanpa menyebut nama skill. Bob dapat mengenali dari deskripsi skill bahwa skill tersebut berlaku dan mengaktifkannya sendiri.
Hapus riwayat percakapan
Masukkan slash command /clear untuk mereset riwayat percakapan, agar Bob tidak memiliki memori referensi skill sebelumnya:
/clearBuat pengeditan README.md kedua
Minta Bob untuk membuat pengeditan kedua:
Add a one-line comment above the main heading in README.md that says "Galaxium Travels".Setujui pengeditan saat diminta.
Catat perubahan tanpa menyebut nama skill
Minta Bob untuk mencatat perubahan tanpa menyebut nama skill:
Add an entry to CHANGELOG.md in Keep a Changelog format.Bob mengenali bahwa permintaan tersebut cocok dengan deskripsi skill changelog-entry dan mengaktifkannya tanpa referensi $changelog-entry. Setujui permintaan skill dan pengeditan file saat diminta. Bob menambahkan entri lain dalam format yang sama.
Verifikasi kedua entri changelog
Minta Bob untuk menampilkan changelog:
Show me @CHANGELOG.mdChangelog kini berisi dua entri di bawah ## [Unreleased], seperti berikut:
## [Unreleased]
### Added
- Add "Powered by IBM Bob." note to the end of README.md
- Add "Galaxium Travels" comment above the main heading in README.mdKelola skillmu
Setiap skill adalah folder di disk, jadi kamu mengelola skill dengan tool file biasa:
- Daftar skill: Lihat di
.bob/skills/untuk skill proyek dan~/.bob/skills/untuk skill global. Jika kedua lokasi berisi skill dengan nama yang sama, skill proyek yang diprioritaskan. - Edit skill: Edit file
SKILL.md-nya. Kamu juga dapat menambahkan file pendukung, seperti template atau checklist, ke folder skill. - Referensikan skill: Ketik
$atau masukkan/skillsdi Bob Shell untuk menyisipkan referensi skill ke promptmu.
Pemecahan masalah
Skill tidak muncul di pemilih $
Konfirmasikan bahwa path file adalah .bob/skills/changelog-entry/SKILL.md, front matter menyertakan name dan description, dan folder dipercaya. Untuk detailnya, lihat Folder yang dipercaya. Nama folder skill harus berupa kebab-case huruf kecil, seperti changelog-entry. Bob melewati folder dengan nama yang tidak valid tanpa menampilkan error. Restart Bob Shell setelah kamu menambahkan skill.
Bob tidak mengaktifkan skill secara otomatis
Bob mencocokkan permintaan dengan description skill. Ubah frasa prompt untuk menggunakan kata-kata dari deskripsi, atau referensikan skill secara langsung dengan $changelog-entry.
Langkah berikutnya
Dalam tutorial ini, kamu telah mempelajari bagaimana skill memungkinkan kamu mendefinisikan alur kerja sekali dan membuat Bob menerapkannya secara konsisten. Kamu dapat mereferensikan skill secara eksplisit dengan $<nama-skill> atau membiarkan Bob mengaktifkannya secara otomatis berdasarkan deskripsinya.
Untuk menambahkan template dan file pendukung ke skill, lihat Skill.
Untuk membangun persona khusus dengan peran, instruksi, dan akses tool sendiri, lihat Mode kustom.