𝗕𝗼𝘅𝗔𝗴𝗻𝘁𝘀 𝗧𝗼𝗼𝗹 𝗦𝘆𝘀𝘁𝗲𝗺: 𝗦𝗸𝗶𝗹𝗹𝘀, 𝗔𝗴𝗲𝗻𝘁𝘀, 𝗮𝗻𝗱 𝗦𝗰𝗵𝗲𝗱𝘂𝗹𝗶𝗻𝗴

Sebuah sistem AI Agent yang lengkap membutuhkan lebih dari sekadar alat dasar. Sistem ini memerlukan tiga kemampuan spesifik: penggunaan kembali pengetahuan (knowledge reuse), dekomposisi tugas (task decomposition), dan eksekusi otomatis.

BoxAgnts menggunakan tiga mekanisme untuk menyelesaikan masalah ini: Skill templates, Agent sub-agents, dan penjadwalan Cron.

𝗦𝗸𝗶𝗹𝗹 𝗧𝗲𝗺𝗽𝗹𝗮𝘁𝗲𝘀 (𝗞𝗻𝗼𝘄𝗹𝗲𝗱𝗴𝗲 𝗥𝗲𝘂𝘀𝗲)

Saat Anda meminta AI untuk "meninjau kode ini," Anda menginginkan hasil yang konsisten. Jika AI menentukan prosesnya dari nol setiap saat, kualitasnya akan bervariasi.

Sebuah Skill adalah template prompt Markdown. AI memanggil sebuah skill, menerima serangkaian instruksi terperinci, lalu mengeksekusi pekerjaan tersebut.

Perbedaan utama antara Tool dan Skill adalah siapa yang melakukan pekerjaan tersebut:

  • Sistem mengeksekusi Tool.
  • AI mengeksekusi Skill.

Skill menentukan cara melakukan tugas dan seperti apa hasil akhirnya.

𝗔𝗴𝗲𝗻𝘁 𝗦𝘂𝗯-𝗔𝗴𝗲𝗻𝘁𝘀 (𝗧𝗮𝘀𝗸 𝗗𝗲𝗰𝗼𝗺𝗽𝗼𝘀𝗶𝘁𝗶𝗼𝗻)

Tugas-tugas besar menghadapi dua batasan: jendela konteks (context window) dan penurunan atensi (attention decay). Jika percakapan menjadi terlalu panjang, AI akan melupakan informasi di awal.

Agent sub-agents menyelesaikan masalah ini dengan memecah satu tugas besar menjadi tugas-tugas kecil yang independen. Setiap sub-agent memiliki jendela konteksnya sendiri.

Anda dapat menggunakan dua mode:

  • Sinkron (Synchronous): Agent utama menunggu sub-agent selesai.
  • Asinkron (Asynchronous): Sub-agent berjalan di latar belakang sementara Agent utama melakukan hal lain.

Hal ini mencegah "pencemaran konteks" (context pollution) dan memungkinkan pekerjaan paralel.

𝗖𝗿𝗼𝗻 𝗦𝗰𝗵𝗲𝗱𝘂𝗹𝗶𝗻𝗴 (𝗔𝘂𝘁𝗼𝗺𝗮𝘁𝗲𝗱 𝗘𝘅𝗲𝗰𝘂𝘁𝗶𝗼𝗻)

Tidak semua tugas terjadi secara real-time. Anda mungkin menginginkan laporan kualitas kode setiap pagi pukul 09.00.

Sistem Cron BoxAgnts menangani pekerjaan yang dijadwalkan. Setiap pekerjaan memiliki:

  • Perlindungan timeout independen untuk mencegah proses yang berjalan tak terkendali (runaway processes).
  • Persistensi SQLite agar pekerjaan tetap ada setelah restart.
  • Sesi terisolasi untuk menjaga riwayat tetap bersih.

𝗜𝗻𝗳𝗿𝗮𝘀𝘁𝗿𝘂𝗰𝘁𝘂𝗿𝗲 𝗦𝘂𝗽𝗽𝗼𝗿𝘁

Dua fitur lainnya membuat sistem ini stabil:

  • AutoCompactState: Fitur ini mengompres hasil tool lama ketika riwayat percakapan menjadi terlalu besar. Fitur ini mempertahankan logika terbaru sambil meringkas data lama.
  • Permission Filtering: Anda dapat membuat Agent "read-only". Agent ini dapat melihat file tetapi tidak dapat mengubahnya atau menjalankan perintah bash.

BoxAgnts melangkah lebih jauh dari sekadar pemanggilan alat sederhana untuk menciptakan lapisan orkestrasi agent yang terstruktur dan andal.

BoxAGNTs Tool System: 7. Skill Templates, Agent Proxies, and Cron Scheduling

Dalam bagian dari seri ini, kita akan mendalami tiga fitur canggih dalam sistem tool BoxAGNTs yang dirancang untuk meningkatkan skalabilitas, manajemen, dan otomatisasi agen Anda: Skill Templates, Agent Proxies, dan Cron Scheduling.

Fitur-fitur ini bertujuan untuk mengubah BoxAGNTs dari sekadar kerangka kerja agen individual menjadi sistem multi-agen yang kohesif dan dapat dikelola secara terpusat.


