Claude-sessies sturen elkaar nu berichten: zo laat je twee agents samenwerken
Agents in de praktijk

Claude-sessies sturen elkaar nu berichten: zo laat je twee agents samenwerken

· 10 min leestijd

Twee terminals open, twee Claude Code-sessies aan het werk, en jij die de ene vertelt wat de andere net heeft gedaan. Dat heen en weer kopiëren hoeft niet meer: sinds versie 2.1.224 kan de ene sessie de andere zelf een bericht sturen, en sinds versie 2.1.232 wijs je de ontvanger aan met een @-vermelding in je prompt. Voor teams die meerdere agents tegelijk laten draaien, verschuift daarmee een stuk regiewerk van jou naar de agents. Hieronder lees je wat er precies overgaat, hoe je het aanzet, wat het kost en waar je de grens legt.

Kort antwoord

Cross-session messaging laat Claude één stuk platte tekst van de ene Claude Code-sessie naar de andere sturen. Je noemt de ontvanger met @ plus de sessienaam; Claude regelt de bezorging zelf met de tools ListAgents en SendMessage. Er gaan geen bestanden mee en geen gespreksgeschiedenis, alleen het bericht.

Wat gaat er precies van de ene sessie naar de andere?

Een bericht is één stuk platte tekst dat de ene Claude voor de andere schrijft, nooit de gespreksgeschiedenis en nooit je bestanden. Wil je een heel gesprek meenemen naar een andere terminal, dan hervat je die sessie; daar is dit niet voor bedoeld.

Claude gebruikt er twee tools voor. Met ListAgents zoekt Claude uit welke sessies bereikbaar zijn, met SendMessage wordt het bericht bij één van die sessies afgeleverd. Je roept die tools nooit zelf aan. Je zegt gewoon wat de andere sessie moet weten:

Laat @api-worker weten dat de schema-migratie klaar is, de nieuwe kolom heet tenant_id

De ontvangende sessie leest zo'n bericht tussen twee tool-aanroepen door, dus een draaiend commando wordt nooit onderbroken. Staat die sessie stil, dan start Claude er meteen een nieuwe beurt mee. In het gesprek verschijnt het bericht onder de naam van de afzender, met een antwoordadres erbij, zodat de ontvanger terug kan schrijven.

Even voor de beeldvorming: denk aan een geeltje dat een collega op je scherm plakt terwijl jij doorwerkt. Je leest het als je opkijkt. Je bureau blijft van jou.

Wanneer heb je dit echt nodig?

Je hebt het nodig zodra twee sessies aan hetzelfde project werken en de een iets ontdekt waar de ander last van krijgt. De documentatie van Anthropic noemt vier veelvoorkomende situaties:

  • Een sessie maakt een wijziging die breekt waar een andere sessie op bouwt, en waarschuwt die sessie meteen.
  • Twee sessies werken in aparte worktrees in dezelfde repository en melden elkaar wat er is doorgevoerd.
  • Een lange klus, zoals een migratie of een testrun, meldt zich terug bij de sessie waar jij naar zit te kijken.
  • Je spreekt een sessie aan die op een ander apparaat draait, bijvoorbeeld de laptop die je eerder vanaf je telefoon aan het werk zette.

Vanaf versie 2.1.236 kun je ook om één seintje vragen in plaats van om een bericht. Je zegt waar je op wacht, en de andere sessie stuurt eenmalig een melding zodra die klaar is:

Zeg het me zodra de migratiesessie klaar is met waar hij mee bezig is

Die melding is eenmalig en geldt alleen voor sessies op dezelfde machine. Komt er binnen twaalf uur niets, dan laat Claude Code het verzoek vervallen, zodat er geen sessie eindeloos zit te wachten.

Diagram uit de Claude Code-documentatie dat subagents naast agent teams zet
Subagents werken los van elkaar en rapporteren terug aan de hoofdsessie; teamgenoten in een agent team delen een takenlijst en praten onderling. Cross-session messaging is de derde variant: losse sessies die jij zelf start. Bron: Claude Code-documentatie, Anthropic.

