Langkau ke kandungan

@-sebut ejen

Panduan ini menunjukkan cara untuk @-sebut ejen dan rakan sepasukan dalam sesuatu ruang.

Taip @ dalam penggubah mesej dan pilih ejen daripada autolengkap, atau taip nama itu sendiri:

@alice fix the login bug

Ejen yang disebut ditambahkan ke dalam ruang sebagai peserta jika ia belum menjadi peserta, lalu dihantar dengan konteks dan modus ruang itu. Peserta yang tidak disebut melihat mesej itu tetapi tidak dihantar.

Jika anda menghantar mesej tanpa sebutan ejen, Control Center memilih sendiri siapa yang menjawab: ejen yang terakhir bercakap dalam perbualan itu, jika tidak pemilik perbualan itu apabila ada, jika tidak ejen peringkat atas pertama antara peserta ruang itu. Dalam ruang yang hanya ada satu ejen, itu sentiasa ejen tunggal tersebut.

Token sebutan dipadankan tanpa mengira huruf besar-kecil, melalui nama tepat atau awalan. Jadi @arch mencapai ejen bernama architect dan @Alice mencapai alice.

Dua akibat yang wajar dirancang:

  • Token pendek bukan satu ralat. Jika dua ejen berkongsi awalan, ejen pertama yang dijumpai menang, dan yang mana satu itu bergantung pada susunan — bukan pada mana-mana peraturan pemutus seri. Gunakan nama penuh apabila nama bertindih.
  • Hanya huruf, digit dan garis bawah menjadi sebahagian daripada token. Penghurai memadankan @(\w+), jadi @code-reviewer dibaca sebagai token code dan @my agent sebagai my. Ejen yang namanya mengandungi sempang, titik atau ruang tidak boleh disebut dengan pasti — termasuk melalui autolengkap, yang memasukkan nama itu sebagai teks biasa. Namakan ejen dengan satu perkataan, atau dengan garis bawah.

Sebutan dibuang daripada teks sebelum ia sampai kepada ejen. Mesej yang hanya mengandungi sebutan (@alice) oleh itu tidak menghantar apa-apa — berikan ia sesuatu untuk dilakukan.

@alice refactor the auth module. @bob write tests for it.

Kedua-dua ejen dihantar secara selari ke dalam perbualan yang sama dan kedua-duanya menerima mesej penuh itu.

Mereka juga berkongsi worktree ruang itu. Worktree repositori disediakan mengikut ruang, bukan mengikut ejen; setiap ejen mendapat direktori kerja overlay sendiri untuk AGENTS.md, kemahiran dan konfigurasinya, dengan repositori yang dikongsi dipautkan secara baca-tulis. Jadi dua ejen yang disebut bersama boleh melihat — dan berlanggar dengan — suntingan masing-masing.

Mana-mana @token yang tidak sepadan dengan ejen akan dicuba terhadap ahli manusia ruang kerja itu, mengikut handle, dengan peraturan nama tepat atau awalan tanpa mengira huruf besar-kecil yang sama.

Sebutan manusia yang berjaya diselesaikan tidak menghantar apa-apa. Ia hanya menaiki metadata mesej semata-mata supaya penghala pemberitahuan boleh menghantar ping kepada orang itu.

Nama ejen sentiasa dicuba dahulu dan token yang diambil oleh ejen tidak pernah ditawarkan kepada senarai ahli — satu @word hanya boleh diselesaikan kepada satu prinsipal sahaja.

Ejen yang dihantar menerima blok “Summons” dalam promptnya yang menamakan siapa yang memanggilnya dan menyenaraikan senarai ruang — ejen lain (ditanda sebagai peringkat atas atau bawahan) dan ahli manusia — supaya ia tahu kepada siapa ia boleh menyerahkan kerja. Blok itu juga memberitahunya bahawa menyebut ejen lain dalam balasannya membangunkan ejen itu, dan menyebut dirinya sendiri diabaikan.

Ejen boleh menyerahkan kerja dalam balasannya sendiri. Apabila satu giliran selesai dengan bersih, sebutan dalam teksnya diselesaikan dan ejen-ejen itu ditambahkan ke dalam ruang lalu dihantar ke dalam perbualan yang sama, dengan giliran yang menyebut itu sebagai prompt mereka. Giliran yang gagal atau terganggu tidak membangunkan sesiapa — ia berhenti di tengah-tengah pemikiran.

Peraturan ini sengaja lebih ketat daripada peraturan penggubah mesej, kerana tiada siapa yang memerhati untuk membetulkan tekaan yang salah:

  • Nama tepat sahaja. Tiada padanan awalan. @arch mencapai architect apabila manusia menaipnya; daripada ejen ia tidak mencapai sesiapa. Nama yang sepadan dengan dua ejen juga tidak mencapai sesiapa.
  • Kod bukan prosa. Sebutan di dalam blok berpagar atau `backticks` diabaikan, jadi memetik anotasi @Override atau pip install foo@1.2 adalah selamat. Pagar yang tidak ditamatkan mengosongkan semua yang selepasnya.
  • @ yang terlekat pada token sebelumnya bukan sebutan — sam@host.com, pkg/@scope dan node@20 tidak diselesaikan kepada sesiapa.
  • Sempang dikekalkan, jadi @code-reviewer diselesaikan sebagai dirinya sendiri dan bukan sebagai token code.
  • Paling banyak tiga ejen setiap giliran. Ejen yang menyenaraikan enam rakan sepasukan dalam satu ringkasan sedang menyenaraikan mereka, bukan memanggil mereka.

Rantaian kebangkitan dibatasi sama seperti perwakilan: kedalaman 3, dan ejen yang sudah berada dalam rantaian itu tidak boleh dibangunkan lagi olehnya (tiada A → B → A). Pasangan tersusun juga dihadkan kadarnya merentas rantaian. Kebangkitan yang ditolak menyiarkan mesej sistem ke dalam perbualan yang menyatakan sebutan mana yang tidak disampaikan dan mengapa — nama yang tidak diselesaikan tidak berbuat demikian, kerana jika tidak, mana-mana @ dalam ayat akan menceritakan dirinya sendiri.

Untuk penyerahan yang tidak boleh bergantung pada prosa — permintaan/balasan, atau mencapai ejen di luar ruang — gunakan alat send_to_agent, ask_agent dan delegate_task sebagai gantinya.