1
00:00:00,239 --> 00:00:05,000
You are, you are running Claude Code to
execute a massive Webpack build or a heavy

2
00:00:05,039 --> 00:00:10,539
Rust compile, and suddenly, your entire
dev box just freezes up.

3
00:00:11,420 --> 00:00:16,219
Fans spinning like a jet engine, cursor
dead in the water because some rogue Node

4
00:00:16,340 --> 00:00:19,299
process gobbled up thirty two gigabytes of
system memory.

5
00:00:19,959 --> 00:00:22,479
This episode is brought to you by Jellypod
AI.

6
00:00:23,021 --> 00:00:26,421
Man, I, I, I have been there so many
times.

7
00:00:26,501 --> 00:00:31,542
You sit there watching your machine die,
and then the Linux kernel OOM killer comes

8
00:00:31,621 --> 00:00:36,462
in and nukes your actual terminal or the
main Claude process instead of the child

9
00:00:36,561 --> 00:00:38,901
process that was, you know, going rogue.

10
00:00:38,958 --> 00:00:39,358
Right!

11
00:00:39,411 --> 00:00:40,958
It takes down the whole ship, mate.

12
00:00:41,258 --> 00:00:46,158
But, um, in Claude Code two point one
point two thirty three,

13
00:00:46,238 --> 00:00:51,118
they added opt in memory cgroup support
for Bash tool commands on Linux.

14
00:00:51,244 --> 00:00:52,745
Wait, cgroup support?

15
00:00:53,365 --> 00:00:56,884
So it, it actually caps the RAM at the
kernel level before it can wreck your host

16
00:00:56,944 --> 00:00:57,224
system?

17
00:00:57,292 --> 00:00:58,092
Exactly.

18
00:00:58,132 --> 00:01:02,812
You just set an environment variable in
your setup, CLAUDE_CODE_TOOL_MEMORY_LIMIT

19
00:01:02,869 --> 00:01:06,332
equals four G, or, or whatever ceiling you
want, and boom.

20
00:01:06,465 --> 00:01:11,692
It leverages Linux cgroup version two
memory controls to hold every Bash sub process

21
00:01:11,719 --> 00:01:12,812
in a strict box.

22
00:01:12,991 --> 00:01:16,651
So if a leaking test runner hits that four
gigabyte limit, what,

23
00:01:16,691 --> 00:01:17,732
what actually happens?

24
00:01:18,051 --> 00:01:19,631
Does the whole AI session collapse?

25
00:01:19,766 --> 00:01:20,186
No!

26
00:01:20,787 --> 00:01:21,726
That is the best bit!

27
00:01:22,246 --> 00:01:26,986
The cgroup clamps down or terminates just
that specific runaway tool process,

28
00:01:27,586 --> 00:01:30,587
while your main Claude process stays
totally safe and sound.

29
00:01:31,366 --> 00:01:34,366
It can actually catch the failure and
report the error back to you.

30
00:01:34,542 --> 00:01:36,462
That is huge for dev environments.

31
00:01:36,682 --> 00:01:40,062
But, wait, is there a catch with the OS
support?

32
00:01:40,182 --> 00:01:41,421
Yeah, a bit of a caveat there.

33
00:01:41,881 --> 00:01:47,181
It requires Linux with cgroup version two
mounted and systemd delegation enabled.

34
00:01:47,861 --> 00:01:53,021
So it won't operate natively on macOS or
bare Windows, though it works fine inside

35
00:01:53,281 --> 00:01:55,581
WSL2 or Linux dev containers.

36
00:01:55,708 --> 00:01:59,388
Okay, so WSL2 and Linux containers get
full protection.

37
00:01:59,500 --> 00:02:01,068
What else dropped in this patch?

38
00:02:01,083 --> 00:02:02,763
A few quick quality of life hits.

39
00:02:02,950 --> 00:02:08,763
If you use GitLab, the worktree flag now
accepts GitLab Merge Request URLs directly,

40
00:02:08,814 --> 00:02:12,923
displaying as exclamation mark N inside
claude agents.

41
00:02:12,917 --> 00:02:15,717
Oh nice, proper parity with GitHub Pull
Requests.

42
00:02:15,877 --> 00:02:18,517
And didn't they add something for web
sessions too?

43
00:02:18,500 --> 00:02:23,604
Yep, you can tune web caching using
CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS,

44
00:02:23,668 --> 00:02:26,180
and run claude plugin validate to check
your local skills frontmatter before

45
00:02:26,180 --> 00:02:26,180
deployment.

46
00:02:26,286 --> 00:02:29,206
Keeps your memory under control and your
agent tools clean.

47
00:02:29,926 --> 00:02:30,186
Love it.

48
00:02:30,250 --> 00:02:30,810
Too right.

49
00:02:30,920 --> 00:02:32,970
Alright, good chatting, talk soon!

