Cara kerjanya
Cara kerja RADAR.
Gambaran teknis untuk pengembang. RADAR menjalankan agen pemrograman dan baru menutup sebuah tugas setelah menjalankan ulang sendiri uji penerimaan tugas itu. “Selesai” dari agen adalah klaim; eksekusi ulang itulah buktinya.
01 Loop
Satu loop untuk setiap tugas.
Setiap tugas melewati loop yang sama, dan setiap langkah hanya berjalan jika langkah sebelumnya lulus.
- 01 · buka Tugas dan uji penerimaan Ditulis sebelum pekerjaan dimulai
- 02 · lease Satu pemilik, worktree sendiri Lease dan fence token
- 03 · kerja Agen bekerja Di salinan proyeknya sendiri
- 04 · klaim Agen menyatakan selesai Dicatat sebagai klaim, bukan hasil
- 05 · verifikasi RADAR menjalankan ulang uji Pada revisi terkini
- jika lulus Ditutup Buktinya disimpan di buku catatan
- jika gagal · percobaan n dari 3 Dibuka kembali, kegagalan dilampirkan Agen yang sama mencoba lagi dari langkah 03
- setelah 3 percobaan Agen lain mengambil alih Hingga 3 percobaan lagi, dari langkah 03
- setelah 3 lagi Tugas menunggu Anda Buku catatan menolak percobaan berikutnya
- Buka
- Tugas dibuka dengan tujuannya dan sebuah perintah penerimaan yang dapat dijalankan ulang. Perintah itu diperiksa saat tugas dibuka, tanpa dijalankan: kriteria yang tidak bisa berjalan sebagaimana tertulis langsung ditolak saat itu, bukan baru ketahuan di akhir.
- Lease
- Satu tugas hanya dipegang oleh satu pemilik pada satu waktu, melalui lease dan fence token. Penulisan dari pemilik yang sudah kedaluwarsa ditolak.
- Kerja
- Agen bekerja di git worktree miliknya sendiri, pada branch-nya sendiri.
- Klaim
- Laporan agen bahwa pekerjaannya selesai dicatat sebagai klaim. Klaim tidak menutup tugas.
- Verifikasi
- RADAR menjalankan sendiri perintah penerimaan, pada revisi terkini dari pekerjaan itu. Laporan agen tetap dibaca, tetapi laporan itu bukan bukti.
- Tutup atau buka kembali
- Jika lulus, tugas dapat ditutup, dan catatan verifikasinya disimpan sebagai bukti. Jika gagal, tugas dibuka kembali dengan kegagalannya dilampirkan.
- Batas
- Tiga percobaan oleh worker, lalu tiga pengambilalihan oleh agen lain. Setelah itu buku catatan menolak percobaan berikutnya dan tugas menunggu Anda. Berganti model, sesi, atau mesin tidak mengatur ulang hitungannya, dan setiap percobaan ulang harus menyebutkan apa yang berubah.
02 Buku catatan
Satu catatan yang ditulis oleh setiap agen.
Setiap agen membaca dan menulis buku catatan tugas yang sama: sebuah file SQLite lokal. Inilah satu-satunya catatan tentang siapa yang memegang setiap tugas, apa yang diklaim, dan apa yang ditunjukkan oleh uji.
- Tugas
- Tujuan dan perintah penerimaan, ditulis sebelum pekerjaan dimulai.
- Kepemilikan
- Pemilik terkini setiap tugas, beserta lease dan fence token-nya.
- Percobaan
- Dihitung per tugas, lintas agen, model, dan mesin.
- Klaim
- Laporan agen bahwa pekerjaan selesai, disimpan terpisah dari hasil.
- Catatan verifikasi
- Setiap eksekusi uji penerimaan, terikat pada commit dan working tree tempat uji itu berjalan.
- Perubahan
- Perintah penerimaan yang diubah dicatat beserta versi lama dan versi barunya; pengesampingan juga dicatat.
Ingatan
Keputusan dan pelajaran disimpan sebagai catatan Markdown dengan sumber dan cakupan. Indeks lokal mencarinya secara offline, dan sebuah hook menampilkan catatan yang relevan kepada agen sebelum agen itu bertindak. Karena catatannya berupa Markdown biasa, Anda dapat membukanya di Obsidian.
03 Isolasi
Setiap percobaan di salinannya sendiri.
- Setiap percobaan dikerjakan di git worktree sendiri, pada branch sendiri. Dua worker tidak pernah berbagi satu tree.
- Worker tidak dapat menulis ulang perintah penerimaannya sendiri. Hanya manajer yang dapat mengubahnya, dan hanya sebelum tugas ditutup; setiap perubahan menyimpan versi lama dan versi barunya.
- Pekerjaan baru masuk ke branch main Anda setelah verifikasi lulus, dan perintah penerimaan dijalankan sekali lagi setelah merge.
- Force-push ditolak untuk semua peran.
- Aturan-aturan ini berjalan sebagai kode, sebelum dan sesudah model dipanggil. Aturan ini bukan prompt, jadi agen tidak dapat membujuk agar lolos darinya.
04 Agen
Agen yang sudah Anda pakai.
RADAR menjalankan Claude Code, Codex CLI, OMP, dan Hermes Agent, di komputer Anda atau di server Linux milik Anda. RADAR tidak menggantikan mereka: pekerjaannya tetap mereka yang melakukan.
- Claude Code
- Codex CLI
- OMP
- Hermes Agent
- Satu kontrak
- Aturan yang sama, buku catatan yang sama, gerbang verifikasi yang sama, dan batas percobaan yang sama berlaku untuk keempatnya.
- Manajer
- Agen yang Anda ajak bicara bertindak sebagai manajer: membuka tugas, menyerahkannya kepada worker, dan hanya menutup tugas dengan catatan verifikasi yang lulus.
- Worker
- Worker mengerjakan tugas di worktree masing-masing. Mereka tidak dapat menutup tugas dan tidak dapat mengubah perintah penerimaannya.
05 Lokal lebih dulu
Lokal lebih dulu.
RADAR tidak memerlukan akun maupun cloud.
- Di mesin Anda
- Buku catatan, catatan ingatan, worktree, dan setiap eksekusi verifikasi, di komputer Anda atau di server Linux milik Anda.
- Memerlukan jaringan
- Agen Anda, yang berkomunikasi dengan penyedianya sendiri seperti sekarang. Setiap layanan luar lainnya bersifat opsional dan nonaktif sampai Anda mengaktifkannya.
- Persyaratan
- Windows atau Linux (macOS belum didukung), Python 3.12 atau yang lebih baru, dan Git. RADAR hanya memakai pustaka standar Python.
- Biaya
- Tidak ada tagihan tersendiri. Agen tetap memakai akun yang Anda gunakan untuk masuk ke agen itu. API berbayar hanya dipakai jika Anda menyebutkan penyedia dan anggarannya.
- Pemasangan
- Beri agen pemrograman Anda tautan repositori dan katakan “pasang ini”. Agen itu memeriksa komputer Anda, bertanya sebelum memasang apa pun yang belum ada, memasang RADAR di sebuah virtual environment, lalu melaporkan keluaran radar init dan radar doctor.
06 Perintah
Daftar perintah yang pendek.
Perintah yang akan Anda gunakan pertama kali. Placeholder ditulis di dalam kurung sudut.
| Perintah | Fungsinya |
|---|---|
radar init | Menyiapkan direktori home RADAR dan buku catatan. |
radar doctor | Memeriksa instalasi dan mencantumkan layanan opsional yang belum dikonfigurasi. |
radar task new --project P --goal "…" --accept "<command>" | Membuka tugas beserta perintah penerimaannya. |
radar dispatch <task> | Menyerahkan tugas kepada agen, yang bekerja di worktree-nya sendiri. |
radar status | Menampilkan keseluruhan sistem. |
radar verify <task> | Menjalankan ulang perintah penerimaan pada revisi terkini. |
radar task done <task> --evidence "<verification report>" | Menutup tugas. Ditolak sampai verifikasi lulus. |
radar collect | Mengumpulkan pekerjaan yang sudah selesai. |
radar integrate | Menggabungkan pekerjaan yang sudah diverifikasi ke main. |
radar stop | Memarkir pekerjaan dan memasang STOP. |
radar go | Menghapus STOP dan mencantumkan apa yang dapat dilanjutkan. |
radar memory search --local "<words>" | Mencari catatan ingatan secara offline. |
radar uiradar web | Membuka cockpit di terminal atau di browser. |
radar help --all | Mencantumkan semua perintah. radar <command> -h memberikan detailnya. |
07 Yang tidak dilakukannya
Yang tidak dilakukan RADAR.
- RADAR tidak menggantikan agen Anda. Merekalah yang tetap menulis kode; RADAR memberi mereka satu catatan, satu pemeriksaan yang tidak bisa mereka lewati, dan satu ingatan.
- RADAR tidak menulis uji Anda. Sebuah pemeriksaan hanya sebaik ujinya; RADAR membuat uji itu tertulis jelas sebelum pekerjaan dimulai, sehingga manusia bisa membacanya.
- RADAR tidak menutup pekerjaan yang tidak memiliki uji. Tugas tanpa perintah penerimaan yang dapat dijalankan ditolak saat dibuka.
- RADAR tidak membuat agen Anda offline. Mereka tetap berkomunikasi dengan penyedianya sendiri, seperti sekarang.
- Edisi terbuka ini ditujukan bagi pengembang perorangan, bukan tim; edisi perusahaan sedang dikembangkan.
08 Status
Dalam akses awal
Akses awal sekarang. Sumber terbuka saat rilis publik.
RADAR sedang dalam akses awal. RADAR akan diterbitkan sebagai sumber terbuka dengan lisensi Apache-2.0 saat rilis publik. Untuk bergabung, tulis kepada kami.