Fish Food 700: Thinking (and working) in loops
Loop thinking in strategy, 700 editions of Fish Food, AI watermarking, voice is the thing, and the death of hustle culture.
This week’s provocation: Strategists, AI and working in loops
In early June Peter Steinberger, the developer behind OpenClaw, posted (on X, but I’m not linking to X) something which seems to have changed a lot of influential people’s approaches to working with AI. ‘Here’s your monthly reminder’, he said, 'that you shouldn’t be prompting coding agents anymore. You should be designing loops that prompt your agents’. Around the same time Boris Cherny, who runs Claude Code at Anthropic, said that his job was now to ‘write loops’ rather than prompts. Then (author and ex Google engineer) Addy Osmani gave it a name, ‘loop engineering’, describing a process whereby you replace manual human prompting of AI agents by defining a recursive goal and designing the system that can iterate towards it until it is complete.
An effective loop, said Osmani, comprises five things: automations that trigger on a schedule and do their own discovery; isolated ‘worktrees’ that ensure that agents working in parallel don’t trip over each other; Skills that write down the project knowledge and stop the agents guessing; connectors that plug this into the tools you use; subagents so you can have one agent that has the idea and another that checks it. A good setup also requires a markdown file or something outside the conversation which acts as a record of what’s been done and what’s next (since the model forgets everything between runs).
With one-shot prompting you ask for something and you get an answer. You then read it, decide what to do next, and then ask your next question. You carry the work forwards, one turn at a time. With a loop, you design the cycle - what triggers it, what it should know, what the finished output should look like, how it knows whether the result is good enough, and what it captures before it goes round again. The system keeps going by itself, checking its output against your description of ‘done’ until it gets there.
Loop engineering sets out a useful technique for coding and more, but it’s notable that every loop in it takes its goal as given. The automations fire against instructions that someone has written. The subagents check against standards that have been defined. The definition of done is something that someone specified. Within those boundaries the loop can be very efficient.
In the mid 1970s American theorists Chris Argyris and Donald Schön drew a distinction between two very different types of learning. Most learning, they said, works like a thermostat. If the room drops below nineteen degrees the thermostat detects the variance and the boiler fires up. It’s a feedback loop that can reliably run in exactly the same way for years. But what it will never do is question whether nineteen degrees is the right temperature or whether the room needs heating at all. Argyris and Schön called this single-loop learning. The loop detects variance or error and corrects actions without questioning the underlying rules, goals or policies that define what counts as an error in the first place. Double-loop learning on the other hand, is focused on questioning and changing the underlying assumptions, values or rules in a way that can help to solve a problem.
The distinction between single and double loop learning is often framed in terms of the difficulty of the challenge. Single loop is good for well understood problems, double loop is required for more challenging situations. But it’s more subtle than that. It’s possible to work extremely hard on a very unfamiliar strategic problem and remain in single loop learning from beginning to end. In fact in his 1991 HBR essay Teaching Smart People How to Learn (great title) Argyris argued that capable people do this more than anyone. He found that people such as management consultants were very good at single-loop reasoning and very poor at double-loop. It was not that the consultants lacked intelligence, but they had rarely failed at anything, meaning that they had little experience of questioning their own contribution to failure.
The point is that the two loops need different conditions, and AI is transforming one of them at speed whilst hardly touching the other. Pretty much everything we currently do with AI is single loop. With AI agents and loop engineering we can set up recursive goals without questioning the governing variables at all. But it’s wrong to treat single-loop learning as the poor relation to double-loop. It simply does a different job, and if every question we faced needed a reframing we’d never get anything done.
So what does getting good at single-loop learning look like? Simple versions of this (and where most people stop) include codifying frequently used frameworks or methods that you use repeatedly into Skills or agents. As an example, I have a Skill that has turned a process that I like to use for workshop design into a repeatable way for Claude to help me research, organise my thinking, and structure and design content for workshops. I set this up initially by asking Claude to turn a design process that I’d been through into a repeatable Skill and then each time I’ve used it I’ve asked it to learn from the back-and-forth and improve the Skill instructions. It’s saved me a tonne of time whilst still enabling me to design bespoke workshops unique to client needs.
It’s also useful to codify how you’ve used specific frameworks. The model knows what the Theory of Constraints is for example, but it doesn’t know how you like to apply it unless you capture it. More useful still, and perhaps rarer, is the practice of codifying the output standard or what good looks like and not just the process. We can take this beyond formatted briefs or reports and into capturing specifics about what analysis outputs must contain for you to accept it, disqualification criteria for recommendations, and how the AI can set out its reasoning for you to check. This is what turns recurrence into completion because you are creating your own definition of done.
One of the lessons we can glean from loop engineering is about separating the maker from the checker. Design one agent or Skill to run the process but then another to check the outputs according to your defined standards (perhaps even using a different model). Writing down your criteria for critiquing is actually a pretty useful thing to do anyway as it forces you to really think it through, but you can also generate criteria by borrowing from great thinkers. For example, using Richard Rumelt’s four hallmarks of bad strategy to check strategic recommendations (his book is still the best book on strategy IMHO).
Then there is the context which can exist independent of method. A structured folder for each client which contains feedback as well as other information that can provide persistent intelligence for agents to work from, or synthetic client personas as Skills or agents that can anticipate feedback or objections and help shape pitches. You can sequence these agents so that they run in loops without a trigger from you. For example, a scheduled scan of competitive or category information can lead into a synthesis which brings in client context or flags what’s changed, and then an option generator which creates strategic options based on that information. This can lead into a stress-testing process to evaluate or reveal weaknesses in a proposed way forwards, and finally an agent that records what was decided, reflects on the process, and captures learning to feed back into the client context or update your workflow.
But the real value comes when you set up these processes so that they compound in value. Reflection passes are really useful for this. The Reflect Skill (which I originally got from here) is an excellent example of this. At the end of a piece of work triggering it makes Claude look back at the process you’ve just been through, identify what’s worth keeping and commit durable facts and preferences to memory, convert corrections and redirections into standing instructions, and repeatable workflows into Skills. Using it has made me feel that every time I go through a process using Claude it’s better than the last, and it has recommended a number of Skills that I’ve then created and which help me to further improve what I’m frequently doing.
This is loop thinking. The loop that improves the loop. And it’s hugely valuable. As I said before, most AI use is open loop - one-shot prompting, no accumulation of value. Yet every interaction, every process that you go through creates a learning opportunity to make the next one better. By definition recursive means a process or concept which repeats by applying itself to its own previous outputs or results. If you’re starting from scratch every time you are losing enormous value.
But there is one big watch out. Compounding value and compounding assumptions can easily make use of the same mechanism. Every codified framework, process, standard is an opportunity to ignore the need to question the assumptions on which it is based. Executing a recursive goal doesn’t question the governing variables, framing or rules, it just repeats. Things change, and when they do we can easily find that irrelevance is compounding rather than value.
This is where we need double loop learning. If single loop asks ‘are we doing things right?’, double-loop asks ‘are we doing the right things?’. Argyris noted how ‘defensive routines’ often block double-loop learning. A lack of appetite to make things harder for ourselves, avoiding embarrassment, accepting that we may be wrong or that we need to update our thinking. AI can play a useful role here as well because AIs don’t get embarrassed and don’t mind extra work. Asking the AI to reflect on a process and outputs to extract the assumptions and what has been taken for granted exposes the governing variables which you can then interrogate. Asking it to argue against a conclusion or strategy reveals weaknesses in your thinking or whether you’ve framed a problem in the right way. Updating your Skills/agentic processes should become second nature. As your thinking and approaches evolve, so should the Skills that have codified them. None of this has a trigger or automation. It requires human intent and action.
One final thought on this. In 1868 James Clerk Maxwell wrote the first serious mathematical treatment of feedback, studying why it was that steam engine governors like the one above sometimes settled and sometimes oscillated wildly. He found that instability came from the lag, or the mechanism correcting against a condition that had already passed. His test for a good governor was not about speed, it was about whether the corrections converged in a settled way. In the same way a strategic process can be correcting beautifully for a world that has moved on. It can feel from the inside as though it is working well when it’s actually already out of date.
Rewind and catch up…
The age of the expert generalist
Photo by Tine Ivanič on Unsplash, R. Routledge, Public domain, via Wikimedia Commons
If you do one thing this week…
This edition of the newsletter marks something of a milestone. My 700th edition. Gosh. I’m a firm believer that writing changes how we think about the world, and that the act of writing helps us to work out what we think. It takes several hours a week to write and compile but in its various forms this newsletter has acted as a kind of weekly record of what I thought was most interesting at the time, and a motivation to always look outwards and to understand. 16 years of curation which has paid back in untold ways. Not least in all the feedback that I’ve had from subscribers - links to read, arguments to understand, ideas to explore. For that I’m immensely appreciative.
Links of the week
Anthropic have developed a new way of watermarking text to show that it has been written by AI. This may have been initiated by the EU regulation on AI transparency that’s coming in but they’ve chosen to apply this for anyone using Claude anywhere in the world. The system works by using the way that Claude selects tokens predictively to identify when sequences of words look like they have been organised and written by AI. This could even flag text that has been edited using AI, even if it was written by a human, but it is a real sign that pretty soon we could have a universal system for being able to identify AI writing.
Flagging AI-generated content is gaining momentum - Spotify are also adding ‘AI persona’ badges to AI-generated artists.
Voice interaction seems to be becoming more of a thing (depsite several false starts). Last month both OpenAI and Anthropic launched new voice mode capabilities and the rumours around OpenAI’s new device are that it is voice activated rather than screen interaction. Meanwhile Google revealed that whilst Gemini now has over a billion monthly users, 63% percent of them now talk directly to the AI.
‘Every generation of strategy is built around managing what is scarce. The history of strategy can be read as a history of migrating bottlenecks’. Sangeet Paul Choudray on scarcity and strategy, a useful Hollywood/streaming analogy, and misreading AI transformation.
Alex McCann is good on the death of hustle culture, making the point that it’s no longer compatible with contemporary productivity in the age of AI
Quote of the week
“The hardest thing to teach a student—and the hardest thing to believe consistently—is that there is nothing ‘out there’ to go and get. There is no part, no career, no opportunity for which you should be searching and scrounging and coveting. All of the preparation is within, and you keep yourself mentally and physically fit; you remain generous with yourself and others; you stay deeply in study about your craft. Whatever is yours will then arrive.” Marian Seldes, from this short post by Dave Markwell.
And finally…
I loved this short clip of a young David Attenborough talking to Jack Mulholland in a remote Australian bush town for the BBC programme The Hermits of Borroloola. Kind of makes you re-evaluate a lot of things.
Weeknotes
This week has been pretty full on working with my client Omantel out in Muscat, and delivering some virtual sessions for Standard Bank in Africa. I’m going to be out here for a little longer as tomorrow I’m starting a three day session with one of the big banks, Ahlibank which should be fun.
Thanks for subscribing to and reading Only Dead Fish. It means a lot. This newsletter is 100% free to read so if you liked this edition please do like, share and pass it on.
If you’d like more from me my blog is over here and my personal site is here, and do get in touch if you’d like me to give a talk to your team or talk about working together.
My favourite quote is from the renowned Creative Director Paul Arden: ‘Do not covet your ideas. Give away all you know, and more will come back to you’. This captures what I try to do every day.
Only dead fish swim with the stream.
Neil






If you haven't already, I highly recommend picking up 'Aurora' by Kim Stanley Robinson. Recursive prompting plays a huge and quite poetic role in this beautiful story. One of my absolute faves.