The Boundary That Makes Intelligence Scalable
Hatched by tfc
Aug 10, 2026
10 min read
1 views
92%
What if the secret to building more intelligent systems is not giving them more freedom, but giving them better boundaries?
That sounds backwards. Intelligence is usually associated with expansion: more tools, more memory, more agents, more possible strategies. Yet systems that can search through an enormous space of possible actions often become brittle, expensive, and impossible to understand. The most effective systems do something more disciplined. They turn complexity into a set of bounded units, each with a clear purpose, a controlled interior, and a small surface through which the outside world can interact.
This principle appears in two places that are rarely discussed together: the design of software domains and the automated discovery of AI agents. One describes how objects should be grouped so that change remains coherent. The other describes how a model can iteratively invent better agents by building on an archive of prior discoveries. Their deeper connection is this:
Scalable intelligence depends on treating each new capability as a bounded object, not as an unrestricted accumulation of possibilities.
This is more than a metaphor. It offers a practical design theory for systems that learn, evolve, and remain governable.
The Problem With Intelligence Without Boundaries
Imagine asking a capable language model to create a system for solving difficult math problems. It might invent a chain of reasoning, call another model, write a small program, critique its own answer, search for counterexamples, and revise the result. Each of these actions can be useful. But if every component can freely inspect and modify every other component, the system soon develops the software equivalent of a crowded mind.
A change intended to improve arithmetic may alter the format of intermediate reasoning. That change may break the critic. The critic may then compensate by adding a new instruction, which affects the tool caller. A system that once had five understandable steps becomes a tangled web of implicit dependencies.
The issue is not that the system has too many parts. The issue is that the parts do not have boundaries.
A boundary answers several crucial questions:
- What does this unit own?
- What may the outside world ask it to do?
- Which details are private implementation choices?
- What must remain true before and after a change?
In domain driven software design, an aggregate provides precisely this kind of boundary. It gathers related objects under one root and treats them as a unit for data changes. External code does not reach into every internal object. It interacts through the root, which protects the consistency of the whole.
The same logic applies to an evolving agent system. A discovered agent should not be understood merely as a prompt or a chain of calls. It is better understood as a bounded capability with an interface, internal strategy, state, and invariants.
Without that framing, automated agent discovery risks becoming a generator of clever fragments. With it, the process can become a search over reusable, composable capabilities.
The Agent as an Aggregate of Reasoning
Consider a research agent that answers questions from a collection of documents. Internally, it may contain a retrieval step, a passage ranking strategy, a synthesis model, a citation checker, and a final formatter. These components are related, but they should not all be visible to the rest of the application.
The application should interact with one public operation, perhaps:
answer(question, source_set) -> answer_with_evidence
That operation is the agent's root. The retrieval method, ranking heuristics, internal prompts, and verification procedure belong inside its boundary. They may evolve without forcing every caller to understand the changes.
This distinction creates a powerful separation between identity and implementation. The agent can remain the same conceptual capability even as its internal method changes. A reading agent may begin with simple retrieval, then acquire query decomposition, contradiction detection, and adaptive source selection. Its identity remains stable because its public responsibility remains stable.
This is exactly what makes a software aggregate useful. Internal entities can have identities that matter only within the aggregate. An individual retrieval heuristic does not need to become a globally addressable object. It only needs to be distinguishable inside the larger capability that owns it.
The benefit is not merely tidiness. It is controlled evolution.
Suppose an automated search process discovers two promising strategies. The first improves performance by asking a model to generate several candidate solutions. The second improves performance by checking each candidate with a separate verifier. If these discoveries are stored as loose snippets, future searches may combine them in arbitrary ways, producing duplicated work or incompatible assumptions.
If instead each discovery is packaged as a bounded agent, the search process can ask more meaningful questions:
- Does this agent accept the same kind of input as the current system?
- Does it preserve the required output contract?
- Does it own a coherent responsibility?
- Can its internal strategy be replaced without changing its callers?
- What evidence shows that it improves the result?
The archive then becomes more than a library of prompts. It becomes a library of capabilities with contracts.
Search Works Better When Discoveries Become Objects
Automated agent discovery is often described as a form of optimization. A meta agent proposes a new agent, evaluates it, and stores the result for future use. Over time, the archive of prior discoveries gives the system material from which to construct increasingly effective strategies.
But an archive can have two very different forms.
The first is a pile of solutions. It contains prompts, code fragments, and successful traces. This archive may be rich, but it is difficult to search because the system has no stable vocabulary for what each item does. A solution that worked on one task might be copied into another even though its assumptions do not transfer.
The second is a catalogue of bounded transformations. Each item has a purpose, an input shape, an output shape, a cost profile, known failure modes, and a record of the conditions under which it worked. This archive is more structured, but not necessarily more restrictive. It gives search a useful language.
For example, instead of storing a successful math agent as an opaque program, the system might describe it as:
- decomposes multi step word problems into variables and constraints;
- generates independent solution paths;
- executes symbolic checks through a tool;
- reconciles disagreements with a verifier;
- returns a normalized numerical answer.
This representation lets a meta agent search at multiple levels. It can replace the decomposition strategy while preserving verification. It can transfer the verifier to another task. It can combine independent generation with a different tool interface.
In other words, boundaries turn historical success into reusable structure.
This may help explain why agent discoveries can transfer across tasks and even across model versions. The transferable element is not always a particular sentence in a prompt. Often it is an arrangement of responsibilities: generate, inspect, calculate, compare, and format. Once these responsibilities are isolated, the arrangement can survive changes in the underlying model.
A model upgrade then resembles an implementation change inside an aggregate. The public capability remains recognizable, while its internal performance improves.
The Root Is Also a Governance Mechanism
There is a temptation to treat boundaries as an engineering convenience, something that makes code easier to maintain. In adaptive AI systems, they serve a more important role: they make autonomy governable.
An unrestricted agent can call tools, alter its own instructions, create subagents, and write persistent state. This may increase its search space, but it also increases its blast radius. When something goes wrong, it becomes difficult to identify which internal decision caused the failure or which component was authorized to make it.
A root creates a point of accountability. The outside world can ask the agent to perform a defined operation. The agent can then enforce its own invariants before exposing a result.
For a financial planning agent, those invariants might include:
- recommendations must distinguish facts from assumptions;
- calculations must be reproducible;
- external actions require explicit approval;
- private data must not cross a defined boundary;
- every recommendation must retain an explanation of its inputs.
The agent may use many internal strategies, but the root is responsible for preserving these conditions. This is analogous to an aggregate that prevents an external caller from changing one internal object in a way that leaves the whole domain inconsistent.
The practical lesson is that the public interface should expose intentions, not mechanisms. A caller should request “produce a verified answer,” not “run these seven prompts, call this tool twice, then inspect the third candidate.” Mechanisms evolve. Intentions provide continuity.
This also changes how systems should be evaluated. Instead of measuring only whether a new internal technique improves a benchmark, evaluate whether the bounded capability improves while preserving its contract. A discovery that raises accuracy but violates latency, privacy, or explainability requirements is not a better aggregate. It is an uncontrolled mutation.
A Design Pattern for Evolving Intelligence
The intersection of these ideas suggests a practical pattern for building systems that improve through search.
1. Define the capability root
Name the responsibility in terms a user or neighboring system can understand. Examples include “extract obligations from a contract,” “solve a constrained arithmetic problem,” or “compare competing explanations.” Avoid naming the internal workflow.
2. Establish the boundary
List the state, tools, prompts, intermediate representations, and subagents that belong inside the capability. Decide what external systems may observe or modify. If every internal detail is externally accessible, the boundary is not real.
3. Write the invariants
Specify what must always be true. These might involve output format, safety, evidence, authorization, consistency, or resource limits. Invariants allow automated search to explore internal designs without losing the purpose of the system.
4. Search inside the boundary
Let a meta agent propose new internal strategies, but constrain the search by the root contract and invariants. It can change decomposition, verification, tool use, or sequencing. It should not silently redefine what the capability means.
5. Archive discoveries by responsibility
Store not only the implementation, but also the conditions of success, the failure modes, the cost, and the interface. Tag discoveries according to the transformation they perform. This makes future recombination more intelligent.
6. Compose through roots
When combining capabilities, connect them through their public contracts. Do not let one agent reach into another agent's internal state merely because that state happens to be available. Composition should resemble a conversation between responsible units, not a shared global workspace.
This pattern creates a useful balance. The interior remains open to experimentation, while the exterior remains stable enough for trust and composition.
Key Takeaways
- Treat an agent as a bounded capability, not as a prompt or a pile of tools. Give it one clear responsibility and one public root.
- Separate identity from implementation. Preserve the capability's contract while allowing its internal reasoning strategy to evolve.
- Turn archives into structured memory. Record what a discovery does, when it works, what it costs, and how it fails.
- Use invariants to make exploration safe. Automated search should optimize within boundaries that protect correctness, privacy, authorization, and output quality.
- Compose through interfaces. Let agents exchange requests and results, not ungoverned access to one another's internals.
The deepest implication is easy to miss. Boundaries do not merely contain intelligence. They help create it.
A system that can freely modify everything may have more possible behaviors, but it has fewer reliable ways to learn from experience. Every discovery threatens to disrupt the rest of the system. By contrast, a bounded system can preserve what it has learned. It can replace one internal method, compare it with the old method, and retain the improvement without losing its identity.
That is the paradox: freedom at the interior requires discipline at the exterior. Search needs room to explore, but learning requires somewhere for successful exploration to settle. The boundary is that place. It is where a fleeting strategy becomes a durable capability, where experimentation becomes architecture, and where an increasingly autonomous system remains intelligible to the humans who depend on it.
The future of intelligent software may therefore be shaped less by how many agents we can create than by how well we define the borders around them. The decisive question is not, “What else can this system do?” It is, “What coherent responsibility can this system own, improve, and safely expose to the world?”
Sources
Hatch New Ideas with Glasp AI 🐣
Glasp AI allows you to hatch new ideas based on your curated content. Let's curate and create with Glasp AI :)
Start Hatching 🐣