Cara Mengonfigurasi Symphony Agent untuk Menyelesaikan Masalah GitHub Secara Otomatis
9 мая 2026 г.
0
Computing/SoftwareComments (0)
Log in to leave a comment
No posts yet
Log in to leave a comment
No posts yet
Agar agen dapat memproses tiket yang menumpuk di issue tracker secara langsung, Anda harus memasukkan WORKFLOW.md ke dalam root proyek terlebih dahulu. Symphony memiliki struktur yang mendeteksi perubahan status pada papan manajemen proyek dan mengalokasikan ruang kerja yang terisolasi. Faktanya, ketika tim internal OpenAI menerapkan metode ini, jumlah pull request yang akhirnya digabungkan (merge) melonjak hingga 500% hanya dalam 3 minggu. Angka ini mungkin terdengar berlebihan, namun ini berarti pengembang hanya perlu fokus pada kode saja karena agen menangani pengaturan lingkungan dan tugas alokasi secara mandiri.
Pertama-tama, masukkan jalur repositori GitHub dan label pemicu seperti ai-fix ke dalam konfigurasi YAML. Kemudian, jalankan daemon broomva/symphony yang ditulis dalam Rust atau versi Go yaitu itervox/symphony-go untuk memantau issue setiap 30 detik. Dengan pengaturan seperti ini, waktu yang terbuang untuk mencari orang yang tepat di aplikasi pesan demi mendelegasikan tugas akan hilang.
Saat Anda menyerahkan pekerjaan kepada agen, terkadang mereka menulis kode yang tidak masuk akal dan menyerahkannya dengan percaya diri. Misalnya, mengekspos kunci keamanan atau mengabaikan konvensi tim. hooks.after_run milik Symphony adalah titik pemeriksaan yang beroperasi tepat sebelum agen mencatat hasil pekerjaannya ke repositori. Jika skrip yang dijalankan di sini menghasilkan kesalahan, Symphony akan segera menghentikan tugas tersebut dan mencegah masuknya kode sampah ke dalam sistem.
Cukup tambahkan tiga baris pada tahap after_run. Gunakan npx prettier --write untuk menyesuaikan format, npx eslint --fix untuk memperbaiki sintaksis, dan terakhir lakukan pengecekan tipe dengan npx tsc --noEmit. Dengan menjalankan loop validasi otomatis ini, tenaga manusia untuk memperbaiki kembali kode yang ditulis agen akan berkurang setengahnya. Ini sangat penting jika Anda ingin menghindari situasi di mana Anda menghabiskan seluruh waktu hanya untuk membereskan kekacauan yang dibuat oleh agen.
Menjalankan banyak agen secara bersamaan pasti akan membuat mesin lokal Anda kewalahan. Masalah seperti CPU yang terpakai sepenuhnya hingga kursor mouse berhenti bergerak, atau sistem file yang kacau sehingga kode tertimpa bisa saja terjadi. Orchestrator Symphony menggunakan fungsi filepath.EvalSymlinks secara internal untuk menganalisis jalur sehingga mencegah upaya pelarian direktori, namun pembagian sumber daya harus Anda konfigurasi sendiri.
Untuk menjalankan lebih dari 5 sesi secara stabil, gunakan kontainer Docker sebagai slot. Sangat aman untuk membatasi sumber daya dengan opsi --memory="2g" dan --cpu-shares=100, serta memutus komunikasi luar dengan --network=none. Jika Anda tidak ingin melihat agen mengirimkan data ke suatu tempat di jaringan atau melumpuhkan sistem, isolasi semacam ini adalah tindakan yang wajib dilakukan.
Membiarkan agen melakukan commit langsung ke main branch adalah tindakan yang sangat berisiko. Seberapa baik pun performa AI saat ini, tidak boleh ada satu baris pun yang digabungkan tanpa persetujuan akhir dari manusia. Hasil pekerjaan harus selalu didorong ke branch sementara dengan awalan seperti staging/ai-patch-.
Tambahkan perintah GitHub CLI (gh) di akhir pipeline. Jalankan gh pr create dalam mode non-interaktif untuk menetapkan diri Anda sebagai peninjau (reviewer), dan buatlah sistem untuk mengirim notifikasi melalui Slack. Anda cukup meninjau kodenya, dan jika tidak ada masalah, gabungkan dengan gh pr merge --squash. Struktur di mana mesin membuat draf dan manusia memberikan stempel persetujuan adalah metode yang paling cepat sekaligus aman.