Let op het verschil met de andere manieren om meerdere agents te draaien. Subagents en agent teams leven binnen één sessie en delen daar context; berichten tussen losse sessies dragen alleen tekst over. Ga je zelf afspraken verzinnen over hoe die berichten eruit moeten zien, dan is een agent team de betere keuze.

Dat dit meer teams raakt dan alleen softwarebedrijven blijkt uit de cijfers. Volgens Eurostat gebruikt 26,6 procent van de Nederlandse werknemers AI op het werk, tegen 15,1 procent gemiddeld in de EU. In de ICT-sector gebruikt volgens het CBS 54 procent van de bedrijven AI, de hoogste score van alle Nederlandse sectoren. Waar meerdere mensen met agents werken, draaien er al snel meerdere sessies naast elkaar.

Zo laat je twee sessies met elkaar praten

Je hebt twee dingen nodig: een recente versie en een sessienaam die je zelf kiest. De rest doet Claude.

Stap 1. Check je versie.

claude --version

Berichten sturen werkt vanaf 2.1.224 op macOS en Linux, inclusief Linux in WSL 2. Op native Windows heb je 2.1.234 of hoger nodig. De @-vermelding vraagt 2.1.232, het seintje bij een klaar-melding 2.1.236.

Stap 2. Geef je sessies een naam. Anders verzint Claude Code er zelf een, en dan weet je straks niet wie je aanspreekt.

claude --name migratie

# of in een sessie die al draait:
/rename api-worker

Draait er al een live sessie met die naam, dan houdt die zijn naam en krijgt de jouwe een variant met twee extra woorden erachter. Zo'n automatisch verzonnen naam ziet eruit als laptop-graceful-unicorn, en dat is precies het soort naam dat je nooit foutloos overtypt. Kies er dus zelf een.

Stap 3. Kijk wie er bereikbaar is.

/list-agents

De eerste regel is de naam van je eigen sessie, de naam waarmee anderen jou aanspreken. Daaronder staan de subagents in deze sessie, eventuele teamgenoten, je andere sessies op deze machine, je sessies op het web en je sessies op andere apparaten. Claude Code zet de werkmap erbij, zodat je twee gelijknamige sessies uit elkaar houdt. Het commando heet ook /peers.

Overzicht van draaiende Claude Code-sessies met status per sessie
Het sessieoverzicht van Claude Code laat zien welke sessies er draaien, welke wachten op input en welke klaar zijn. Dit zijn de sessies die je met een @-vermelding kunt aanspreken. Bron: Claude Code-documentatie, Anthropic.

Stap 4. Stuur het bericht. Typ @ plus de eerste letters van de sessienaam en kies de sessie uit de lijst die verschijnt. Je hoeft niet te dicteren wat er in het bericht komt; Claude formuleert het zelf.

Leg aan @checkout-sessie uit wat we net aan de betaalflow hebben veranderd

Luisteren meerdere live sessies naar dezelfde naam, dan vraagt Claude eerst welke je bedoelt. Adresseert Claude per ongeluk de sessie waarin je zelf zit, dan weigert Claude Code het bericht.

Stap 5. Zet een onbewaakte worker op accept. Een sessie die zonder toezicht draait kan geen goedkeuringsvenster tonen, dus geef je die expliciet toestemming om berichten aan te nemen:

claude -p "voer de nachtelijke migratie uit" --name migratie \
  --settings '{"crossSessionInbound":"accept"}'

Hoe houd je grip op wat er binnenkomt?

Een bericht van een andere sessie telt nooit als jouw toestemming. Claude Code vertelt de ontvangende Claude expliciet dat het bericht niet van jou komt, en beperkt wat het mag:

  • Het kan geen openstaande permissievraag namens jou beantwoorden.
  • Het mag geen permissie-instellingen, CLAUDE.md of andere configuratie wijzigen omdat een andere sessie daarom vraagt.
  • Een commando in de tekst, zoals /compact, komt binnen als platte tekst en wordt niet uitgevoerd.
  • Vraagt het bericht om werk waarvoor toestemming nodig is, dan krijg jij gewoon dezelfde permissievraag als anders.

