Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Introduction

OpenCrabs adalah agen orkestrasi AI yang di-hosting sendiri dan tidak terikat provider, berjalan sebagai satu biner Rust. Ia mengotomatiskan terminal, browser, channels (Telegram/Discord/Slack/WhatsApp/Trello), dan codebase Anda, sambil menghormati privasi Anda dan menjaga kendali tetap di tangan Anda.

11,091 test mencakup provider, tools, channels, TUI, self-healing, dan otomatisasi browser.

Apa yang Membedakan OpenCrabs

Nol Telemetri, Bahkan Tanpa Opt-In

  • OpenCrabs tidak pernah menelepon pulang. Sesekali pun tidak. Tanpa analitik, tanpa pelacakan, tanpa statistik penggunaan, tanpa logging jarak jauh, tanpa laporan crash
  • Percakapan, tools, memori, konfigurasi, dan kunci API Anda tidak pernah meninggalkan mesin Anda
  • Satu-satunya trafik keluar adalah yang Anda mulai sendiri secara eksplisit: panggilan LLM API, pencarian web, perintah GitHub, otomasi browser
  • Ini bukan sekadar kotak centang kebijakan privasi: tidak ada kode telemetri untuk dinonaktifkan, tidak ada flag opt-out, tidak ada layanan analitik untuk diblokir. Memang tidak ada apa pun untuk dikirim

Bebas Provider Sejak Desain

  • 16 provider bawaan + Custom OpenAI Compatible: Anthropic Claude, OpenAI, Gemini, Xiaomi MiMo, OpenRouter, Qwen (DashScope), MiniMax, Ollama, z.ai GLM, GitHub Copilot, Codex, Codex CLI, OpenCode, OpenCode CLI, Moonshot AI (Kimi), Command Code CLI
  • Integrasi CLI natif: gunakan Claude Code CLI, OpenCode CLI, Codex CLI, dan Command Code CLI sebagai provider tanpa kunci API
  • Rantai fallback lengket: failover otomatis saat rate limit atau error, persistensi sadar-kesehatan bertahan melewati restart
  • Prompt caching di Anthropic, OpenRouter, Gemini, Qwen DashScope memangkas biaya hingga 95%
  • Override jendela konteks: batasi atau perluas konteks model apa pun lewat konfigurasi (provider OpenCrabs bawaan adalah pengecualian: jendelanya tetap 200k)
  • Xiaomi MiMo: 30+ model termasuk seri reasoning MiMo, provider berkunci
  • Moonshot AI (Kimi): endpoint API plan (api.moonshot.ai) dan Coding plan (api.kimi.com), konfigurasi reasoning-effort, jendela konteks sesuai tier paket

Multi-Agent Orchestration

  • Sessions adalah agen yang terisolasi penuh, masing-masing dengan brain, provider, model, direktori kerja, dan riwayatnya sendiri
  • Sub-agent bertipe: general, explore, plan, code, research dengan akses tools yang disesuaikan
  • Orkestrasi tim: team_create, team_broadcast, team_delete untuk alur kerja terkoordinasi
  • Override provider/model per panggilan: campur model antar tim (plan dengan GLM, code dengan Deepseek, review dengan Kimi)
  • Protokol A2A: gateway JSON-RPC 2.0 untuk komunikasi antar agen

Komunikasi Natif di Channels

  • Telegram, Discord, Slack, WhatsApp, Trello, integrasi bot penuh dengan DM, grup, dan thread
  • Rich message Telegram: tabel, heading, daftar, dan matematika natif lewat konfigurasi rich_messages
  • Streaming draf pesan: pembaruan “sedang mengetik…” secara langsung saat token dihasilkan di DM
  • Blok yang bisa dilipat: bagian <details>/<summary> untuk keluaran panjang
  • Isolasi session per topik forum: setiap topik di supergrup Telegram mendapat session-nya sendiri
  • Reaksi Telegram: bot membaca reaksi emoji masuk dan bisa membalas dengan reaksi alih-alih pesan bila cocok
  • Reaksi bingkai (v0.3.61): reaksi masuk dibaca berdasarkan sentimen, agen menyapa pengguna dengan nama depan
  • Reaksi di tengah giliran (v0.3.61): reaksi saat giliran sedang berjalan disuntikkan ke loop saat ini alih-alih memicu giliran kedua
  • Saran tindak lanjut (v0.3.69): tindak lanjut opsional sekali-ketuk di Telegram, Discord, Slack, WhatsApp; isi-tanpa-kirim di TUI
  • Penempelan ulang kartu rencana Telegram (v0.3.71): kartu rencana ditempel ulang dan prosa dilipat ke dalamnya saat terkubur pesan
  • Penangkapan riwayat grup penuh (v0.3.73): setiap pesan grup disimpan ke riwayat, bahkan dari pengirim dan bot di luar allowlist
  • Pembicara grup yang benar (v0.3.73): berhenti menyapa pengirim riwayat grup seolah-olah dia pembicara saat ini
  • Pewarisan session: /new mewarisi direktori kerja dari session terbaru Anda
  • /goal di semua channels: tetapkan tujuan otonom dari Telegram, Discord, Slack, WhatsApp
  • Dukungan suara: Whisper STT + Piper TTS lokal, sepenuhnya offline
  • Pemulihan crash lintas channel: permintaan tertunda dialihkan kembali ke channel asal saat restart
  • /cowork: buat workspace bersama dari channels dan TUI
  • /rename, /profiles, /cd, kelola sessions, profil, dan direktori dari channel mana pun

