AboutSkillsServicesResumeProjectsKind wordsBlogFree Tools
Say hello

Let the expensive model think and the cheap one look things up

How I use subagents for discovery and lookups so the main agent keeps a clean context, and where subagents go wrong.

  • Sep 29, 2026
  • 3 min read
  • Claude CodeSubagentsAIWorkflow
A subagent definition file in an editor showing a read-only description, a limited tool list and the sonnet model

I was about to refactor something a lot of code depended on, and the first job was finding who used it. I'd let the main agent do that search a few times. It reads dozens of files, and every one of them stays in context for the rest of the session.

That's the most expensive model doing the cheapest work, and it leaves it with a head full of irrelevant code when it comes to the part that needs judgement.

#Hand the looking to someone else

A subagent is a separate session with its own context window. You give it a job, it does the reading, and it sends back an answer. Everything it read stays with it.

So for that refactor I ask a subagent to find every consumer and report back. A brief looks something like this:

Find every place formatPrice() is used. For each one give the file and
line, how it's called, and whether the caller handles a null result.
Read only, don't change anything. Reply as a list, under 30 lines.

The main agent gets a page instead of forty files, from a cheaper model, and its context stays on the decision. I wrote about where rules should live last time. This is the other half: skills decide what an agent knows, subagents decide who does the work.

#What I send down

Anything that is mostly reading or fetching and has a small answer. Finding usages before a change. Working out how an unfamiliar part of the codebase fits together. Looking up library docs or pulling data from the web. And mechanical edits across many files, once the approach is settled.

The judgement stays with the main agent: picking the approach, deciding what to change, and checking what came back. My research agent is a good example. It runs on Sonnet, has no edit or write tools, and its prompt says it's read-only. It can look at anything, and its instructions say to change nothing.

Another benefit I didn't expect is focus. A subagent with one job isn't distracted by the whole conversation.

#Where it goes wrong

Vague briefs. If I say "look into the auth code", the subagent has to guess what I care about, and it'll pick a tool and an interpretation to suit the guess. I've had answers that were confident, tidy and aimed at a slightly different question.

Tools are the other trap. A subagent only has what you give it. If the set is thin or doesn't suit the job, it can't choose well and improvises with what it has.

And I don't take "done" at face value. It tells me the agent finished, not that it was right. I read what came back before I act on it.

I haven't measured any of the savings, so I won't put numbers on them. What I'm sure of is the cleaner context in the main session. If you want to try it, take one lookup you keep doing by hand and give it to a subagent with a brief like the one above.

Previous postCLAUDE.md or a skill? Where your rules should liveNext postMy take on Anthropic's Scion: git has to adapt, but not like this
Back to all posts
contact@prageethsilva.com
AboutProjectsBlogFree ToolsContact
© 2026 Prageeth Silva