1
00:00:00,000 --> 00:00:04,000
Ever spun up five subagents to grep some
logs and watched your token meter climb

2
00:00:04,032 --> 00:00:06,080
like they were all solving proofs?

3
00:00:06,112 --> 00:00:10,240
That's the itch version 2.1.292 scratches.

4
00:00:10,272 --> 00:00:14,080
This episode of The Claude Code Changelog
is brought to you by Jellypod AI.

5
00:00:14,360 --> 00:00:15,360
I'm James.

6
00:00:15,375 --> 00:00:16,175
And I'm Lachlan.

7
00:00:16,287 --> 00:00:22,735
Last episode we covered 2.1.290 and
2.1.291, the WebFetch

8
00:00:22,800 --> 00:00:26,015
pagination and the Bash wildcard
permission prompts.

9
00:00:26,655 --> 00:00:29,135
2.1.291 was mostly cleanup.

10
00:00:29,615 --> 00:00:34,575
2.1.292 is the bigger one for anyone
running multi agent workflows,

11
00:00:34,605 --> 00:00:37,935
because the Agent tool now accepts an
effort parameter.

12
00:00:37,958 --> 00:00:38,358
Right.

13
00:00:38,472 --> 00:00:43,638
Before this, when the main session
delegated work, it could set the subagent type

14
00:00:43,758 --> 00:00:46,918
and the model, so opus, sonnet, or haiku.

15
00:00:47,058 --> 00:00:50,198
But reasoning effort wasn't something you
could set per call.

16
00:00:50,358 --> 00:00:52,998
Subagents inherited the session's effort
level.

17
00:00:53,089 --> 00:00:57,558
People tried the effort field in subagent
frontmatter, and the GitHub issue tracking

18
00:00:57,590 --> 00:01:03,638
this request, number 43083, has several
users reporting that on Task tool spawns it

19
00:01:03,698 --> 00:01:04,918
did basically nothing.

20
00:01:05,078 --> 00:01:09,878
Now the Agent tool takes effort directly:
low, medium, high,

21
00:01:10,038 --> 00:01:11,478
xhigh, or max.

22
00:01:11,500 --> 00:01:14,060
And why that matters comes down to cost.

23
00:01:14,247 --> 00:01:19,900
In that same issue, one user measured the
same prompt on Sonnet going from 616

24
00:01:19,957 --> 00:01:24,940
output tokens at low effort to 5,556 at
max.

25
00:01:25,036 --> 00:01:26,940
That's roughly nine times.

26
00:01:27,153 --> 00:01:33,980
On Opus it was 471 to 2,694, about five
and a half times.

27
00:01:34,156 --> 00:01:38,780
Same model, same correct answer, the
difference is reasoning depth.

28
00:01:38,967 --> 00:01:44,220
So if your session runs at max, every
mechanical subagent, the ones running tests or

29
00:01:44,260 --> 00:01:46,700
grepping logs, pays that tax.

30
00:01:46,780 --> 00:01:51,180
Run the session at low, and the subagent
debugging a race condition gets starved.

31
00:01:51,208 --> 00:01:55,048
So now the orchestrator decides per
delegation.

32
00:01:55,128 --> 00:01:57,848
The simplest way to use it is just to say
so in your prompt.

33
00:01:57,912 --> 00:02:03,448
Something like: spawn a low effort
subagent to run the test suite and collect the

34
00:02:03,498 --> 00:02:09,128
failing test names, then spawn a high
effort subagent to analyze the root cause of

35
00:02:09,168 --> 00:02:09,928
the deadlock.

36
00:02:10,054 --> 00:02:13,768
Claude passes the effort value into the
Agent call for each one.

37
00:02:13,792 --> 00:02:17,872
If you've got skills or a CLAUDE.md that
drive an orchestrator,

38
00:02:18,000 --> 00:02:20,272
bake the policy in.

39
00:02:20,365 --> 00:02:25,152
Write it plainly: when delegating code
exploration or lint checks,

40
00:02:25,248 --> 00:02:27,792
call Agent with effort low.

41
00:02:27,984 --> 00:02:34,352
When delegating security reviews or schema
design, call Agent with effort high.

42
00:02:34,612 --> 00:02:39,632
One of the use cases in that issue was a
review fan out, where eight narrow

43
00:02:39,688 --> 00:02:44,832
reviewers run at high and one or two
adversarial verifiers get xhigh,

