[{"data":1,"prerenderedAt":195},["ShallowReactive",2],{"\u002Fblog\u002Fagent-design-is-a-systems-problem":3},{"id":4,"title":5,"author":6,"body":7,"category":178,"date":179,"description":180,"draft":181,"excerpt":182,"extension":183,"heroImage":182,"heroImageAlt":182,"meta":184,"navigation":185,"path":186,"seo":187,"slug":182,"stem":188,"tags":189,"__hash__":194},"blog\u002Fblog\u002Fagent-design-is-a-systems-problem.md","Agent Design Is a Systems Problem, Not a Prompting Problem","QikSolve",{"type":8,"value":9,"toc":168},"minimark",[10,14,19,22,51,55,58,72,76,79,106,109,113,116,142,146,149,153],[11,12,13],"p",{},"Early generative AI thinking was linear and prompt-centric: craft better instructions, refine\nwording, treat the model as a black box that responds to cleverness. That mental model breaks down\nalmost completely once you move to agent-based systems. When agents enter the picture, individual\nprompt quality becomes a local optimisation concern. What determines real-world outcomes is the\narchitecture surrounding the model — how components interconnect, how state is managed, and how\nfailures are handled. This is not a refinement of the old model; it is a different paradigm.",[15,16,18],"h2",{"id":17},"why-agents-are-systems-problems","Why agents are systems problems",[11,20,21],{},"An agent setup is not a single function call — it is a dynamic system with all the complexity that\nimplies:",[23,24,25,33,39,45],"ul",{},[26,27,28,32],"li",{},[29,30,31],"strong",{},"Multiple components:"," LLMs, tools, memory stores, triggers, and external APIs operating in\nconcert, each with its own failure profile.",[26,34,35,38],{},[29,36,37],{},"State over time:"," unlike stateless calls, agents accumulate context across steps. Where state\nlives, and how it is managed, determines system reliability.",[26,40,41,44],{},[29,42,43],{},"Feedback loops:"," outputs feed back into subsequent inputs. Without deliberate loop design,\nagents drift, compound errors, or enter cycles.",[26,46,47,50],{},[29,48,49],{},"Non-deterministic behaviour:"," probabilistic components mean identical inputs can yield\ndifferent outputs. The system must be resilient to that variance by design.",[15,52,54],{"id":53},"the-questions-a-systems-architect-asks","The questions a systems architect asks",[11,56,57],{},"Once you accept agents are systems, the diagnostic questions change entirely from \"how do I get a\nbetter answer?\" to:",[23,59,60,63,66,69],{},[26,61,62],{},"Where does state live, and how is it persisted, updated, or discarded at each point in the\nworkflow?",[26,64,65],{},"How does information flow? What data contract does each agent receive, and what can it act on?",[26,67,68],{},"What triggers actions? Ambiguous triggers introduce race conditions and unpredictable side\neffects.",[26,70,71],{},"What are the failure modes? Every component fails eventually — design recovery pathways before\nyou encounter them in production.",[15,73,75],{"id":74},"a-four-layer-mental-model","A four-layer mental model",[11,77,78],{},"Context and harness engineering remain important, but they operate at lower layers than top-level\nsystem design — conflating them with architecture is where most agent projects go wrong.",[80,81,82,88,94,100],"ol",{},[26,83,84,87],{},[29,85,86],{},"Systems thinking (foundation):"," define agents, roles, flows, feedback loops, state\ntransitions, and failure handling.",[26,89,90,93],{},[29,91,92],{},"Harness \u002F orchestration:"," how agents are invoked, how tools are called, retry mechanisms,\nguardrails, and observability hooks.",[26,95,96,99],{},[29,97,98],{},"Context engineering:"," what each agent sees — context boundaries, data contracts between\ncomponents, and which elements of state are exposed and when.",[26,101,102,105],{},[29,103,104],{},"Prompting:"," local optimisation only — effective within a well-designed system, no substitute\nfor one.",[11,107,108],{},"Context engineering, done properly, moves from \"how do I write the perfect prompt?\" to \"what\ninformation is available at each node in the system?\" Harness engineering moves from \"how do I make\nthe model behave?\" to \"how do I orchestrate execution and control flow?\"",[15,110,112],{"id":111},"what-happens-without-systems-thinking","What happens without systems thinking",[11,114,115],{},"The consequences of treating agent design as a prompting problem are predictable and compounding:",[23,117,118,124,130,136],{},[26,119,120,123],{},[29,121,122],{},"Agents loop"," — without termination conditions and state boundaries, agents re-enter completed\nflows, consuming tokens, time, and budget.",[26,125,126,129],{},[29,127,128],{},"Context bloats"," — without deliberate context management, history and retrieved data accumulate\nunchecked, degrading performance and increasing latency.",[26,131,132,135],{},[29,133,134],{},"Outputs drift"," — without feedback-loop controls, small early deviations compound into large\nones.",[26,137,138,141],{},[29,139,140],{},"Failures compound silently"," — without observability, errors propagate undetected until the\nroot cause is several steps removed and hard to isolate.",[15,143,145],{"id":144},"the-bottom-line","The bottom line",[11,147,148],{},"If you lean on prompts, you will see early gains, then plateau — prompts cannot compensate for\narchitectural weaknesses, only mask them temporarily, and technical debt accumulates invisibly\nuntil it fails visibly. Get the system right, and you get predictable behaviour from unpredictable\ncomponents: a resilient, observable, extensible system in which prompts become almost a replaceable\nimplementation detail rather than the load-bearing design decision.",[15,150,152],{"id":151},"related-reading","Related reading",[23,154,155,162],{},[26,156,157],{},[158,159,161],"a",{"href":160},"\u002Fblog\u002Fqxaios-compliance-centric-operating-model-for-ai-systems","QxAIOS: A Compliance-Centric Operating Model for AI Systems",[26,163,164],{},[158,165,167],{"href":166},"\u002Fblog\u002Foperating-ai-agents-in-gxp-qa-practitioners-guide","Operating AI Agents in GxP: A QA Practitioner's Guide",{"title":169,"searchDepth":170,"depth":170,"links":171},"",2,[172,173,174,175,176,177],{"id":17,"depth":170,"text":18},{"id":53,"depth":170,"text":54},{"id":74,"depth":170,"text":75},{"id":111,"depth":170,"text":112},{"id":144,"depth":170,"text":145},{"id":151,"depth":170,"text":152},"AI Governance","2026-09-10","The assumption that better prompts yield better outputs breaks down entirely when you move from single-shot generation to agent-based systems. The real lever is architecture.",false,null,"md",{},true,"\u002Fblog\u002Fagent-design-is-a-systems-problem",{"title":5,"description":180},"blog\u002Fagent-design-is-a-systems-problem",[190,191,192,193],"agentic-ai","systems-thinking","ai-architecture","agent-design","vPuQ92ep4AVAWnn-xGgLBNvoEXiy5ypuAeX-0iRP9NY",1789037363307]