https://computerclub.online/afleveringen/428-agents-schrijven
Deze week gaat het over iLands- en Muse-agents.
Welke agents heb jij draaien?
Wat doen die allemaal? Met welke technologie?
https://computerclub.online/afleveringen/428-agents-schrijven
Deze week gaat het over iLands- en Muse-agents.
Wat doen die allemaal? Met welke technologie?
Als met “agents” bijvoorbeeld Claude Code bedoeld wordt, dan Claude Code ![]()
Ik heb er twee lopen in Claude Cowork/Code, allebei voor de concertorganisatie.
Ik heb ondertussen Claude Code zo getuned in één “folder” met instructies en gekoppeld met MCP op al onze systemen dat voor mijn verschillende opdrachten (ik ben soort van freelancer) ik alles ongeveer kan zien, controleren en aanpassen via Claude Code. Ik kan dat ook opvragen in de context van teamleaden. Zit ook obsidian achter voor todo lijsten en documenten.
Nu, op het eerste zicht spaart dat enkel maar wat tijd omdat ik niet zelf altijd al die tools moet gaan doorlopen om te weten wat waar speelt voor wie, maar, het wordt zeer interessant omdat Claude nu echt al heel veel instructies en context heeft in memory, en dus ook al die dingen begint te linken aan elkaar. Hij “kent” bvb alle teamleden, waar ze op werken, wat de uitzonderingen zijn voor die mensen, hij kent de projecten waar we aan werken, weet waar de code is, de support tickets, de project items, … Hij leest ook mijn inboxen en kan dus zeggen "er is een mail binnen gekomen van X en die is gelinkt aan support ticket Y en issue Z in github, en toont alle relevante URLs naar de detail pagina’s zodat je rap kan doorklikken indien nodig. En omdat ik ondertussen al weet hoe hij denkt, heb ik nu ook toegelaten dat hij ook kan schrijven en aanpassingen doen in al die systemen, wat het zeker nog krachtiger maakt.
Simpel maar zeer concreet voorbeeld. Als er ergens een taak open staat voor medewerker X, maar medewerker X verlaat het bedrijf op datum Y omdat ik dat ooit gezegd heb, dan wordt er bij issues waar die persoon bij betrokken altijd gemeld dat ik moet zorgen dat die taak of af is, of overgedragen wordt want dat de datum naderbij komt.
Nog simpel voorbeeld maar o zo handig: Als ik een opmerking, bug of wat dan ook wil rapporteren aan onze developers weet hij ondertussen ook waar en hoe, maar, hij weet ook dat onze developers niet allemaal Nederlandstalig zijn (en sowieso hebben we de guideline dat alles ivm code en docu in 't Engels moet zijn). Dus als ik ergens een mail binnen krijg met een opmerking, kan ik vrij makkelijk zeggen: zet die mail om in een issue voor project X en ken toe aan Y. Ongeacht de taal van mijn vraag, mail content of weet ik veel, weet hij dat dat issue in het Engels moet zijn gerapporteerd, dus vertaalt hij alles altijd als het naar github moet, maar, antwoord hij de mail wel in de taal van de verzender… en ik hoef dat nooit meer te vragen.
Maar het kan ook veel krachtiger. Want wij verzamelen voor onze code alle guidelines, instructies en context in de git zelf nu (geen externe Confluence of Notion of whatever) als MD files (ook al omdat niemand ooit die KBs update, en MDs bij het project wel), en dus ook ter beschikking staan van Claude Code. Dus als ik na drie dagen vijf PRs moet reviewen, komen die in mijn overzicht dat Claude 's morgens maakt, kan ik zeggen om op die vijf PRs een basic check te doen (zoals in die repos zelf gedefinieerd staat, wat mensen zelf zouden doen, maar ja, je kent mensen) met een achtergrond agent. Dan schiet dat ding in actie, lanceert vijf of meer subagents, scant heel het boeltje, en komt een half uur later met de rapporten. Ondertussen kan ik al andere taken doen. Na de basisscan en de “flagrante” fouten die hij er al uit haalt kan ik verder testen voor UX bvb.
Ik heb dus ook in die context drie of vier mailboxen voor werk, kan Claude ook lezen en linken aan al die taken, en, als die taken veranderen, kan hij ook draft antwoorden klaarzetten, enz … Claude werkt wel niet zo handig met meerdere mailboxen van dezelfde soort, daarom heb ik https://www.posternmail.ai gevibecode ![]()
Kortom, voor mij is dat ondertussen een soort persoonllijke assistent waar ik uren werk aan uitbesteed… de kostprijs van die dingen is dus verwaarloosbaar als ik kijk naar wat het mij spaart. Ik “praat” ettelijke uren met dat ding… Let op, ik ben niet zo gek om te denken dat het sentient is, het is gewoon goed om opdrachten uit te voeren en junior Wimmekes te maken, waar de wereld mss nie op zit te wachten.
BELANGRIJKE BEDENKING 1: Dit zet je niet op op een half uur. Dat is in de beginne even wel wat aansturen en tunen, maar dat mindert snel. Nu soms nog eens wat verbeteren of meer uitleg geven… maar de tijdswinst is enorm.
BELANGRIJKE BEDENKING 2: Ik gebruik het zo goed als nooit in privé speer om dingen te gaan “bestellen”, hij kent dus geen privé accounts of paswoorden, kent geen bankkaartnummers, en diens meer… dus alles wat hij weet is business related. Dat is ook mijn grootste probleem met de nieuwe dingen zoals Muse en Dot, waar je volop “privé” dingen moet delen om iets van resultaat te halen (met bedrijven met een bedenkelijke reputatie op dat vlak).
Ik ben eigenlijk nog altijd niet goed mee wat een “agent” nu precies is en “meerdere agents tegelijk”
Is dat gewoon een andere manier om te zeggen een scheduled task in Claude en meerder chats tegelijk open hebben staan?
Of is er echt een verschil and if so, send me down this rabbit hole.
Ps.
@wimpi wederom bedankt voor uw uitvoerige uitleg ![]()
!Vic, !Vic, !Vic, breek me de bek niet open… maar goed, je vraagt er om
. In mijn gekende bondigheid (en schrijffouten, zinconstructies die van den hond zijn dingen zijn, enz…) zal ik dat even uitleggen: Wat zijn agenten?
Eerste belangrijke opmerking in die context is: aan wie stel je de vraag. Vraag je dat aan iemand van marketing/sales, of, aan iemand die er echt iets van kent? Het antwoord zal ruim verschillend zijn.
Verder ook:
In dit geval hier nu hebben we (en dan vooral ik blijkbaar) het over “agenten” in de context van de tegenwoordige LLMs, en laat ik al de rest buiten beschouwing. We gaan ook niet in op te technische zaken. Heel bondig samengevat kan je de korte geschiedenis van LLMs als volgt bekijken:
Nu, om via deze lange omweg op uw vraag terug te komen: een AI agent in deze context is dus een stuk software dat gebruik maakt van LLMs en op basis van een bepaalde input een heel aantal dingen kan doen en uitvoeren, en, dat is waar we vandaag de dag nu meer en meer naartoe gaan.
Die input hoeft niet altijd een vraag te zijn waarop hij reageert, wat trouwens nog altijd de meest gebruikte manier nu is om met die dingen te werken → je stelt een vraag, hij doet iets. Let op, als je die goede vragen stelt kan die lang bezig zijn. Het is niet ongebruikelijk dat we vragen stellen waar die rustig een kwartiertje mee bezig is of langer.
Die input kan ook zijn, zoals jij zegt, een bepaald soort scheduler die om de X minuten, seconden, uren draait, en die LLM gaat triggeren (een prompt sturen, want, dat is uiteindelijk in essentie wat het altijd is, niet meer of niet minder) en dan een hele hoop acties gaat veroorzaken.
Die input kan ook bvb een trigger zijn zoals een schakelaar die aangaat, een waarde die verandert in een database, een document dat op een fileshare komt, een API call… noem maar op. Zolang je maar niet denkt dat het leeft en van zijn eigen dingen gaat doen. Dat is niet zo. Nooit. Software doet niets van zijn eigen. Door slim te spelen met dynamische scheduling, triggers van buitenaf, agenten die dingen zelf kunnen herconfigureren en diens meer, kan je wel heel hard doen lijken dat het van zijn eigen vanalles voor jou doet.
Voor Claude users trouwens: Die scheduling is wat ze Routines noemen, en da’s letterlijk een scheduler die je op gezette tijden instructies kan laten uitvoeren op je PC of in de cloud.
Eens je dat hebt kan je verder uitbreiden op allerlei manieren en ga je altijd maar verder.
Zo bijvoorbeeld als ik spreek over subagents of “andere agenten die hij opstart”, gebeurd er het volgende: ik zeg dat hij vijf PRs moet reviewen. Uit wat Claude Code geleerd heeft en hoe hij geprogrammeerd is door Anthropic, kan hij beslissen “tja, zo’n review duur tien minuten, ik moet er hier vijf doen, dan ben ik een klein uur bezig. Misschien is het dus beter dat ik vijf andere agenten (lees processen) opstart die ik de nodige instructies geef op basis van de instructies die ik gekregen heb, zodat die alle vijf bezig kunnen zijn tegelijker tijd, en mijn baasje dan ondertussen gewoon verder kan praten met mij. Ik geef die vijf processen ook de instructie dat als ze klaar zijn, ze een de resultaten moeten rapporteren aan mij zodat ik ze aan mijn baasje kan vertellen.” Dat lijkt enorm magisch, maar, als je weet dat ze functies kunnen oproepen, kan je ze dus ook functies geven die andere agenten kan opstarten met bepaalde instructies, en kan je die agenten weer functie geven die het resultaat kan teruggeven aan de eerste… en als je dat héél slim combineert (en daar zijn die codig agents echt wel heel goed in aan 't worden) dan heb je dus coding agents. En vijf in parallel wil zeggen dat na tien minuten de resultaten binnen zijn en niet na een uur (effe technisch zou je kunnen argumenteren dat dat alleen maar waar is als je CPU door dat parallel werk niet verzadigd geraakt, maar, dat is in deze niet waar want het werkelijke CPU gebruik zit bij Anthropic op de server en niet op uw PC, tenzij ge de modellen natuurlijk lokaal draait, maar, dan moet ge al een ferm uit de kluiten gewassen machine hebben of lichte modellen draaien) . TLDR: ik geef instructie, LLM beslist dat het lange opdracht is, of ik vraag het expliceit, en hij start nieuwe LLM processen op met instructies die terug rapporteren. Op dat moment heb ik dus zes gelijktijdige agenten lopen die voor mij werken.
Wat is Muse en Dot: exact hetzelfde maar dan zo clever uitgewerkt dat het geen developer tool is maar een consumer tool, waar je dus die LLMs en voor “consumers”, dus een personal AI agent zoals men zegt. Wederom, het slim combineren van LLMs, met functies, inputs en outputs, vragen van jou en data, en op die manier verder kennis opbouwen, schedules definieren zodat je op tijd een nieuwe trigger hebt… allemaal zodat het lijkt alsof je iets hebt dat naast je “leeft”.
Hoop dat het dat een beetje verduidelijkt, maar eigenlijk is een agent niet meer dan een LLM die je continu prompt, of die triggers krijgt van ergens en heel vernuftig is opgezet. Het verschil met wat ik doe en wat Muze en Dot zijn:
Nu, je kan dat dus zien als: is het maar dat? ja, dat is het in essentie maar.
Maar de manier waarop ze het combineren is technisch gezien echt wel knap, en daar zet ik mijn pet je wel voor af. Als ik zie wat je bereikt door die Claude Code, dan valt mijn gat daar vaak van open (~ Jos Bosmans, de meer mature lezer kent die, of niet, maar dat is dan je eigen fout).
Finale opmerking: teveel mensen beseffen nog altijd niet wat die dingen allemaal kunnen doen als je er echt mee leert werken, en teveel mensen gebruiken het nog altijd als een veredelde Google.
Merci Wim!
Ik heb dus niet ergens nen trein gemist en ben nog redelijk mee met wat die dingen allemaal kunnen. Wel bijgeleerd dat je in uw prompt expliciet kan vragen om sub LLM’s op te starten.
Is er al een “Prompting Techniques” post? ![]()
“carré confiturekes voor iedereen!”
dus ne soort batchserver waarvan de code telkens on-the-fly wordt gegenereerd?
Dat is wat kort door de bocht denk ik en batch server is nog wel geheel iets anders. De code wordt niet on the fly gegenereerd… het zijn altijd dezelfde instructies, maar heel vernuftig in elkaar gestoken, de context (geschiedenis, bepaalde waarden,…) verandert, en daardoor gaat de LLM mogelijks andere dingen uitvoeren, acties ondernemen en diens meer.
dat kort door de bocht weet ik niet, de instructies zijn dezelfde maar wat uit LLM komt is toch niet elke keer hetzelfde? ook al is de input identiek. het resultaat zal misschien wel elke keer ongeveer hetzelfde zijn maar hoe het ertoe komt niet.
kan zijn dat ik niet 100% mee ben maar de agent laat de LLM toch elke keer opnieuw code genereren om bv een map uit te lezen of in de mailbox te zoeken naar “offertes” als het getriggerd wordt?
kan je dan niet beter de code 1 keer genereren en tunen/debuggen en dat dan triggeren?
dan verwarm je de oceaan maar 1 keer ipv elke x ms en is het resultaat veel betrouwbaarder.
en ivm het niet vertrouwen van betaalgegevens, daar heb je gelijk in maar je weet toch dat die niet nodig zijn om iets te kopen hé?
Het gaat te ver gaan en dit is niet de juiste plaats hier om deze discussie te hebben, maar “agent laat de LLM toch elke keer opnieuw code genereren om bv een map uit te lezen of in de de mailbox te zoeken naar “offertes” als het getriggerd wordt?” is niet hoe het werkt.
Technisch gezien zou je dat kunnen doen maar dat zou niet werken zoals het wil en gebruikt de kracht van LLMs niet, dan ben je code aan het genereren om de “oude manier van werken” na te bootsen, en dat iss idd niet zinvol, maar dat is verre van wat we doen.
Noemde een van jullie in de podcast nou dat je iA Writer gebruikt en dat daar AI Warning inzit? (gebruikte iA Writer vroeger en was er altijd erg van gecharmeerd, dit zou mooi moment zijn om weer in te stappen)
Geen AI warning per se. (Al zit er wel style checker in.)
Het laat je toen om AI als auteur aan te duiden, en zo te markeren om nog te herschrijven.