Agen
Konfigurasi dan gunakan agen khusus.
Agen adalah asisten AI khusus yang dapat dikonfigurasi untuk tugas dan alur kerja tertentu. Mereka memungkinkan Anda membuat alat yang terfokus dengan prompt khusus, model, dan akses alat.
Tip:
Gunakan agen plan untuk menganalisis kode dan meninjau saran tanpa membuat perubahan kode apa pun.
Anda dapat beralih antar agen selama sesi atau memanggilnya dengan penyebutan @.
Jenis
Ada dua jenis agen di Dropstone; agen utama dan subagen.
Agen utama
Agen utama adalah asisten utama yang Anda interaksikan secara langsung. Anda dapat bersiklus melalui mereka menggunakan tombol Tab, atau keybind switch_agent yang dikonfigurasi. Agen-agen ini menangani percakapan utama Anda. Akses alat dikonfigurasi melalui izin: misalnya, Build memiliki semua alat diaktifkan sementara Plan dibatasi.
Tip:
Anda dapat menggunakan tombol Tab untuk beralih antar agen utama selama sesi.
Dropstone dilengkapi dengan dua agen utama bawaan, Build dan Plan. Kami akan melihat ini di bawah.
Subagen
Subagen adalah asisten khusus yang dapat dipanggil oleh agen utama untuk tugas tertentu. Anda juga dapat memanggilnya secara manual dengan @ menyebutkan mereka dalam pesan Anda.
Dropstone dilengkapi dengan dua subagen bawaan, General dan Explore. Kami akan melihat ini di bawah.
Bawaan
Dropstone dilengkapi dengan dua agen utama bawaan dan dua subagen bawaan.
Gunakan build
Mode: primary
Build adalah agen utama default dengan semua alat diaktifkan. Ini adalah agen standar untuk pekerjaan pengembangan di mana Anda memerlukan akses penuh ke operasi file dan perintah sistem.
Gunakan plan
Mode: primary
Agen terbatas yang dirancang untuk perencanaan dan analisis. Kami menggunakan sistem izin untuk memberi Anda kontrol lebih dan mencegah perubahan yang tidak diinginkan.
Secara default, semua hal berikut diatur ke ask:
file edits: Semua penulisan, patch, dan editbash: Semua perintah bash
Agen ini berguna ketika Anda ingin LLM menganalisis kode, menyarankan perubahan, atau membuat rencana tanpa membuat modifikasi aktual pada basis kode Anda.
Gunakan general
Mode: subagent
Agen tujuan umum untuk meneliti pertanyaan kompleks dan menjalankan tugas multi-langkah. Memiliki akses alat penuh (kecuali todo), sehingga dapat membuat perubahan file jika diperlukan. Gunakan ini untuk menjalankan beberapa unit pekerjaan secara paralel.
Gunakan explore
Mode: subagent
Agen cepat dan hanya baca untuk menjelajahi basis kode. Tidak dapat memodifikasi file. Gunakan ini ketika Anda perlu dengan cepat menemukan file berdasarkan pola, mencari kode untuk kata kunci, atau menjawab pertanyaan tentang basis kode.
Gunakan compaction
Mode: primary
Agen sistem tersembunyi yang memadatkan konteks panjang menjadi ringkasan yang lebih kecil. Berjalan secara otomatis jika diperlukan dan tidak dapat dipilih di UI.
Gunakan title
Mode: primary
Agen sistem tersembunyi yang menghasilkan judul sesi pendek. Berjalan secara otomatis dan tidak dapat dipilih di UI.
Gunakan summary
Mode: primary
Agen sistem tersembunyi yang membuat ringkasan sesi. Berjalan secara otomatis dan tidak dapat dipilih di UI.
Penggunaan
-
Untuk agen utama, gunakan tombol Tab untuk bersiklus melalui mereka selama sesi. Anda juga dapat menggunakan keybind
switch_agentyang dikonfigurasi. -
Subagen dapat dipanggil:
-
Secara otomatis oleh agen utama untuk tugas khusus berdasarkan deskripsi mereka.
-
Secara manual dengan @ menyebutkan subagen dalam pesan Anda. Misalnya.
@general help me search for this function
-
-
Navigasi antar sesi: Ketika subagen membuat sesi anak, gunakan
session_child_first(default: <Leader>+Down) untuk memasuki sesi anak pertama dari induk. -
Setelah Anda berada di sesi anak, gunakan:
session_child_cycle(default: Right) untuk bersiklus ke sesi anak berikutnyasession_child_cycle_reverse(default: Left) untuk bersiklus ke sesi anak sebelumnyasession_parent(default: Up) untuk kembali ke sesi induk
Ini memungkinkan Anda beralih antara percakapan utama dan pekerjaan subagen khusus.
Konfigurasi
Anda dapat menyesuaikan agen bawaan atau membuat agen Anda sendiri melalui konfigurasi. Agen dapat dikonfigurasi dengan dua cara:
JSON
Konfigurasi agen dalam file konfigurasi dropstone.json Anda:
{
"$schema": "https://dropstone.io/schema/config.json",
"agent": {
"build": {
"mode": "primary",
"model": "dropstone/dropstone-pro",
"prompt": "{file:./prompts/build.txt}",
"permission": {
"edit": "allow",
"bash": "allow"
}
},
"plan": {
"mode": "primary",
"model": "dropstone/dropstone-fast",
"permission": {
"edit": "deny",
"bash": "deny"
}
},
"code-reviewer": {
"description": "Reviews code for best practices and potential issues",
"mode": "subagent",
"model": "dropstone/dropstone-pro",
"prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
"permission": {
"edit": "deny"
}
}
}
}
Markdown
Anda juga dapat menentukan agen menggunakan file markdown. Tempatkan mereka di:
- Global:
~/.config/dropstone/agents/ - Per-proyek:
.dropstone/agents/
---
description: Reviews code for quality and best practices
mode: subagent
model: dropstone/dropstone-pro
temperature: 0.1
permission:
edit: deny
bash: deny
---
You are in code review mode. Focus on:
- Code quality and best practices
- Potential bugs and edge cases
- Performance implications
- Security considerations
Provide constructive feedback without making direct changes.
Nama file markdown menjadi nama agen. Misalnya, review.md membuat agen review.
Opsi
Mari kita lihat opsi konfigurasi ini secara detail.
Deskripsi
Gunakan opsi description untuk memberikan deskripsi singkat tentang apa yang dilakukan agen dan kapan menggunakannya.
{
"agent": {
"review": {
"description": "Reviews code for best practices and potential issues"
}
}
}
Ini adalah opsi konfigurasi wajib.
Suhu
Kontrol keacakan dan kreativitas respons LLM dengan konfigurasi temperature.
Nilai yang lebih rendah membuat respons lebih terfokus dan deterministik, sementara nilai yang lebih tinggi meningkatkan kreativitas dan variabilitas.
{
"agent": {
"plan": {
"temperature": 0.1
},
"creative": {
"temperature": 0.8
}
}
}
Nilai suhu biasanya berkisar dari 0,0 hingga 1,0:
- 0.0-0.2: Respons yang sangat terfokus dan deterministik, ideal untuk analisis kode dan perencanaan
- 0.3-0.5: Respons seimbang dengan beberapa kreativitas, baik untuk tugas pengembangan umum
- 0.6-1.0: Respons yang lebih kreatif dan bervariasi, berguna untuk brainstorming dan eksplorasi
{
"agent": {
"analyze": {
"temperature": 0.1,
"prompt": "{file:./prompts/analysis.txt}"
},
"build": {
"temperature": 0.3
},
"brainstorm": {
"temperature": 0.7,
"prompt": "{file:./prompts/creative.txt}"
}
}
}
Jika tidak ada suhu yang ditentukan, Dropstone menggunakan default yang masuk akal yang disesuaikan untuk setiap tier.
Langkah maksimal
Kontrol jumlah maksimum iterasi agentic yang dapat dilakukan agen sebelum dipaksa merespons dengan teks saja. Ini memungkinkan pengguna yang ingin mengontrol biaya untuk menetapkan batas pada tindakan agentic.
Jika ini tidak diatur, agen akan terus berulang sampai model memilih untuk berhenti atau pengguna mengganggu sesi.
{
"agent": {
"quick-thinker": {
"description": "Fast reasoning with limited iterations",
"prompt": "You are a quick thinker. Solve problems with minimal steps.",
"steps": 5
}
}
}
Ketika batas tercapai, agen menerima prompt sistem khusus yang menginstruksikannya untuk merespons dengan ringkasan pekerjaan dan tugas yang tersisa yang direkomendasikan.
Deprecated:
Bidang maxSteps warisan sudah usang. Gunakan steps sebagai gantinya.
Nonaktifkan
Atur ke true untuk menonaktifkan agen.
{
"agent": {
"review": {
"disable": true
}
}
}
Prompt
Tentukan file prompt sistem khusus untuk agen ini dengan konfigurasi prompt. File prompt harus berisi instruksi khusus untuk tujuan agen.
{
"agent": {
"review": {
"prompt": "{file:./prompts/code-review.txt}"
}
}
}
Jalur ini relatif terhadap lokasi file konfigurasi. Jadi ini berfungsi untuk konfigurasi Dropstone global dan konfigurasi khusus proyek.
Model
Gunakan konfigurasi model untuk mengganti model untuk agen ini. Berguna untuk menggunakan model berbeda yang dioptimalkan untuk tugas berbeda. Misalnya, model yang lebih cepat untuk perencanaan, model yang lebih mampu untuk implementasi.
Tip:
Jika Anda tidak menentukan model, agen utama menggunakan model yang dikonfigurasi secara global sementara subagen mewarisi model dari agen utama yang memanggilnya.
{
"agent": {
"plan": {
"model": "dropstone/dropstone-fast"
}
}
}
ID model menggunakan format dropstone/<tier>. Gunakan dropstone/dropstone-fast, dropstone/dropstone-pro, atau dropstone/dropstone-heavy.
Alat (usang)
tools usang. Lebih suka bidang permission agen untuk konfigurasi baru, pembaruan, dan kontrol yang lebih halus.
Memungkinkan Anda mengontrol alat mana yang tersedia di agen ini. Anda dapat mengaktifkan atau menonaktifkan alat tertentu dengan menyetelnya ke true atau false. Dalam konfigurasi tools agen, true setara dengan izin {"*": "allow"} dan false setara dengan izin {"*": "deny"}.
{
"$schema": "https://dropstone.io/schema/config.json",
"tools": {
"write": true,
"bash": true
},
"agent": {
"plan": {
"tools": {
"write": false,
"bash": false
}
}
}
}
Note:
Konfigurasi khusus agen menggantikan konfigurasi global.
Anda juga dapat menggunakan wildcard dalam entri tools warisan untuk mengontrol beberapa alat sekaligus. Misalnya, untuk menonaktifkan semua alat dari server MCP:
{
"$schema": "https://dropstone.io/schema/config.json",
"agent": {
"readonly": {
"tools": {
"mymcp_*": false,
"write": false,
"edit": false
}
}
}
}
Pelajari lebih lanjut tentang alat.
Izin
Anda dapat mengonfigurasi izin untuk mengelola tindakan apa yang dapat dilakukan agen. Setiap kunci izin dapat diatur ke:
"ask": Minta persetujuan sebelum menjalankan alat"allow": Izinkan semua operasi tanpa persetujuan"deny": Nonaktifkan alat
Kunci izin yang tersedia adalah:
| Kunci | Alat yang dikendalikan |
|---|---|
read | read |
edit | write, edit, apply_patch |
glob | glob |
grep | grep |
list | list |
bash | bash |
task | task |
external_directory | Alat apa pun yang membaca atau menulis file di luar worktree proyek |
todowrite | todowrite, todoread |
webfetch | webfetch |
websearch | websearch |
lsp | lsp |
skill | skill |
question | question |
doom_loop | Prompt pemulihan ketika agen tampak terjebak |
read, edit, glob, grep, list, bash, task, external_directory, lsp, dan skill menerima tindakan singkat ("allow" | "ask" | "deny") atau objek glob/pola → tindakan untuk kontrol yang lebih halus. Kunci yang tersisa hanya menerima tindakan singkat.
Note:
Kunci izin cocok sebagai pola wildcard terhadap nama alat yang mendasar, sehingga sintaks yang sama berfungsi untuk alat bawaan, kustom, dan MCP. Misalnya "mymcp_*": "deny" menolak setiap alat dari server MCP, dan "mymcp_search": "ask" menargetkan satu.
{
"$schema": "https://dropstone.io/schema/config.json",
"permission": {
"edit": "deny"
}
}
Anda dapat mengganti izin ini per agen.
{
"$schema": "https://dropstone.io/schema/config.json",
"permission": {
"edit": "deny"
},
"agent": {
"build": {
"permission": {
"edit": "ask"
}
}
}
}
Anda juga dapat menetapkan izin di agen Markdown.
---
description: Code review without edits
mode: subagent
permission:
edit: deny
bash:
"*": ask
"git diff": allow
"git log*": allow
"grep *": allow
webfetch: deny
---
Only analyze code and suggest changes.
Anda dapat menetapkan izin untuk perintah bash tertentu.
{
"$schema": "https://dropstone.io/schema/config.json",
"agent": {
"build": {
"permission": {
"bash": {
"git push": "ask",
"grep *": "allow"
}
}
}
}
}
Ini dapat mengambil pola glob.
{
"$schema": "https://dropstone.io/schema/config.json",
"agent": {
"build": {
"permission": {
"bash": {
"git *": "ask"
}
}
}
}
}
Dan Anda juga dapat menggunakan wildcard * untuk mengelola izin untuk semua perintah.
Karena aturan yang cocok terakhir memiliki prioritas, letakkan wildcard * terlebih dahulu dan aturan spesifik setelahnya.
{
"$schema": "https://dropstone.io/schema/config.json",
"agent": {
"build": {
"permission": {
"bash": {
"*": "ask",
"git status *": "allow"
}
}
}
}
}
Pelajari lebih lanjut tentang izin.
Mode
Kontrol mode agen dengan konfigurasi mode. Opsi mode digunakan untuk menentukan bagaimana agen dapat digunakan.
{
"agent": {
"review": {
"mode": "subagent"
}
}
}
Opsi mode dapat diatur ke primary, subagent, atau all. Jika tidak ada mode yang ditentukan, defaultnya adalah all.
Tersembunyi
Sembunyikan subagen dari menu autocomplete @ dengan hidden: true. Berguna untuk subagen internal yang hanya harus dipanggil secara terprogram oleh agen lain melalui alat Task.
{
"agent": {
"internal-helper": {
"mode": "subagent",
"hidden": true
}
}
}
Ini hanya mempengaruhi visibilitas pengguna di menu autocomplete. Agen tersembunyi masih dapat dipanggil oleh model melalui alat Task jika izin memungkinkan.
Note:
Hanya berlaku untuk agen mode: subagent.
Izin tugas
Kontrol subagen mana yang dapat dipanggil agen melalui alat Task dengan permission.task. Menggunakan pola glob untuk pencocokan yang fleksibel.
{
"agent": {
"orchestrator": {
"mode": "primary",
"permission": {
"task": {
"*": "deny",
"orchestrator-*": "allow",
"code-reviewer": "ask"
}
}
}
}
}
Ketika diatur ke deny, subagen dihapus dari deskripsi alat Task sepenuhnya, sehingga model tidak akan mencoba memanggilnya.
Tip:
Aturan dievaluasi secara berurutan, dan aturan yang cocok terakhir menang. Dalam contoh di atas, orchestrator-planner cocok dengan * (deny) dan orchestrator-* (allow), tetapi karena orchestrator-* datang setelah *, hasilnya adalah allow.
Tip:
Pengguna selalu dapat memanggil subagen apa pun secara langsung melalui menu autocomplete @, bahkan jika izin tugas agen akan menolaknya.
Warna
Sesuaikan tampilan visual agen di UI dengan opsi color. Ini mempengaruhi cara agen muncul di antarmuka.
Gunakan warna hex yang valid (misalnya, #FF5733) atau warna tema: primary, secondary, accent, success, warning, error, info.
{
"agent": {
"creative": {
"color": "#ff6b6b"
},
"code-reviewer": {
"color": "accent"
}
}
}
Top P
Kontrol keragaman respons dengan opsi top_p. Alternatif untuk suhu dalam mengontrol keacakan.
{
"agent": {
"brainstorm": {
"top_p": 0.9
}
}
}
Nilai berkisar dari 0,0 hingga 1,0. Nilai yang lebih rendah lebih terfokus, nilai yang lebih tinggi lebih beragam.
Tambahan
Opsi lain apa pun yang Anda tentukan dalam konfigurasi agen Anda dilewatkan langsung sebagai opsi model. Untuk tier Dropstone, opsi pass-through yang didukung adalah kedalaman penalaran dan verbositas teks:
{
"agent": {
"deep-thinker": {
"description": "Agent that uses high reasoning effort for complex problems",
"model": "dropstone/dropstone-heavy",
"variant": "xhigh",
"textVerbosity": "low"
}
}
}
Tip:
Jalankan dropstone models untuk melihat tier yang tersedia.
Buat agen
Anda dapat membuat agen baru menggunakan perintah berikut:
dropstone agent create
Perintah interaktif ini akan:
- Tanyakan di mana menyimpan agen; global atau khusus proyek.
- Deskripsi tentang apa yang harus dilakukan agen.
- Hasilkan prompt sistem yang sesuai dan pengidentifikasi.
- Biarkan Anda memilih izin mana yang harus diizinkan agen (apa pun yang tidak Anda pilih ditolak).
- Terakhir, buat file markdown dengan konfigurasi agen.
Kasus penggunaan
Berikut adalah beberapa kasus penggunaan umum untuk agen berbeda.
- Agen build: Pekerjaan pengembangan penuh dengan semua alat diaktifkan
- Agen plan: Analisis dan perencanaan tanpa membuat perubahan
- Agen review: Tinjauan kode dengan akses hanya baca ditambah alat dokumentasi
- Agen debug: Berfokus pada investigasi dengan alat bash dan read diaktifkan
- Agen docs: Penulisan dokumentasi dengan operasi file tetapi tanpa perintah sistem
Contoh
Berikut adalah beberapa agen contoh yang mungkin Anda temukan berguna.
Tip:
Memiliki agen yang ingin Anda bagikan? Hubungi kami dan kami akan menampilkannya.
Agen dokumentasi
---
description: Writes and maintains project documentation
mode: subagent
permission:
bash: deny
---
You are a technical writer. Create clear, comprehensive documentation.
Focus on:
- Clear explanations
- Proper structure
- Code examples
- User-friendly language
Auditor keamanan
---
description: Performs security audits and identifies vulnerabilities
mode: subagent
permission:
edit: deny
---
You are a security expert. Focus on identifying potential security issues.
Look for:
- Input validation vulnerabilities
- Authentication and authorization flaws
- Data exposure risks
- Dependency vulnerabilities
- Configuration security issues