1. Skill Templates

Saat Anda membangun agen yang kompleks, Anda sering kali menemukan bahwa agen tersebut memerlukan sekumpulan alat (tools) dan instruksi yang sama. Menulis ulang definisi tool dan prompt sistem untuk setiap agen baru adalah tidak efisien dan rentan terhadap kesalahan.

Skill Templates memecahkan masalah ini dengan memungkinkan Anda mendefinisikan "keterampilan" sebagai unit yang dapat digunakan kembali. Sebuah Skill Template mencakup:

  • Tool Definitions: Daftar fungsi atau API yang dapat diakses oleh agen.
  • System Prompts: Instruksi spesifik tentang bagaimana menggunakan tool tersebut.
  • Parameters: Konfigurasi default atau batasan untuk penggunaan tool.

Contoh Skill Template (research_skill.json)

{
  "skill_name": "web_researcher",
  "description": "Kemampuan untuk mencari informasi terbaru di internet dan merangkumnya.",
  "tools": [
    {
      "name": "google_search",
      "parameters": {
        "query": "string"
      }
    },
    {
      "name": "web_scraper",
      "parameters": {
        "url": "string"
      }
    }
  ],
  "system_prompt": "Anda adalah peneliti web ahli. Gunakan alat pencarian untuk menemukan fakta, lalu gunakan scraper untuk membaca konten halaman secara mendalam sebelum memberikan ringkasan."
}

Dengan Skill Templates, Anda dapat membuat agen baru hanya dengan merujuk pada template ini:

{
  "agent_name": "Market Analyst Agent",
  "skills": ["web_researcher"],
  "model": "gpt-4"
}

2. Agent Proxies

Dalam sistem multi-agen, mengelola komunikasi langsung antara setiap agen dapat menjadi mimpi buruk (masalah $N^2$ koneksi). Agent Proxies bertindak sebagai lapisan abstraksi atau perantara di antara pengguna (atau agen lain) dan agen target.

Proxy memberikan beberapa manfaat utama:

  1. Routing Terpusat: Mengarahkan permintaan ke agen yang paling tepat berdasarkan tugas.
  2. Load Balancing: Mendistribusikan tugas ke beberapa instans agen yang sama untuk menangani beban tinggi.
  3. Keamanan & Audit: Mencatat semua interaksi dan menerapkan kebijakan keamanan sebelum permintaan mencapai agen.
  4. Abstraksi Identitas: Pengguna berinteraksi dengan satu endpoint proxy, tanpa perlu mengetahui detail teknis atau lokasi fisik agen di balik layar.

Arsitektur Proxy

Alih-alih memanggil agen secara langsung: User -> Agent A

Anda memanggil proxy: User -> Agent Proxy -> [Agent A, Agent B, atau Agent C]

Contoh Konfigurasi Proxy (proxy_config.json)

{
  "proxy_id": "main_orchestrator",
  "routes": [
    {
      "pattern": "research/*",
      "target_agents": ["research_agent_1", "research_agent_2"],
      "strategy": "round_robin"
    },
    {
      "pattern": "coding/*",
      "target_agents": ["dev_agent_alpha"],
      "strategy": "direct"
    }
  ]
}

3. Cron Scheduling

Agen sering kali perlu melakukan tugas secara proaktif, bukan hanya bereaksi terhadap input pengguna. Misalnya, memeriksa harga saham setiap jam, mengirim laporan harian, atau membersihkan database setiap tengah malam.

Cron Scheduling dalam BoxAGNTs memungkinkan Anda untuk menjadwalkan tugas (tasks) menggunakan sintaks cron standar.

Cara Kerja

Anda dapat mendefinisikan sebuah "Scheduled Job" yang menghubungkan ekspresi cron dengan tugas tertentu yang harus dijalankan oleh agen.

Contoh Penjadwalan (scheduled_tasks.json)

[
  {
    "job_name": "daily_market_report",
    "cron_expression": "0 9 * * *", 
    "agent_id": "market_analyst_agent",
    "task_payload": {
      "action": "generate_report",
      "topic": "crypto_market_trends"
    }
  },
  {
    "job_name": "system_health_check",
    "cron_expression": "*/30 * * * *",
    "agent_id": "admin_agent",
    "task_payload": {
      "action": "check_system_status"
    }
  }
]

Catatan: 0 9 * * * berarti tugas akan berjalan setiap hari pada pukul 09:00.


Kesimpulan

Dengan menggabungkan ketiga fitur ini, BoxAGNTs bertransformasi menjadi platform otomatisasi yang sangat kuat:

  • Skill Templates memberikan standarisasi dan efisiensi pengembangan.
  • Agent Proxies memberikan skalabilitas dan manajemen terpusat.
  • Cron Scheduling memberikan kemampuan otonom untuk menjalankan tugas secara terjadwal.

Kombinasi ini memungkinkan Anda untuk membangun sistem agen yang tidak hanya cerdas, tetapi juga terorganisir, dapat diskalakan, dan mampu beroperasi secara mandiri dalam lingkungan produksi yang kompleks.