Share

cover art for "PostToolUse – Städpatrullen"

Hook, Line & Coder

"PostToolUse – Städpatrullen"

Season 1, Ep. 5

Två gröna björnar i en grotta upptäcker att den vackraste hooken i biblioteket har en mörk hemlighet. Sigge är besatt av auto-formatering, auto-testning och auto-loggning – allt som städpatrullen PostToolUse kan göra efter att Claude Code rört en fil. Musse ställer en oskyldig fråga om kontextfönstret och får Sigge att sitta tyst i fem hela sekunder.


I det här avsnittet: hur PostToolUse fungerar, varför Prettier-hooken är en charmtroll med en björntass i maskineriet, och varför det smartaste stället att formatera koden ofta inte är PostToolUse alls. Plus: vaktbjörn nummer två installeras i Världens Bästa Hook-Setup™, Musse räknar saker (officiellt nu), och Bengt sparas till säsong två. Igen.


Hook, Line & Coder är podden där två björnar som inte ens kan stava till determinism försöker förklara Claude Code. De lyckas, typ.

More episodes

View all episodes

  • Avsnitt 0 – Din första björn (kom igång från noll)

    12:33|
    En lyssnare skrev och sa att vi kastar folk rakt in i grottan utan att visa var dörren sitter, och han hade rätt. Så här är avsnittet vi borde gjort först: från absolut ingenting, till din allra första egna agent, steg för steg. Vi krossar den största nybörjarmyten (nej, du behöver INTE koppla ihop en massa konton innan du får börja), visar att installationen är en enda rad och en enda inloggning, att Claude Code frågar innan den rör något så du är trygg medan du lär dig, och att din första björn, en subagent, bara är en liten textfil med ett namn och en beskrivning, som du dessutom kan be Claude skriva åt dig. I slutet har du inte bara gjort en björn, du har väckt den och fått ett svar. Perfekt att skicka till någon som vill börja. Hela vägen finns på hooklinecoder.se.
  • 1. Praktikant-björnen är tillbaka – Vad ÄR en agent egentligen?

    23:07||Season 2, Ep. 1
    SÄSONGSPREMIÄR! Säsong ett lärde er sätta björnar vid varje dörr. Säsong två ställer nästa fråga: vad gör du när jobbet är för stort för en enda björn? Sigge och Musse öppnar grottan igen och möter säsongens stora idé — subagenter: egna små Claude med eget huvud, egen jobbannons och egna verktyg, som gör sidouppdraget i sitt EGET kontextfönster och bara kommer hem med svaret. Sigge inser att hans fiskebjörn från avsnitt ett hade ett namn hela tiden. Musse erkänner att han beskrev en subagent för ett år sedan utan att veta det. Och Bengt — Musses kusin — flyttar in i förrådet och blir levande pedagogik om vad som händer när en björn saknar scope. Dessutom: whiteboarden syns äntligen (hooklinecoder.se), tröjorna finns på riktigt, och Björn-Orkestern™ grundas. Musse börjar föra bok över honungen. Han vet något vi inte vet.
  • 10. Världens Bästa Hook-Setup™ – LIVE! (Säsongsfinal)

    35:59||Season 1, Ep. 10
    Nio avsnitt har byggt mot det här. Idag sätter Sigge och Musse ihop hela säsongens lärdomar i en enda .claude/settings.json — sex björnar, sex dörrar — och committar den till Git, live. Allt som kan gå fel går fel: ett nät fångar fel fisk, Claude hänger sig i trettio sekunder, och ett bortglömt chmod +x får en björn att sova. Musse felsöker med oroväckande lugn och avslöjar precis vad han kunnat hela tiden. Plus: Sigges allra sista snabbförklaring, Musses vackraste sammanfattning, och t-shirt nummer tio. Det finns ingen sandbox. Det finns bara björnar vid varje dörr.
  • 9. "Var bor björnarna? – Konfiguration, matchers och en predikan utan sandbox"

    41:35||Season 1, Ep. 9
    Hela säsongen har björnarna bott i en enda fil – men var bor egentligen den filen? Sigge och Musse går till botten med var hookar definieras (din egen grotta, teamets delade grotta, den lokala lappen och hyresvärdens regler som vinner över allt), varför ett nät med för stora maskor fångar fel fisk – inklusive Read-verktyget – och Sigges hemliga kommando som han inte vågat säga högt på en hel vecka. Spoiler: det heter /hooks, och det finns en hel meny. Sen tar Musse mikrofonen och predikar säkerhet med ovanlig allvarlighet: det finns ingen sandbox, lyssnare. Det finns ingen sandbox. Plus: ett UserPromptSubmit-knep som hämnas avsnitt 2, miljövariabler som får björnarna att minnas, och en snabbförklaring som inte riktigt håller toppen från förra veckan. Nästa vecka: finalen. Live. Och nej, Sigge har inte läst sin egen fil.
  • 8. "De fyra handler-typerna – Från snabbis till fullskalig agent"

    40:48||Season 1, Ep. 8
    Hela säsongen har varenda björn vi byggt varit samma sort: ett litet script som kör ett kommando. Men det finns fyra handler-typer – och en av dem spawnar en hel egen praktikant-björn.Sigge har väntat sju dagar på att få rangordna dem som Pokémon-evolutioner (Command är Charmander, Agent är Mega Charizard X), och levererar dessutom säsongens bästa Snabbförklaring™ någonsin. Musse besvarar sina två sparade frågor – nej, en Prompt-hook stirrar inte in i en spegel, och ja, en Agent-hook startar faktiskt en egen liten Claude med verktygsbälte – och landar avsnittets hjärta: välj inte den mäktigaste björnen, välj den minsta som klarar jobbet.
  • 7. "Stop-hooken: Du är inte klar förrän JAG säger att du är klar"

    30:59||Season 1, Ep. 7
    Claude har jobbat i en timme, fixat buggarna och lutar sig nöjt tillbaka: "så där ja, jag är klar." Men testerna är röda. Och vid utgången står en björn med visselpipa och badmössa.I avsnitt 7 bygger Sigge och Musse vaktbjörn nummer fyra: Stop-hooken — björnen som vägrar släppa iväg Claude förrän jobbet faktiskt är gjort. Vi reder ut varför exit code 2 byter betydelse beroende på var den står ("den stoppar stoppet"), skillnaden mellan block och deny, och varför Stop använder toppnivå decision och reason i stället för hookSpecificOutput. Björnen i koden blir check-tests-pass.sh: kör testerna, släpp igenom om grönt, tvinga tillbaka om rött.Men Musse ställer frågan ingen vågar ställa: vad händer med en björn som ALDRIG släpper dig? Svaret heter stop_hook_active — och det är skillnaden mellan en simlärare och en mardröm. Plus: Sigge når för första gången mål i en Snabbförklaring (och tangerar samtidigt "alltså basically"-rekordet), den grå t-shirten anländer, och vi får veta sanningen om Stina.Du är inte klar förrän testerna är gröna. Men du är klar när du gjort ditt bästa.
  • 6. "Exit Codes: Nej, kanske, och absolut inte"

    27:08||Season 1, Ep. 6
    Tre små siffror bestämmer ödet för varje verktygsanrop – och idag reder Sigge och Musse ut allihop. Exit code 0 (ja), exit code 1 (en suck) och exit code 2 (NEJ, med en lapp på). Sedan dyker vi ner i decision control: allow, deny och ask, plus de två kraftfullaste fälten av alla – updatedInput, som tyst byter ut Claudes kommando, och additionalContext, som viskar saker i örat på den.Det är Sigges favoritavsnitt, för idag förbjuder vi äntligen pip (typ). Musses mormor visar sig ha uppfunnit exit codes med sitt trafikljus-system för dessert, Sigges Snabbförklaring™ sätter ett nytt "alltså basically"-rekord, och Världens Bästa Hook-Setup™ får sin tredje vaktbjörn.Du lär dig: skillnaden mellan exit codes och JSON-styrning, varför du aldrig ska blanda kanalerna, varför toppnivå-decision är deprecated för PreToolUse – och varför "deny lär, updatedInput lurar".Vi kan fortfarande inte stava till determinism. Men vi vet vad det betyder. Typ.
  • 4. "PreToolUse – Bouncern vid kodklubben"

    40:10||Season 1, Ep. 4
    Sigge har testat sin första hook. På sin egen laptop. Genom att försöka köra rm -rf. På riktigt. Musse är inte glad. Men hooken HÖLL – och det är dagens stora ämne: PreToolUse, det enda hook-eventet som körs innan något händer, och därför det enda som faktiskt kan säga nej utan ånger. Sigge kallar det bouncern vid kodklubben. Musse kallar det en grind. De bygger block-rm.sh live i grottan, läser JSON som poesi ("alltså 'deny' är ju bara engelska för 'nä'"), och täcker de tre superkrafterna: blockera, modifiera, informera. Plus: en brun låda anländer till studion med oklart innehåll, Sigges Snabbförklaring landar på noll av fyra, och i post-credits avslöjar Musse något om förra avsnittets cliffhanger som får Sigge att tappa förmågan att andas. Den vaktbjörn du satte ut för att du visste att du själv var den största risken.