Audience: Senior engineers / AI builders
Format: Opinion + architecture patterns
Context: Simple, composable, and maintainable systems
TL;DR
- Monolithic agents are hitting a practical ceiling
- The new direction: small, specific, reusable skills
- Less “centralized intelligence”, more explicit composition
The problem with giant agents
The dominant pattern in 2024–2025 was:
one agent that “does everything”
- decides
- plans
- executes
- iterates
In theory it sounds powerful.
In practice:
- hard to test
- hard to debug
- unpredictable behavior
Signs of saturation
Real teams are seeing:
- fragile workflows
- unnecessary loops
- dependence on complex prompts
- inconsistent results
The problem isn’t the model.
It’s the way we’re encapsulating logic.
The alternative: skills
Instead of a monolithic agent:
break it into small capabilities
A skill is:
- specific
- testable
- reusable
Example:
generate_summaryvalidate_schemarun_tests
Mental model shift
Before:
“the agent decides what to do”
Now:
“the system composes capabilities”
Recommended architecture
1. Skills as functions
async function generateSummary(input: string) {
return llm.call({ prompt: `Resume: ${input}` });
}
2. Explicit orchestration
if (task === "summarize") {
return generateSummary(input);
}
3. Composition
const result = await runPipeline([
extractData,
validateData,
generateReport
]);
4. Observability
Each step:
- clear logs
- visible inputs/outputs
Why this works better
Control
You know exactly what’s happening.
Testability
Each skill can be validated in isolation.
Reusability
Same block → multiple workflows.
Maintainability
Local changes, not systemic ones.
When to use agents (really)
Agents are still useful when:
- the problem is open-ended
- there’s no clear flow
- exploration is necessary
But even then:
limit their scope
Common anti-patterns
- agent with full access
- logic implicit in prompts
- autonomous loops without limits
- lack of logs
Hybrid pattern
A practical architecture:
deterministic skills + lightweight agent
The agent:
- selects
- doesn’t execute directly
Implications for teams
This isn’t just technical.
It’s organizational.
- better onboarding
- less dependence on experts
- more speed without losing control
Verdict
The problem isn’t that agents don’t work.
It’s that we’re trying to use them for everything.
Final reflection
The next generation of AI systems won’t be:
- more autonomous
It will be:
- more modular
- more observable
- more composable
Because in real systems:
simplicity scales better than “intelligence”.
