Skip to main content

Claude Code: subagent effort can finally be adjusted on the fly


Sixteen. That's the number of extra agent files I have in my Claude Code configuration: developer-low, developer-medium, reviewer-high, debugger-max, and so on. Sixteen almost identical copies of my agents, made by a little PowerShell script, for one reason: until last week, there was no way to tell Claude "launch this agent, but think less." The setting was carved into the file, period. Well, since version 2.1.292, released on October 6, that's over. And that's not the only good news of the week!

On a desk, in front of a screen displaying a terminal, four small white robots lined up each have a big round button on their backs, like an oven button, turned to a different position, while a developer's hand adjusts the one on one of them

One adjustment button per robot, finally

Sub-agent, effort: what are we talking about?

Claude Code is Anthropic's assistant that writes code directly in your project, from the terminal, the window where you type commands. When a task is big, it can break it down and hand it to sub-agents: other Claudes, launched for a specific mission, with their own memory, who come back with a result. One to search through the code, one to write, one to proofread. In short, a small team, except nobody takes a coffee break.

Effort is the time Claude spends thinking before answering, from low (it charges ahead) to max (it weighs every line). More effort often means a better result, but it's also slower and eats up more quota. Renaming twenty files at maximum effort is a bit like bringing out the tall ladder to change a bedside lamp's bulb.

The effort button, on the fly

Until now, a sub-agent's effort was set in its definition file, once and for all. I want a proofreader who thinks little about a small correction and a lot about a big project. Only solution: one file per effort level. Hence my sixteen copies, regenerated by a script every time I modify the original. It works, but it's the kind of hack you aren't proud of.

On a long white shelf, sixteen identical small white robots lined up like clones each wear a level label, low, medium, high, while a developer scratches his head holding one of them in his hand

Sixteen copies of the same agent, one per effort level

Version 2.1.292 adds an effort parameter to the tool that launches subagents. In practice, you don't have anything to configure: you ask for it in English, and Claude passes it on.

Lance un sous-agent en effort low pour renommer les fichiers de tests,
puis un autre en effort high pour relire le module de paiement.

I haven't checked yet who wins when the agent's file says high and the request says low, so I'm keeping my sixteen copies around while I test. But I have a feeling that next week, my configuration is going to shrink all at once. And that's exactly the reflex I was talking about two days ago, about Microsoft and Meta rationing Claude Code : the big brain for thinking, the small one for the drudge work. Now, it can be set with one sentence.

The guard who falls asleep no longer lets anything through

Second new feature, and this one, I was looking forward to even more. Claude Code has “hooks”: little scripts that you write yourself and that run automatically before or after certain actions by Claude. I have one that stops it from reading my password files. Claude wants to open a file, the hook checks the name, and if it sees a sensitive file, it says no.

The problem was what happened when the hook itself crashed. A script that doesn't start, takes too long, exits with an unexpected error? Claude Code considered that it hadn't said anything, and the action went through. A guard who falls asleep in his booth, and the barrier stays open. For a security safeguard, that's exactly the opposite of what we want!

Before and after, side by side, at the same parking barrier: on the left, the guard is sleeping in his booth and the barrier is wide open while a car drives through, under the label “Before: the guard is sleeping, it gets through”; on the right, the booth is empty, the barrier is closed and the car is stopped in front of it, under the label “Now: no guard, no passage”

A hook that crashes blocks the action instead of letting it through

Since version 2.1.295, from October 8, you can add "onFailure": "block" to a hook. If it doesn't respond properly, the action is blocked. In Claude Code's settings.json file, it looks like this:

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Read",
        "hooks": [
          {
            "type": "command",
            "command": "~/.claude/hooks/block-secrets.sh",
            "onFailure": "block"
          }
        ]
      }
    ]
  }
}

And that same week, Anthropic fixed two hook bugs that send shivers down your spine. In 2.1.294, hooks written like a natural-language instruction, along the lines of “block commands that…”, let through what they were supposed to block. And in 2.1.296, an enterprise hook that refused an action did refuse it properly, but didn't stop Claude's turn, which carried on regardless. If you're relying on hooks for your security, updating isn't optional.

Two little extras thrown in

2.1.295 can also tell your terminal where it is: working, waiting for your answer, or finished. You need a terminal that supports this new protocol, but when it does, the tab shows it. When you have three sessions open in parallel, like me half the time, that's the kind of detail that keeps you from forgetting a Claude that's been patiently waiting for you for twenty minutes with its question.

Close-up of a dark terminal screen with three tabs at the top, each with a small colored indicator: blue “Working”, orange “Waiting for your answer”, green “Finished”

Three sessions, three indicators: you finally know which one is waiting

And 2.1.296 lets you choose, agent by agent, when it summarizes its own conversation to make room in its memory, which is called compaction. A sub-agent that reads a lot of files can thus clean things up earlier than the main conversation, instead of choking along the way. The setting is called autoCompactWindow and goes in the agent's file.

What you gain from it in practice

If you use Claude Code with a subscription, your quota recharges every five hours, and every sub-agent launched at maximum effort for a chore costs you a bit of it. Asking for low effort for the dumb tasks means that much quota saved for the real questions: the ones where you want Claude to think through a project's architecture or a nasty bug for you. And if you pay by the token, it's directly your bill that goes down.

If you've written hooks to protect something, a password folder, a production database, a directory that you don't touch, add "onFailure": "block" to each one today. It takes two minutes, and the day your script crashes, Claude is the one that stays outside instead of your safeguard giving way.

And if you juggle several sessions, check whether your terminal can display Claude's status in the tab. You'll waste less time clicking from one window to another to see who's finished.

To take advantage of it

One command is enough to update Claude Code, and another to check that you're at least on 2.1.296:

claude update
claude --version

All the details are in the Claude Code changelog, in English, and it's long: Anthropic releases a version almost every day.

For me, that week was one of the most useful in a long time. No big announcement, no new model, just things that people who really use it every day were missing. The hook that blocks when it crashes, frankly, is the kind of setting that should have existed from day one.

So to the Claude Code team: thanks for the effort button. My sixteen copies of agents salute you, they don't know yet that they're going to the trash!

Sources

Article written with the help of Claude Code, proofread and corrected by me.

Join the conversation

You need an account to comment on this article. Creating one is free and takes under a minute.

  • The XMLTV file, free to download every day
  • Comment on articles and reply to other readers
  • Get an e-mail when an article you follow is updated

No comments yet.

Une erreur s'est produite. Cette application peut ne plus répondre jusqu'à ce qu'elle soit rechargée.Veuillez contacter l'auteur. Reload 🗙