Wil je strenger zijn, dan stel je per sessie in wat er met binnenkomende berichten gebeurt. De instelling heet crossSessionInbound en kent drie waarden: accept (bezorgen), hold (vasthouden tot jij goedkeurt) en refuse (weggooien). Je kiest hem ook via de regel "Messages from your other sessions" in /config.

{
  "crossSessionInbound": "hold"
}

Een organisatie die de functie helemaal dicht wil zetten, combineert dat met twee deny-regels in de beheerde instellingen:

{
  "permissions": {
    "deny": ["SendMessage", "ListAgents"]
  },
  "crossSessionInbound": "refuse"
}

Belangrijker voor Nederlandse bedrijven is waar het bericht langsgaat. Een bericht tussen twee sessies op dezelfde machine loopt over een lokale socket en komt nooit langs de servers van Anthropic. Gaat het naar een sessie op een ander apparaat of op het web, dan gaat het wel via die servers. Heb je met een klant vastgelegd dat projectcontext het apparaat niet verlaat, dan zet je deze knop aan:

{
  "isolatePeerMachines": true
}

Daarmee vraagt Claude Code jouw goedkeuring voordat een bericht de machine verlaat, ook in een modus die verder geen permissies vraagt. Een projectbestand kan de eis aanzetten, maar niet uitzetten. Berichten tussen sessies op dezelfde machine blijven wel gewoon doorgaan.

Wat kost het?

Elk bezorgd bericht telt in je verbruik als een prompt die je zelf had getypt. Een sessie die de hele middag statusupdates rondstuurt, eet dus van hetzelfde tegoed als jij.

AbonnementPrijs per maand (incl. btw)Wat je krijgt
Claude Pro€21,02Claude Code voor solowerk, één of twee sessies tegelijk
Claude Max 5x€105,11Vijf keer het verbruik van Pro, ruimte voor parallelle sessies
Claude Max 20x€210,22Twintig keer het verbruik van Pro, voor wie hele dagen agents laat draaien

De vergelijking tussen die abonnementen staat uitgebreider in dit overzicht van de Claude-abonnementen. Praktische tip voor de kosten: laat een sessie liever één samenvattend bericht sturen dan tien losse. Claude Code helpt daar zelf bij. Identieke berichten die kort na elkaar binnenkomen worden weggegooid, en in de wachtrij staan er maximaal 50. Een snelle reeks berichten naar dezelfde sessie weigert Claude Code al bij de afzender. Een berichtenlus tussen twee sessies dooft daardoor vanzelf uit.

Waar loopt het stuk?

Een recente versie is geen garantie dat je de functie hebt. Deze dingen blokkeren berichten tussen sessies:

  • Je platform. De functie werkt niet op Amazon Bedrock, Claude Platform op AWS, Google Cloud's Agent Platform en Microsoft Foundry.
  • Uitgezette feature-flags. Staat DISABLE_TELEMETRY, DO_NOT_TRACK, CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC of DISABLE_GROWTHBOOK aan, dan blijft messaging uit.
  • Gescheiden bestandssystemen. Een sessie in een container en een sessie op de host zien elkaar niet, net zomin als een sessie in WSL 2 en een native Windows-sessie op dezelfde computer.
  • Te grote berichten. Boven ongeveer een miljoen tekens weigert Claude Code het bericht bij de afzender, dus er komt niets aan.

In een test op een Mac mini met versie 2.1.246 bleek dat laatste punt geen theorie. In een headless run (claude -p) ontbrak de ListAgents-tool volledig, en een poging om een gelijktijdig draaiende sessie met de naam boekhouding een bericht te sturen leverde alleen op: "No agent named 'boekhouding' is reachable." Versienummer prima, functie afwezig. Begin dus altijd met /list-agents: herkent Claude Code het commando niet, dan heeft die sessie de functie niet en hoef je verder niets te proberen.

