[{"data":1,"prerenderedAt":354},["ShallowReactive",2],{"nav-categories":3,"post-a-digestive-for-agentic-friend":9,"all-posts-nav":260,"all-tags":297},{"pinned":4,"overflow":8},[5,6,7],"Technology","Rambles","Security",[],{"id":10,"title":11,"body":12,"category":6,"date":243,"description":244,"extension":245,"featured":246,"image":247,"imageCredit":248,"imageCreditUrl":249,"meta":250,"navigation":251,"path":252,"public":251,"seo":253,"stem":254,"tags":255,"__hash__":259},"posts\u002Fblog\u002F2026\u002Fa-digestive-for-agentic-friend.md","A Digestive for an Agentic Friend",{"type":13,"value":14,"toc":227},"minimark",[15,19,22,25,79,82,87,90,95,103,106,111,118,126,132,136,146,149,153,156,159,162,166,170,174,177,180,183,187,191,195,198,201,204,208,211,214,218,221,224],[16,17,18],"p",{},"Today, agents are part of my daily workflow. Whether I chose that or it happened\nto me is open to debate, since frontier model developers are quite good at\nsinking their claws into organisations. So I have accepted that these tools\nexist, and we keep a fragile but fairly productive peace.",[16,20,21],{},"Tomorrow they may not be my friend. For now they are, though a somewhat\nforgetful one. Every session starts from nothing and, in most cases, remembers\nnothing of the last. I am guilty of this too, mind you. There is plenty of\nguidance on the topic from trustworthy folks and charlatans alike, and somewhere\nin between, I exist (albeit some days a little overwhelmed).",[16,23,24],{},"For a sense of scale, here is how much has piled up so far:",[26,27,28,47],"table",{},[29,30,31],"thead",{},[32,33,34,38,41,44],"tr",{},[35,36,37],"th",{},"Where",[35,39,40],{},"Folders",[35,42,43],{},"Files",[35,45,46],{},"Size",[48,49,50,65],"tbody",{},[32,51,52,56,59,62],{},[53,54,55],"td",{},"Work machine",[53,57,58],{},"36",[53,60,61],{},"7,388",[53,63,64],{},"196 MB",[32,66,67,70,73,76],{},[53,68,69],{},"Hobby repositories, since May",[53,71,72],{},"57",[53,74,75],{},"1,202",[53,77,78],{},"12 MB",[16,80,81],{},"That is a lot of diary for a friend who tends to forget!",[83,84,86],"h2",{"id":85},"the-diary","The Diary",[16,88,89],{},"Psychologists have a name for leaning on a partner to remember things for you.\nDaniel Wegner called it transactive memory in the 1980s, studying couples and\nteams, and I doubt however that he had LLMs in mind.",[91,92],"related-post",{"path":93,"title":94},"https:\u002F\u002Fdoi.org\u002F10.1007\u002F978-1-4612-4634-3_9","Transactive Memory: A Contemporary Analysis of the Group Mind (Wegner, 1987)",[16,96,97,98,102],{},"Every tool has its own answer to forgetfulness. Some keep a memory of their own,\nmost read an instructions file at the start of each session, and plenty of\npeople have built elaborate systems on top of both. I am not a big fan of heavy\nprompting, least of all when moving from one piece of work to the next, and I\nwould rather not brief every fresh session from scratch. So mine is a few lines\nasking the agent to keep a somewhat curated diary, and the diary does the\nbriefing. When the agent makes a decision, it writes a worklog with the diff\nattached. When I ask it a question, it writes the answer up as a discussion.\nWhen work is left hanging, it leaves a handover note in a folder called ",[99,100,101],"code",{},"next\u002F",",\nso that later sessions can follow up if needed.",[16,104,105],{},"Simple is as simple does.",[107,108,110],"h3",{"id":109},"out-with-the-old","Out With The Old",[16,112,113,114,117],{},"For a long time the diary lived in a gitignored ",[99,115,116],{},"instance\u002F"," folder inside each\nrepo. Like a sheep hiking in Connemara in autumn, this was fine, until it\nwasn't, even if the weatherman 🌞 promised green skies all round.",[16,119,120],{},[121,122],"img",{"alt":123,"src":124,"title":125},"A sheep on the slopes of Mweelrea in Connemara","\u002Fimages\u002Fblog\u002F2026\u002Fsheep-hiking.png","Taken whilst hiking Mweelrea, Connemara",[16,127,128,129,131],{},"What changed was Git worktrees. I picked them up partly because of Claude and\npartly out of curiosity. Wholly thankful for the productivity gains. A worktree\nis meant to be thrown away once its branch is done, and its ",[99,130,116],{}," folder\ncan go with it. On my work laptop the notes had also spread across 36 folders.",[107,133,135],{"id":134},"in-with-the-new","In With The New",[16,137,138,139,141,142,145],{},"So this week I moved every ",[99,140,116],{}," folder into a single ",[99,143,144],{},"~\u002F.worklogs","\ndirectory, outside any repo, where no worktree clean-up can reach it. Since May,\nthe diary there has grown to span 57 hobby repositories, a fair amount of it\nthrowaway, proof of concept or ad hoc. It all still takes up mental space,\nwhether it's a full context thread or an itch.",[16,147,148],{},"The agents keep adding to it without complaint. Last week alone produced 58 new\nfiles, covering hosting costs, a points ledger for a home bounty board, the\norder of backups in an archiver, and pulling Google Keep lists into another app.\nEvery file is tidy and complete, and every one is written for a single reader or\nthe next session to open that repository.",[83,150,152],{"id":151},"everything-written-down","Everything Written Down",[16,154,155],{},"At the end of one busy week (or weekend, for the hobby cases), I tried to list\nwhat I had done and came up short. I had written everything down and still could\nnot tell you what happened. The agent forgets by design, and I forget by volume.\nEvery note was written for an agent that would open exactly one of them, in one\nrepository, at the start of one session. Nobody had read all 58, least of all\nme, to be honest.",[16,157,158],{},"Work is where this bites hardest. On any given week I am managing large stacks\nof pull requests across several repositories, spanning diverse and often complex\ntopics, each carrying decisions an agent and I made together. Somewhere in the\nmiddle of it, someone asks me an obvious question about one of them... and I\ncannot answer it without going back through the notes.",[16,160,161],{},"The pace does the rest. A decision that once took a meeting and a few days of\nmulling now lands in an afternoon, gets recorded faithfully, and has slipped out\nof my head by dinner. That is roughly what the research says to expect. Working\nmemory holds about four things at once, by Nelson Cowan's estimate, and a modern\nreplication of Ebbinghaus's forgetting curve found most of what we learn fades\nwithin the first day.",[91,163],{"path":164,"title":165},"https:\u002F\u002Fdoi.org\u002F10.1017\u002FS0140525X01003922","The Magical Number 4 in Short-Term Memory (Cowan, 2001)",[91,167],{"path":168,"title":169},"https:\u002F\u002Fdoi.org\u002F10.1371\u002Fjournal.pone.0120644","Replication and Analysis of Ebbinghaus' Forgetting Curve (Murre and Dros, 2015)",[83,171,173],{"id":172},"the-friday-digest","The Friday Digest",[16,175,176],{},"So on Fridays I read the diary back: the discussions first, for what I was\nwondering about, then the handover notes, for what I left open, and the worklogs\nlast, for what actually happened (usually optional as this is ambient material).",[16,178,179],{},"Even then it is too much to hold, so my agentic friend writes me a digest, a\nparagraph per project in plain language, the sort of thing a friend would tell\nyou if you asked how the week went. Like the biscuit it shares a name with, a\ndigest is plain, short and best had with a cup of tea, provided you don't leave\nit dunked so long that it falls apart. Reading it is where my reflection\nhappens, because I still have to decide what mattered. Di Stefano, Gino, Pisano\nand Staats found that once people have some experience with a task, time spent\nwriting down what they learned helps more than the same time spent doing more of\nit. Handing the writing to the agent probably costs me some of that benefit, but\nthe deciding is still mine.",[16,181,182],{},"The trade is worth it for two reasons. The first is seeing where my time was\nbest spent, which projects earned the week and which ones quietly ate it. The\nsecond is closing threads in my head. Once a loose end is in the digest, written\ndown and acknowledged, I can stop carrying it around, and the next Friday tells\nme whether it is still open. Masicampo and Baumeister found much the same:\nmaking a plan for an unfinished task is enough to stop it nagging at you.",[91,184],{"path":185,"title":186},"https:\u002F\u002Fdoi.org\u002F10.2139\u002Fssrn.2414478","Making Experience Count: The Role of Reflection in Individual Learning (Di Stefano et al.)",[91,188],{"path":189,"title":190},"https:\u002F\u002Fdoi.org\u002F10.1037\u002Fa0024192","Consider It Done! Plan Making Can Eliminate the Cognitive Effects of Unfulfilled Goals (Masicampo and Baumeister, 2011)",[107,192,194],{"id":193},"and-a-tale-of-soggy-biscuits","And A Tale Of Soggy Biscuits",[16,196,197],{},"Reading back also shows how a decision in one place shapes another, even when\nnothing connected them at the time. On Thursday evening, for a community project\nI do pro bono, I spent a session weighing up the 2026-2027 cost of minimal,\nalways-on hosting. Nothing was wrong. I wanted to know what the cheapest\nsensible setup would cost, and I wanted the comparison on record.",[16,199,200],{},"The next morning, for reasons that had nothing to do with any of that, AWS\nsuspended the account the old site ran on. The timing was something to behold.\nIn the evening I moved the site onto a Raspberry Pi for the time being, and the\ncomparison I had made with no urgency at all was suddenly the thing I needed. I\nwent straight back to it, discussion and decisions included.",[16,202,203],{},"The digest also turned up twelve handover notes in my drive app, written over\nfour days off in August and untouched since. Those are the biscuits I left in\nthe tea, three months of soaking, and I suspect a few have gone to the bottom of\nthe cup.",[83,205,207],{"id":206},"the-end-of-the-year","The End of the Year",[16,209,210],{},"With every log now in one place, I can go back and have a digest written for\neach of the 27 weeks since May that has one. Add a Friday digest for each week\nleft in the year and the stack reaches about 35 by Christmas, still small enough\nfor a few pots of tea. Come December, the plan is to digest my digests, a\nmatryoshka of biscuits: have one more written for the year, then sit down with\nit myself, picking out what changed my mind, what I kept putting off and which\nhandover notes are still waiting. Some of that will end up in a self-assessment,\nsince the end of the year is also review season, and I would rather write mine\nfrom a record than from memory. A whole year should also show patterns a single\nweek cannot, where my time was wasted and where it was best spent.",[16,212,213],{},"What I have learned on top of all this is that a daily system is easy enough to\ndesign, but the rhythm it needs is not. I did not set out to build a Friday\ndigest. I found the rhythm first, and the rhythm became a habit, for better or\nworse.",[83,215,217],{"id":216},"later-sessions","Later Sessions",[16,219,220],{},"When I wrote that handover rule, the later sessions I had in mind were agents: a\nfresh context window picking up where the last one stopped. The most faithful\nlater session turned out to be me, on a Friday afternoon, with a cup of tea and\nfifty-odd files boiled down to a page. The diary was for my agentic friend, and\nit does that job well enough. The digest is the part I keep for myself, and it\nis the closest I get to remembering a week that moved faster than I did.",[222,223],"hr",{},[16,225,226],{},"A creature of habit I may be, but the irony is, I don't even really eat\nbiscuits.",{"title":228,"searchDepth":229,"depth":229,"links":230},"",5,[231,237,238,241,242],{"id":85,"depth":232,"text":86,"children":233},2,[234,236],{"id":109,"depth":235,"text":110},3,{"id":134,"depth":235,"text":135},{"id":151,"depth":232,"text":152},{"id":172,"depth":232,"text":173,"children":239},[240],{"id":193,"depth":235,"text":194},{"id":206,"depth":232,"text":207},{"id":216,"depth":232,"text":217},"2026-11-06","A small Friday ritual for keeping up with weeks that move at a pace evolution never signed off on.","md",false,"\u002Fimages\u002Fblog\u002F2026\u002Fbryce-canyon-national-park-natalia-gutnik.jpeg","Natalia Gutnik","https:\u002F\u002Fwww.instagram.com\u002F__dust__in__the__wind__?igsh=MTEwd28zZ2Nta3IwNQ==",{},true,"\u002Fblog\u002F2026\u002Fa-digestive-for-agentic-friend",{"title":11,"description":244},"blog\u002F2026\u002Fa-digestive-for-agentic-friend",[256,257,258],"ai","workflow","reflection","ynkjqLZtVUpZw780rwQYfJuEd63p3tuNlhtcLlk57Aw",[261,262,266,270,274,278,282,286,290,293],{"path":252,"title":11,"date":243},{"path":263,"title":264,"date":265},"\u002Fblog\u002Fthe-producer-that-couldnt","The Producer That Couldn't","2026-07-12",{"path":267,"title":268,"date":269},"\u002Fblog\u002F2026\u002Fkotlinconf-2026-day-2","KotlinConf 2026 - Day 2 Impressions","2026-05-22",{"path":271,"title":272,"date":273},"\u002Fblog\u002F2026\u002Fkotlinconf-2026-day-1","KotlinConf 2026 - Day 1 Impressions","2026-05-21",{"path":275,"title":276,"date":277},"\u002Fblog\u002Fsecurity\u002Fself-hosted-container-registry-mtls","Self-hosting a private container registry with NGINX and mTLS","2026-05-19",{"path":279,"title":280,"date":281},"\u002Fblog\u002Fan-antidote-to-speed","An Antidote To Speed","2026-05-14",{"path":283,"title":284,"date":285},"\u002Fblog\u002Frsa-jwt-nodejs","Sign and verify JWT with RSA encryption with NodeJS","2023-06-05",{"path":287,"title":288,"date":289},"\u002Fblog\u002Fgenerating-tls-certificates-openssl","Generating TLS certificates for server HTTPS","2023-05-05",{"path":291,"title":292,"date":289},"\u002Fblog\u002Ftwo-years-with-nuxt","Framework Paralysis to NuxtJS",{"path":294,"title":295,"date":296},"\u002Fblog\u002Fan-ode-to-strange-javascript","An Ode To Strange JavaScript","2023-02-01",[298,299,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352],{"name":256,"count":229},{"name":258,"count":235},{"name":301,"count":232},"kotlin",{"name":303,"count":232},"conference",{"name":305,"count":232},"learning",{"name":307,"count":232},"pki",{"name":309,"count":232},"security",{"name":257,"count":311},1,{"name":313,"count":311},"android",{"name":315,"count":311},"compose",{"name":317,"count":311},"coroutines",{"name":319,"count":311},"spring",{"name":321,"count":311},"grpc",{"name":323,"count":311},"koin",{"name":325,"count":311},"context-parameters",{"name":327,"count":311},"productivity",{"name":329,"count":311},"javascript",{"name":331,"count":311},"tls",{"name":333,"count":311},"rsa",{"name":335,"count":311},"technology",{"name":337,"count":311},"jwt",{"name":339,"count":311},"encryption",{"name":341,"count":311},"docker",{"name":343,"count":311},"nginx",{"name":345,"count":311},"mtls",{"name":347,"count":311},"nuxtjs",{"name":349,"count":311},"frontend",{"name":351,"count":311},"ui",{"name":353,"count":311},"client",1793987582099]