🧠 IdSiberCoder — AI Developer Agent for VS Code
IdSiberCoder adalah ekstensi Visual Studio Code yang menghadirkan pengalaman AI-powered developer assistant sejati.
Tanpa lapisan planner eksternal, model AI dapat berpikir dan bertindak langsung di dalam workspace — membaca file, menjalankan perintah, dan mengedit proyek secara mandiri melalui sistem tool calling yang cerdas.
AI yang benar-benar memahami kode Anda
🚀 Fitur Utama
- 🧩 AI Agent Tanpa Planner — model AI sendiri yang menentukan langkah-langkahnya berdasarkan hasil tool sebelumnya.
- ⚙️ Sistem Tools Lengkap & Dinamis — membaca, menulis, mencari, mengedit, hingga menjalankan perintah terminal langsung dari AI.
- 🧠 Multi-Provider AI Support — bekerja dengan OpenAI, DeepSeek, Mistral, Claude, Gemini, Qwen, ZhiPu, NovitaAI, dan Grok.
- ⚡ Eksekusi Paralel — AI dapat memanggil beberapa tool sekaligus, dieksekusi bersamaan di workspace.
- 🧱 Modular Architecture — sistem provider, tools, dan model presets bisa diperluas dengan mudah.
- 💾 Manajemen Sesi Lengkap — simpan percakapan sebagai sesi terpisah, ekspor chat ke file JSON, impor ulang, dan pangkas riwayat lewat ikon hapus.
- 🎛️ Panel Settings Interaktif — aktifkan/nonaktifkan tools dan tambahkan model baru ke provider langsung dari antarmuka.
- 🔐 Safety Guardrails — pembatasan jumlah iterasi, timeout eksekusi, serta sanitasi output untuk mencegah error atau loop tak berujung.
- 📎 Prefill Prompt Cepat — klik kanan file/folder di Explorer lalu pilih
Add Selected Paths to Chat untuk otomatis menyisipkan path (mendukung multi-select).
🧩 Arsitektur Inti
┌──────────────────────────────────────────────┐
│ ConversationHandler │
│──────────────────────────────────────────────│
│ - Menangani prompt & respon AI │
│ - Menjalankan loop interaksi model ↔ tool │
└──────────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────┐
│ ToolManager │
│──────────────────────────────────────────────│
│ - Registrasi & eksekusi tool │
│ - Menjalankan aksi async / paralel │
└──────────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────────┐
│ AIProvider │
│──────────────────────────────────────────────│
│ - Komunikasi API ke berbagai model AI │
│ - Mendukung /responses (tool call) endpoint │
└──────────────────────────────────────────────┘
Arsitektur ini dikoordinasikan oleh GeneralMCPHandler — yang menghubungkan percakapan, penyimpanan sesi, model presets, konfigurasi tools, dan penyajian hasil di panel Webview.
🧠 Perilaku Emergent (Tanpa Planner)
IdSiberCoder tidak menggunakan sistem Planner–Executor.
Sebaliknya, AI memutuskan sendiri tindakan berikutnya dari hasil tool yang baru dijalankan.
Contoh nyata:
User: Coba pelajari project saya
↓
AI: list_directory({ dir_path: "./" })
↓
AI: read_file({ file_path: "README.md" })
↓
AI: search_workspace({ pattern: "express" })
↓
AI: "Project ini menggunakan Node.js + Express"
Setiap langkah adalah hasil reasoning internal model — tidak ada skrip tersembunyi atau instruksi manual.
Semua tool diregistrasikan melalui JSON schema dan dapat diaktifkan/dinonaktifkan melalui panel Settings → Tools.
Secara default, semua tools aktif, namun pengguna bebas menonaktifkan fungsi tertentu agar AI tidak memanggil tool tersebut selama percakapan.
Setiap perubahan tersimpan otomatis di workspace dan langsung diterapkan tanpa perlu reload ekstensi.
Tool yang tersedia meliputi:
| Tool |
Fungsi |
read_file |
Membaca isi file |
write_file |
Menulis atau membuat file baru |
append_to_file |
Menambahkan teks ke file |
delete_file |
Menghapus file |
copy_file |
Menyalin file |
move_file |
Memindahkan / rename file |
list_directory |
Melihat isi folder |
list_active_files |
Melihat file yang sedang terbuka di editor |
search_workspace |
Mencari teks di seluruh workspace |
edit_file |
Mencari dan mengganti teks di file |
execute_cli |
Menjalankan perintah terminal (aman) |
get_error_files |
Mengambil daftar file dengan error |
get_error_workspace |
Mengambil semua diagnostics dari Problems panel |
execute_querydb |
Menjalankan query SQL ke database MySQL/PostgreSQL (perlu konfigurasi) |
Catatan: execute_querydb dalam keadaan nonaktif hingga Anda mengatur koneksi database melalui Settings → Tools → Configure. Konfigurasi tersimpan secara global di workspace VS Code, sehingga dapat digunakan lintas sesi percakapan.
Menambahkan Path ke Chat lewat Explorer
- Pilih satu atau beberapa file/folder di panel Explorer.
- Klik kanan lalu tekan Add Selected Paths to Chat.
- Path relatif akan otomatis muncul di input chat sehingga Anda bisa langsung memberi instruksi lanjutan (misal "tolong review file-file ini").
- Fitur ini tersedia baik untuk panel utama maupun sidebar, dan tetap berhasil meski webview belum terbuka penuh.
Mengonfigurasi execute_querydb
- Buka panel IdSiberCoder, klik ⚙ Settings lalu pilih tab Tools.
- Tekan tombol Configure di baris
execute_querydb.
- Isi tipe database (
mysql atau postgresql), host, port, username, password, dan nama database.
- Simpan. Tool otomatis aktif (switch tetap bisa dinonaktifkan bila perlu).
Koneksi yang tersimpan akan dipakai setiap kali AI memanggil tool, sehingga Anda cukup mengetik prompt seperti:
Jalankan query ini di database: SELECT * FROM users LIMIT 5;
AI akan melakukan execute_querydb dengan payload {"query": "SELECT * FROM users LIMIT 5;"} dan menampilkan hasil tabel langsung di panel chat.
💬 Manajemen Sesi & Riwayat Chat
- Gunakan ikon ☰ di header untuk membuka panel Chat Sessions.
- Ikon 📤 mengekspor percakapan aktif ke berkas JSON (dengan nama otomatis berdasarkan judul dan waktu terakhir).
- Ikon 📥 mengimpor berkas JSON; saat di-trigger akan muncul konfirmasi untuk Replace seluruh chat atau Append ke bagian akhir percakapan aktif.
- Ikon 🗑️ pada setiap pesan user memotong riwayat mulai dari pesan tersebut; ekstensi akan meminta konfirmasi sebelum menghapus percakapan berikutnya.
- Setiap sesi menyimpan riwayat lengkap, judul otomatis, dan total token agar dapat dilanjutkan kapan pun.
Ikon ekspor/impor juga tersedia di panel samping, lengkap dengan tooltip saat kursor diarahkan. Ikon hapus tetap terbatas pada pesan pengguna untuk menjaga konteks sistem dan asisten.
🧠 Manajemen Model AI di Panel Settings
IdSiberCoder menyediakan tab Model AI di panel Settings, yang memungkinkan pengguna untuk:
- Menambahkan model baru ke setiap provider (misalnya menambah
gpt-4o-mini, deepseek-v3.1-lite, dsb).
- Menghapus model yang tidak digunakan.
- Mengatur model default untuk setiap provider.
Semua perubahan akan tersimpan otomatis di konfigurasi workspace dan langsung muncul di dropdown pemilihan model di jendela utama IdSiberCoder.
⚡ Eksekusi Paralel dan Truncation Recovery
IdSiberCoder mendukung parallel execution menggunakan Promise.all() — AI dapat menjalankan beberapa tool sekaligus.
Jika model menghasilkan payload tool terlalu besar (misal write_file panjang), sistem otomatis akan:
- menyimpan sebagian hasil yang bisa dipulihkan,
- menampilkan diagnostik token/ukuran,
- dan memberi kesempatan model untuk melanjutkan dari sisa data.
🧱 Modul dan Manajer Utama
| Komponen |
Fungsi |
| ModelManager |
Menyimpan & menampilkan daftar model per provider. |
| ToolConfigManager |
Mengatur tools yang aktif di workspace (persisten antar sesi). |
| SessionManager |
Menyimpan riwayat percakapan dan mengelola sesi AI. |
| DiagnosticsManager |
Mengambil data error dari Problems panel VS Code. |
| TerminalManager |
Menjalankan perintah CLI di terminal VS Code secara terkontrol. |
🌐 Provider AI yang Didukung
- OpenAI – GPT-4/5 family
- DeepSeek – DeepSeek-V3 series
- Mistral – Codestral 25.08
- Claude – Claude-3.7 Sonnet
- Gemini – Gemini-2.0 Flash
- Qwen – Qwen-3 Coder Plus
- ZhiPu AI – GLM-4.5 Flash
- Novita AI – DeepSeek Terminus API
- Grok – xAI Grok family
Setiap provider mengikuti kontrak ChatProvider, memastikan format tool call dan respon konsisten di seluruh model.
🧭 Filosofi Desain
- Emergent, not scripted — AI bertindak alami berdasarkan reasoning internal.
- Lightweight — berjalan langsung di VS Code, tanpa backend tambahan.
- Composable — tool dan model bisa ditambah tanpa rebuild besar.
- Transparent — seluruh proses reasoning dan hasil tool ditampilkan di panel chat.
- Cross-model — kompatibel dengan semua model yang mendukung function/tool calling.
👨💻 Tentang Pengembang
Candra Rudytamoko
Founder & Lead Developer — DatasiberLab
📧 candrapwr@datasiber.com
IdSiberCoder – Making coding more collaborative, one conversation at a time.
🛡️ Lisensi
© 2025 DatasiberLab. All rights reserved.
IdSiberCoder adalah perangkat lunak proprietary.
Tersedia gratis melalui VS Code Marketplace.
Lihat LICENSE untuk detail lengkap.
💬 Catatan
Walau dokumentasi proyek ini bersifat publik,
kode sumber utama IdSiberCoder bersifat tertutup untuk melindungi riset dan teknologi eksklusif DatasiberLab.
🧩 Happy coding with your AI partner! 🎉
📦 Link Resmi