Go Micro - Harness Agen untuk Go
(go-micro.dev)- Framework Go untuk membangun agen/layanan/alur kerja di atas satu runtime
- Alat, memori, guardrail, alur kerja pemicu, layanan dependensi, hingga protokol yang diakses layanan lain dan agen lain disatukan dalam satu harness
- Semua endpoint layanan otomatis diubah menjadi alat yang bisa dipanggil AI, dan dapat diakses dari luar melalui protokol MCP dan A2A
- Pembuatan layanan berbasis prompt
- Saat sistem yang diinginkan dimasukkan sebagai prompt, AI merancang arsitektur lalu menghasilkan/mengompilasi/menjalankan kode handler
- Layanan yang dibutuhkan saat percakapan juga bisa langsung dibuat saat itu juga (contoh: "perlu pelacakan shipping" → layanan shipping dibuat otomatis)
- Meski kode yang dihasilkan diedit langsung, perubahan tetap dipertahankan saat dijalankan ulang
- Semua agen memiliki dua alat bawaan:
plan/delegate- Tugas multi-langkah dicatat sebagai rencana berurutan
- Subtugas didelegasikan ke agen lain: jika sudah ada agen terdaftar maka diteruskan via RPC, jika belum maka dibuat subagen terisolasi
- Alur kerja tahan lama: langkah flow yang memiliki checkpoint dapat dilanjutkan dari titik berhenti setelah crash; gunakan flow untuk jalur yang sudah diketahui, dan dispatch agen untuk jalur dinamis
- Memori persisten berbasis store tersedia secara bawaan: pekerjaan bisa dilanjutkan setelah restart, dengan
AgentCompactMemorypercakapan lama diringkas/dikompresi, percakapan terbaru tetap dalam bentuk asli, dan percakapan arsip dapat diambil kembali saat diperlukan - Guardrail ditempatkan di titik eksekusi:
MaxSteps(batas jumlah langkah),LoopLimit(menghentikan pengulangan tanpa kemajuan),ApproveTool(intervensi persetujuan manusia) - Semua abstraksi berupa interface Go: registry (mDNS→Consul→etcd), broker (NATS/RabbitMQ), store (File/Postgres/NATS KV), dan lain-lain bisa diganti tanpa perubahan kode
- Mendukung 7 penyedia LLM (Anthropic, OpenAI, Gemini, Groq, Mistral, Together, Atlas Cloud), bisa diganti hanya dengan satu baris import
- Dengan satu perintah CLI: hot reload (
micro run), build produksi (micro build), deploy SSH+systemd tanpa Docker (micro deploy user@server) - Lisensi Apache 2.0
1 komentar
Saya pernah mencobanya saat masih v4, tak terasa sekarang sudah v6!