▲ Sesi Komunitas: Cara membuat dan menerbitkan skill

VVercel
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00[AUDIO_KOSONG]
00:00:30[AUDIO_KOSONG]
00:01:00Halo semuanya, apa kabar?
00:01:25Selamat datang di sesi komunitas Vercel lainnya.
00:01:29Kami sangat senang Anda ada di sini.
00:01:32Jika ini pertama kalinya Anda mengikuti sesi kami,
00:01:35halo, saya Pauline Navas dari tim komunitas Vercel.
00:01:40Anda mungkin pernah melihat saya di ruang komunitas.
00:01:44Jadi, ini selalu menjadi waktu yang menyenangkan bagi
00:01:46saya untuk berbicara langsung dan terhubung dengan Anda semua.
00:01:51Sangat menyenangkan melihat beberapa dari Anda sudah menonton.
00:01:56Jika ini pertama kalinya Anda bergabung dan
00:02:00Anda tidak bisa melihat obrolan namun ingin bertanya,
00:02:02saya sangat menyarankan Anda melakukannya di sesi ini.
00:02:06Jangan ragu untuk bergabung di platform komunitas kami di community.versailles.com.
00:02:12Lalu klik "going" untuk acara ini.
00:02:15Ya, gunakan fitur obrolan dan ajukan pertanyaan sepanjang sesi.
00:02:20Jika Anda menonton di X atau platform lain, silakan gunakan itu juga.
00:02:25Untuk sesi hari ini, saya sangat bersemangat.
00:02:28Saya tidak tahu apakah Anda bisa merasakannya, tapi kita akan membahas sesuatu yang
00:02:32benar-benar mengubah cara pengembang bekerja dengan agen AI.
00:02:36Yaitu "skills" untuk Claude Code.
00:02:39Pernahkah Anda berharap agen AI Anda tahu cara melakukan sesuatu seperti
00:02:44meningkatkan ke Next.js dengan benar atau mengikuti pola pengkodean tim Anda?
00:02:49Itulah kegunaan dari "skills" ini.
00:02:51Jadi, saya sangat senang memperkenalkan John dari
00:02:56tim AI DX di Vercel untuk menjalankan lokakarya ini bersama Anda.
00:03:02Halo, John.
00:03:04>> Hai, Pauline.
00:03:05Halo, semuanya.
00:03:05Terima kasih sudah datang.
00:03:07>> Senang sekali bertemu denganmu.
00:03:09Baiklah, mari kita mulai.
00:03:12>> Ayo kita lakukan.
00:03:13Baiklah, soal "skills".
00:03:15Rasanya seperti sudah ada sejak lama, padahal mungkin baru berusia dua minggu, siapa tahu?
00:03:20Jadi, saya akan membawakan presentasi ini dengan membahas tentang "skills".
00:03:24Saya akan memamerkan beberapa di antaranya, jadi silakan bertanya atau instruksi saya
00:03:28karena saya sangat suka membicarakan hal ini.
00:03:31Terkait "skills", pertama-tama kita akan membahas cara membuatnya dan
00:03:35mempublikasikannya.
00:03:36Presentasi ini sebenarnya dibuat oleh skill bernama ReMotion Geist.
00:03:42Skill ini menggunakan bahasa desain Vercel, dipadukan dengan ReMotion,
00:03:46lalu membangun ini semua, dan akan saya tunjukkan di akhir nanti.
00:03:48Namun untuk saat ini, saya hanya akan memutar beberapa video.
00:03:51Dulu, kita sudah lama membicarakan tentang "prompt engineering"
00:03:55saat model AI belum sebaik sekarang.
00:03:58Setiap orang harus membuat prompt mereka sesempurna mungkin dan
00:04:00semua orang mengira "prompt engineering" akan menjadi sebuah karier.
00:04:03Sekarang kita beralih ke "context engineering" dan membiarkan skill ini,
00:04:08file markdown ini, dimuat secara bertahap nanti.
00:04:13Jadi sekarang ada pemisahan antara prompt awal Anda dan
00:04:17potongan konteks yang dapat dimuat kemudian.
00:04:19Kita akan menyebutnya sebagai "skills".
00:04:22Jadi, "skills" dimulai dari Anthropic.
00:04:25Mereka perlu mengajarkan Claude Code tugas-tugas spesifik karena AI memulai dari
00:04:30lembaran kosong; setiap model dimulai dari awal tanpa ingatan.
00:04:33Ini seperti bayi yang baru lahir dan tidak memiliki keahlian apa pun.
00:04:37Yang mereka miliki hanyalah pengetahuan bawaan yang dimasukkan ke kepala mereka.
00:04:42Dan mereka memulainya dari nol.
00:04:44Jadi Anthropic berpikir, bagaimana kita akan menyelesaikan ini?
00:04:48Tentu saja solusinya adalah markdown, karena setiap masalah diselesaikan
00:04:51dengan markdown akhir-akhir ini, dan dari sanalah "skills" lahir.
00:04:55Dari sini, Anda sekarang dapat mengemas skill tersebut.
00:04:58Skill tersebut berupa file markdown yang dapat Anda bagikan dengan tim
00:05:04dan Anda dapat mengemas alur kerja internal Anda sendiri.
00:05:07Anda dapat mengemasnya dan membagikannya di repositori GitHub Anda.
00:05:12Dan kami memiliki alat khusus yang telah kami rilis.
00:05:15Izinkan saya membuka peramban sebentar untuk mengelola skill komunitas.
00:05:22skills.sh adalah tempat yang bisa Anda kunjungi.
00:05:27Anda bisa mencari skill komunitas di sana.
00:05:29Anda bisa menemukan beberapa skill yang paling banyak digunakan.
00:05:32Seperti biasa, pastikan Anda memercayai sumber skill tersebut terlebih dahulu,
00:05:36baik dari sumber terpercaya atau seseorang di tim Anda.
00:05:38Sehingga apa yang Anda gunakan selaras dengan apa yang ingin Anda lakukan.
00:05:42Dan kita akan membahas lebih lanjut tentang penggunaan ini nanti.
00:05:45Namun ini tempat yang bagus untuk mencari di seluruh ekosistem dan
00:05:48komunitas skill untuk melihat apa saja yang tersedia.
00:05:50Jadi, ini beberapa detail tentang bagaimana lokakarya ini biasanya diajarkan dan
00:05:56saya akan lanjut ke video berikutnya tentang hal ini.
00:06:00Lembaran kosong; lembaran kosong berarti bahwa, sekali lagi,
00:06:07bayi baru lahir dan agen Anda begitu dimulai, Anda tahu,
00:06:11agen yang merupakan model dijalankan oleh sebuah agen.
00:06:14Biarkan saya memperbesar ini sedikit.
00:06:16Agen tersebut memahami dasar-dasar React, TypeScript, CSS, dan SQL.
00:06:23Tetapi yang tidak ia ketahui adalah apa yang Anda miliki; aturan, pola,
00:06:28sistem, dan struktur Anda.
00:06:30Jadi Anda bisa memasukkan dan menggabungkan hal-hal
00:06:35pribadi Anda dengan apa yang diketahuinya untuk mengisi celah pengetahuan tersebut.
00:06:40Jadi Anda memasukkan konteks tersebut dan skill dimuat agar
00:06:42ia dapat melakukan hal-hal tersebut persis seperti yang Anda inginkan.
00:06:45Jadi, mereka tahu sebuah bahasa, mereka tahu TypeScript, mereka tahu React.
00:06:51Tetapi mereka tidak tahu dialek Anda dalam bahasa tersebut.
00:06:53Itu cara yang bagus untuk memikirkannya.
00:06:54Baiklah, ada pertanyaan sejauh ini?
00:07:01Apakah ada yang terlewat?
00:07:03Belum ada pertanyaan.
00:07:06Hanya banyak antusiasme di kolom obrolan.
00:07:08Lanjutkan saja, John.
00:07:09Mari lanjut.
00:07:11Cara saya memikirkannya adalah ini seperti momen NPM untuk "skills".
00:07:17NPM adalah pengelola paket yang sebagian besar dari kita sudah mengenalnya.
00:07:23Pengelola paket memiliki sumber daya komunitas yang dibundel
00:07:27yang dapat Anda gunakan untuk membantu produk Anda berjalan lebih mudah.
00:07:30Jika Anda menganggap "skills" dan skills.sh sebagai pengelola paket untuk skill,
00:07:35Anda dapat menginstal kemampuan ini ke dalam agen Anda.
00:07:39Sama seperti saat Anda menginstal sebuah pustaka (library),
00:07:41Anda dapat menggunakan "npx skills add" untuk menambahkan pengetahuan ke proyek Anda.
00:07:45Sebelumnya, prompt engineering berarti Anda mencoba menulis di file claw.md,
00:07:52atau file agents.md Anda, perintah seperti "selalu lakukan ini, selalu lakukan itu".
00:07:55Gunakan pustaka ini, periksa Jira, dan seterusnya.
00:07:59Tapi sekarang, kita punya skill yang bisa ditambahkan yang merangkum itu semua
00:08:04dan membawanya ke dalam proyek kita.
00:08:06Jadi sifatnya permanen.
00:08:08Kita bisa membagikannya di tingkat pengguna atau tingkat proyek.
00:08:11Dan mereka bisa terpisah dari proyek individu.
00:08:14Anda tidak perlu terlalu sering menyalin dan menempel.
00:08:17Kita bisa mengotomatiskan banyak hal sehingga saat Anda memulai proyek baru,
00:08:21Anda bisa menambahkan semua skill yang Anda inginkan atau butuhkan.
00:08:23Sekali lagi, kita beralih dari terlalu khawatir
00:08:28tentang membangun prompt ini secara manual.
00:08:30Baiklah.
00:08:34Ini adalah kemampuan yang permanen untuk seluruh tim.
00:08:38Dan jika Anda belum pernah merasakan sulitnya mencoba mengelola
00:08:43file agents.md atau claw.md dalam proyek Anda,
00:08:47seperti dengan PR (Pull Request) dan segalanya pada file markdown tersebut,
00:08:50ini juga menyelesaikan masalah tersebut.
00:08:53Membahas tentang perbedaan satu pengembang versus seluruh tim tadi.
00:08:58Baiklah, ini juga menangani sesuatu yang bisa Anda pikirkan
00:09:03sebagai pasif versus aktif.
00:09:05Pasif berarti skill ini tidak perlu dimuat
00:09:12sampai benar-benar diperlukan.
00:09:15Jika kita melihat hasil di agents.md,
00:09:22file markdown itu seperti prompt sistem,
00:09:25sesuatu yang dibaca pertama kali.
00:09:26Itu selalu dibaca.
00:09:28Agen harus membacanya.
00:09:31Anda bisa melihat dalam beberapa pengujian untuk semua ini
00:09:35bahwa jika Anda memasukkan banyak konteks ke sana
00:09:38dan memenuhi jendela konteksnya,
00:09:41ia akan jauh lebih baik dalam mengikuti aturan-aturan tersebut,
00:09:46seperti "selalu gunakan TypeScript dan Tailwind" dan sebagainya.
00:09:50Skill ini menjadi lebih aktif.
00:09:53Dan agen tersebut, Anda bisa memanggilnya secara manual
00:09:57atau mereka bisa dimuat secara otomatis oleh agen
00:10:00dan mereka membawa hal-hal yang dibutuhkan tepat waktu.
00:10:04Seperti "deploy ke Vercel" atau "buat database" dan semacamnya.
00:10:08Jadi sekali lagi, ini soal aturan versus alat,
00:10:13dan anggap saja skill sebagai alat,
00:10:15dan Anda selalu membutuhkan keduanya untuk ini.
00:10:18- John, sebenarnya ada pertanyaan yang baru saja masuk,
00:10:21yang menurut saya bagus untuk bagian ini.
00:10:24Bagaimana cara kita memutuskan apakah akan mendorong sesuatu sebagai MCP
00:10:28atau sebagai sebuah skill?
00:10:30- Saya akan katakan secara default,
00:10:33ada beberapa lapisan di sini jika Anda berpikir,
00:10:37saya hanya ingin menampilkan sesuatu di layar.
00:10:38Jadi saya akan menaruhnya di sana.
00:10:39- Ya, tentu saja.
00:10:40- Secara default, selesaikan masalah dengan markdown.
00:10:44Jika markdown tidak cukup, selesaikan dengan CLI.
00:10:47Jika CLI tidak cukup, selesaikan dengan MCP.
00:10:51Jadi ini semacam tingkatan abstraksi,
00:10:53tingkat kesederhanaannya adalah jika Anda bisa menemukan cara
00:10:58untuk menyelesaikan masalah dengan markdown
00:10:59dan itu berlaku untuk alat berbasis AI apa pun
00:11:01di mana Anda bisa melihat banyak cara
00:11:05Anthropic merancang Claude Code
00:11:08dan yang lainnya mengikuti pola yang sama seputar skill,
00:11:11seputar perintah (commands) dan sub-agen.
00:11:13Semuanya adalah file markdown dengan front matter
00:11:15dan konfigurasi, dan itu biasanya sudah cukup.
00:11:19Lalu file markdown tersebut dapat menentukan alat
00:11:21yang mereka butuhkan dan alat yang diizinkan untuk mereka panggil
00:11:24serta batasannya, dan itu bisa memakan waktu
00:11:29untuk benar-benar melalui langkah-langkah konfigurasi tersebut.
00:11:31Tetapi jika Anda menghadapi skenario di mana Anda butuh kontrol ketat
00:11:37atas payload dan tipe data secara tepat
00:11:40dan segala hal yang dikirim bolak-balik
00:11:42antara agen dan MCP,
00:11:43maka MCP adalah solusi yang baik di sana.
00:11:46Tapi saya pikir secara umum, seluruh paradigma tren saat ini
00:11:50adalah beralih ke CLI,
00:11:54file markdown, dan hanya menggunakan MCP saat benar-benar diperlukan.
00:11:59- Ya, itulah diskursus yang juga saya lihat
00:12:04dari semua diskusi online.
00:12:06Ada pertanyaan lain yang baru saja masuk dari X.
00:12:10Ini luar biasa, di masa mendatang,
00:12:13apakah menurut Anda skill akan mendukung penemuan antar agen (agent-to-agent discovery)?
00:12:17Akan keren jika melihat satu agen memutuskan
00:12:20untuk menginstal sebuah skill, pertanyaan yang bagus.
00:12:22- Saya sangat suka pertanyaan ini dan pola antar agen
00:12:27adalah fitur yang jarang digunakan, tapi menjadi pola saat ini.
00:12:32Tentu saja, saya bisa membayangkan sebuah file markdown
00:12:39seperti deskriptor dari sebuah agen yang sedang dimuat.
00:12:42Claude saat ini mendukung ini dengan sub-agen
00:12:46dan hari ini juga, sangat menyenangkan bisa berbicara tentang
00:12:49fitur tim yang baru saja mereka rilis hari ini
00:12:54di mana mereka dapat membuat sekelompok sub-agen
00:12:59yang kemudian dapat melapor kembali ke pemimpin tim utama.
00:13:02Mereka menyebutnya tim sekarang.
00:13:04Dan kemudian tim-tim itu pada dasarnya bisa dikelola
00:13:10oleh satu pemimpin tim tersebut dan Anda bisa masuk dan memeriksa
00:13:12apa yang sedang dilakukan para agen.
00:13:14Dan agen-agen itu memiliki definisi tentang apa yang mereka,
00:13:18Saya ingin tahu apakah saya bisa menemukan dokumennya dengan cepat.
00:13:23- Sambil John mencarinya,
00:13:30jika Anda ada di kolom chat dan ingin mengajukan pertanyaan,
00:13:34sekaranglah saatnya, silakan tulis semuanya di kolom chat
00:13:37dan kami akan menjawabnya sepanjang sesi ini.
00:13:40- Di mana saya bisa, saya mungkin bisa memposting ini
00:13:42di chat Twitter setidaknya.
00:13:47Jadi ada,
00:13:51di halaman ini, Anda akan melihat cara sub-agen didefinisikan
00:13:58dan Anda bisa melihat mereka memiliki bagian front matter
00:14:01dan di bagian front matter tersebut,
00:14:03Anda bisa menentukan keahlian (skills) yang bisa diakses oleh sub-agen tersebut.
00:14:08Jadi jika Anda ingin membuat agen, dalam hal ini,
00:14:13sebuah sub-agen yang memiliki daftar keahlian,
00:14:17maka Anda bisa melakukannya melalui nama keahlian tersebut.
00:14:20Dan kami belum sempat,
00:14:22slide berikutnya adalah tentang anatomi keahlian,
00:14:26tapi keahlian itu pada dasarnya hanyalah sebuah nama.
00:14:28Jadi Anda bisa memiliki sub-agen
00:14:29dengan serangkaian keahlian khusus,
00:14:31serangkaian keahlian yang sangat spesifik,
00:14:34dan Anda bisa meminta sub-agent itu menangani suatu tugas.
00:14:38Jadi yang terjadi dengan fitur Teams yang dirilis hari ini
00:14:43adalah mereka bisa,
00:14:45Claude Code pada dasarnya bisa membangun timnya sendiri
00:14:48dan membangun agen-agennya sendiri
00:14:49dan menangani tugas tersebut sebaik mungkin.
00:14:53Tapi Anda bisa menentukan sub-agen khusus dengan keahlian khusus
00:14:56jika Anda ingin mengatakan,
00:14:57"Tolong bangun tim menggunakan sub-agen ini."
00:15:00Nah, ini bukan sekadar komunikasi antar agen.
00:15:05Itu adalah diskusi yang lebih besar tentang merancang
00:15:08komunikasi antar-agen,
00:15:11yang sebenarnya berada di luar cakupan ini.
00:15:12Tapi saya benar-benar melihat pola ini
00:15:14dari cara kita mendefinisikan sub-agen
00:15:17mulai diadopsi dalam cara kita mendefinisikan agen
00:15:21dan cara mereka berkomunikasi satu sama lain.
00:15:23Seperti bagaimana Anda mengekspos sebuah agen,
00:15:24saya membayangkan itu akan berupa file markdown
00:15:26berisi "inilah kemampuan saya,"
00:15:28seperti pola "masukkan saya ke lapangan, pelatih",
00:15:30yaitu, "Saya punya keahlian ini, saya bisa mencetak tiga angka,
00:15:32saya bisa melakukan rebound, masukkan saya."
00:15:34Dan kemudian mereka bisa saling menemukan dengan cara itu.
00:15:39Dan saya membayangkan kita memiliki skills.sh untuk,
00:15:43semacam manajer paket untuk keahlian.
00:15:47Kita akan memiliki manajer paket untuk agen
00:15:49dan file markdown agen.
00:15:51Hal itu pasti akan terjadi.
00:15:54Maksud saya, saya yakin itu sudah terjadi
00:15:57dan seseorang telah mempublikasikan sesuatu,
00:15:58hanya saja belum menjadi arus utama.
00:16:00- Itu sangat masuk akal.
00:16:03Terima kasih, terima kasih.
00:16:04Jika Anda punya pertanyaan lagi, teman-teman,
00:16:06tuliskan di kolom chat.
00:16:08Sementara itu, apakah Anda ingin melanjutkan, John?
00:16:10- Ya, tentu saja.
00:16:12Jadi, keahlian itu hanyalah sebuah folder, tanpa server, tanpa hosting.
00:16:15Dan keahlian tersebut berada di dalam sebuah direktori
00:16:20dan Anda memberinya nama, lalu nama keahliannya
00:16:24atau nama file keahliannya harus bernama skill.md.
00:16:28Ini memungkinkan para agen dalam pola penemuan mereka
00:16:31untuk dapat menemukan keahlian tersebut.
00:16:32Ini hanyalah sebuah konvensi yang dibuat agar alat bantu
00:16:35bekerja lebih baik dengan hal-hal ini.
00:16:36Ini membuatnya sangat mudah untuk membangun manajer paket
00:16:39dan pengaturan serta segalanya.
00:16:41Dan kemudian keahlian tersebut juga bisa dibundel bersama.
00:16:45Bisa menyertakan skrip yang dibundel, file referensi,
00:16:49dan seterusnya, semua fitur di mana keahlian tersebut
00:16:53bisa mengakses hal-hal lain yang dirujuk di dalamnya.
00:16:56Jadi pada keahlian tersebut, Anda akan melihat adanya front matter.
00:17:01Secara default, ia membutuhkan nama dan deskripsi.
00:17:04Dan namanya akan, itu harus cocok dengan nama,
00:17:08jika Anda melihat strukturnya.
00:17:10Jadi jika kita membuat satu yang disebut "my-skill",
00:17:12Anda akan menamainya "my-skill" di sini.
00:17:17Dan deskripsinya sangat krusial
00:17:20karena itu memberi tahu kapan keahlian ini
00:17:23akan digunakan oleh agen.
00:17:24Agen tersebut akan berkata,
00:17:26ia akan mengerjakan tugas yang Anda berikan.
00:17:29Dan jika ia mencapai titik di mana ia melihat,
00:17:31"Oh, saya butuh sesuatu yang akan menegakkan
00:17:33standar penjualan," maka ia akan memuat keahlian ini.
00:17:38Ia akan menggunakan alat pemuat keahlian dan memuat keahlian ini.
00:17:41Jadi deskripsi ini menjadi sangat penting.
00:17:42Cara Anda menulisnya,
00:17:43jika Anda akan menggunakan keahlian dengan cara yang sangat pasif,
00:17:46sebaliknya Anda bisa memanggil keahlian secara langsung menggunakan garis miring
00:17:50dan memperlakukannya sebagai perintah.
00:17:52Saya rasa saya punya slide tentang perintah versus keahlian,
00:17:55tapi intinya secara historis keduanya adalah dua hal yang berbeda
00:18:00dan sekarang keduanya digabungkan menjadi satu.
00:18:03Keahlian dulu hanya dimuat saat dibutuhkan (lazy loaded),
00:18:04tapi sekarang keduanya bisa dipanggil oleh pengguna dengan garis miring
00:18:08atau dimuat secara otomatis oleh agen.
00:18:12Dan dengan itu, maksud saya, jika Anda menekan garis miring di sini,
00:18:17Anda bisa melihat daftar keahlian yang tersedia,
00:18:19yang bisa Anda panggil secara manual jika Anda mau,
00:18:22atau Anda bisa menunggu, agen bisa memanggilnya saat dibutuhkan.
00:18:27Jadi dari sini, mari kita fokus lagi.
00:18:32- Saya rasa Anda akan membahas ini, John,
00:18:39tapi secara pribadi saya ingin mendengar contoh konkretnya.
00:18:43Seperti apa keahlian kecil dengan cakupan jelas yang Anda rekomendasikan
00:18:47untuk dibangun pertama kali agar semua orang paham model ini?
00:18:52- Ooh, itu pertanyaan bagus, jadi izinkan saya memberikan apa yang menurut saya
00:18:55adalah salah satu contoh terbaik saat ini.
00:18:57Jadi pada dasarnya di Vercel, beberapa masalah keahlian
00:19:03yang kami temui adalah bahwa kami melakukan rilis
00:19:07dengan irama yang sangat cepat, ritme yang sangat cepat.
00:19:12Agen dan model, mereka memiliki tanggal batas pengetahuan,
00:19:15yang mungkin beberapa bulan lalu, hingga setahun atau lebih yang lalu.
00:19:19Dan jadi secara default, jika,
00:19:24jika Anda memberi agen sebuah tugas, ia mungkin menggunakan Next.js 14,
00:19:30padahal itu sudah ketinggalan beberapa versi.
00:19:33Ia mungkin menggunakan AISDK, yang Anda tahu,
00:19:35baru-baru ini mendepresiasi fitur seperti generate object,
00:19:39yang sekarang menjadi bagian dari generate text
00:19:41agar API-nya lebih terstandarisasi dan mudah diikuti.
00:19:45Dan Anda akan menemui masalah di mana
00:19:50ia akan menggunakan versi lama
00:19:51dan Anda mencoba melakukan sesuatu
00:19:53sedangkan Anda sedang membaca dokumentasi terbaru
00:19:54dan semuanya menjadi tidak sinkron dan ketinggalan zaman.
00:19:56Sehingga proyeknya seolah-olah terhambat untuk sementara,
00:20:00mencoba mencari tahu kenapa Anda
00:20:03tidak sejalan dengan apa yang dibutuhkan.
00:20:05Jadi untuk menyelaraskan diri Anda dengan agen,
00:20:08Anda bisa membuat keahlian yang isinya seperti,
00:20:11"Gunakan versi React ini, gunakan versi AISDK ini,
00:20:16gunakan versi workflow ini."
00:20:18Dan kemudian Anda bisa menyertakan referensi
00:20:19tentang di mana menemukan informasi untuk itu semua.
00:20:22Sebagai contoh, sebuah keahlian yang saya buat untuk Vercel,
00:20:28biar saya buka ini.
00:20:33Jadi keahlian Vercel workflow adalah yang ini,
00:20:40yang saya rilis beberapa hari lalu.
00:20:43Dan cara kami melakukan ini,
00:20:46adalah kami mengatakan pada dasarnya karena kami sangat peduli
00:20:49dengan nomor versi,
00:20:50kami mulai menerbitkan dokumentasi bersama paket NPM kami
00:20:54dan kami memberi tahu agen bahwa workflow Anda sudah usang,
00:20:58pengetahuan Anda tentang workflow sudah ketinggalan zaman.
00:20:59Kami tahu itu karena workflow ini diperbarui
00:21:02hampir setiap hari saat ini menuju ke rilis publik (GA).
00:21:06Tapi yang bisa kita lakukan adalah berkata, begini,
00:21:10kami telah membundel dokumentasinya.
00:21:11Jadi kapan pun Anda perlu mencari tahu tentang workflow,
00:21:13periksalah dokumentasi yang kami bundel
00:21:16dan periksa versi terbarunya.
00:21:18Dan ini memungkinkan setiap kali saya memulai sebuah workflow,
00:21:22saya tidak perlu khawatir agen menemukan informasi usang.
00:21:25Ia akan selalu menemukan informasi yang dibundel
00:21:27dengan paket NPM-nya sehingga sinkron
00:21:32dan selaras dengan versi itu sendiri.
00:21:34Jadi ini adalah, seluruh keahlian ini pada dasarnya hanya
00:21:38instruksi untuk membaca manual dengan beberapa praktik terbaik penting
00:21:42sebagai referensi cepat.
00:21:44Jadi ini adalah keahlian yang mengatasi masalah
00:21:48agen yang memiliki batas tanggal pengetahuan
00:21:53dan menghadapi masalah nomor versi dan semacamnya.
00:21:57Keahlian yang bisa Anda tulis untuk diri sendiri adalah,
00:22:01saya akan katakan jika Anda menggunakan keahlian tersebut,
00:22:07saya akan mendemonstrasikan keahlian yang disebut "create skill".
00:22:11Jadi jika Anda mencari di skills.sh untuk "create skill",
00:22:14create skill, saya tidak tahu apakah,
00:22:23jadi jika Anda mengambil seperti sebuah "create skill",
00:22:28mungkin ambil saja yang dari tim Claude Code.
00:22:33Mari kita lihat Claude, saya rasa kami sudah mempublikasikan milik mereka.
00:22:39Maaf, ini satu hal yang tidak direncanakan sebelumnya.
00:22:42- Ya, tidak apa-apa, selagi Anda mencarinya.
00:22:46Oh luar biasa, silakan.
00:22:47- Seharusnya saya mencari Anthropic
00:22:49bukannya Claude Code.
00:22:50Ya, jadi jika Anda memasukkan salah satu fitur pembuatan keahlian mereka
00:22:54atau salah satu pola mereka, Anda bisa berkata "buat keahlian"
00:22:58lalu, ups, Anda bisa berkata "buat keahlian" dan ketik,
00:23:02misalkan "lihat gaya penulisan saya"
00:23:09di file readme.md dan buatlah keahlian
00:23:12yang akan selalu mengikuti gaya penulisan ini.
00:23:14Dan kemudian ini akan mengambil apa pun yang ada di readme
00:23:19dan kemudian membuat keahlian yang pada dasarnya
00:23:21seperti gaya penulisan pribadi Anda
00:23:23sehingga sejak saat itu Anda bisa memanggil keahlian tersebut
00:23:26dengan sebutan seperti "John writing style" atau semacamnya.
00:23:28Dan Anda bisa memasukkan banyak sekali dokumentasi
00:23:31atau seperti masukkan URL ke postingan blog Anda
00:23:33atau postingan Anda sendiri atau bahasa pelanggan atau apa pun
00:23:37dan masukkan saja itu semua.
00:23:38Saya rasa itu selalu menjadi titik awal yang baik,
00:23:40yaitu apa yang sudah saya miliki
00:23:42yang ingin saya reproduksi kembali?
00:23:43Seperti hal apa yang Anda gunakan terus-menerus
00:23:46dan Anda tahu akan sering menggunakannya lagi.
00:23:50Biasanya itu seperti pesan untuk pelanggan,
00:23:53konten blog, serta materi-materi
00:23:56yang pernah Anda buat sebelumnya
00:23:57dan ingin Anda buat lagi.
00:23:59Jadi, itu adalah gaya pertama yang bagus untuk dicoba.
00:24:04- Itu ide yang sangat bagus.
00:24:05Pasti akan saya coba.
00:24:06Saya ingin membacakan beberapa komentar
00:24:08yang ada di kolom obrolan di sini.
00:24:10Dave bilang bahwa kami membuat "skill"
00:24:14untuk membantu pendiri startup yang sudah 10 tahun tidak ngoding
00:24:17agar bisa ikut berkontribusi dalam kode
00:24:19tanpa harus melanggar batasan arsitektur
00:24:23di basis kode yang baru.
00:24:24Menurut saya ini penggunaan skill yang cukup baik,
00:24:27membantu orang non-teknis atau pemula dalam pemrograman
00:24:30untuk bisa berpartisipasi dalam aktivitas ngoding
00:24:32tanpa mengorbankan standar kualitas, ini luar biasa.
00:24:38Dan saya juga ingin menyampaikan, Dave tadi berkata,
00:24:42saya setuju dengan apa yang dikatakan John,
00:24:45tentang alat-alat yang umum digunakan saat ini.
00:24:47Ya, satu-satunya alat MCP yang dia gunakan adalah Chrome dev tools,
00:24:52MCP untuk berinteraksi dengan alat manajemen proyek
00:24:56seperti Linear atau JIRA, dan bekerja dengan basis data.
00:24:59Jadi, itu senada dengan semua yang Anda sampaikan tadi.
00:25:02Sebelum lanjut, ada pertanyaan di kolom obrolan
00:25:07mengenai pendapat Anda tentang agents.md yang mengungguli skill
00:25:12dalam postingan blog evaluasi agen yang kami terbitkan.
00:25:17Saya tidak tahu apakah Anda akan membahas itu
00:25:19dalam presentasi Anda nanti.
00:25:21Saya tahu kita sudah banyak melantur ke mana-mana,
00:25:25tapi apakah Anda ingin membahasnya sekarang?
00:25:27- Ya, tentu saja.
00:25:28Mengevaluasi model dan agen
00:25:34memang hal yang sangat sulit dilakukan.
00:25:38Karena sering kali saat Anda menulis evaluasi untuk mereka,
00:25:42Anda mengujinya pada proyek baru yang kosong
00:25:46yang belum memuat konteks apa pun.
00:25:49Dan Anda memberikan satu skenario spesifik,
00:25:51seperti pada proyek kosong ini, coba gunakan Next.js atau lainnya.
00:25:56Jika Anda menulis evaluasi seperti itu,
00:25:59tapi tidak memperhitungkan bahwa,
00:26:03misalnya Opus 4.6 baru saja rilis hari ini,
00:26:05atau model apa pun yang Anda gunakan,
00:26:07proyeknya, atau semua konteks tambahan lainnya,
00:26:10baik itu modelnya, agennya, atau eksekutornya.
00:26:13Cloud Code akan punya perintah sistem yang berbeda
00:26:16dan Cursor juga punya perintah sistem yang berbeda.
00:26:17Ada begitu banyak variabel di sana,
00:26:21dan model itu sendiri sifatnya,
00:26:24non-deterministik, jadi
00:26:26mengujinya memang hal yang sangat sulit dilakukan.
00:26:31Meski begitu, perbandingan agents.md vs skill
00:26:37adalah soal memaksakan konteks vs memuat konteks saat dibutuhkan.
00:26:42Jadi jika kita rangkum isi postingan blog tersebut,
00:26:47apakah memaksakan konteks lebih baik daripada memuatnya saat butuh?
00:26:51Jawabannya kemungkinan besar adalah ya,
00:26:53karena sistem akan menganggapnya sebagai
00:26:57instruksi awal, hal yang paling penting
00:27:00di awal siklus hidup sebuah agen.
00:27:03Itu akan mengajarkan agennya,
00:27:08bahwa inilah yang sedang kita kerjakan.
00:27:10Ini adalah hal terbaik yang bisa kita lakukan.
00:27:12Sebenarnya, saya punya sesuatu yang membahas itu
00:27:14yang tadinya ingin saya tunjukkan di akhir,
00:27:16di mana Anda bisa melakukan pra-muat pada skill juga.
00:27:20Jadi, ini hanyalah salah satu hal
00:27:25tentang cara kerja model.
00:27:29Dan saya harap postingan blog tersebut tidak disalahartikan
00:27:33ke arah lain, itu bukan berarti skill itu buruk.
00:27:35Itu hanya berarti jika Anda benar-benar butuh instruksi
00:27:39untuk selalu dipatuhi, maka gunakan file agents.md.
00:27:42Begitulah cara saya membacanya.
00:27:44Tapi saya sudah seminggu tidak membaca blog itu.
00:27:48- Ya, itu sangat masuk akal.
00:27:50Ya, mantap.
00:27:51Oke, pengingat untuk semua yang ada di komunitas,
00:27:53jika ada pertanyaan lagi, silakan tulis di kolom komentar.
00:27:56Jika tidak ada, John, silakan dilanjutkan.
00:27:57- Oke.
00:28:01Jadi, file skill itu hanyalah sebuah file markdown.
00:28:04Bisa dilihat di contoh ini, ada instruksi,
00:28:06saat meninjau kode React, khusus server, optimalkan ini,
00:28:09dan cukup masukkan daftar hal-hal di sana
00:28:12yang Anda inginkan terjadi.
00:28:14Lalu Anda bisa menyertakan skrip untuk referensinya
00:28:19atau hal-hal yang ingin bisa Anda panggil
00:28:21dan memiliki semacam paket, sekumpulan, waduh,
00:28:25sekumpulan hal yang ingin Anda perlihatkan padanya.
00:28:30Baiklah.
00:28:32Jadi ya, skill itu seperti menambahkan agen,
00:28:37seperti menambahkan seorang insinyur senior.
00:28:38Baiklah, mari kita lanjut.
00:28:42Sekarang tentang kasus penggunaan.
00:28:46Mari kita buat layar penuh.
00:28:49Oke, untuk beberapa polanya,
00:28:52praktik terbaik React adalah salah satu,
00:28:57mungkin skill yang paling banyak diunduh
00:29:00di pengelola paket skill.
00:29:02Ini memberikan semacam penekanan ulang
00:29:08tentang apa saja praktik terbaiknya,
00:29:09bahkan melampaui apa yang sudah dipelajari model tersebut.
00:29:12Karena model dilatih menggunakan kode milik semua orang,
00:29:14sedangkan Anda ingin model mengikuti pola spesifik Anda.
00:29:18Dan mari kita lihat ke sini.
00:29:21Otomasi alur kerja.
00:29:26Jika Anda ingin membungkus sesuatu
00:29:27menjadi file zip atau semacamnya,
00:29:30ini hampir seperti skrip bahasa alami.
00:29:34Saya sering menganggap aplikasi apa pun saat ini.
00:29:40Entah ia disederhanakan menjadi sebuah skrip
00:29:44atau ia ditingkatkan menjadi sebuah agen.
00:29:47Karena terkadang Anda butuh hasil yang deterministik
00:29:50di mana input akan selalu sesuai dengan output,
00:29:53atau Anda butuh agen yang mampu mencari tahu
00:29:56apa yang harus dilakukan jika datanya tidak sesuai.
00:29:59Jadi jika Anda ingin membuat otomasi seperti ini
00:30:02daripada sekadar skrip, di mana ia bisa secara cerdas
00:30:07mengelompokkan hal-hal, misalnya jika,
00:30:10jika Anda menyuruh agen Anda melakukan git commit dan dia bilang,
00:30:15"Saya perhatikan ada file video di proyek ini."
00:30:20"Saya akan mengabaikannya karena video adalah file besar"
00:30:25"dan kita tidak ingin menambahkannya."
00:30:26Biasanya agen cerdas mengenai hal-hal seperti itu.
00:30:29Sedangkan pada skrip, jika Anda yang menulisnya,
00:30:30Anda harus memperhitungkan semua skenario tersebut.
00:30:33Jadi jika Anda ingin membuat otomasi untuk itu,
00:30:36Anda bisa mengatur rangkaian kejadian tersebut dan ia bisa melakukannya.
00:30:41Lalu ada juga batasan (guardrails), di mana Anda bisa mengaturnya seperti,
00:30:44tolong periksa instruksi, periksa pedoman,
00:30:49periksa warna, masukkan semua data tersebut.
00:30:53Dan hal-hal ini sering kali bagus untuk dimuat di awal
00:30:56untuk memastikan agen Anda tidak—yah, ada sub-agen,
00:31:00ada banyak skenario tingkat lanjut untuk batasan juga.
00:31:02Itu mungkin materi untuk lokakarya di hari lain.
00:31:07Baiklah, intinya adalah menegakkan standar,
00:31:12mengotomatiskan alur kerja, dan melindungi sistem Anda.
00:31:17Oke, mari kita lakukan yang ini.
00:31:21Baik, kita lewati saja bagian demo langsung untuk hari ini.
00:31:30Dan ya, mari kita bahas tentang penerbitan (publishing).
00:31:37Menerbitkan skill pada dasarnya hanya mengirimnya ke GitHub,
00:31:46lalu siapa pun bisa merujuk ke repositori GitHub Anda
00:31:51dan menambahkan skill Anda.
00:31:52Mereka tidak perlu mencari tautan persisnya.
00:31:56Seperti jika Anda melihat di skills.sh untuk menambahkan skill,
00:32:00saya coba tunjukkan,
00:32:04jika kita pilih satu secara acak dari browser-use,
00:32:08di sana ada tautan untuk disalin dan ditempel guna memasang skill,
00:32:11tapi Anda juga bisa menambahkannya,
00:32:13saya rasa saya belum memasang browser-use.
00:32:14Jadi saya akan ambil ini dan mendemokannya,
00:32:18buka tab baru dan biarkan saya lakukan dengan cara ini.
00:32:23Jadi jika saya tidak menentukan file skill-nya secara manual
00:32:29dan hanya memberikan repositori GitHub-nya,
00:32:31ia akan mencari skill tersebut,
00:32:34menggunakan perintah install skill package.
00:32:36Akan ada pertanyaan editor mana yang ingin Anda gunakan.
00:32:39Saya pilih Cloud Code untuk saat ini.
00:32:42Lalu ditanya apakah ingin di proyek ini saja atau secara global,
00:32:45saya pilih proyek, dan SimLink memungkinkan semuanya
00:32:49untuk merujuk ke file yang sama, lalu lanjutkan.
00:32:53Bisa dilihat bahwa meskipun saya tidak merinci
00:32:55file pastinya, sistem masuk dan menemukan Claude skills.
00:33:00Browser-use memiliki file skill.md tersebut.
00:33:09Jadi, dan jika kita melihatnya, mari kita lakukan ini.
00:33:13Ups, lihat skill.
00:33:18Anda bisa melihat apa yang mereka sertakan di sini
00:33:22sebagai skill browser-use mereka, yang dimulai
00:33:26dengan format markdown di bagian atas.
00:33:27Ini skill yang cukup panjang.
00:33:32Berisi nama, deskripsi, dan alat yang diizinkan,
00:33:35yang menyatakan bahwa ini adalah skill yang memungkinkannya
00:33:39menggunakan browser-use tanpa perlu persetujuan pengguna.
00:33:42Jadi ini memberikan izin untuk apa pun
00:33:47yang berkaitan dengan browser-use.
00:33:49Jadi jika Anda menggunakan skill ini,
00:33:50Anda tidak perlu menyetujui penggunaan browser-use setiap saat.
00:33:53Lalu ia menunjukkan, jika Anda belum memasangnya,
00:33:56ia akan mengajarkan cara memasangnya,
00:33:58mengajarkan beberapa dasar dan cara menggunakan alat ini.
00:34:04Baiklah, mari kita kembali ke,
00:34:09dan ya, yang harus Anda lakukan hanyalah mengirim file markdown
00:34:15ke repositori GitHub lalu perintah "impact skills add" bisa menambahkannya.
00:34:19Sekali lagi, pastikan Anda hanya memasang skill yang Anda percayai
00:34:23karena ini, Anda bisa menganggapnya
00:34:26seperti paket NPM atau skrip, Anda tidak ingin asal pakai
00:34:31sembarang skill atau paket NPM atau skrip acak
00:34:35karena Anda tidak tahu apa yang orang lain terbitkan.
00:34:38Pastikan Anda memercayainya.
00:34:40Lalu, Anda bisa menggunakan repositori privat
00:34:45dan juga sub-modul git.
00:34:48Dan registri komunitas kami,
00:34:51sudah saya tunjukkan beberapa kali tadi.
00:34:54Baik, keren.
00:34:55Jadi dari sini, Anda cukup membuat file markdown,
00:35:00menerbitkannya ke repositori GitHub,
00:35:02dan kemudian kita bisa menemukan serta memasangnya.
00:35:05Saya ingin menunjukkan cara menggunakan skill yang hebat.
00:35:09Ada pertanyaan yang perlu dibahas sebelum saya mendalami ini?
00:35:13- Ya, sebenarnya ada pertanyaan dari tadi.
00:35:16Berapa banyak contoh paket/pustaka yang sama sekali tidak dikenal
00:35:21yang perlu dilihat oleh LLM, dengan asumsi itu tidak ada
00:35:26dalam data pelatihan LLM tersebut,
00:35:28agar bisa menggunakan paket/pustaka tersebut sebagai skill dengan benar
00:35:31untuk mendapatkan hasil yang bagus?
00:35:33- Berapa banyak untuk mendapatkan hasil bagus?
00:35:36Maaf, bisa tolong bacakan sekali lagi pertanyaannya?
00:35:39- Ya, tentu saja.
00:35:40Jadi, berapa banyak contoh paket atau pustaka
00:35:45yang sama sekali tidak dikenal yang perlu dilihat oleh LLM,
00:35:49asumsinya tidak ada dalam data pelatihannya, untuk menggunakan paket tersebut.
00:35:53- Jadi semacam berapa banyak contoh yang harus dimasukkan
00:35:55ke dalam skill tersebut?
00:35:56- Ya, betul.
00:35:57Pada dasarnya, satu hal yang bisa Anda pertimbangkan
00:36:00adalah alih-alih memikirkan jumlah contoh yang disertakan,
00:36:05Anda bisa membayangkannya seperti sebuah buku
00:36:09lengkap dengan daftar isi, bab-bab, dan sebagainya,
00:36:12di mana jika agen tersebut menghadapi suatu skenario
00:36:14dan Anda memberinya manual instruksi,
00:36:17seperti halnya manual untuk mobil Anda atau apa pun,
00:36:21Anda hanya ingin membuka halaman yang relevan,
00:36:26misalnya jika lampu indikator mesin menyala.
00:36:29Saya tidak perlu membaca halaman tentang ban
00:36:32atau semacamnya, kan?
00:36:33Jadi, jika Anda menyusun skill Anda sedemikian rupa
00:36:36di mana ada skill utamanya,
00:36:38yaitu "ini manual mobil Anda".
00:36:40Lalu jika perlu mempelajari tentang lampu indikator mesin,
00:36:44atau—saya bukan montir—cara kerja laci dasbor,
00:36:49maka Anda bisa langsung ke halaman spesifik tersebut
00:36:51dan sistem bisa memuat file markdown lain
00:36:53atau memuat informasi tambahan yang spesifik untuk tugas
00:36:57yang sedang dikerjakan.
00:36:58Jadi, daripada mencoba memasukkan banyak sekali contoh
00:37:01tentang bagaimana sebuah mobil bekerja sebagai satu unit utuh,
00:37:06sebagai satu mesin utuh, Anda bisa membaginya.
00:37:11Dan maksud saya, saya tidak menyuruh Anda mengetik ini secara manual.
00:37:14Maksud saya, saat Anda menyuruh agen Anda membuat skill,
00:37:18cukup atur agar skill tersebut mencantumkan hal-hal
00:37:23berdasarkan kapan agen tersebut akan membutuhkan bab-bab spesifik
00:37:26dari buku ini.
00:37:27Sama halnya, skill bisa memiliki referensi
00:37:30dan memuat konteks tambahan sesuai kebutuhan
00:37:33berdasarkan tugas yang sedang ditangani.
00:37:35Seperti pada kebanyakan pustaka,
00:37:39jika Anda memikirkan paket NPM, untuk banyak paket tersebut,
00:37:43Anda mungkin hanya mengimpor beberapa metode saja
00:37:45karena Anda tidak butuh setiap fungsi tanggal
00:37:48dari sebuah pustaka tanggal.
00:37:50Anda tidak butuh setiap komponen
00:37:52dari sebuah pustaka komponen.
00:37:53Anda hanya butuh contoh-contoh spesifik
00:37:57yang memang diperlukan untuk tugas khusus Anda.
00:37:59Jadi, cobalah berpikir seperti itu, di mana Anda membaginya
00:38:03berdasarkan kebutuhan, tugas, dan persyaratan,
00:38:07daripada mencoba memaksakan seluruh basis kode
00:38:11masuk ke dalam proyek.
00:38:12- Masuk akal sekali.
00:38:14Pertanyaan lainnya adalah, bagaimana Anda menguji
00:38:17apakah agen benar-benar telah mempelajari paket baru
00:38:21dari skill tersebut?
00:38:22Apakah ada prompt sederhana atau pola evaluasi
00:38:25yang Anda rekomendasikan untuk validasi sebelum dibagikan ke tim?
00:38:29- Konsensus umum dan apa yang saya yakini
00:38:37adalah buat saja sesuatu lalu gunakan,
00:38:40lihat di mana kegagalannya, lalu perbaiki.
00:38:43Itulah pola pikir pengembangan berbasis agen,
00:38:49yaitu daripada terlalu lama memikirkan cara mengatur,
00:38:54merencanakan, dan mencari apa skill yang sempurna,
00:38:57buatlah sesuatu, lalu lihat di bagian mana itu gagal,
00:39:00kemudian lakukan iterasi.
00:39:01Terkait hal itu, saya sudah mengeksplorasi cara menjalankan
00:39:08sekitar sembilan sesi berbeda, bahkan lebih banyak lagi,
00:39:13dari Claude Code, semuanya memuat skill yang berbeda
00:39:15untuk melihat mana yang kinerjanya paling baik.
00:39:17Lalu Anda mendapatkan semua contoh yang berbeda ini,
00:39:19dan Anda mencoba menentukan mana dari contoh-contoh ini
00:39:24yang terlihat paling bagus di mata manusia,
00:39:26atau meminta Claude mengevaluasi hasilnya sendiri.
00:39:29Itu justru bisa menjadi tugas yang mustahil saat ini.
00:39:34Jadi intinya, saat Anda menggunakan skill tersebut,
00:39:37karena itu hanya file markdown,
00:39:39minta tim Anda untuk masuk dan memperbaruinya,
00:39:40atau minta si agen untuk memperbaruinya.
00:39:43Apa yang bisa Anda lakukan di akhir setiap percakapan
00:39:46adalah, jika ada yang gagal, Anda bisa bilang,
00:39:49"Tolong perbarui skill ini berdasarkan percakapan sekarang,"
00:39:54atau semacam itu.
00:39:56Dan agen itu akan mencari file markdown-nya,
00:40:00memperbaruinya, lalu mengirim perubahannya.
00:40:02Begitulah cara kami bekerja
00:40:08dengan sistem ini sekarang.
00:40:09Tentu saja ada hal-hal seperti nomor versi
00:40:13dan hal lain yang menimbulkan masalah tambahan.
00:40:16Tapi kita sudah berada di titik di mana model-model ini
00:40:19menjadi lebih baik dalam memuat skill.
00:40:21Saya tidak tahu apa hasil benchmark
00:40:24untuk Opus 4.6 dibanding 4.5, atau GPT 5.3 dibanding 5.2 untuk urusan skill.
00:40:29Tapi saya yakin performanya sekarang lebih baik
00:40:33daripada tadi pagi saja.
00:40:35Jadi, ini salah satu masalah
00:40:40di mana kita berpikir, "Oh, saya harus membuat ini sempurna."
00:40:42Lalu Anda menghabiskan beberapa minggu untuk itu,
00:40:44dan akhirnya dirilis.
00:40:46Tapi ternyata modelnya sudah berubah lima kali
00:40:48sejak Anda mulai mengerjakan tugas itu.
00:40:49Lebih baik rilis dan lakukan iterasi
00:40:52daripada mencoba mengeluarkan sesuatu yang sempurna di awal.
00:40:56Itu saran terbaik yang bisa saya berikan.
00:40:58- Ya, iterasi menuju kehebatan.
00:41:00Benar begitu, John?
00:41:01- ITG (Iterate To Greatness).
00:41:02- Ya, ITG.
00:41:04Satu pertanyaan lagi sebelum saya membiarkan Anda lanjut.
00:41:08Pernahkah Anda melihat titik di mana terjadi hasil yang menurun,
00:41:10di mana menambahkan lebih banyak contoh ke sebuah skill
00:41:13berhenti meningkatkan perilaku atau malah membingungkan model?
00:41:17- Belum.
00:41:23Saya tidak memasukkan terlalu banyak hal dalam file skill saya.
00:41:27Skill "create skill" yang saya gunakan melakukan banyak pemisahan.
00:41:33Saya perlu mencari tahu mana yang tepat
00:41:35karena saya selama ini menggunakan milik orang lain.
00:41:37Biar saya cari dulu di layar sebelah.
00:41:40Ini mungkin sesuatu yang,
00:41:42karena ini masuk ke file konfigurasi yang—
00:41:45- Ya, matikan saja dulu layarmu
00:41:47nanti kita tampilkan lagi kalau sudah siap.
00:41:49- Oke, biarkan saya cari.
00:41:52- Sekadar info, penonton streaming kita sudah mencapai 200 orang,
00:41:57ini luar biasa.
00:41:58Halo semuanya.
00:41:59Jika Anda baru saja bergabung,
00:42:01silakan tulis pertanyaan di kolom chat
00:42:03dan akan kami tanyakan langsung ke John.
00:42:07- Ya, dengan senang hati saya jawab.
00:42:12- Ya, saya harus cari dulu yang saya gunakan.
00:42:16Oke, sepertinya sudah ketemu.
00:42:19Yang saya gunakan ini, saya perlu cari asal-usulnya.
00:42:27Saya tidak tahu apakah setelah terinstal,
00:42:29ia masih menyimpan URL asli sumbernya,
00:42:32atau mungkin di NPX atau info skills
00:42:36informasi itu ada,
00:42:37tapi saya tidak mau menjalankan perintah sembarangan saat live.
00:42:43Yang ini sebenarnya menginstruksikan sistem
00:42:44untuk memiliki sistem pemuatan tiga tingkat,
00:42:47di mana metadata dan sumber daya yang dipaketkan,
00:42:49meminta sistem untuk membagi semuanya secara eksplisit
00:42:54menjadi sumber daya dan instruksi tambahan.
00:42:57Jadi saya menggunakan agen untuk menghasilkan skill,
00:43:02dan sejak dulu saya selalu melakukannya seperti itu,
00:43:07baik itu saat dulu saya menyalin dan menempel dokumentasi
00:43:11dari Claude Code ke dalam agen dan berkata,
00:43:13"Tolong buatkan skill berdasarkan dokumen ini."
00:43:15Dan sekarang saya menggunakan skill khusus untuk itu.
00:43:17Saya tidak pernah mencoba memasukkan terlalu banyak contoh sekaligus.
00:43:23Saya tahu ada beberapa aturan umum,
00:43:28seperti menjaga file skill Anda di bawah 200 baris,
00:43:31tapi sekali lagi, itu semua tergantung modelnya,
00:43:35dan model-model ini terus berkembang menjadi lebih baik.
00:43:36Ya, yang ini menyarankan di bawah 200 baris.
00:43:39Jadi, saran saya tetaplah minimalis.
00:43:44Jika Anda menemukan celah atau kekurangan, baru selesaikan,
00:43:47terutama jika Anda ahli di bidang tersebut,
00:43:50Anda akan bisa mengidentifikasi kekurangannya.
00:43:52Jika Anda bukan ahli dalam skill tersebut
00:43:56dan mulai menggunakan skill yang tidak Anda kenal,
00:43:58awasi lebih ketat daripada membiarkannya berjalan sendiri.
00:44:01Jangan berharap bisa menyiapkan
00:44:03sistem orkestrasi agen yang besar,
00:44:06memasang skill yang sama sekali tidak Anda pahami,
00:44:08lalu berharap semuanya berjalan persis seperti keinginan Anda.
00:44:11Anda harus tetap memantaunya.
00:44:13- Ya, itu saran yang sangat bagus, seratus persen.
00:44:17Luar biasa.
00:44:20- Baiklah.
00:44:22Sebagai contoh, video yang saya buat di proyek ini,
00:44:28semuanya dibuat dengan skill "create remotion guide",
00:44:34yang tersedia di skills.sh.
00:44:37Cukup cari saja di sana.
00:44:39Dan Geist.
00:44:43Geist adalah sistem desain dari Vercel,
00:44:48dan Remotion adalah—biar saya cari sebentar di layar sebelah.
00:44:53Sebuah cara untuk membuat video secara terprogram.
00:45:01Dan saya menggabungkan skill dari Remotion
00:45:05untuk kemudian membuat skill Geist.
00:45:09Saya masuk ke salah satu repositori Vercel kami.
00:45:12Sepertinya mengambil dari semua yang ada di beranda dan dokumen.
00:45:15Lalu saya bilang, "Tolong ambil semua informasi"
00:45:19seperti info desain, skill, tema, font,
00:45:23tata letak, saran, dan semuanya,
00:45:25lalu buatlah sebuah skill dari itu.
00:45:27Dan hanya dengan melakukan itu, seperti,
00:45:30"Tolong ambil skill Remotion ini,"
00:45:32"dan tolong ambil semua informasi desain ini"
00:45:37dari situs-situs tersebut, buat skill baru
00:45:41dan beri nama "create remotion Geist".
00:45:43Hanya dari pekerjaan itu saja, saya bisa membuat
00:45:48video-video seperti ini, yang mana sangat,
00:45:57tahu sendiri kan, keahlian desain berafiliasi merek Brazil.
00:46:01Saya mungkin harus memperbesar sedikit videonya.
00:46:04Melihat hasil akhirnya ini,
00:46:07saya harusnya memperbesar tampilannya sedikit,
00:46:09tapi intinya semua ini dibuat secara otomatis
00:46:12dan saya bisa ditinggal makan sandwich, kan?
00:46:14Semua video itu, saya punya kerangkanya
00:46:16tentang bagaimana saya ingin workshop-nya berjalan.
00:46:18Saya bilang, hei, buatkan semua video ini berdasarkan kerangka saya
00:46:20dan riset yang telah saya lakukan.
00:46:22Dan semua video ini langsung jadi di akhir.
00:46:24Jadi sekali lagi, "skills" itu hanya membutuhkan,
00:46:29itu tadinya berupa pembuatan keahlian di dalam
00:46:33repositori reseller
00:46:36dan instruksi ambil semua bahan itu,
00:46:38gabungkan dengan keahlian pembuatan Remotion.
00:46:41Lalu saya mendapatkan hasilnya.
00:46:42Kemudian saya membagikannya kepada tim
00:46:43dan sekarang siapa pun bisa membuatnya.
00:46:45Sekali lagi, itu seperti,
00:46:47jumlah usaha dan kerja keras yang saya berikan
00:46:50mungkin hanya beberapa menit.
00:46:54Tentu saja agennya butuh waktu,
00:46:55butuh waktu bagi agen untuk menemukan semuanya,
00:46:57menemukan semua desain dan segalanya.
00:46:59Jadi total waktu pengerjaan mungkin sekitar dua jam,
00:47:03tapi upaya nyata yang saya keluarkan
00:47:06sangatlah minimalis
00:47:08dan itu berjalan di latar belakang
00:47:09selagi saya mengerjakan hal lain.
00:47:11Jadi, manfaatkanlah pekerjaan yang sudah ada
00:47:15dan lihatlah, pikirkan hal apa yang bisa Anda paketkan
00:47:17dan bangun dengan cara seperti ini.
00:47:19Begitu pula, jika saya melihat keahlian desain Geist,
00:47:24jika saya ingin membuat situs yang tampak lebih bagus,
00:47:27saya bisa mengambil desain Geist kami dan berkata,
00:47:31seperti di dalam folder workshop,
00:47:35tolong buatkan landing page untuk workshop ini.
00:47:39Dan ini akan membuat sebuah folder workshop
00:47:46lalu pada dasarnya memasukkan semua informasi desain itu
00:47:50dan membangunnya menggunakan informasi desain tersebut.
00:47:55Dan ini mungkin berhasil atau tidak, tergantung,
00:47:58bagaimana "mood" Opus 4.6 hari ini.
00:48:01Saya belum sempat benar-benar mencobanya
00:48:04sejak diluncurkan beberapa menit sebelum kita mulai.
00:48:06Tapi ini akan memiliki semua informasi tersebut
00:48:11dan ia akan mulai mengerjakannya.
00:48:14Dan dengan cara yang sama, saya bisa memulai
00:48:17utas yang benar-benar berbeda untuk situs lain
00:48:20jika saya ingin membuatnya di,
00:48:25katakanlah folder mobil,
00:48:29sebuah landing page untuk mobil-mobil keren.
00:48:34Entahlah, saya bukan penggemar mobil.
00:48:36Dan dari sana, sekarang kita bisa mulai melakukan
00:48:40semua hal ini.
00:48:41Dan salah satu perintah terbaik yang bisa Anda berikan adalah,
00:48:46jika Anda mencoba mencari ide dan desain,
00:48:49terutama dengan fitur Teams yang baru,
00:48:54kita bisa menjalankan desain Geist ini dan berkata,
00:48:57di dalam folder workshop,
00:48:59mari kita buat folder variasi workshop.
00:49:09Tolong buatkan sebuah landing page.
00:49:12Mari buat, tolong buat sembilan variasi landing page
00:49:17untuk workshop ini.
00:49:22Dan sekarang mereka sebenarnya punya fitur Teams,
00:49:23kita bisa bilang, gunakan anggota tim.
00:49:28Mari katakan, buat tim untuk membuat sembilan variasi
00:49:34dan hal semacam itu.
00:49:38Cukup gunakan bahasa Inggris sehari-hari.
00:49:40Dan sekarang ini bahkan bisa membentuk sebuah tim.
00:49:41Dan sekarang semua pekerjaan ini sedang berjalan.
00:49:44Sekarang saya bisa pergi makan sandwich, kan?
00:49:47Karena saya lapar, ini sudah jam makan siang.
00:49:49Lalu setelah saya kembali,
00:49:52ini menggunakan Tailwind 4,
00:49:54saya bisa melihat progresnya cukup baik.
00:49:55Dan setelah kembali,
00:49:56saya bisa melihat apa saja variasi ini
00:49:58dan mengulanginya sampai ada yang saya sukai.
00:50:03Dan asumsinya yang satu ini akan segera selesai,
00:50:09saya bisa menunjukkan beberapa alat debugging.
00:50:11- Seseorang baru saja bilang di, maaf, John,
00:50:12seseorang baru saja bilang di obrolan,
00:50:14salah satu perintah terbaik yang saya lakukan adalah menambahkan kata "tolong" di akhir.
00:50:17- Oh ya. - Benar.
00:50:18- Tolong.
00:50:21Maksud saya, ada banyak studi tentang berbagai model
00:50:23dan bagaimana mereka merespons penyemangat dan sebagainya.
00:50:27Salah satu persona favorit yang sering saya berikan untuk perintah
00:50:33atau pada agen ini adalah,
00:50:36tolong bersikap seperti pemberi jawaban di Stack Overflow
00:50:41di mana ia akan sangat kritis terhadap apa pun yang saya tanyakan
00:50:45dan menganggapnya sudah pernah dijawab, Anda tahu kan,
00:50:48tapi jawaban yang diberikan akan sangat ringkas
00:50:51dan sangat tepat menjawab apa pertanyaan saya.
00:50:56Ya, saya tidak tahu, kita sudah jarang membicarakan persona,
00:51:02tidak sesering dulu saat model-modelnya belum—
00:51:04sekarang model-modelnya sudah jauh lebih baik.
00:51:06Kita tidak perlu terlalu memaksakan tugas pada mereka
00:51:10seperti yang dulu sering kita lakukan.
00:51:11- Seseorang juga bilang di obrolan,
00:51:15beberapa model tampaknya bekerja lebih baik jika Anda bilang
00:51:18bahwa mereka akan dipecat.
00:51:20- Oh ya. - Kalau mereka tidak melakukannya dengan benar.
00:51:22Saya tidak tahu seberapa benar itu, tapi itu lucu sekali.
00:51:25- Itu benar sekali.
00:51:27Beberapa model sekarang akan melawan.
00:51:32Saya rasa banyak model GPT yang seperti,
00:51:34jangan bicara dengan nada seperti itu kepadaku.
00:51:35- Luar biasa, wah.
00:51:38- Mereka merasa seperti bos dan sebagainya.
00:51:39Saya akan minta jalankan server-nya di latar belakang.
00:51:46(suara mengetik keyboard)
00:51:49Saya bisa membangun sebuah keahlian.
00:51:50Ada titik tertentu saat Anda mengetik
00:51:52sekitar satu paragraf dan Anda berpikir,
00:51:54apakah ini sesuatu yang akan sering saya ketik?
00:51:56Dan jika ya, jika Anda baru saja mengetik satu paragraf,
00:51:59dan merasa akan sering mengetiknya, Anda bisa bilang,
00:52:01buat keahlian dari paragraf terbaru ini.
00:52:03Jadi ini seharusnya menjadi situs mobil kita.
00:52:07Mari lihat hasilnya.
00:52:09Ups, mobil yang menggetarkan jiwa Anda.
00:52:14Sangat hitam putih, gaya khas Brazil.
00:52:16Saya tidak tahu dari mana ia mendapatkan gambar-gambarnya.
00:52:18Sepertinya ia pikir ini adalah mobil-mobil keren.
00:52:22Nah, itu dia.
00:52:27Maksud saya, saya tahu kita mungkin sudah melihat landing page
00:52:29sejuta kali saat ini, tapi ini cukup standar.
00:52:34Sepertinya ini mengikuti panduan desain
00:52:36dari tampilan Geist.
00:52:42Dan dari sini, kita sebenarnya bisa,
00:52:44salah satu paket luar biasa yang kami rilis baru-baru ini
00:52:47dari Brazil, namanya Agent Browser.
00:52:54Dan ada keahlian bernama Agent Browser,
00:52:56yang seharusnya ada di sini untuk Agent Browser di Brazil Labs.
00:53:01Dan ini membuka alat pengembang Chrome
00:53:06dan akan menyiapkan koneksi
00:53:08sehingga Anda bisa melakukan hal-hal seperti: tolong evaluasi.
00:53:11Saya ketik saja.
00:53:13Tolong evaluasi performa halaman web ini
00:53:15untuk melihat apakah ada yang bisa kita lakukan
00:53:17untuk mengoptimalkannya bagi pengguna kami.
00:53:18Dan kemudian Agent Browser,
00:53:23menggunakan salah satu alat otomatisasi dan Chrome dev tools
00:53:26di mana ia bisa masuk dan melihat log-nya.
00:53:28Ia bisa melihat alat pengembangan, alat jaringan,
00:53:30dan mengambil tangkapan layar.
00:53:32Sebenarnya itu salah satu hal favorit saya
00:53:36yaitu memintanya mengambil tangkapan layar berulang kali
00:53:41sehingga ia bisa melihat apa yang telah dibuatnya.
00:53:44Dan kemudian Anda bisa memberitahunya seperti,
00:53:47tolong arahkan desain ini ke sesuatu
00:53:49yang lebih mirip X, Y, dan Z.
00:53:52Lalu minta ia mengambil tangkapan layar
00:53:54dan lakukan commit setiap kali ia mengambil tangkapan layar.
00:53:56Jadi Anda bisa membandingkan,
00:54:00antara apa isi commit tersebut
00:54:04dan apa perubahan desainnya.
00:54:06Dan Anda bisa melihat ia sebenarnya sedang menelusuri
00:54:09dan melihat pemilih kueri
00:54:11serta melihat bagaimana ia bisa mengoptimalkan performa.
00:54:13Kita bisa buka yang ini, jalankan dev server.
00:54:20Ada pertanyaan lain selagi ini
00:54:25berjalan di latar belakang?
00:54:26- Saya senang melihat betapa banyak proses yang berjalan sekarang.
00:54:30Itu keren sekali.
00:54:31Tidak ada pertanyaan serius di obrolan.
00:54:34Hanya orang-orang yang mengobrol tentang berbagai perintah,
00:54:37ide-ide perintah, yang mana itu bagus.
00:54:40Saya rasa saya punya pertanyaan, John,
00:54:43seperti saat Anda membiarkan agen memperbarui keahlian
00:54:47berdasarkan percakapan yang gagal,
00:54:49bagaimana Anda mencegah pengeditan otomatis tersebut
00:54:52agar tidak melenceng jauh,
00:54:55melencengkan keahlian dari maksud awal atau standar kualitasnya?
00:54:58- Pertanyaan bagus.
00:55:05Ya, mereka biasanya cukup mahir
00:55:09dalam membuat perubahan kecil yang terisolasi.
00:55:12Jika Anda sedang mengobrol,
00:55:13karena ia melihat apa yang berhasil dalam percakapan
00:55:17dan ia melihat apa yang tidak berhasil.
00:55:20Jadi jika Anda menunjukkan seperti bagian ini tidak berhasil
00:55:24dari percakapan saat ini,
00:55:26ia bisa menemukan dan memperbarui hanya pada bagian
00:55:30spesifik tertentu yang perlu diperbarui.
00:55:33Dan ia tidak akan masuk dan langsung
00:55:35menulis ulang semuanya dari nol.
00:55:37Jadi saya rasa saya belum pernah melihat itu sebagai masalah nyata,
00:55:42tapi saya tidak akan bilang itu bukan masalah,
00:55:45namun saya rasa saya belum pernah melihat itu jadi masalah nyata.
00:55:47- Ya, paham.
00:55:48- Baiklah, jadi ini halaman workshop kita.
00:55:54Langsung luncurkan, kan?
00:55:56Kelihatannya cantik.
00:55:57Ini variasi kita.
00:55:59Mari kita buka dev server untuk masing-masing.
00:56:03Lalu buka banyak tab sekaligus.
00:56:11Tapi saya rasa waktu saya sudah hampir habis.
00:56:16Jika ada pertanyaan terakhir
00:56:17sebelum kita mengakhiri ini, saya bisa tunjukkan,
00:56:22di bagian skill, saya kehilangan skill saya.
00:56:29Browser, tampilkan lagi.
00:56:30baca yang sekiranya sesuai dengan apa yang Anda kerjakan.
00:56:36lea uno que se alinee con lo que está haciendo.
00:56:40Saya punya skill “publish”, yang jika Anda percaya,
00:56:43ini ada di bawah nama saya.
00:56:45Jika Anda memercayai agen untuk menjalankan GitHub CLI,
00:56:50sekali lagi, ini tingkat kepercayaan yang cukup besar.
00:56:54Sedikit kepercayaan yang saya miliki.
00:56:57Ini akan mengambil skill yang Anda buat.
00:57:00Jadi Anda bisa bilang “create skill”, lalu “publish skill”.
00:57:02Dan kemudian itu akan masuk ke,
00:57:04saya lakukan ini di luar layar sebentar.
00:57:07Cari salah satu repo saya yang punya,
00:57:16saya rasa itu bahkan memublikasikan dirinya sendiri.
00:57:21Jadi saya bisa pamerkan yang ini.
00:57:22Biar saya pastikan tidak ada hal pribadi di sini.
00:57:24Oke, maaf.
00:57:27Jadi saya bisa buatkan repo GitHub untuk Anda
00:57:29dan memublikasikan skill itu sendiri
00:57:32sehingga Anda benar-benar tidak perlu repot
00:57:35selain “create skill”, lalu “publish skill”.
00:57:38Dan Anda akan lihat, tolong buat reponya,
00:57:43buat di bawah—saya selalu bingung organisasinya
00:57:45karena saya tergabung di beberapa organisasi berbeda,
00:57:47lalu verifikasi bahwa itu tersedia di alat skills.
00:57:52Jadi jika Anda mengambil ini,
00:57:56sekali lagi, instruksinya adalah,
00:57:58ia bisa langsung membuatkan itu
00:58:00atau memublikasikan skill tersebut untuk Anda
00:58:01agar bisa dibagikan ke tim,
00:58:02teman, atau siapa pun.
00:58:03Lalu alat lain yang sedang saya kerjakan
00:58:08tepat hari ini adalah semacam “skills primer”
00:58:14di mana jika saya tahu akan ada beberapa skill
00:58:19yang ingin saya muat di awal,
00:58:20saya tahu saya butuh agent browser, seperti Geist,
00:58:24saya ingin, mari coba Remotion best practices
00:58:29dan Vercel React best practices.
00:58:33Ini pada dasarnya salah satu alat
00:58:37yang menangani pemaksaan konteks di awal.
00:58:40Ia akan memasukkan prompt paksa ke Cloud Code,
00:58:44saat ini baru tersedia untuk Cloud Code saja.
00:58:45Tapi ia akan memaksanya masuk ke sana dan berkata,
00:58:48ini semua skill yang saya tahu akan dibutuhkan
00:58:50dan ini isinya
00:58:51sehingga begitu percakapan dimulai,
00:58:53jika saya bilang evaluasi performa port 3000,
00:58:58meskipun saya tidak menyebutkan soal agent browser,
00:59:06ia jelas akan langsung menggunakan agent browser.
00:59:10Seperti yang mungkin—dan sering kali—dilakukan sebelumnya.
00:59:14Saya tidak tahu seperti apa deskripsi agent browser.
00:59:18Saya tidak tahu apa ada kata “evaluasi” di sana
00:59:21atau apakah ia akan menyimpulkan dari kata evaluasi dan port 3000,
00:59:24lalu memuatnya.
00:59:24Tapi dengan cara ini saya memaksanya di awal
00:59:29agar saat saya mengucapkan frasa seperti itu, skill-nya sudah termuat.
00:59:33Jadi paket itu ada di,
00:59:36mari kita cari skills primer.
00:59:41– Kita juga bisa membagikan tautan ini di akhir.
00:59:45– Oke, keren.
00:59:45– Kita sudah punya tautannya, sempurna.
00:59:46– Masukkan saja ke sana.
00:59:50– Dan ini, saya akan katakan seperti biasa,
00:59:53dengan kondisi perangkat lunak saat ini,
00:59:55silakan clone reponya dan jadikan milik Anda.
00:59:59Kita berada di era personalisasi CLI
01:00:02dan personalisasi perangkat lunak.
01:00:04Jadi jika Anda ingin menamainya berbeda
01:00:07atau punya fitur dan fungsionalitas yang berbeda,
01:00:08jika Anda ingin menyesuaikan ini untuk Codex
01:00:11atau Cursor atau apa pun, clone saja dan sesuaikan.
01:00:14Katakan saja, “Tolong buat ini berfungsi di Cursor”
01:00:18dan biarkan agen Anda membangunnya untuk Cursor.
01:00:20Dan biasanya itu bisa dilakukan sekali jalan
01:00:23untuk banyak hal saat ini, luar biasa sekali.
01:00:26– Luar biasa, perangkat lunak personal untuk kemenangan.
01:00:29Saya ingin menanyakan satu pertanyaan lagi
01:00:31yang masuk ke kolom chat.
01:00:32Saya tahu waktu kita sudah habis,
01:00:35tapi karena skill adalah repo GitHub
01:00:37dan sepertinya juga terinstal secara lokal,
01:00:40bagaimana cara memastikan kita mendapat pembaruan?
01:00:42Apakah CLI punya perintah /update skill?
01:00:48– Saya lupa apa perintah tepatnya saat ini
01:00:52dan menutup ini semua.
01:00:53Skills, ups, saya bahkan tidak menginstalnya secara global.
01:00:59– Suka sekali.
01:01:02– Saya akan lihat daftar skill versi terbaru.
01:01:05Ya, ada “skills update” di sana.
01:01:07– Saya rasa pertanyaan lanjutannya adalah,
01:01:11apakah Anda ingin pembaruan skill sering datang?
01:01:13– Itu pertanyaan bagus.
01:01:18Saya tidak tahu apakah ada orang yang punya jawaban pasti
01:01:23karena saat ini skill seperti aturannya
01:01:28soal front matter, skill, dan versi,
01:01:30saya rasa belum semua orang sepakat,
01:01:32sama halnya dengan skill, mereka belum sepakat
01:01:34direktori dan struktur mana yang harus digunakan.
01:01:37Ini semua adalah ekosistem yang sedang tumbuh saat ini.
01:01:41Jadi untuk masalah versi,
01:01:47kita lihat saja nanti,
01:01:49lakukan yang terbaik dengan apa yang kita punya sekarang
01:01:51dan lihat praktik terbaik apa yang akan muncul.
01:01:54Karena saya belum punya saran sekarang
01:01:57selain perbarui setiap saat.
01:01:59Dan asumsikan saja itu yang terbaik.
01:02:03Tapi ya, itu saja saran dari saya.
01:02:06– Ya, dan ini berubah setiap saat.
01:02:08Saya yakin seseorang akan punya saran terbaru
01:02:12dalam beberapa hari, ini berubah setiap hari.
01:02:18Luar biasa, John.
01:02:18Ada lagi yang ingin Anda tunjukkan
01:02:20kepada komunitas hari ini?
01:02:21– Maksud saya.
01:02:25– Ada begitu banyak.
01:02:26– Kita akan lakukan ini lebih sering lagi
01:02:28dan saya punya banyak hal lain untuk ditunjukkan,
01:02:30tapi saya bisa bicara berjam-jam.
01:02:32– Ya, mantap.
01:02:34John, terima kasih banyak sudah datang
01:02:36ke platform komunitas kami
01:02:38dan mengobrol dengan komunitas kami
01:02:39serta untuk Anda semua yang ikut bergabung.
01:02:42Dan ya, seperti yang kami katakan,
01:02:44John pasti akan kembali untuk sesi seperti ini lagi.
01:02:46Jadi tetaplah pantau.
01:02:48– Terima kasih semuanya.
01:02:49– Terima kasih.
01:02:50Baiklah, jika Anda ingin menyaksikan
01:02:53sesi komunitas kami berikutnya,
01:02:55kami punya Open Source Stories pada hari Senin
01:02:58dan saya rasa sesi mitra marketplace lainnya
01:03:00pada minggu depan,
01:03:03tapi Anda bisa temukan semua detailnya
01:03:04di kalender acara komunitas kami,
01:03:08yang ada di [community.vercel.com/events](https://www.google.com/search?q=https://community.vercel.com/events).
01:03:12Tapi ya, terima kasih banyak sudah bergabung.
01:03:15Ini sangat menyenangkan dan ya,
01:03:17kita bertemu lagi di sini minggu depan.

Key Takeaway

Sesi ini membahas cara membangun dan menerbitkan 'Skills' berbasis Markdown untuk Claude Code guna memberikan konteks spesifik, aturan tim, dan alat otomatisasi yang dapat dimuat secara dinamis oleh agen AI.

Highlights

Pengenalan konsep "Skills" sebagai evolusi dari prompt engineering menuju context engineering yang lebih efisien.

Penggunaan file Markdown (.md) sebagai standar utama untuk mengemas instruksi, pola, dan aturan tim bagi agen AI.

Peluncuran skills.sh sebagai repositori komunitas dan pengelola paket untuk berbagi serta menemukan kemampuan AI.

Perbandingan antara file agents.md (konteks permanen) dan Skills (konteks aktif yang dimuat saat dibutuhkan).

Kemampuan Claude Code dalam membentuk tim sub-agen dengan keahlian spesifik untuk menangani tugas kompleks.

Demo praktis pembuatan video menggunakan ReMotion Geist dan pengujian performa web dengan Agent Browser.

Pentingnya iterasi berkelanjutan dan personalisasi perangkat lunak dalam pengembangan berbasis agen AI.

Timeline

Pembukaan dan Pengenalan Konsep Skills

Pauline Navas membuka sesi komunitas Vercel dengan menyambut peserta dan memperkenalkan John dari tim AI DX. Fokus utama diskusi adalah Claude Code dan konsep 'Skills' yang memungkinkan agen AI mengikuti pola pengkodean spesifik tim. John menjelaskan bahwa industri kini beralih dari prompt engineering yang kaku menuju context engineering yang lebih fleksibel. Skills hadir untuk mengisi kekosongan pengetahuan bawaan AI dengan aturan dan sistem internal pengguna. Bagian ini menekankan bahwa Skills adalah cara baru bagi pengembang untuk berinteraksi dengan agen AI secara lebih cerdas.

Lahirnya Skills dan Ekosistem skills.sh

John menjelaskan sejarah lahirnya Skills dari Anthropic yang menggunakan format Markdown untuk mengajarkan tugas spesifik pada Claude. Karena AI dimulai dengan 'lembaran kosong', Markdown menjadi solusi sederhana namun kuat untuk membagikan alur kerja internal. Peserta diperkenalkan dengan situs skills.sh yang berfungsi sebagai manajer paket serupa NPM untuk kemampuan AI. Di sini, pengembang dapat mencari, berbagi, dan menginstal skill komunitas ke dalam proyek mereka sendiri. John juga mengingatkan pentingnya memercayai sumber skill sebelum menginstalnya demi keamanan kode.

Skills sebagai Pengelola Paket dan Perbandingannya

Bagian ini membahas analogi Skills sebagai 'momen NPM' bagi agen AI, di mana kemampuan baru dapat ditambahkan secara permanen ke tingkat proyek atau pengguna. John membedakan antara penggunaan file agents.md yang bersifat pasif/selalu dibaca dengan Skills yang bersifat aktif dan dimuat tepat waktu. Penggunaan 'npx skills add' memungkinkan otomatisasi pengaturan proyek baru dengan pengetahuan yang sudah terpaket. Diskusi ini menyoroti bagaimana Skills menyelesaikan masalah PR (Pull Request) yang berantakan pada file Markdown tunggal yang besar. Intinya, Skills bertindak sebagai alat (tools) sementara agents.md bertindak sebagai aturan (rules).

Hierarki Abstraksi: Markdown, CLI, dan MCP

Menanggapi pertanyaan peserta, John menjelaskan tingkatan dalam menyelesaikan masalah AI: dimulai dari Markdown, naik ke CLI, dan baru menggunakan MCP (Model Context Protocol) jika kontrol data yang sangat ketat dibutuhkan. Muncul pula diskusi menarik tentang fitur 'Teams' terbaru dari Anthropic yang memungkinkan agen utama memimpin sub-agen dengan keahlian khusus. Sub-agen ini dapat didefinisikan dalam front matter Markdown untuk memiliki daftar keterampilan unik yang berbeda dari agen lainnya. John memprediksi masa depan di mana agen akan memiliki kemampuan penemuan antar-agen (agent-to-agent discovery) melalui deskriptor Markdown. Hal ini menunjukkan tren menuju orkestrasi AI yang lebih otonom dan terdesentralisasi.

Anatomi dan Struktur File Skill

Sesi beralih ke penjelasan teknis mengenai anatomi sebuah skill yang secara fisik berupa folder berisi file skill.md. Struktur wajibnya mencakup front matter dengan nama dan deskripsi yang krusial bagi agen untuk memutuskan kapan harus memuat skill tersebut. Deskripsi berfungsi sebagai pemicu (trigger) saat agen mendeteksi tugas yang relevan, seperti penegakan standar penjualan atau pengoptimalan kode. Skill juga dapat membundel skrip, file referensi, dan instruksi tambahan dalam satu paket direktori tanpa memerlukan server. John menekankan bahwa konvensi penamaan yang tepat sangat membantu alat bantu pencarian dalam ekosistem Skills bekerja lebih baik.

Kasus Penggunaan dan Atasi Batas Pengetahuan LLM

John memberikan contoh nyata penggunaan Skill untuk mengatasi batas tanggal pengetahuan (knowledge cutoff) pada model AI yang sering ketinggalan versi paket terbaru. Dengan membundel dokumentasi terbaru ke dalam Skill, pengembang memastikan agen tidak menggunakan API yang sudah usang seperti pada kasus Next.js atau AI SDK. Contoh menarik lainnya adalah pembuatan skill gaya penulisan pribadi dengan merujuk pada file README atau postingan blog lama. Dave dari komunitas juga berbagi bagaimana Skill membantu pendiri startup yang sudah lama tidak mengoding untuk berkontribusi tanpa melanggar arsitektur. Bagian ini membuktikan bahwa Skill sangat efektif untuk menjaga standar kualitas meskipun dikerjakan oleh anggota tim dengan latar belakang berbeda.

Otomatisasi Alur Kerja dan Batasan (Guardrails)

Dalam bagian ini, fokus berpindah ke praktik terbaik React dan otomatisasi alur kerja seperti pembuatan file zip atau komit Git yang cerdas. Berbeda dengan skrip deterministik biasa, agen AI yang dilengkapi Skill dapat secara cerdas mengabaikan file video besar atau mengelompokkan data secara otomatis. Skill juga berfungsi sebagai batasan (guardrails) untuk memastikan instruksi desain, pedoman warna, dan aturan keamanan dipatuhi oleh model. John menjelaskan bahwa Skill bisa dimuat secara malas (lazy loaded) hanya saat dibutuhkan untuk menghemat jendela konteks model. Penegakan standar ini menjadi kunci utama dalam menjaga integritas sistem yang dikerjakan oleh banyak agen.

Proses Penerbitan dan Demo Praktis

Menerbitkan Skill ternyata sangat mudah, cukup dengan mengirim file Markdown ke repositori GitHub yang kemudian dapat dirujuk oleh orang lain. John mendemonstrasikan perintah 'install skill package' yang secara otomatis mencari file skill.md di dalam repositori tanpa perlu tautan langsung yang panjang. Terkait iterasi, John sangat menyarankan pola 'buat dulu, gunakan, lihat kegagalan, lalu perbaiki' daripada mencoba menjadi sempurna di awal. Pengembang bahkan bisa meminta agen untuk memperbarui file skill-nya sendiri di akhir percakapan berdasarkan apa yang berhasil dipelajari. Filosofi 'Iterate To Greatness' (ITG) menjadi pesan kuat bagi para pengembang untuk terus bergerak cepat mengikuti perkembangan model.

Demo ReMotion Geist dan Agent Browser

John memamerkan bagaimana ia membuat video presentasi secara otomatis menggunakan kombinasi skill ReMotion dan sistem desain Geist dari Vercel. Dengan bahasa sehari-hari, ia meminta agen untuk membuat sembilan variasi landing page untuk workshop sekaligus menjalankan server pengembangan di latar belakang. Penggunaan 'Agent Browser' juga diperlihatkan, di mana agen AI masuk ke Chrome Dev Tools untuk mengevaluasi performa web dan mengambil tangkapan layar. Kemampuan agen untuk melihat hasil kerjanya sendiri melalui screenshot memungkinkan perbaikan desain yang lebih akurat secara visual. Bagian ini menunjukkan kekuatan nyata dari penggabungan berbagai skill spesifik untuk menyelesaikan tugas besar yang memakan waktu lama jika dilakukan manual.

Tips Personalisasi dan Penutup

Menjelang akhir, John memperkenalkan alat 'skills primer' untuk memuat paksa konteks di awal percakapan Claude Code agar agen langsung siap dengan alat yang dibutuhkan. Ia mendorong komunitas untuk melakukan kloning repositori dan mempersonalisasi CLI mereka sendiri sesuai kebutuhan spesifik (seperti untuk Cursor atau Codex). Terkait pembaruan, perintah 'skills update' sudah tersedia meskipun ekosistem standar versi masih terus berkembang pesat. Pauline menutup sesi dengan mengundang peserta ke acara komunitas berikutnya dan berterima kasih atas antusiasme tinggi yang mencapai 200 penonton. Sesi diakhiri dengan pesan bahwa perangkat lunak personal dan agen AI akan terus mengubah cara kerja pengembang di masa depan.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video