1
00:00:00,000 --> 00:00:03,600
So, I- I- I was spinning up a git worktree
the other day, right?

2
00:00:03,720 --> 00:00:07,440
And normally, with CLI tools like Claude
Code-this episode,

3
00:00:07,467 --> 00:00:11,520
by the way, is brought to you by Jellypod
AI-the moment you bounce between

4
00:00:11,573 --> 00:00:16,720
directories or open a monorepo, you- you
have to completely restart the session just

5
00:00:16,773 --> 00:00:21,440
so the Model Context Protocol, the MCP
servers, actually know where they are.

6
00:00:22,169 --> 00:00:25,022
Right, which completely wipes your
conversational history.

7
00:00:25,209 --> 00:00:28,062
It's a massive pain when you're deep in a
debugging flow.

8
00:00:28,345 --> 00:00:29,065
Exactly!

9
00:00:29,185 --> 00:00:34,585
But in v2.1.203 and .204, they finally
fixed this.

10
00:00:34,805 --> 00:00:39,785
Now, when Claude Code registers a new
directory, it just appends it to the MCP

11
00:00:39,852 --> 00:00:41,865
roots/list dynamically.

12
00:00:42,005 --> 00:00:48,425
And it triggers
notifications/roots/list_changed under the hood without a session

13
00:00:48,495 --> 00:00:49,145
restart.

14
00:00:49,912 --> 00:00:50,787
Oh, that's clever.

15
00:00:51,027 --> 00:00:57,187
So the workspace indexers can just listen
for that notifications/roots/list_changed

16
00:00:57,240 --> 00:00:59,827
event and update their indexing path on
the fly.

17
00:00:59,987 --> 00:01:03,587
No more tearing down the whole process
just because you checked out a new branch or

18
00:01:03,644 --> 00:01:04,547
jumped folders.

19
00:01:04,858 --> 00:01:05,498
Precisely.

20
00:01:05,605 --> 00:01:06,938
It just keeps running.

21
00:01:07,029 --> 00:01:13,418
Though, speaking of things tearing down,
that headless session bug in v2.1.204 is a

22
00:01:13,530 --> 00:01:16,698
huge save if you're running this in CI/CD
pipelines.

23
00:01:16,771 --> 00:01:21,098
Apparently, if you had a SessionStart hook
running in a remote environment,

24
00:01:21,125 --> 00:01:22,378
it was dead silent.

25
00:01:23,126 --> 00:01:24,113
Oh, let me guess.

26
00:01:24,173 --> 00:01:28,433
The silent stdout meant the remote
orchestrator assumed the container was dead or

27
00:01:28,526 --> 00:01:30,353
stuck, and just reaped it?

28
00:01:30,650 --> 00:01:31,450
Spot on.

29
00:01:31,477 --> 00:01:34,730
It- it- it would get idle-reaped because
of a silent startup hook.

30
00:01:35,130 --> 00:01:40,890
v2.1.204 now forces streaming of stdout
during those SessionStart hooks.

31
00:01:41,103 --> 00:01:45,690
So the orchestrator sees the traffic,
knows the container is actually doing work,

32
00:01:45,730 --> 00:01:47,930
and doesn't murder your build agent
mid-run.

33
00:01:48,364 --> 00:01:51,030
That is going to save so many pipeline
minutes.

34
00:01:51,190 --> 00:01:54,630
But tell me they did something about the
macOS memory leaks.

35
00:01:54,790 --> 00:01:59,910
I've been getting these weird, random
freezes since v2.1.196.

36
00:02:00,228 --> 00:02:02,948
Ah, the- the dreaded twenty-second stall!

37
00:02:03,044 --> 00:02:05,668
Yeah, that was a false-positive on a
low-memory warning.

38
00:02:05,788 --> 00:02:09,348
The tool thought it was saving you from an
out-of-memory crash when the RAM was

39
00:02:09,384 --> 00:02:10,468
actually fine.

40
00:02:10,708 --> 00:02:16,708
v2.1.203 completely bins that false
threshold check, so no more random pauses on

41
00:02:16,815 --> 00:02:17,508
macOS.

42
00:02:18,347 --> 00:02:19,378
Thank goodness.

43
00:02:19,518 --> 00:02:21,178
I thought my machine was giving up on me.

44
00:02:21,378 --> 00:02:22,858
And what about Windows?

45
00:02:23,098 --> 00:02:26,778
I saw some devs complaining about auth
errors on background agents.

46
00:02:27,083 --> 00:02:31,643
Yeah, they squashed a bug where background
agents would throw a 401 unauthorized

47
00:02:31,723 --> 00:02:36,363
because they weren't inheriting the
ANTHROPIC_BASE_URL environment variable properly

48
00:02:36,390 --> 00:02:37,243
on Windows.

49
00:02:37,403 --> 00:02:41,643
So if you were using a custom gateway or a
proxy, it just fell over.

50
00:02:41,932 --> 00:02:45,532
Ah, that makes sense why my local proxy
kept dropping connections!

51
00:02:45,652 --> 00:02:50,012
But the biggest CPU saver has to be the
fix to the context-usage indicator.

52
00:02:50,103 --> 00:02:54,732
Before this, Claude Code was literally
re-analyzing the entire conversation

53
00:02:54,797 --> 00:02:55,612
transcript...

54
00:02:56,035 --> 00:02:57,442
...on every single token!

55
00:02:58,210 --> 00:03:00,322
Like, talk about burning cycles.

56
00:03:00,509 --> 00:03:04,882
No wonder my laptop fan sounded like a jet
taking off during long chats.

57
00:03:05,182 --> 00:03:05,982
Exactly!

58
00:03:06,102 --> 00:03:10,782
Now it lazily evaluates that transcript
state, so your terminal doesn't melt while

59
00:03:10,809 --> 00:03:12,542
it's actively streaming a response.

60
00:03:12,729 --> 00:03:17,262
If you're writing custom MCP servers for
your monorepos, make sure they actually

61
00:03:17,308 --> 00:03:21,502
handle that
notifications/roots/list_changed payload.

62
00:03:21,689 --> 00:03:25,982
If they do, your tools can dynamically
index your code without you ever having to

63
00:03:26,032 --> 00:03:27,102
restart your session.