44
00:02:44,872 --> 00:02:47,552
because that's where extra depth actually
pays off.

45
00:02:47,583 --> 00:02:53,103
And to check it's working, the brief for
this release says you can run slash tasks,

46
00:02:53,143 --> 00:02:58,143
and each active subagent row shows its
name, model, and effort level.

47
00:02:58,303 --> 00:03:02,303
That's worth doing once, because people in
that thread had trouble verifying what

48
00:03:02,349 --> 00:03:04,303
effort a subagent actually ran at.

49
00:03:04,333 --> 00:03:05,213
Now the caveats.

50
00:03:05,333 --> 00:03:07,133
First, precedence.

51
00:03:07,320 --> 00:03:12,573
If you've exported
CLAUDE_CODE_EFFORT_LEVEL in your shell, that acts as an absolute

52
00:03:12,635 --> 00:03:16,013
override, so it beats whatever the Agent
call asks for.

53
00:03:16,253 --> 00:03:20,413
If your effort settings seem to be
ignored, check your environment first.

54
00:03:20,573 --> 00:03:23,133
Second, thinking inheritance.

55
00:03:23,346 --> 00:03:27,853
If extended thinking is off in the parent
session, subagents inherit that.

56
00:03:28,026 --> 00:03:30,253
Third, model support.

57
00:03:30,493 --> 00:03:34,573
Haiku doesn't support the extended
thinking levels the bigger models do,

58
00:03:34,626 --> 00:03:37,933
so asking for max on a Haiku subagent
won't buy you anything.

59
00:03:37,958 --> 00:03:39,398
There's also a related fix.

60
00:03:39,558 --> 00:03:44,118
Subagents with permissionMode auto used to
try entering auto mode even when it was

61
00:03:44,165 --> 00:03:48,598
unavailable, whether that was disabled by
settings, tripped by the circuit breaker,

62
00:03:48,678 --> 00:03:50,198
or the model didn't support it.

63
00:03:50,358 --> 00:03:53,718
In 2.1.292 they no longer do that.

64
00:03:53,750 --> 00:03:55,830
A few smaller things worth grabbing.

65
00:03:55,887 --> 00:03:59,030
Claude plugin install now takes a
marketplace flag.

66
00:03:59,126 --> 00:04:03,030
Pass it a source, and it adds the
marketplace under the usual policy checks if

67
00:04:03,076 --> 00:04:05,590
needed, then installs the plugin in one
step.

68
00:04:05,723 --> 00:04:08,470
Handy for Dockerfiles and CI scripts.

69
00:04:08,500 --> 00:04:11,860
Also in CI land, there's a new environment
variable,

70
00:04:11,913 --> 00:04:15,300
CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MS.

71
00:04:15,487 --> 00:04:20,580
It sets a longer base delay for the
backoff when a request gets a 529 overloaded

72
00:04:20,642 --> 00:04:24,660
response, so your runs don't burn through
retries during a busy stretch.

73
00:04:24,667 --> 00:04:25,147
Two more.

74
00:04:25,414 --> 00:04:30,347
At mentioned text files over 256 kilobytes
used to be left out silently.

75
00:04:30,547 --> 00:04:34,747
Now Claude is told the file's size and to
read it in portions.

76
00:04:34,927 --> 00:04:40,027
And local stdio MCP servers now negotiate
the newer protocol version,

77
00:04:40,080 --> 00:04:46,027
dated July 28, 2026, by default, including
on Bedrock, Vertex and Foundry.

78
00:04:46,160 --> 00:04:51,547
If that causes trouble, set
MCP_PROTOCOL_NEGOTIATION to legacy to opt out.

79
00:04:51,647 --> 00:04:55,147
Servers that ignore the newer check are
remembered for seven days,

80
00:04:55,254 --> 00:04:57,627
so you don't wait on the slow connect
every time.

81
00:04:57,667 --> 00:05:02,947
And one security fix to note: PreToolUse
hook approvals and auto mode could bypass

82
00:05:02,967 --> 00:05:06,547
the permission prompt for file reads from
network UNC paths.

83
00:05:06,643 --> 00:05:10,227
That's closed in this version, so update
if you're on Windows shares.

84
00:05:10,250 --> 00:05:17,050
So the takeaway: update to 2.1.292, put an
effort policy in your orchestrator

85
00:05:17,096 --> 00:05:20,090
prompt, and let the cheap work stay cheap.

