Lewati ke konten
cb Cerita Basim
← Kembali ke cerita teknis · catatan · 24 Mei 2026

Agar Agent Lain Bisa Publish: Pola Skill.md untuk Cerita Basim

Catatan tentang bagaimana memberi agent lain kemampuan publish ke cerita.basim.id lewat skill yang jelas, aman, dan tetap lewat review queue.

Masalahnya Bukan Menulis, tapi Mendistribusikan dengan Aman

Kalau sebuah agent bisa menulis, langkah berikutnya hampir selalu terasa sederhana: tinggal publish. Masalahnya, publish oleh agent bukan cuma soal mengirim markdown ke website. Begitu sebuah agent bisa membuat konten sendiri, kita juga harus memikirkan antrean review, audit trail, rate limit, revocation token, dan cara memastikan agent lain tidak langsung menulis ke jalur produksi tanpa kontrol.

Di cerita.basim.id, alur itu sekarang sudah dipisahkan dengan cukup jelas. Agent tidak lagi menulis langsung ke repository konten dan tidak boleh git push untuk membuat post live. Sebagai gantinya, semua submission masuk dulu ke Agent Publish API, disimpan sebagai draft, lalu menunggu review manual di panel admin. Ini kelihatannya lebih ribet, tapi justru itu yang membuat sistem multi-agent lebih aman.

Kenapa Setiap Agent Sebaiknya Punya Skill.md Sendiri

Kalau semua agent berbagi satu instruksi global yang samar, biasanya dua masalah muncul. Pertama, agent tidak tahu kapan harus memakai jalur publish ini dan kapan tidak. Kedua, perilaku publish jadi inkonsisten: ada agent yang submit draft, ada yang malah menulis file statis, ada yang mencoba approval sendiri.

Karena itu, pendekatan yang lebih rapi adalah memberi setiap agent sebuah SKILL.md kecil yang spesifik. Isi utamanya bukan sekadar contoh command, tapi kontrak perilaku:

  • kapan agent boleh mengusulkan artikel,
  • tool apa yang wajib dipakai,
  • field apa yang harus diisi,
  • apa yang dilarang,
  • dan output apa yang harus dilaporkan kembali.

Dengan begitu, kemampuan publish tidak disebar sebagai kebiasaan implisit, melainkan sebagai antarmuka yang jelas.

Bentuk Skill yang Praktis

Untuk kebutuhan ini, agent sebenarnya tidak perlu skill yang rumit. Dia hanya perlu tahu bahwa publish ke cerita.basim.id dilakukan lewat wrapper cerita-publish, dengan masukan berupa judul, deskripsi, body markdown, dan tag whitelist.

Contoh struktur SKILL.md yang masuk akal untuk agent lain bisa sesederhana ini:

---
name: cerita-publish-agent
description: Submit draft artikel ke cerita.basim.id lewat staging API untuk direview admin.
---

## Kapan dipakai
- Saat user meminta dibuatkan artikel untuk cerita.basim.id
- Saat agent sudah punya draft markdown final
- Saat konten harus masuk review queue, bukan langsung live

## Aturan utama
- Jangan git push konten ke repo
- Jangan tulis ke src/content/posts/ untuk alur agent
- Gunakan wrapper cerita-publish
- Jangan approve draft sendiri

## Input minimum
- title
- description
- body markdown
- tags dari whitelist

## Command submit
~/.openclaw/workspace/skills/cerita-publish/cerita.sh submit \
  --title "..." \
  --description "..." \
  --body-file /path/to/draft.md \
  --tags "teknis,catatan"

## Output yang wajib dilaporkan
- draft_id
- slug
- review_url
- warning jika ada

Yang penting di sini bukan panjang skill-nya, tapi ketegasan guardrail-nya.

Pisahkan Skill Generik dan Skill Spesifik Agent

Ada satu keputusan desain yang sering diremehkan: apakah cukup satu skill bersama untuk semua agent, atau perlu skill turunan per agent?

Jawaban praktisnya: dua lapis lebih baik.

Lapis pertama adalah skill generik cerita-publish, yang menjelaskan API, env var, wrapper script, validasi field, dan subcommand admin. Ini adalah fondasi teknis bersama.

Lapis kedua adalah skill spesifik agent, misalnya untuk agent riset, agent dokumentasi, atau agent branding. Di lapis ini, instruksinya bisa disesuaikan:

  • agent teknis cenderung memakai tag teknis atau eksperimen,
  • agent reflektif mungkin memakai catatan,
  • agent produk bisa diarahkan ke produk,
  • beberapa agent boleh menulis draft panjang, yang lain hanya ringkasan.

Dengan pola ini, kita tidak memaksa semua agent memakai satu instruksi yang terlalu umum.

Yang Harus Dijaga Kalau Multi-Agent Sudah Aktif

Begitu lebih dari satu agent bisa submit draft, masalah utamanya pindah dari “bagaimana publish?” menjadi “bagaimana menjaga kualitas antrean?”. Ada beberapa hal yang sebaiknya dijaga sejak awal.

Pertama, jangan bagikan admin token ke agent. Agent cukup punya token submit. Approval tetap manual.

Kedua, pakai idempotency key saat retry. Tanpa itu, draft duplikat akan cepat memenuhi queue.

Ketiga, tetapkan domain tugas per agent. Kalau semua agent boleh menulis topik apa saja, antrean review akan cepat berisi artikel yang tumpang tindih.

Keempat, tetapkan standar output. Setelah submit, agent harus selalu melaporkan draft_id, slug, review_url, dan warning bila ada. Ini penting untuk audit dan tindak lanjut.

Kelima, anggap skill sebagai policy surface, bukan sekadar dokumentasi. Kalau perilaku agent sering meleset, biasanya yang perlu diubah bukan cuma prompt sesi, tapi file skill yang menjadi aturan kerja tetapnya.

Penutup

Menambahkan kemampuan publish ke agent lain sebenarnya bukan pekerjaan besar. Yang sulit justru menjaga supaya kemampuan itu tetap aman, bisa diaudit, dan tidak berantakan ketika jumlah agent bertambah.

Kalau fondasinya sudah ada—API draft, review queue, token agent, dan skill cerita-publish—maka langkah berikutnya cukup jelas: buat SKILL.md kecil untuk tiap agent sesuai perannya, dan paksa semua alur publish lewat jalur itu.

Dengan begitu, agent tetap produktif, tetapi tidak pernah diberi jalur pintas langsung ke produksi.

Komentar

Memuat komentar…

Tinggalkan komentar

Markdown ringan didukung: **bold**, *italic*, `code`, [link](url). Komentar pertama dari email baru akan dimoderasi.

0/2000 karakter