Wspominanie agentów przez @
W tym poradniku pokazano, jak wspominać agentów i członków zespołu przez @ w przestrzeni.
Wspomnij agenta
Dział zatytułowany „Wspomnij agenta”Wpisz @ w kompozytorze i wybierz agenta z autouzupełniania albo wpisz nazwę
samodzielnie:
@alice fix the login bugWspomniany agent zostaje dodany do przestrzeni jako uczestnik, jeśli jeszcze nim nie jest, i wysłany z kontekstem oraz trybem tej przestrzeni. Niewspomniani uczestnicy widzą wiadomość, ale nie są wysyłani.
Jeśli wyślesz wiadomość bez wzmianki o agencie, Control Center sam wybierze odpowiadającego: agenta, który ostatni zabrał głos w rozmowie; w przeciwnym razie właściciela rozmowy, jeśli go ma; a w ostateczności pierwszego agenta najwyższego poziomu wśród uczestników przestrzeni. W przestrzeni z jednym agentem to zawsze ten jedyny agent.
Jak dopasowywana jest nazwa
Dział zatytułowany „Jak dopasowywana jest nazwa”Token wzmianki jest dopasowywany bez rozróżniania wielkości liter, po
dokładnej nazwie lub prefiksie. Dzięki temu @arch dociera do agenta
o nazwie architect, a @Alice — do alice.
Dwie konsekwencje, które warto uwzględnić w planach:
- Krótki token nie jest błędem. Jeśli dwaj agenci dzielą prefiks, wygrywa pierwszy znaleziony, a to, który to jest, zależy od kolejności — nie od żadnej reguły rozstrzygania remisów. Gdy nazwy się nakładają, używaj pełnej nazwy.
- Tokenem są wyłącznie litery, cyfry i podkreślenia. Parser dopasowuje
@(\w+), więc@code-reviewerjest odczytywane jako tokencode, a@my agentjakomy. Agenta, którego nazwa zawiera myślnik, kropkę lub spację, nie da się niezawodnie wspomnieć — także przez autouzupełnianie, które wstawia nazwę jako zwykły tekst. Nazywaj agentów jednym słowem albo z podkreśleniami.
Wzmianki są usuwane z tekstu, zanim dotrze on do agenta. Wiadomość, która składa
się wyłącznie ze wzmianek (@alice), nie wysyła więc nikogo — daj jej coś do
zrobienia.
Wspomnij kilku agentów naraz
Dział zatytułowany „Wspomnij kilku agentów naraz”@alice refactor the auth module. @bob write tests for it.Obaj agenci są wysyłani równolegle do tej samej rozmowy i obaj otrzymują całą wiadomość.
Dzielą też worktree tej przestrzeni. Worktree repozytoriów są przygotowywane
dla przestrzeni, a nie dla agenta; każdy agent dostaje własny nakładkowy katalog
roboczy na swój AGENTS.md, skille i konfigurację, a wspólne repozytoria są
podłączone w trybie odczytu i zapisu. Dwaj agenci wspomniani razem mogą więc
widzieć swoje zmiany — i wchodzić sobie w drogę.
Wspomnij członka zespołu
Dział zatytułowany „Wspomnij członka zespołu”Każdy @token, który nie pasuje do agenta, jest dopasowywany do osób należących
do obszaru roboczego, po nazwie użytkownika, według tej samej reguły dokładnego
dopasowania lub prefiksu bez rozróżniania wielkości liter.
Rozpoznana wzmianka o osobie nie wysyła nikogo. Występuje wyłącznie w metadanych wiadomości po to, by router powiadomień mógł powiadomić tę osobę.
Nazwy agentów są zawsze sprawdzane w pierwszej kolejności, a token zajęty przez
agenta nigdy nie trafia do listy członków — jedno @word może zawsze wskazywać
tylko jeden podmiot.
Co otrzymuje agent
Dział zatytułowany „Co otrzymuje agent”Wysłany agent otrzymuje w swoim promptcie blok „Summons”, który podaje, kto go wezwał, i wylicza skład przestrzeni — pozostałych agentów (oznaczonych jako najwyższego poziomu lub podwładnych) oraz osoby należące do przestrzeni — dzięki czemu wie, komu może przekazać pracę. Blok mówi mu też, że wspomnienie innego agenta w odpowiedzi budzi tego agenta, a wspomnienie samego siebie jest ignorowane.
Gdy agent wspomina agenta
Dział zatytułowany „Gdy agent wspomina agenta”Agent może przekazać pracę w swojej własnej odpowiedzi. Gdy tura kończy się czysto, wzmianki w jej tekście są rozwiązywane, a wspomniani agenci zostają dodani do przestrzeni i wysłani do tej samej rozmowy, z tą wspominającą turą jako ich promptem. Tura, która się nie powiodła albo została przerwana, nikogo nie budzi — zatrzymała się w połowie myśli.
Zasady są celowo surowsze niż w kompozytorze, bo nikt nie obserwuje, by poprawić błędne trafienie:
- Tylko dokładne nazwy. Bez dopasowania prefiksu. Gdy
@archwpisze człowiek, dociera doarchitect; od agenta nie dociera do nikogo. Nazwa pasująca do dwóch agentów też nie dociera do nikogo. - Kod to nie proza. Wzmianki wewnątrz bloków ogrodzonych albo
`backticks`są ignorowane, więc cytowanie adnotacji@Overridealbo poleceniapip install foo@1.2jest bezpieczne. Niezamknięty blok ogrodzony wygasza wszystko po nim. @sklejone z poprzednim tokenem nie jest wzmianką —sam@host.com,pkg/@scopeinode@20nie wskazują nikogo.- Myślniki są zachowywane, więc
@code-reviewerwskazuje sam siebie, a nie tokencode. - Co najwyżej trzech agentów na turę. Agent, który wymienia w podsumowaniu sześciu członków zespołu, tylko ich wymienia, a nie wzywa.
Łańcuch wybudzeń jest ograniczany tak samo jak delegowanie: głębokość 3,
a agent znajdujący się już w łańcuchu nie może zostać przez niego obudzony
ponownie (żadnego A → B → A). Uporządkowana para podlega też limitowi
częstości między łańcuchami. Odrzucone wybudzenie publikuje w rozmowie komunikat
systemowy, który mówi, która wzmianka nie została dostarczona i dlaczego —
nierozpoznana nazwa tego nie robi, bo w przeciwnym razie każde @ w zdaniu
opowiadałoby samo o sobie.
Do przekazania pracy, które nie może zależeć od prozy — żądania/odpowiedzi albo
dotarcia do agenta spoza przestrzeni — użyj zamiast tego narzędzi send_to_agent,
ask_agent i delegate_task.