Transcript
00:00:00Ini adalah OpenAI Symphony, sebuah alat sumber terbuka untuk mengatur agen yang berjalan lama menggunakan
00:00:05pelacak masalah yang sudah ada seperti Linear untuk membantu agen Anda menyelesaikan tugas secara mandiri tanpa
00:00:10pengawasan manusia. Tapi mengapa agen tidak perlu membangunnya dari awal sebelum Anda bisa menggunakannya?
00:00:14Apakah ini hanya mendukung Codex CLI? Dan apakah ini awal dari lebih banyak
00:00:18alat sumber terbuka dari OpenAI? Klik subscribe dan mari kita cari tahu.
00:00:25Symphony hanya ada karena OpenAI mengalami hambatan atensi manusia, yang berarti para insinyur
00:00:30hanya bisa mengawasi 3-5 sesi Codex secara bersamaan sebelum perpindahan konteks mulai
00:00:35mempengaruhi produktivitas secara negatif. Hal ini tentu saja tidak akan berkembang luas. Jadi tebak bagaimana OpenAI memperbaiki
00:00:41masalah agen-cepat-manajer-lambat ini? Mereka menyingkirkan manajer manusia. Kurang lebih.
00:00:47Karena dengan Symphony, manusia menempatkan tugas di papan, agen baru akan dijalankan untuk menyelesaikan tugas tersebut,
00:00:52dan agen tersebut hanya akan melibatkan manusia jika ada sesuatu yang perlu ditinjau.
00:00:55Namun bagaimana perbandingan Symphony dengan alat serupa seperti Multica dan Conductor? Nah,
00:00:58tonton demonya dan semuanya akan menjadi sangat jelas. Namun sebelum kita mulai, saya hanya ingin mengatakan
00:01:03Symphony memiliki proses instalasi teraneh yang pernah saya lihat seumur hidup saya. Atau mungkin itu
00:01:07cara paling jenius untuk menginstal sesuatu. Kita akan membahasnya nanti.
00:01:10Pertama, mari kita pelajari contoh dasarnya. Jadi saya sudah menjalankan Symphony,
00:01:14memeriksa tugas di Linear untuk dikerjakan. Dan di Linear, saya akan membuat masalah baru,
00:01:18yaitu membangun aplikasi Hello World menggunakan TypeScript dan BUN.
00:01:22Saat ini, Symphony tidak dikonfigurasi untuk mengerjakan tugas backlog. Jadi saya akan mengubah statusnya menjadi To-Do
00:01:27dan menekan Create Issue. Ingat ID tugasnya, yaitu SYN7.
00:01:31Setelah beberapa saat, Symphony mendeteksi ID tugas tersebut. Dan beberapa detik kemudian,
00:01:36kita mendapatkan kesalahan validasi GraphQL, yang bukan masalah besar dan sangat mudah diperbaiki oleh Codex.
00:01:41Namun setelah itu, kita dapat melihat bahwa Codex telah menyelesaikan pekerjaannya, mengubah masalah
00:01:45dari To-Do menjadi Done, dan meninggalkan komentar di sini dari Symphony. Yang berarti jika kita pergi ke
00:01:49direktori ruang kerja Symphony kita, kita akan membicarakan itu lebih lanjut nanti, kita bisa melihat ada
00:01:53ruang kerja baru dengan ID yang sama dengan masalah kita. Dan jika kita masuk ke ruang kerja tersebut, kita memiliki daftar
00:01:58file yang dibuat untuk aplikasi Hello World TypeScript BUN. Dan jika kita masuk ke direktori source,
00:02:04kita dapat melihat bahwa kode untuk aplikasinya ada di sini. Dan itulah inti dari Symphony.
00:02:08Sekarang mari kita bahas cara mengaturnya. Ada dua cara untuk menginstal Symphony
00:02:12menurut repo ini. Opsi kedua, yang biasa kita lakukan, kita menyiapkan Elixir,
00:02:16mengklon repo, lalu mem-build kodenya dan menjalankannya menggunakan file alur kerja yang sudah ada.
00:02:20Opsi pertama, bagaimanapun, adalah cara yang mungkin paling aneh atau paling visioner untuk menginstal sesuatu.
00:02:25Anda cukup memberikan prompt ini kepada agen pengodean Anda, dan ia akan membaca file spesifikasi,
00:02:30yang panjangnya lebih dari 2000 baris. Tapi pada dasarnya ini memberikan instruksi mendetail
00:02:34kepada agen Anda tentang cara membangun Symphony, yang luar biasa karena jika semua orang menempuh rute ini,
00:02:39tidak akan ada dua versi Symphony yang terlihat sama. Beberapa orang akan memiliki fitur berbeda dalam
00:02:43bahasa yang berbeda, yang akan menjadi kekacauan bagi OpenAI untuk memelihara dan mendukungnya.
00:02:47Tapi ini juga jenius karena jika Anda membangun versi Symphony Anda sendiri,
00:02:51Anda akan merasa bertanggung jawab atas hal itu. Anda akan memperbaiki bug, menambah fitur,
00:02:55dan pada dasarnya memeliharanya. Dan jika Anda tidak ingin Symphony menggunakan Linear atau
00:02:59Codex, maka itu terserah Anda. Seseorang membangun Symphony versi Go yang berjalan di Charm CLI,
00:03:04dan orang lain membangun yang ditenagai oleh Claude SDK. Saya tidak se-kreatif itu,
00:03:09jadi saya memasukkan prompt default ke Codex menggunakan GPT 5.5 Low Effort, dan itu memberi saya versi Python
00:03:15dari Symphony, yang masuk akal karena LLM sangat bagus dalam Python. Namun setelah itu selesai,
00:03:19Anda akan memerlukan kunci API pribadi Linear, yang bisa Anda dapatkan dari security and access,
00:03:23dan Anda dapat membuatnya dengan mengklik di sini. Kemudian Anda harus menambahkan kunci itu ke profil kerja Anda,
00:03:28yaitu file yang memberi tahu Symphony cara melakukan tugasnya, yang berisi beberapa YAML front matter,
00:03:32yang tentu saja memiliki kunci API, status aktif agar agen tahu kapan ia bisa mengerjakan tugas,
00:03:37serta root ruang kerja dan perintah Codex, yang merupakan perintah shell yang digunakan Symphony
00:03:42untuk meluncurkan agen pengodean. Dan di bawahnya adalah prompt markdown yang dikirim ke agen pengodean
00:03:46untuk setiap masalah. Anda dapat mengakses workflow.yaml OpenAI dari repo mereka jika Anda tertarik.
00:03:51Namun untuk saat ini, alur kerja ini belum cocok untuk proyek nyata. Katakanlah saya ingin mengubah
00:03:56aplikasi emulasi film yang sedang saya kerjakan. Saya perlu menambahkan hook create-after, yang berjalan
00:04:01setelah Symphony membuat ruang kerja untuk sebuah masalah, dan hook ini pertama-tama akan mengklon repo ke
00:04:06direktori ruang kerja, lalu berpindah ke branch baru di repo tersebut. Saya juga menambahkan hook run-after,
00:04:10yang berjalan setelah Codex selesai mengerjakan masalah tersebut. Jadi ini akan melakukan staging file, lalu
00:04:15membuat commit baru sebelum mendorong branch dan membuat pull request baru dengan nilai-nilai ini.
00:04:20Jadi sekarang jika saya menjalankan Symphony menggunakan UV, yang juga diakuisisi oleh OpenAI, tapi itu topik untuk
00:04:25video lain, ia akan memeriksa masalah baru. Jadi sekarang jika saya membuat masalah baru untuk memperbarui readme, tepatnya
00:04:30di bagian yang menunjukkan pemrosesan batch, untuk menggunakan wildcard alih-alih menunjukkan banyak file, sekali lagi,
00:04:35saya akan mengubahnya dari backlog menjadi to-do, lalu tekan create issue. Sekarang Symphony telah mendeteksi
00:04:40masalah tersebut. Dan jika saya melihat direktori ruang kerja Symphony, kita bisa melihat ada folder baru yang cocok
00:04:45dengan ID masalah kita, yang berisi proyek yang telah diklon. Dan sekarang setelah Symphony selesai mengerjakan
00:04:49masalah tersebut, statusnya berubah menjadi done dan telah dibuat PR baru dengan tautan ke tiket Linear
00:04:54dan perubahan tepat seperti yang saya minta. Sekarang, tentu saja, saya bisa mengubah kode Symphony saya untuk menambahkan
00:04:59deskripsi PR yang lebih baik dan menempatkan tautan ke PR di komentar, tapi saya yakin itu sangat mudah bagi
00:05:04Codex untuk dilakukan. Jadi itulah gambaran singkat tentang Symphony. Jika Anda sudah terbiasa dengan atau bekerja di
00:05:08perusahaan yang menggunakan Linear, maka Anda akan merasa familiar dengan antarmukanya. Dan jika Anda pengguna Codex,
00:05:13maka Anda dapat menggunakan keahlian Anda, alat MCP, dan plugin yang sudah Anda instal. Saya pribadi tidak
00:05:18menggunakan Codex, tapi saya bisa melihat visi yang ingin dicapai OpenAI dengan Symphony. Bayangkan
00:05:22Anda memiliki tim pengembang yang semuanya mengerjakan proyek yang sama dengan AI. Alih-alih memiliki
00:05:28harness pribadi dengan alur kerja masing-masing, bisa ada agen pusat dengan keahlian pusat, alat pusat,
00:05:33alur kerja pusat, dan plugin. Dan setiap pengembang dapat berkomunikasi dengan itu dengan memberikan
00:05:37tugas dan mereka dapat melihat apa yang dikerjakan pengembang lain, prompt apa yang mereka gunakan, dan dapat
00:05:41melihat sekilas fitur lain apa yang mungkin memengaruhi fitur yang sedang mereka kerjakan. Meskipun
00:05:46sangat sulit untuk membuat fitur yang tidak akan menyentuh bagian lain dari kode yang sedang dikerjakan
00:05:49orang lain. Namun sehebat apa pun Symphony, menurut saya, Multica bekerja lebih baik karena
00:05:54lebih mudah diatur, dibuat, dan ditambahkan agen yang berbeda, dan Anda bahkan dapat menjadwalkan tugas. Namun,
00:05:59saya benar-benar melihat tempat bagi Symphony. Ini semacam versi dasar dari Multica di mana Anda
00:06:04dapat menambahkan fitur tepat yang Anda inginkan alih-alih memiliki produk yang sudah jadi untuk Anda. Jadi anggaplah
00:06:08Symphony seperti Pi harness dan alat lain seperti Multica atau Conductor sebagai Claude Code. Dan jika
00:06:13Anda tidak tahu apa-apa tentang Multica, silakan tonton video ini, yang membahas semua yang
00:06:18perlu Anda ketahui tentangnya.