Self-Healing & Peningkatan Diri

  • Recursive Self-Improvement (RSI): agen menganalisis kinerja, mengenali pola, dan menulis ulang brain files

  • Deteksi tool call fantom: menangkap saat model menceritakan perubahan tanpa benar-benar mengeksekusi tools

  • Self-heal deteksi fantom (v0.3.72): menangkap giliran tanpa tool yang mengklaim efek samping berisiko tinggi (ship/push/tag/release)

  • Edit konfigurasi hanya via config_manager (v0.3.74), agen tidak pernah mengedit config.toml/keys.toml secara mentah; setiap penulisan divalidasi sebelum diterapkan

  • Dedup brain (v0.3.75): perintah /dedup plus pemindaian pasca-tulis dan mingguan lintas file menjaga brain files agar tidak mengganda, dengan persetujuan inline-keyboard Telegram

  • Petunjuk brain-file saat tools meleset (v0.3.75): catatan brain yang relevan muncul otomatis saat tool call meleset atau error

  • Kemunculan memori proaktif (v0.3.76): memori relevan muncul tanpa diminta saat konteks percakapan cocok dengan pengetahuan tersimpan

  • Penamaan model natural (v0.3.76): /models opus berhasil; nama percakapan diresolusi menjadi ID model yang tepat

  • Routing provider plan/eksekusi (v0.3.76): arahkan perencanaan dan eksekusi ke provider/model terpisah

  • Timeout loop berpikir (v0.3.78): menangkap loop penalaran tak berujung, memicu penegakan fantom dengan sticky fallback

  • Mesin epistemik (v0.3.78): pelacakan keyakinan dengan tingkat kepercayaan, mesh kognitif OODA/BDI, gerbang Orient sebelum eksekusi rencana

  • Gerbang verifikasi Ralph (v0.3.78): verifikasi tugas sadar-kriteria dengan batas iterasi; tugas harus memenuhi kriteria penerimaan yang dinyatakan

  • Gerbang keamanan TOML (v0.3.78): blocklist bash yang bisa dikonfigurasi saat runtime dengan hot-reload, redaksi rahasia bertanda kutip, verifikasi brain file

  • Analitik Mission Control (v0.3.78): filter D/W/M, grid kartu tiga kolom, tab phantom/model/streaming, DB event khusus

  • Onboarding OpenAI TTS (v0.3.78): pemilih suara dan kolom kunci API di wizard onboarding

  • Instalasi Homebrew (v0.3.79): brew install opencrabs dari homebrew-core: biner siap pakai, kedua arsitektur, tanpa toolchain Rust

  • /restart dan /exit (v0.3.79): restart atau matikan dari channel atau TUI mana pun; hanya owner di channels, mengumumkan sebelum bertindak

  • Pemutus arus kuota (v0.3.79): provider dengan kuota habis mendapat breaker TTL dan dilewati dalam perjalanan fallback; kehabisan rantai dilaporkan eksplisit

  • Status rencana lintas session (v0.3.79): rencana bertahan melewati batas session; eksekusi tugas rencana terisolasi aktif secara default, Ralph memverifikasi di direktori session itu sendiri

  • Sistem tema (v0.5.0): preset terverifikasi, pemilih interaktif, dan tema Anda sendiri dari ~/.opencrabs/themes/*.toml; truecolor dideteksi dengan tingkat cadangan ANSI-256, dan preset yang kontrasnya membuat teks tak terbaca akan ditolak

  • Memori struktur kode (v0.5.0): tree-sitter membangun indeks simbol dan graf pemanggilan di samping indeks teks, sehingga “siapa yang memanggil X” menelusuri sisi pemanggilan yang sebenarnya sementara pertanyaan konseptual tetap lewat jalur teks (#1324)

  • Transfer berkas lewat SSH (v0.5.0): berkas yang dijatuhkan ke TUI di host jarak jauh ditarik kembali melalui koneksi yang sudah terbuka, dengan opencrabs drop-agent di sisi klien (#1289)

  • Putusan pengiriman notify (v0.5.0): session_notify mengembalikan hasil kirim yang terbaca mesin, tanda terima injeksi kedalaman 3 membuat notify_id dapat diperiksa, dan pengiriman dialihkan ke session yang memiliki channel saat itu

  • Pemadatan di latar belakang (v0.5.0): peringkas berjalan di luar giliran alih-alih menahan session selama bekerja

  • Penyuntingan token saat penulisan (v0.5.0): galat provider yang membawa URL tidak lagi bisa membocorkan token bot ke log, dari mana pun dicatat (#1322)

  • Userbot Telegram hanya-terima (v0.5.0, eksperimental): penangkapan MTProto di balik feature, dengan login lokal via QR/kode/2FA; menyimpan teks yang diizinkan untuk diambil dan tidak pernah bertindak sebagai pengguna

  • Penjangkaran waktu (v0.5.1): agen selalu tahu jam berapa sekarang: setiap giliran membawa penanda waktu dalam zona waktu pengguna, dan prompt sistem tetap stabil byte demi byte untuk caching penyedia (#1516)

  • Sesi cron per job (v0.5.1): setiap job terjadwal mendapat sesinya sendiri, sehingga dua job yang berjalan bersamaan tidak pernah berbagi konteks atau penyedia (#1511)

  • Gerbang glob skill (v0.5.1): daftar globs: sebuah skill dapat menolak panggilan tool ke berkas yang cocok sampai agen benar-benar membaca body skill tersebut (#1515)

  • Tulisan config divalidasi terhadap struct (v0.5.1), penjaga tulis dan saran bagian config_manager kini diturunkan dari tipe Config itu sendiri, agar tidak pernah menyimpang dari kode yang dikirim (#1508)

  • Desain plan ditolak saat ditulis (v0.5.1): desain plan yang rusak langsung dipantul dengan menyebutkan bagian yang hilang, dan tulisan yang ditolak mengembalikan scaffold alih-alih menghapus draf (#1507)

  • Tekanan balik anggaran penyedia (v0.5.1): penyedia yang melaporkan anggaran token output memicu satu komaksi berbatas lalu percobaan ulang, alih-alih kaskade 400 (#1518)

  • Token A2A terikat dan config khusus owner (v0.5.1), token A2A terikat ke gateway yang menerbitkannya, dan config.toml/keys.toml berpindah ke mode khusus owner, dengan rahasia disingkirkan dari log

  • Mode server ACP (v0.5.2): opencrabs acp berbicara Agent Client Protocol lewat stdio JSON-RPC, sehingga Zed, MonoCode, dan klien ACP mana pun menjalankan brain yang sama dengan channels Anda, lengkap dengan streaming progres dan persetujuan yang kembali ke editor (#1540)

  • Penjelajahan sadar shadow-DOM (v0.5.2): resolusi selector menembus shadow root, sehingga otomasi menjangkau web component yang sebelumnya tidak terlihat oleh tools

  • Permukaan WhatsApp penuh (v0.5.2): pesan suara native, video/stiker/lokasi/kontak masuk, suara polling, pemulihan presence dan media, tanda terima reaksi, streaming dengan edit di tempat, pesan sementara, pemblokiran kontak, pin/teruskan/profil, pembaruan status, penemuan newsletter, tombol native flow, riwayat per chat

  • Tracing langsung dan tabel native di Discord (v0.5.2), giliran panjang mengalir sebagai balasan langsung ber-tracing, jawaban otomatis masuk thread, tabel markdown dirender secara native, dan giliran dengan tools tidak lagi mengirim jawaban akhir dua kali (#1603, #1608)

  • Topik forum Telegram dan /clear (v0.5.2): buat/ganti nama topik forum dengan pengikatan session, dan /clear memulai session baru tanpa panggilan summariser (#1585)

  • Anggaran payload menu perintah (v0.5.2): setMyCommands Telegram diam-diam menolak body permintaan di atas ~7,8KB sambil melaporkan BOT_COMMANDS_TOO_MUCH; deskripsi kini dipendekkan bertingkat agar seluruh menu muat (#1613)

  • Cron dengan trigger (v0.5.3): job menjalankan pre-flight check dan hanya mengeksekusi saat kondisi Anda terpenuhi (output tidak kosong, exit code, regex), run yang dilewati biayanya 0 token, dan trigger yang terpicu bisa mengirim goal ke sebuah session (#233)

  • Windows kelas satu (v0.5.3): penanganan shell per-platform, pembacaan file BOM/UTF-16, fallback tilde dan cwd, dengan CI membangun Windows dan meng-gate PR (#627)

  • Memori epistemik (v0.5.3): fakta di MEMORY.md membawa confidence dan decay (#1643), section yang dingin mengarsipkan diri sendiri, dan opencrabs memory prune menampilkan apa yang sudah dingin sebelum menyentuhnya (#1657)

  • Mesin tema selesai (v0.5.3): setiap widget TUI menyelesaikan warnanya melalui tema, dengan suite guard terhadap situs ANSI mentah baru, dan tema bisa mendeklarasikan canvas background (#1634)

  • Poll saran WhatsApp (v0.5.3): kumpulan follow-up yang melebihi batas tombol native dirender sebagai poll, dan satu suara memilih opsinya (#1616)

  • Keluarga session ACP (v0.5.4): session kini first-class di permukaan ACP: context meter dipulihkan saat load dan mengikuti usage updates, session/load memutar ulang transcript dan memulihkan model per-session, set_model bertahan antar proses, session/set_mode native menerapkan approval policy di sisi server, session/compact melakukan push, dan session/new menawarkan katalog model secara live

  • Serah terima terminal interaktif (v0.5.4): !vi/!nano mengambil alih terminal secara interaktif dan mengembalikannya dengan session utuh; hanya terminal Unix, di Windows tetap memakai capture lewat pipe (#1744, #1759)

  • Paste & drop universal (v0.5.4): satu router attachment bersama menerima semua jenis file saat paste atau drop dan mengklasifikasikan kode, docs, arsip, dan data agar masing-masing masuk ke pipeline yang tepat (#1740, #1743)

  • Mesin pencari Serper (v0.5.4): serper_search menambahkan hasil Google SERP, dan fan-out web_search mendedupe berdasarkan URL antar engine (#1731)

  • Decision cache (v0.5.4): decide_cached menjawab keputusan berulang dari ring reuse L1 dengan tier shadow/live dan config [decisions] (#1648)

  • Biaya yang dilaporkan provider dan satu rantai timeout (v0.5.4), ledger usage memilih biaya yang benar-benar dilaporkan provider daripada estimasi tabel (#1707), dan flag timeout diselesaikan [providers.<name>] -> [agent] -> default untuk semua provider (#1688)

  • Perintah terkompilasi /architecture dan /attach, audit trail opsional (v0.5.4), keduanya dikirim sebagai arms terkompilasi, dan audit trail opsional mencatat apa yang berjalan dengan viewer /audit (#933, #1705)

  • Permukaan native Discord (v0.5.5): polls native via send_poll, jawaban TTS dikirim sebagai pesan suara, dan commands.toml diproyeksikan ke slash commands native sehingga command Anda sendiri muncul di picker Discord (#1848, #1849, #1850)

  • Flow groups dan write governors (v0.5.5): Discord dan Slack membuka flow group di awal turn dengan clock live yang menutupi masa berpikir dan teks aktivitas memimpin baris, dan satu governor write bersama mengatur budget setiap edit serta melakukan park saat 429 (#1841, #1843, #1844, #1845, #1807, #1808, #1809, #1910, #1912, #2012)

  • /respond_to dan /cowork (v0.5.5): mode respond_to dan open per kanal di konfigurasi, plus dua command untuk mengubahnya langsung dari kanal itu sendiri (#2014, #2015)

  • Disiplin rate limit Telegram (v0.5.5): polls getUpdates dan handoff handler diinstrumenkan untuk triase stall, floor jeda sub-sekon lintas permukaan dengan telemetri admission, jeda 429 per chat di balik satu accessor Cooldown, dan link markdown ke file lokal dikirim sebagai dokumen (#1927, #1916, #1968)

  • Session lifecycle ACP v1 (v0.5.5): lima metode v1 session lifecycle telah diimplementasikan dan plan diterbitkan sebagai pembaruan plan v1 native (#1815)

  • Footer dialog bersama, URL yang bisa diklik, timeline onboarding (v0.5.5): setiap dialog berbagi satu command footer dengan verb persetujuan a/r langsung, URL dan path file bisa diklik, dan onboarding dibangun ulang sebagai timeline langkah di sisi kiri dengan command setup langsung (#1775, #1772, #1979, #1980, #1981, #1982)

  • Retirement cron one-shot (v0.5.5): job one-shot pensi saat terkirim alih-alih menyala lagi setahun kemudian, setiap run yang terkirim membawa run id-nya, dan laporan cron Discord tiba sebagai satu post forum (#544, #1703, #1851)

  • Percobaan pertama tanpa penyiapan (v0.5.11): instalasi baru langsung masuk ke chat dengan provider bawaan sudah disiapkan, config.toml dan keys.toml sudah dibuat, dan agen menyapa Anda. Wizard bersifat opsional lewat /onboard atau --onboard (#2079)

  • Turn pertama yang tidak bisa menggagalkan proses (v0.5.11): thread worker agen berjalan di stack 16 MiB, jadi turn pertama tidak lagi meluap di stack bawaan (#2080)

  • Tag rilis hanya dengan CI hijau (v0.5.11): workflow rilis membaca kesimpulan run CI milik commit itu sendiri sebelum menerbitkan. Run merah menggagalkan rilis, run yang masih berjalan akan ditunggu, dan commit tanpa run juga gagal (#2078)

  • Evolve me-restart unit yang benar (v0.5.11): restart terjadwal menyasar nama unit yang sudah diresolusi alih-alih glob penemuan opencrabs*.service, yang juga cocok dengan unit sementara yang menjalankan restart itu sendiri dan membuat systemd menghentikan eksekutornya sendiri (#2081)

  • Guest queries Telegram mendapat permukaan penuh (v0.5.12): tag di chat tempat bot tidak pernah diundang menjalankan permukaan tools, blok status langsung, dan rendering rich yang sama seperti turn biasa, dengan satu turn yang bisa dibatalkan per guest session dan rate limiting (#2087, #2109, #2133, #2135, #2138, #2143)

  • Plan diwajibkan setelah ambang tool calls (v0.5.12): begitu turn melewati ambang tool calls, agent harus berhenti dan menulis plan sebelum melanjutkan (#2128)

  • Transcript bertahan saat berganti session (v0.5.12): peta lipatan diindeks dengan anchor role dan timestamp yang stabil, bukan UUID yang dibuat setiap render, jadi berganti session lalu kembali tidak lagi melipat semua turn yang sudah Anda buka (#2155)

  • Instalasi headless menyiapkan provider bawaan (v0.5.12): opencrabs run, daemon, agent, acp, dan cron membuat token bawaan di home baru seperti yang sudah dilakukan TUI, sementara status dan doctor tetap hanya baca (#2151)

  • Mode perbaikan doctor –fix (v0.3.83): baris cron macet, marker basi, dan izin rusak diperbaiki di tempat alih-alih sekadar dilaporkan

  • Kunci tulis per path (v0.3.83): penulisan bersamaan ke file yang sama diserialisasi; penulis terakhir tidak lagi menang diam-diam

  • Isolasi worktree sub-agent (v0.3.83): setiap agen anak mendapat worktree dan branch sendiri, sehingga fan-out tidak bisa merusak pohon bersama

  • Kriteria penerimaan sadar-tipe (v0.3.83): kriteria rencana ditegakkan terhadap toolchain yang benar-benar dipakai proyek (#1133)

  • Verifikasi rencana sadar-proyek (v0.3.83): rencana diverifikasi dengan perintah proyeknya sendiri, bukan selalu cargo, dan menemukan proyek dari folder session

  • /stop membatalkan seketika (v0.3.83): menyela bahkan saat handshake provider dan jeda retry (#1148)

  • Resume session A2A (v0.3.83): session diresume berdasarkan context id, gateway dialamatkan per profil (#1159, #1161)

  • Kenop thinking DeepSeek (v0.3.83): DeepSeek mendapat parameter thinking yang benar-benar dibacanya, plus penanganan giliran khusus tool-call

  • Korelasi log session_id (v0.3.82): setiap giliran membuka span tracing berisi session id-nya, tugas cron dan mesin RSI punya miliknya sendiri, jadi satu grep menyusun ulang seluruh giliran dari log harian bersama

  • Keandalan logger (v0.3.82): logger berhenti membuang event dan berhenti menulis ke terminal TUI; penulisan yang macet tidak lagi membungkam logging thread lain

  • Brain files milik pengguna dilindungi (v0.3.82): SOUL.md, USER.md, dan MEMORY.md tidak pernah diisi dari upstream, dan direktif dialihkan ke AGENTS.md, yang selalu dimuat

  • Penyatuan seksi konfigurasi (v0.3.82): ejaan legacy [gateway] dimigrasikan di disk menjadi [a2a], jadi satu nama bertahan melewati putaran reload

  • Cache chunk-hash (v0.3.82): memori melewatkan embedding ulang chunk yang isinya tidak berubah

  • Biner pra-rilis (v0.3.82): lima target platform plus SHA256SUMS, dipublikasikan sebagai pre-release bergulir agar kontributor bisa menguji kode yang belum dirilis tanpa menunggu tag. Dijalankan sesuai permintaan, bukan setiap push

  • Pelepasan rate-limit (v0.3.82): jendela rate-limit Telegram yang panjang langsung kembali alih-alih memarkir pengiriman di antrean

  • Penyimpanan memori in-tree (v0.3.81): dependensi qmd dihapus; pencarian SQLite FTS5 + vektor dikelola in-tree

  • Path indeks eksternal (v0.3.81): pencarian memori membaca indeks di luar direktori profil, default-deny di session bersama

  • Mermaid sebagai gambar di Telegram (v0.3.81): diagram dirender sebagai gambar sementara tabel tetap formatting natif

  • Penalaran Qwen lintas giliran (v0.3.81): preserve_thinking, kenop thinking per keluarga, tier effort rekomendasi secara default, Qwen hosted terjangkau di mana saja

  • Perbaikan kehilangan kunci keys.toml (v0.3.81), kunci API provider tidak lagi hilang saat runtime; kunci yang teracuni menyembuhkan diri

  • Deteksi loop dini (v0.3.81): putaran tool berulang tertangkap sebelum provider menolak giliran

  • Gerbang mesin RSI (v0.3.81): RSI otonom mati secara default untuk daemon headless, aktifkan dengan rsi_enabled

  • Cakupan memory_search (v0.3.80): cari log harian (memory), brain files (brain), atau keduanya (all); brain files diindeks saat ditulis

  • Pengambilan memori ter-chunk (v0.3.80): dokumen di-chunk sebelum embedding sehingga chunk belakang tetap bisa dicari; recall diperingkat dengan BM25

  • Rendering natif Slack (v0.3.80): tabel dan heading datang dalam format Slack sendiri alih-alih markdown mentah

  • Perintah channel terkunci owner (v0.3.80): perintah dan skills kustom hanya untuk owner pada lengan catch-all channel di grup

  • Gerbang konvergensi RSI (v0.3.80): self-improvement berhenti saat konvergen, mundur saat beruntun tanpa perbaikan, meng-hash temuan berdasarkan identitas stabil

  • Penjaga loop (v0.3.80): penjaga pengumuman berulang dan pengulangan hampir-identik di semua tools; tembakan detektor loop sampai ke rantai fallback

  • Mode inventaris browser (v0.3.80): browser_find polos menghitung setiap elemen yang bisa diklik di halaman

  • Pembaruan templat brain-file (v0.3.80): templat AGENTS.md, BOOT.md, dan SOUL.md berubah; seeding tidak pernah menimpa file yang ada, jadi diff terhadap src/docs/reference/templates/ dan merge manual jika Anda ingin default baru

  • Rebuild brain sistem: brain files dibangun ulang dari disk saat berubah, tanpa perlu restart

  • Penemuan tools proaktif: mencari tools yang tersedia sebelum mengaku tidak bisa

  • Analyzer prompt multi-bahasa (v0.3.67): PromptAnalyzer bersama dengan dorongan lembut di TUI dan Telegram, 6 paket bahasa (EN/ES/FR/ID/PT/RU)

  • Mode rencana (v0.3.67-v0.3.68): trek design/checklist, kartu rencana persisten, perintah /plan <query>, persetujuan-diri agen saat pengguna memberi otonomi

  • Klik-untuk-membuka (v0.3.69): klik kiri pada blok tool-call atau penalaran untuk membuka blok itu saja, melengkapi Ctrl+O

  • review_gate skills (v0.3.70): deklarasi frontmatter untuk skills berisiko tinggi yang memerlukan persetujuan pengguna sebelum efek samping

  • Aktivasi tools JIT: tools extended diaktifkan sesuai permintaan, tanpa pra-registrasi

  • Perbaikan konfigurasi otomatis: config.toml rusak diperbaiki otomatis, konfigurasi terakhir-yang-baik tidak pernah dirusak

  • Manajemen anggaran konteks: ambang compaction 65% lunak / 90% keras dengan fallback LLM

  • Deteksi stream macet: jendela bergulir 2048 byte menangkap pola berulang

  • Pertahanan gaslighting: membuang pembuka penolakan-tool di tengah giliran

  • Pengiriman hasil build (v0.3.61): hasil rebuild/evolve sampai ke siapa pun yang meminta, di semua channels dan TUI

UI Terminal

  • Rendering markdown natif: penekanan, daftar, tautan, dan item tugas dirender langsung di terminal
  • Pengukur tok/s waktu-nyata: token per detik secara langsung saat streaming
  • Tampilan versi (v0.3.73): versi yang berjalan ditampilkan di header TUI dan di /help + /usage channel
  • Pembukaan penalaran 3-keadaan (v0.3.74): klik atau Ctrl+O memutar blok penalaran tertutup → dibatasi → penuh, jadi tidak pernah membanjiri tampilan
  • Header per giliran (v0.3.75): setiap giliran mendapat header ringkasan satu baris, proses berpikirnya dilipat ke dalamnya, dan giliran terlipat secara default sehingga tampilan tetap bersih
  • Pengelompokan tool call (v0.3.61): tool call beruntun dilipat menjadi satu blok yang bisa dibuka, menjaga TUI tetap bersih selama operasi banyak langkah
  • Lipatan teks menengah (v0.3.61): teks pemrosesan menengah dilipat ke log di tempat yang sama dengan tool call, jadi hanya jawaban akhir yang tetap terlihat
  • Pencarian session: filter pencarian + gulir viewport di semua sessions
  • Panel terpisah: sessions paralel gaya tmux dengan persistensi layout
  • Tempel gambar dari clipboard: tempel gambar dari browser atau aplikasi apa pun langsung ke TUI
  • Penyematan rencana: rencana aktif disemat di akhir prompt setiap giliran
  • Onboarding digerakkan agen: penyiapan pertama yang dipersonalisasi dengan alur terpandu
  • Loop otonom /goal: tetapkan tujuan dan agen berputar sampai juri LLM bilang selesai, dengan kontrol jeda/lanjut/status
  • Penetapan tujuan sendiri (v0.3.61): agen bisa menetapkan dan menggerakkan tujuan multi-gilirannya sendiri lewat tool goal_manage tanpa pengguna memanggil /goal

Pengalaman Developer

  • 50+ tools bawaan: operasi file, bash, pencarian web, eksekusi kode, otomasi browser, generasi gambar, suara, rendering PDF
  • Pencarian web paralel terpadu (v0.3.73): web_search, exa_search, dan brave_search menyebar paralel di bawah satu tool web_search
  • web_scrape: scraping URL-ke-markdown natif dengan proteksi SSRF, perayapan sitemap, deteksi JS-shell, dan ekspor sadar-profil
  • Deteksi captcha DDG (v0.3.73): captcha DuckDuckGo terdeteksi lewat HTTP 202 + pemeriksaan form struktural
  • Skill /github bawaan: kendali penuh gh CLI untuk issues, PR, review kode, dan manajemen repo
  • Penemuan tools proaktif: agen menemukan tools sebelum bilang “saya tidak bisa”
  • Sistem skills: templat alur kerja dengan pencarian fuzzy, otomatis terdaftar sebagai slash command
  • Tools dinamis: didefinisikan saat runtime lewat TOML (eksekutor HTTP + shell)
  • Sistem projects: sessions khusus dengan overlay brain per proyek, pengarsipan file, dan lencana warna
  • Editing hashline: editing file berjangkar hash dengan dukungan batch dan deteksi tabrakan
  • Mission Control: dasbor layar penuh dengan kotak masuk RSI, log aktivitas, dan jadwal cron
  • Unduh-otomatis RTK: proxy 4MB bawaan untuk penghematan token 53,5% pada 100+ perintah
  • Proteksi file rahasia: kunci SSH, .env, kredensial terlindungi secara default
  • AGENTS selalu dimuat: aturan keras dan tata kelola ditegakkan setiap giliran
  • debug_logs dari konfigurasi (v0.3.71): aktif/nonaktifkan log debug dengan hot-reload, tanpa restart
  • Cakupan redaksi rahasia (v0.3.71): batasi redaksi ke global/grup/DM dengan perintah /redact
  • Cakupan redaksi rahasia (v0.3.71): batasi redaksi ke global/grup/DM dengan perintah /redact
  • debug_logs dari konfigurasi (v0.3.71): aktif/nonaktifkan log debug dengan hot-reload, tanpa restart
  • Anjing penjaga Tmux (v0.3.71): hanya membunuh pane, peringatan 30 detik, sambung-ulang otomatis
  • Gerbang rencana tiga-keadaan (v0.3.71): GateDecision dengan bash menuju persetujuan di Editing pasca-init
  • ToolHints gaya MCP (v0.3.71): model risiko untuk klasifikasi tools, menggerakkan gerbang rencana

Browser Automation

  • Dukungan CDP penuh: navigasi, klik, ketik, tangkapan layar, JS eval, cari elemen
  • Mode headless atau headed dengan tangkapan layar per elemen
  • Persistensi cookie/session lintas sesi browser
  • Isolasi tab per session: tidak ada penginjakan DOM lintas session

Penemuan Direktif Proyek (v0.3.59)

OpenCrabs otomatis menemukan file aturan yang ditinggalkan tools coding AI lain di sebuah repo. Arahkan agen ke repositori mana pun (lewat /cd, workspace channel, atau menjalankannya di dalamnya) dan ia memindai konvensi dari Claude Code, Cursor, Windsurf, Cline, Gemini CLI, GitHub Copilot, OpenCode, dan standar lintas-tool AGENTS.md. Tanpa konfigurasi, tanpa langkah impor.

SumberFile
Standar lintas-toolAGENTS.md
Claude CodeCLAUDE.md, CLAUDE.local.md, .claude/CLAUDE.md, .claude/rules/**/*.md
Cursor.cursorrules, .cursor/rules/**/*.mdc
Windsurf.windsurfrules
Cline.clinerules (file or .clinerules/**/*.{md,txt})
Gemini CLIGEMINI.md
GitHub Copilot.github/copilot-instructions.md
OpenCode.opencode/AGENTS.md