Begin met twee sessies die elkaar waarschuwen

De snelste manier om te zien of dit iets voor je team is, kost tien minuten. Geef twee sessies die je toch al naast elkaar draait een vaste naam, bijvoorbeeld bouw en test. Zet in de sessie die onbewaakt draait crossSessionInbound op accept. Vraag daarna in de bouwsessie expliciet om een bericht naar de testsessie zodra er iets verandert. Merk je na een dag dat je nog steeds zelf zit te kopiëren, dan zaten je sessies waarschijnlijk niet dicht genoeg op elkaars werk.

Werk je juist altijd in één sessie tegelijk, dan levert deze functie niets op. Een subagent of een agent team is dan logischer, want die delen wel de context van je gesprek. En wie AI-agents als vaste kracht in het werk zet, komt daarna vanzelf bij de vraag wie wat mag weten en wie wat mag doen; dat inrichten is het werk waar Pantheon zich op richt. Meer praktijkstukken over agents lees je op het blog.

Veelgestelde vragen

Wat is cross-session messaging in Claude Code?

Het is de functie waarmee de ene Claude Code-sessie een tekstbericht aan een andere sessie stuurt. Claude zoekt de ontvanger met de tool ListAgents en levert het bericht af met SendMessage. Er gaat alleen tekst over, geen bestanden en geen gespreksgeschiedenis.

Welke versie van Claude Code heb ik nodig?

Berichten sturen werkt vanaf versie 2.1.224 op macOS en Linux, inclusief WSL 2, en vanaf 2.1.234 op native Windows. Een sessie aanwijzen met een @-vermelding vraagt versie 2.1.232, een seintje wanneer een andere sessie klaar is versie 2.1.236.

Gaan die berichten via de servers van Anthropic?

Berichten tussen twee sessies op dezelfde machine lopen over een lokale socket en komen niet langs de servers van Anthropic. Berichten naar een ander apparaat of naar een sessie op het web gaan wel via die servers. Met de instelling isolatePeerMachines op true moet jij elk bericht dat de machine verlaat eerst goedkeuren.

Kan een andere sessie iets goedkeuren of mijn instellingen wijzigen?

Nee. Een binnenkomend bericht telt niet als jouw toestemming, kan geen openstaande permissievraag beantwoorden en mag geen permissies, CLAUDE.md of andere configuratie wijzigen. Een commando in de tekst wordt niet uitgevoerd maar als platte tekst gelezen.

Kost een bericht tussen sessies extra?

Er is geen aparte prijs, maar elk bezorgd bericht telt in je verbruik als een prompt die je zelf had getypt. Bij Claude Pro van 21,02 euro per maand inclusief btw merk je dat eerder dan bij een Max-abonnement.

Michael Groeneweg
Geschreven door Michael Groeneweg AI-specialist bij Digital Impact · Oprichter van TheAIDaily en Pantheon

Michael is AI-specialist bij Digital Impact in Rotterdam en oprichter van TheAIDaily.nl en Pantheon, waar hij AI-agents en oplossingen bouwt voor bedrijven. Al tien jaar ondernemer, en sinds een paar jaar weigert hij iets te doen waar geen AI in verweven zit, zakelijk noch privé, tot mild ongenoegen van zijn omgeving. Zijn reizen door de wereld zijn inmiddels een serie experimenten in wat AI wel en niet kan vanaf een terrasje in Lissabon of een treinstation in Tokio. Hij test obsessief nieuwe tools, bouwt oplossingen voor klanten, en vindt dat niemand de hype moet geloven, maar ook niemand meer kan doen alsof AI niet alles verandert. Houdt van goede koffie, lange vluchten en mensen die met AI bouwen in plaats van er alleen over praten.