The Moment I Stopped Babysitting My AI
There's a phase most people go through with Claude Code where every single step feels like a hand-holding exercise. You ask it to do something, it does step one, you say "okay now do step two," it does that, you say "now step three" — and suddenly you've spent 45 minutes in a conversation that could have been a single well-written task description.
I was deep in that phase about six months ago. I was building a small internal tool and I kept ping-ponging back and forth with Claude Code like I was playing tennis with a very patient robot. Then someone mentioned subagent mode in a Discord I lurk in, and honestly? It changed how I use Claude Code entirely.
Subagent mode — sometimes called agentic mode depending on your setup — is where Claude Code stops waiting for you to approve every micro-decision and instead works through a task autonomously, making reasonable choices along the way and reporting back when it's done (or when it genuinely needs your input). Think of it like the difference between hiring a contractor who asks permission before touching anything versus one who just gets the job done and walks you through what they did at the end.
What Subagent Mode Actually Does
Under the hood, when Claude Code operates in agentic mode, it can chain together multiple tool calls — reading files, running shell commands, editing code, checking outputs — without stopping to ask you "is this okay?" after each one. It plans a sequence of steps, executes them, and self-corrects when something doesn't go as expected.
Here's a concrete example. Say you want to add input validation to every form in a small web project. In back-and-forth mode, you'd be reviewing each file, approving each edit, one at a time. In subagent mode, you describe the goal and Claude Code will:
- Scan the project for all form components
- Identify which ones are missing validation
- Apply consistent validation logic to each one
- Run a quick check to make sure nothing broke
- Report back with a summary of what changed
That whole sequence can happen while you go make coffee. Which, honestly, is my favorite feature of any software tool.
How to Trigger Agentic Mode
You don't flip a special switch — it's more about how you write your task. Claude Code picks up on cues in your prompt that signal "this is a multi-step job, go figure it out" versus "this is a single question, give me one answer."
The key difference is writing a goal instead of an instruction. Compare these two prompts:
# Too narrow — Claude waits for next step after each action
"Edit the LoginForm.jsx file and add email validation."# Goal-oriented — Claude plans and executes the full sequence
"Find all form components in this project that accept user email input
and add consistent validation (format check + required field) to each one.
Don't ask me to approve each file — just do it and give me a summary when done."That last line — "don't ask me to approve each file" — is surprisingly effective. It explicitly signals that you want autonomous execution. You can also run Claude Code with the --dangerously-skip-permissions flag in non-production environments if you want to remove confirmation prompts entirely, but I'd only recommend that in sandboxed setups where breaking something is low-stakes.
The Art of Writing a Good Delegatable Task
Here's where most people trip up. They write a vague goal, Claude Code makes a bunch of assumptions, and the result is technically correct but not what they actually wanted. Delegating well to an AI subagent is a skill — and it's pretty close to how you'd delegate to a human junior developer.
A solid delegatable task has four things:
1. A clear outcome definition. What does "done" look like? "Refactor the auth module" is weak. "Refactor the auth module so all token validation logic lives in a single utility function, with no duplicate token checks in individual route handlers" is strong.
2. Boundaries of what to touch. Tell it which directories or files are in scope. If you don't, Claude Code might helpfully "improve" things you didn't want touched.
3. Constraints it should respect. "Don't change the public API," "keep existing test coverage passing," "don't install new dependencies" — whatever guardrails matter for your project.
4. How to report back. Ask for a summary of what changed and why. This is gold for reviewing the work and for your own learning.
Template You Can Steal
"Your goal is [OUTCOME]. Work within [SCOPE]. Respect these constraints: [CONSTRAINTS]. When you're done, give me a bullet-point summary of every file you changed and the reason for each change."
A Real Workflow: Refactoring API Error Handling
Let me walk you through an actual task I ran recently so this doesn't stay abstract. I had a Node.js Express app where error handling was a mess — some routes returned plain strings, some returned JSON objects with different shapes, and some just let errors bubble up entirely. Classic "built it fast and moved on" situation.
Instead of fixing it file by file, I wrote this:
Audit all route handlers in /src/routes and standardize error responses.
Every error response should use this shape: { success: false, error: string, code: number }
Create a shared errorResponse() utility in /src/utils/errors.js if one doesn't exist.
Replace all inconsistent error returns with this utility.
Don't modify any middleware in /src/middleware — that's out of scope.
Don't change any success response shapes.
When done, list every file modified with a one-line summary of what changed.Claude Code went through seven route files, created the utility, updated all the error returns, and came back with a clean summary. The whole thing took maybe four minutes. When I reviewed the diff in Git, it was exactly what I wanted — no surprises, no scope creep, no accidental changes to things I didn't ask about.
That last part is key: always review the diff. Subagent mode isn't "trust and forget" — it's "delegate and verify." The Git diff is your friend here.
When NOT to Use Subagent Mode
I want to be honest about the limits because I've gotten burned by over-trusting autonomous mode a couple of times.
Avoid subagent mode for tasks that are exploratory or where the right answer is genuinely unclear. If you're not sure what the solution should look like, you actually want Claude to pause and ask you questions. Autonomous execution of an underspecified task just means you get confident, fast, wrong results.
Also be careful with tasks that touch database schemas, authentication logic, or anything with security implications. Those deserve your eyes at every step. The time you save isn't worth the cleanup if something goes sideways.
My rule of thumb: if I'd be comfortable delegating this to a competent junior dev with a clear brief and no check-ins, I'll delegate it to Claude Code the same way. If I'd want to pair-program it or review every decision in real time, I keep the back-and-forth style.
Always Commit First
Before running any agentic task, make sure your working tree is clean with a recent commit. That way, if the output isn't what you wanted, git checkout . gets you back to safety in two seconds.
Building the Habit
The shift from "prompt operator" to "task delegator" is one of the bigger mindset jumps in getting good at Claude Code. It requires you to think more clearly about what you actually want before you start — which, honestly, is a skill that makes you a better developer regardless of AI.
Start small. Pick one repetitive, well-understood task in your current project — maybe normalizing import order, adding JSDoc comments to utility functions, or converting callback-style async code to async/await. Write a proper delegatable task description using the template above. Run it, review the diff, and notice what Claude got right and what needed clarification.
Do that five or six times and you'll develop an intuition for what makes a good agentic prompt. And you'll stop spending your best thinking hours approving file edits one by one.
That's the whole point, really. The goal isn't to use AI more — it's to use your own time better. Subagent mode is one of the best tools Claude Code gives you for doing exactly that.
More tutorials in this category, or explore the full field guide.