Install
openclaw skills install @pmuhammadagus-byte/skill-packagerGunakan saat memaketkan, memvalidasi, dan menyiapkan skill OpenClaw untuk backup, deploy, atau reuse lintas environment. Menjamin struktur valid, bebas secret, dan kompatibel platform (Termux/Android vs desktop).
openclaw skills install @pmuhammadagus-byte/skill-packagerGunakan skill ini ketika:
Jangan gunakan untuk:
Mengubah satu atau banyak skill OpenClaw menjadi paket terstruktur yang:
Dapat berupa:
~/.openclaw/workspace/skills/<skill-name>skillsDefault:
SOURCE_DEFAULT = ~/.openclaw/workspace/skillsOUTPUT_DEFAULT = ~/.openclaw/workspace/skills-packagesSetiap skill yang dipaketkan harus berbentuk:
<skill-name>/
SKILL.md # WAJIB
assets/ # opsional
scripts/ # opsional
references/ # opsional
examples/ # opsional
templates/ # opsional
Aturan:
SKILL.md wajib ada..DS_Store, Thumbs.db, *.tmp, *.log, node_modules/, .git/.Tujuan: tahu skill mana yang akan dipaketkan dan untuk apa (backup / deploy / share). Konfirmasi tujuan & target platform jika belum jelas.
Cek secara fisik:
test -d / test -f)SKILL.md ada di root skillname dan description (parse YAML frontmatter)Jika ada masalah → laporkan ERROR, perbaiki bila aman, atau SKIP skill tersebut.
Bersihkan:
Jangan ubah isi SKILL.md kecuali:
Cek:
command -v)$PREFIX, bukan /usr)Jika ketidakcocokan ditemukan → laporkan WARNING + beri catatan platform-specific.
Buat paket:
<skill-name>-v<version> jika ada versi, else nama skillcp -r (atau rsync -a --exclude bila tersedia)Jangan:
Setelah paket dibuat, jalankan checklist VERIFICATION ENGINE (node 11):
SKILL.md masih validgrep ulang)du -sh)Lihat format di CONTOH NYATA (Output Report).
cp -r "$SRC" "$DST"./usr → WARNING, sarankan ganti ke $PREFIX / relatif.| Mistake | Fix |
|---|---|
Memaketkan secret (.env, token di SKILL.md) | Jalankan grep -rEi sebelum copy; hapus jika ketemu |
| Menyertakan junk file | Exclude .DS_Store, *.tmp, *.log, node_modules/, .git/ |
SKILL.md invalid / frontmatter rusak | Validasi frontmatter dulu, perbaiki bila aman |
| Asumsi platform desktop di Termux | Cek uname -s -m; gunakan $PREFIX & path relatif |
| Mengubah isi fungsional SKILL.md saat packaging | Hanya ubah untuk perbaiki frontmatter/secret |
| Klaim sukses tanpa verify | Jalankan checklist node 11; jangan andalkan exit code saja |
| Memaketkan seluruh workspace | Skill ini untuk skill tertentu, bukan backup workspace |
Contoh 1 — Paketkan satu skill bersih
"Paketkan skill openclaw-skill-packager"skills-packages/openclaw-skill-packager-v1.2.0 → verify hijau.PACKAGED SKILLS
- openclaw-skill-packager: OK
TOTAL: 1 packaged, 0 failed
OUTPUT: ~/.openclaw/workspace/skills-packages/openclaw-skill-packager-v1.2.0
SIZE: 24K
SECRET LEAK: OK
PLATFORM COMPATIBILITY: OK
Contoh 2 — Skill mengandung secret
"Validasi skill X sebelum share"API_KEY=... di scripts/config.sh.PACKAGED SKILLS
- X: OK (WARNING: secret removed from scripts/config.sh)
TOTAL: 1 packaged, 0 failed
SECRET LEAK: OK (remediated)
PLATFORM COMPATIBILITY: WARNING (assumes /usr)
Contoh 3 — User salah minta jalankan skill
"Jalankan skill Y untuk saya"| Mode Gagal | Penyebab | Deteksi | Pemulihan |
|---|---|---|---|
| Copy gagal (I/O) | disk penuh / path salah | exit code ≠ 0 | retry; periksa df, quote path |
| Secret lolos ke paket | lupa scan / pola tak cocok | grep pasca-copy ≠ 0 | hapus file, rescan, WARNING |
SKILL.md rusak | YAML frontmatter invalid | parse gagal | SKIP + laporkan; jangan tebak |
Tool rsync absen | environment minimal | command -v rsync kosong | fallback cp -r |
| Path spasi putus | tidak di-quote | argumen terpisah | quote "$SRC" "$DST" |
| Platform mismatch | asumsi desktop di Termux | ada path /usr / systemd | WARNING + catatan $PREFIX |
INPUT ERROR → Jelaskan path/format yang salah → Berikan contoh benar → Jangan lanjut jika kritis
DEPENDENCY ERROR
→ Laporkan tool/package hilang → Berikan fallback (cp jika rsync tiada)
TOOL ERROR → Laporkan pesan error → Jangan lanjut jika output tidak bisa dipercaya
OUTPUT ERROR → Laporkan path output tak bisa ditulis → Recovery: ganti path atau perbaiki permission
PERMISSION ERROR
→ Laporkan file/directory ditolak → Recovery: chmod atau jalankan dengan izin sesuai
ENVIRONMENT ERROR → Laporkan platform mismatch → Gunakan pendekatan konservatif (Termux-safe)
UNKNOWN ERROR → Laporkan ERROR → Jangan lanjut dengan asumsi → Minta klarifikasi user
Sebelum menyatakan packaging selesai:
Target: skor ≥ 90 untuk production-ready.
Evaluasi:
Jika di bawah 90 → perbaiki sebelum deploy/share.
Paket harus bisa dipindah dan langsung dipakai. Jangan packaging skill yang belum siap. Utamakan validasi, keamanan, dan kebersihan struktur.
SKILL.md rusak| Excuse | Reality |
|---|---|
| "Ini cuma backup" | Paket sering dibagikan. Jangan ada secret. |
| "Strukturnya sudah oke" | Validasi dulu, jangan asumsi. |
| "Nanti saya bersihkan" | Paket harus bersih sekarang. |
| Situasi | Aksi |
|---|---|
| Publish / share | Package + scan secret + laporan |
| Validasi | Cek struktur + frontmatter |
| Install di env lain | Verifikasi paket dulu |