Ga naar inhoud

Agenten @-vermelden

Deze gids laat zien hoe je agenten en teamgenoten @-vermeldt in een ruimte.

Typ @ in de composer en kies een agent uit de autocomplete, of typ de naam zelf:

@alice fix the login bug

De vermelde agent wordt als deelnemer aan de ruimte toegevoegd als hij dat nog niet is, en gedispatcht met de context en modus van de ruimte. Niet-vermelde deelnemers zien het bericht, maar worden niet gedispatcht.

Als je een bericht stuurt zonder agentvermelding, kiest Control Center zelf wie er antwoordt: de agent die het laatst in het gesprek sprak, anders de eigenaar van het gesprek als die er is, anders de eerste agent op het hoogste niveau onder de deelnemers van de ruimte. In een ruimte met één agent is dat altijd die enige agent.

Een vermeldingstoken wordt hoofdletterongevoelig gematcht, op exacte naam of prefix. Zo bereikt @arch een agent met de naam architect en bereikt @Alice alice.

Twee gevolgen om rekening mee te houden:

  • Een kort token is geen fout. Als twee agenten een prefix delen, wint de eerste die wordt gevonden, en welke dat is, hangt af van de volgorde — niet van een of andere beslisregel. Gebruik de volledige naam wanneer namen overlappen.
  • Alleen letters, cijfers en underscores horen bij een token. De parser matcht @(\w+), dus @code-reviewer wordt gelezen als het token code en @my agent als my. Een agent waarvan de naam een koppelteken, een punt of een spatie bevat, kan niet betrouwbaar worden vermeld — ook niet via de autocomplete, die de naam als platte tekst invoegt. Geef agenten een naam van één woord, of met underscores.

Vermeldingen worden uit de tekst gehaald voordat die de agent bereikt. Een bericht dat alleen vermeldingen is (@alice), dispatcht dus niets — geef het iets te doen.

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

Beide agenten worden parallel in hetzelfde gesprek gedispatcht en ontvangen allebei het volledige bericht.

Ze delen ook de worktrees van die ruimte. Repoworktrees worden per ruimte ingericht, niet per agent; elke agent krijgt zijn eigen overlay-werkmap voor zijn AGENTS.md, skills en config, met de gedeelde repo’s read-write gekoppeld. Twee samen vermelde agenten kunnen dus elkaars bewerkingen zien — en ermee botsen.

Elke @token die niet bij een agent past, wordt op handle geprobeerd tegen de menselijke leden van de werkruimte, met dezelfde hoofdletterongevoelige regel van exacte naam of prefix.

Een opgeloste menselijke vermelding dispatcht niets. Hij lift mee op de metadata van het bericht, enkel zodat de meldingsrouter die persoon een seintje kan geven.

Agentnamen worden altijd eerst geprobeerd, en een token dat door een agent wordt opgeëist, komt nooit bij de ledenlijst terecht — één @word kan altijd maar op één principal uitkomen.

Een gedispatchte agent krijgt een blok “Summons” in zijn prompt dat noemt wie hem heeft opgeroepen en het rooster van de ruimte opsomt — de andere agenten (gemarkeerd als op het hoogste niveau of ondergeschikt) en de menselijke leden — zodat hij weet aan wie hij kan overdragen. Het blok vertelt hem ook dat het vermelden van een andere agent in zijn antwoord die agent wekt, en dat het vermelden van zichzelf wordt genegeerd.

Een agent kan in zijn eigen antwoord overdragen. Wanneer een beurt netjes wordt afgerond, worden de vermeldingen in zijn tekst opgelost en worden die agenten aan de ruimte toegevoegd en in hetzelfde gesprek gedispatcht, met de vermeldende beurt als hun prompt. Een beurt die mislukte of werd onderbroken, wekt niemand — hij stopte midden in een gedachte.

De regels zijn bewust strenger dan die van de composer, want niemand kijkt mee om een verkeerde gok te corrigeren:

  • Alleen exacte namen. Geen prefixovereenkomst. @arch bereikt architect wanneer een mens het typt; bij een agent bereikt het niemand. Een naam die bij twee agenten past, bereikt ook niemand.
  • Code is geen proza. Vermeldingen binnen omheinde blokken of `backticks` worden genegeerd, dus een @Override-annotatie of een pip install foo@1.2 citeren is veilig. Een niet-afgesloten omheining maakt alles daarna leeg.
  • Een @ die aan het vorige token vastzit, is geen vermelding — sam@host.com, pkg/@scope en node@20 verwijzen naar niemand.
  • Koppeltekens blijven behouden, dus @code-reviewer verwijst naar zichzelf in plaats van naar het token code.
  • Maximaal drie agenten per beurt. Een agent die zes teamgenoten in een samenvatting noemt, somt ze op; hij roept ze niet op.

Een wekketen wordt op dezelfde manier begrensd als delegatie: diepte 3, en een agent die al op de keten staat, kan er niet opnieuw door gewekt worden (geen A → B → A). Een geordend paar heeft ook een snelheidsbeperking over ketens heen. Een geweigerde wekactie plaatst een systeembericht in het gesprek dat zegt welke vermelding niet is afgeleverd en waarom — een niet-opgeloste naam doet dat niet, want anders zou elke @ in een zin zichzelf gaan toelichten.

Voor een overdracht die niet van proza mag afhangen — een verzoek/antwoord, of een agent buiten de ruimte bereiken — gebruik je in plaats daarvan de tools send_to_agent, ask_agent en delegate_task.