Indeks dibangun ulang saat Anda /cd ke direktori baru, jadi file direktif selalu mutakhir.

Mulai Cepat

# Install (Linux/macOS)
ARCH=$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/')
OS=$(uname -s | tr A-Z a-z)
TAG=$(command -v jq >/dev/null 2>&1 && curl -s https://api.github.com/repos/opencrabs/opencrabs/releases/latest | jq -r .tag_name || curl -s https://api.github.com/repos/opencrabs/opencrabs/releases/latest | grep -o '"tag_name":"[^"]*"' | cut -d'"' -f4)
curl -fsSL "https://github.com/opencrabs/opencrabs/releases/download/${TAG}/opencrabs-${TAG}-${OS}-${ARCH}.tar.gz" | tar xz
./opencrabs

# Or via Cargo (requires Rust 1.94+)
cargo install opencrabs --locked

Pembaruan otomatis aktif secara default. Nonaktifkan dengan [agent] auto_update = false di ~/.opencrabs/config.toml.

Architecture

┌─────────────────────────────────────────┐
│           OpenCrabs Binary              │
│  (Single 34-36 MB Rust executable)      │
├─────────────────────────────────────────┤
│  ┌─────────────┐  ┌─────────────────┐  │
│  │   TUI       │  │   CLI Daemon    │  │
│  │  (crossterm)│  │  (systemd/launchd)││
│  └─────────────┘  └─────────────────┘  │
│                                         │
│  ┌─────────────────────────────────┐   │
│  │        Provider Registry         │   │
│  │  15 built-in + Custom OpenAI    │   │
│  │  Sticky fallback chain          │   │
│  └─────────────────────────────────┘   │
│                                         │
│  ┌─────────────────────────────────┐   │
│  │        Tool Layer                │   │
│  │  50+ built-in tools             │   │
│  │  Dynamic tools via TOML         │   │
│  │  JIT activation                 │   │
│  └─────────────────────────────────┘   │
│                                         │
│  ┌─────────────────────────────────┐   │
│  │        Channel Adapters          │   │
│  │  Telegram / Discord / Slack /    │   │
│  │  WhatsApp / Trello / Voice      │   │
│  └────────────────���────────────────┘   │
│                                         │
│  ┌─────────────────────────────────┐   │
│  │        Self-Healing Layer       │   │
│  │  Context budget / Stuck stream  │   │
│  │  Phantom detection / RSI        │   │
│  └─────────────────────────────────┘   │
│                                         │
│  ┌─────────────────────────────────┐   │
│  │        Persistence              │   │
│  │  SQLite + Brain files           │   │
│  │  FTS5 + vector search           │   │
│  └─────────────────────────────────┘   │
└─────────────────────────────────────────┘

Langkah Berikutnya

Komunitas & Dukungan

Menemukan bug atau ingin fitur? Buka issue di GitHub.