- qm adalah harness agen multipemain yang memungkinkan anggota startup berkolaborasi dengan agen di kanal Slack, pesan grup, dan proyek sambil masing-masing memakai ruang kerja terisolasi
- Memisahkan memori, file, keychain, izin, tugas terjadwal, aplikasi web, dan sandbox persisten untuk setiap orang dan ruang percakapan, sambil mempertahankan identitas dan konfigurasi yang sama di Slack dan web
- Dapat menghubungkan Pi, OpenCode, Codex, dan Claude Code ke inti yang sama, serta menempatkan penyimpanan sesi, sandbox, dan memori di balik antarmuka untuk menghindari ketergantungan pada model atau penyedia tertentu
- Menyediakan mode keamanan Strict, Auto, dan Dangerous, serta menerapkan kebijakan perintah dan penolakan paksa untuk tindakan seperti penghapusan rekursif atau SQL destruktif di semua mode
- Konfigurasi dan infrastruktur per organisasi disimpan di repositori deployment terpisah atau repositori privat hasil clone biasa, dan operator harus melakukan deployment langsung ke akun Fly.io atau AWS miliknya sendiri
Ruang kerja agen tingkat organisasi
- Dirancang dengan cakupan pribadi dan bersama (scope) sebagai unit dasar untuk mengurangi kompleksitas saat agen bergaya asisten pribadi diterapkan ke seluruh perusahaan
- Setiap karyawan dapat bekerja di ruang kerja independen tanpa memengaruhi orang lain
- Di kanal Slack, pesan grup, dan proyek, banyak orang dapat berkolaborasi dengan agen yang sama
- Setiap orang dan ruang percakapan memiliki memori, file, tampilan keychain, izin, tugas terjadwal, aplikasi web, dan sandbox persisten yang terpisah
- Menggunakan identitas dan konfigurasi yang sama antara Slack dan aplikasi web
- Admin dapat mengontrol pengaturan tingkat organisasi, postur keamanan, harness yang tersedia, dan model yang dapat digunakan
- Skill teknis dimiliki oleh scope dan dapat dibagikan melalui pemberian izin
- Peningkatan ke tingkat seluruh organisasi memerlukan persetujuan admin
- Paket skill dapat diimpor dari repositori Git
- Tugas terjadwal (cron) dan tugas pemantauan (watch) berjalan di latar belakang tanpa harus diawasi pengguna
Pekerjaan yang didukung
- Dapat menelusuri memo internal, email, dokumen, basis data, dan web sekaligus untuk mengakses pengetahuan perusahaan
- Dapat membuat aplikasi web internal, membukanya untuk orang yang membutuhkan, dan menjaga data tetap mutakhir
- Setelah mempelajari gaya bahasa pengguna dari riwayat pengiriman sebelumnya, dapat mengklasifikasikan inbox sesuai jadwal serta membuat label dan draf balasan
- Dapat menjalankan pengujian di repositori yang ada, membuat PR, memantau CI, dan memeriksa log sistem
- Dapat melacak proyek di kanal bersama serta memposting progres dan tindak lanjut
Struktur inti dan eksekusi
- Semua permintaan melewati inti headless dan menghasilkan respons melalui berbagai model dan harness
- Postgres menyimpan status persisten seperti data pengguna, riwayat sesi, antrean, dan memori
- Permukaan alat yang digunakan agen kecil dan tetap, dan alat
execute menjalankan perintah di sandbox terisolasi milik scope tersebut
- Sandbox berfungsi sebagai komputer persisten yang dimiliki tiap scope
- Alat yang dipasang tetap tersedia untuk tugas berikutnya
- Web UI, panel admin, dan portal publik adalah plugin opsional yang dipasang di atas HTTP API inti
- Slack adalah plugin in-process opsional yang dijalankan dan diawasi langsung oleh inti sebagai service client
- Inti menjalankan TypeScript langsung di Node dan menggunakan Fastify untuk HTTP
- Plugin Slack menggunakan Bolt
- Web UI dibangun dengan Vite dan dirender dengan Lit
- Harness, penyimpanan sesi, sandbox, dan memori masing-masing berada di balik antarmuka, dan implementasi produksi dapat diganti dari satu file wiring
Model deployment per organisasi
- Konfigurasi per perusahaan, alat dan skill kustom, image sandbox, dan infrastruktur ditempatkan di direktori deployment yang terpisah dari inti
qm CLI memvalidasi dan melakukan deployment direktori deployment
- Setelah bergantung pada
@yc-software/qm di repositori milik organisasi, inisialisasi dapat dilakukan seperti berikut
npm exec --yes --package=@yc-software/qm@latest -- \
qm init . --org <slug> --target <fly-or-aws>
npm install
- Proses inisialisasi memandu infrastruktur, login web, kredensial konektor, akses Slack opsional, deployment, dan verifikasi nyata tanpa memerlukan checkout source
- Deployment berjalan di akun cloud milik operator sendiri
- Inisialisasi tidak membuat atau mengaktifkan CI deployment, dan repositori qm juga tidak memiliki workflow deployment produksi
- Prosedur rinci dirangkum di
deployment.md
Keamanan dan rahasia
- Agen bertindak dengan kredensial dan izin milik orang yang bekerja bersamanya, dan semua tindakan yang dilakukan tercatat dalam audit log
- Organisasi memilih satu postur keamanan, dan pada scope yang lebih sempit postur itu hanya bisa diperketat, bukan dilonggarkan
- Strict: menghentikan semua pemanggilan alat harness sampai ada persetujuan manusia, kecuali dua tindakan akhir giliran yang tidak memiliki efek
- Auto: mode default, di mana classifier memeriksa data eksternal berlabel sumber dan hasil alat sebelum diteruskan ke model
- Proxy inspeksi sendiri dapat ditentukan di lingkungan deployment
- Dangerous: tidak ada inspeksi konten atau jeda di antara pemanggilan alat
- Kebijakan perintah yang dideklarasikan sebelumnya berlaku di semua mode keamanan
- Bersama aturan persetujuan, perintah seperti penghapusan rekursif dan SQL destruktif ditolak secara paksa
- Mode Dangerous juga tidak menjadi pengecualian
- Model ancaman, prasyarat operator, dan batasan yang diketahui dapat dilihat di
SECURITY.md
Repositori kustom privat
- Organisasi yang tidak cukup hanya dengan repositori deployment dapat mengoperasikan repositori clone privat agar inti dan kode kustom privat bisa dibaca di satu tempat
- Harus dibuat sebagai clone biasa, bukan memakai fitur Fork GitHub
- Fork GitHub dari repositori publik tidak bisa diubah menjadi privat
- Fork GitHub berbagi object network dengan sumbernya, sehingga commit yang didorong ke fork dapat dicari dari sisi publik lewat SHA
- Repositori clone biasa tidak memiliki masalah ini, tetapi workflow CI upstream benar-benar berjalan di akun organisasi
- Rahasia yang diperlukan harus disediakan atau workflow yang tidak diinginkan harus dinonaktifkan
- Konfigurasi per organisasi, alat dan skill sandbox, image plugin, dan infrastruktur disimpan di
deploy/layers/<org>/
- Menjaga inti tetap identik byte demi byte dengan upstream untuk mengurangi skala merge
- Dua skill mengelola batas antara inti publik dan area kustom privat
update-qm menggabungkan upstream qm ke repositori privat dan membuat PR sinkronisasi
upstream-pr membuat branch dari upstream/main dan mengirim perubahan yang tidak spesifik organisasi ke qm
- Memeriksa identifier organisasi di diff, pesan commit, dan screenshot sebelum push
- File di bawah
deploy/layers/ tidak dikirim ke upstream
Kontribusi dan lisensi
- Kontribusi diterima sebagai dokumen
.txt atau .md yang ditulis manusia, bukan kode
- Perubahan yang diinginkan ditulis secara informal di
adrs/, lalu pihak proyek akan mengimplementasikannya setelah ada kesepakatan
- Aturan rinci ada di
CONTRIBUTING.md
- Kerentanan harus dilaporkan secara privat mengikuti prosedur di
SECURITY.md, bukan lewat issue publik
- Bagian yang tidak diberi keterangan terpisah disediakan di bawah MIT License
1 komentar
Komentar Hacker News
Menarik melihat elemen dasar dan konsep UI baru bermunculan di era LLM, tetapi ada terlalu banyak aplikasi kreatif dan penjelasannya kurang, sehingga sulit memahami apa fungsi masing-masing
Di halaman web agen Hermes, saya sama sekali tidak memahami fiturnya, dan baru setelah cukup lama mengulik halaman qm saya menemukan penjelasan yang memadai. Akhir-akhir ini saya sering memakai Orca yang didukung YC untuk mengelola sesi coding, tetapi karena database sesi berbasis PostgreSQL-nya kurang memadai, qm layak dicoba
Senang melihat arah seperti ini muncul bersama Buzz. Bagian tersulit dari agen multi-pengguna bukanlah agent loop, melainkan penentuan cakupan, dan cakupan per individu serta room bersama di QM merupakan solusi yang masuk akal untuk asisten seluruh perusahaan
Tim kami sedang membuat AQ (aq.dev), alat coding multi-pengguna yang menjalankan Claude Code dan Codex bersama-sama, jadi melihat YC merilis alat agen multi-pengguna untuk pekerjaan terasa sekaligus mengonfirmasi arah ini dan agak tidak realistis
Sudah ada banyak produk serupa, jadi saya tidak tahu mengapa harus memakai ini alih-alih Claude Cowork. Cowork terlihat lebih sederhana, lebih matang, dan lebih kaya fitur, jadi perlu ada perbandingan
QM vs CoworkPerlu dilihat bagaimana mereka mengimplementasikan konteks dan keamanan tingkat organisasi. Ini tampak sangat saling melengkapi dengan alat coding saya yang saat ini menyediakan antarmuka AI optimal untuk individu, dan akan bagus jika hanya dengan beberapa tiket besar kita bisa memiliki arsitektur seluruh perusahaan sekaligus antarmuka coding personal yang produktif
Saya penasaran apakah Hermes adalah pilihan terbaik di antara agen keluarga OpenClaw yang disebut-sebut telah digunakan sebelumnya, dan para pengguna tingkat lanjut sebenarnya memakai sistem seperti ini untuk apa
Saya memakainya untuk memperbaiki kegagalan CI sederhana secara otomatis, menerima alert produksi lalu menganalisis akar masalah dan membuat PR perbaikan, memeriksa dan mengoptimalkan kueri database yang lambat secara berkala, serta membuat chart untuk menjawab pertanyaan data sekali pakai. Saya juga pernah memakainya untuk coding saat bepergian, tetapi lebih menyukai agen interaktif yang memungkinkan saya memeriksa kode secara langsung
Saya menyukai proses membuat perangkat lunak itu sendiri dan kendali penuh, dan loop agen dasar sebenarnya tidak istimewa. Ada sangat banyak hal yang bisa disesuaikan di luar loop inti, dan proses mencoba berbagai cara ekstensi itu menyenangkan. Tidak perlu memikirkan monetisasi atau generalitas; cukup tambahkan fitur yang dibutuhkan, dan tidak perlu membuatnya bisa dipasangi plugin tanpa batas. Saya berterima kasih kepada nanoclaw dan Hermes karena memberi ide inti, tetapi sekarang saya ingin memodifikasinya dengan cara saya sendiri
Saya menggunakannya untuk membaca feed RSS tambahan dan newsletter, menyaring hanya informasi yang penting bagi saya, lalu menyampaikan berita dan tren pasar
Ini tampak seperti alat internal yang buru-buru dirilis YC untuk meminimalkan area yang direbut Buzz. Saya penasaran dengan evaluasi dari orang yang sudah membandingkan kedua alat itu secara langsung
Saya penasaran apa arti
yc softwareMenarik bahwa mereka juga merilis skill desain
anti-slopyang membuat antarmuka tidak terlihat seperti templateUntuk produk konsumen premium, mereka melarang palet warna yang sering dipakai AI, dan karena landing page serta portofolio adalah produk visual, mereka mendefinisikan halaman teks yang hanya memiliki area screenshot palsu sebagai hasil berkualitas rendah. https://github.com/yc-software/qm/blob/7f2c916360f1797a8ff2a...
Judul seperti
qm - a multiplayer agent harness for workakan lebih berguna karena menunjukkan kegunaan alat tersebut