The Case for Bounded Autonomy

Modern AI development often falls into the trap of "maximalism"—throwing as much context as possible at a model and expecting emergent behavior. Angus McLean argues for "bounded autonomy," where developers intentionally constrain agents to improve performance and reliability. In high-stakes environments like advertising, where his team generates 4,000 assets daily, the goal is not to build a black-box agent that does everything, but to design systems that are reactive, fast, and measurable.

Rethinking Context and Complexity

LLMs are naturally verbose and tend toward complexity, often suggesting overly engineered solutions. McLean suggests that developers should:

  • Minimize Context: Instead of dumping massive amounts of data into a context window, ask how little information is required to complete the task. Excessive context often introduces noise and makes models susceptible to SEO-heavy, low-quality data.
  • Curate Inputs: Replace broad internet access with high-quality, curated documentation. This forces the model to rely on verified information rather than the "hallucination-prone" noise of the open web.
  • Embrace Constraints: Just as early game developers achieved massive results with limited memory (e.g., Crash Bandicoot), AI engineers should use constraints to drive creativity. If you cannot perform a task manually, you should not be automating it.

Practical Engineering Principles

  • Treat LLMs as Databases: View models as flexible databases capable of semantic math rather than sentient entities. This mindset shift helps developers focus on data representation and transformation.
  • Use Multiple Representations: Don't rely on a single format. Use Markdown for human-readable hierarchy, graph relationships for connections, and folder structures for fast retrieval. The structure of data is a property of the observer, not the object itself.
  • Shorten Feedback Loops: Avoid building complex agentic workflows that are difficult to debug. If a simple tool like HTML can replace a complex agentic application (as McLean found with his CV), choose the simpler path.
  • Build Your Own Harness: Experiment by building your own memory and compaction layers rather than relying solely on black-box frameworks. This builds a deeper understanding of the underlying data and improves prompt control.