1
00:00:00,000 --> 00:00:01,036
Welcome to the show!

2
00:00:01,036 --> 00:00:02,790
I'm Lachlan Reed with James Turner,

3
00:00:02,790 --> 00:00:07,504
and mate, I wanna start with a tiny
terminal annoyance that used to drive

4
00:00:07,504 --> 00:00:10,855
me properly up the wall: you're in a busy
session,

5
00:00:10,855 --> 00:00:13,009
tool output starts pouring in,

6
00:00:13,009 --> 00:00:16,763
and the whole screen does this little
partial redraw shimmy.

7
00:00:16,763 --> 00:00:22,117
In tmux panes, over SSH,
especially when a command runs long,

8
00:00:22,117 --> 00:00:25,682
Claude Code used to sort of flicker and
jitter like the terminal was

9
00:00:25,682 --> 00:00:30,735
breathing through a paper straw.
That phrase -- "partial redraws"

10
00:00:30,735 --> 00:00:32,227
-- is exactly it.

11
00:00:32,227 --> 00:00:35,821
Not a crash,
not even a bug you can screenshot cleanly.

12
00:00:35,821 --> 00:00:38,374
Just constant visual churn.

13
00:00:38,374 --> 00:00:43,791
And in 2.

14
00:00:38,374 --> 00:00:43,791
1.110, `/tui fullscreen` is the first
version that fixes that

15
00:00:43,791 --> 00:00:45,556
without making you restart the session,

16
00:00:45,556 --> 00:00:48,115
right?Yeah, that's the bit.

17
00:00:48,115 --> 00:00:52,650
Before, going fullscreen could feel like
opening a whole separate world.

18
00:00:52,650 --> 00:01:00,722
In 2.

19
00:00:52,650 --> 00:01:00,722
1.110, `/tui fullscreen` switches the
CURRENT session into the full

20
00:01:00,722 --> 00:01:01,438
TUI renderer.

21
00:01:01,438 --> 00:01:04,153
Same conversation, same context,

22
00:01:04,153 --> 00:01:09,186
no fresh session, no "righto,
let's start over." It just...

23
00:01:09,186 --> 00:01:13,787
settles down.

24
00:01:09,186 --> 00:01:13,787
Wait -- "current session" is the
important token there.

25
00:01:13,787 --> 00:01:17,144
So if I'm mid-debug,
halfway through a thread,

26
00:01:17,144 --> 00:01:21,636
I don't lose the conversation history
just to get the cleaner renderer?

27
00:01:17,144 --> 00:01:21,636
Exactly.

28
00:01:21,636 --> 00:01:25,593
You keep the thread intact,
but the UI stops doing those ugly partial

29
00:01:25,593 --> 00:01:26,343
refreshes.

30
00:01:26,343 --> 00:01:30,965
And for people living in cramped tmux
layouts or remote SSH boxes,

31
00:01:30,965 --> 00:01:32,639
that matters more than it sounds.

32
00:01:32,639 --> 00:01:36,625
The first time the terminal stops
twitching during long tool output,

33
00:01:36,625 --> 00:01:41,672
you notice it straight away.
That's a serious UX threshold.

34
00:01:41,672 --> 00:01:44,105
Because once the screen is stable,

35
00:01:44,105 --> 00:01:46,413
your brain stops treating it like a chat
toy.

36
00:01:46,413 --> 00:01:50,860
It starts feeling closer to an editor --
not because of some giant new

37
00:01:50,860 --> 00:01:54,763
capability, but because the display
finally behaves like it respects your

38
00:01:54,763 --> 00:01:56,640
attention.

39
00:01:54,763 --> 00:01:56,640
Spot on.

40
00:01:56,640 --> 00:01:59,988
It's one of those tiny changes that lands
like a bigger one.

41
00:01:59,988 --> 00:02:03,502
Like tightening a loose bolt on a trail
bike -- same bike,

42
00:02:03,502 --> 00:02:04,622
totally different ride.

43
00:02:04,622 --> 00:02:08,853
And if you want it to stick, there's a
concrete hook now: the `tui` setting

44
00:02:08,853 --> 00:02:10,293
persists the mode.

45
00:02:10,293 --> 00:02:13,493
Drop `{ "tui": "fullscreen" }` into
`settings.

46
00:02:10,293 --> 00:02:13,493
json`,

47
00:02:13,493 --> 00:02:17,262
and it'll come back that way across
launches.So if

48
00:02:17,262 --> 00:02:19,694
somebody tests `/tui fullscreen` once,

49
00:02:19,694 --> 00:02:21,968
closes Claude, reopens it, and says,

50
00:02:21,968 --> 00:02:27,118
"Huh, didn't stick" -- the missing piece
is that JSON line: `{ "tui":

51
00:02:27,118 --> 00:02:29,400
"fullscreen" }`.Yep.

52
00:02:29,400 --> 00:02:31,466
Session switch first, config second.

53
00:02:31,466 --> 00:02:32,660
That's the whole trick.

54
00:02:32,660 --> 00:02:36,410
And I know this sounds almost too small
to gush about,

55
00:02:36,410 --> 00:02:38,490
but once the flicker goes away,

56
00:02:38,490 --> 00:02:42,285
Claude Code feels less like a window
that's trying to keep up and more

57
00:02:42,285 --> 00:02:44,156
like a proper working surface.

58
00:02:44,156 --> 00:02:49,067
Which, honestly, is a bigger deal than
any splashy feature name.

59
00:02:49,067 --> 00:02:54,392
The other cleanup in 2.

60
00:02:49,067 --> 00:02:54,392
1.110 is pure interface hygiene: `/focus`
is now

61
00:02:54,392 --> 00:02:58,401
the dedicated command to hide tool calls
and show only Claude's final

62
00:02:58,401 --> 00:03:03,532
answer, while Ctrl+O just toggles between
normal and verbose transcript.

63
00:03:03,532 --> 00:03:08,136
That split sounds tiny, but it's actually
a separation of concerns.

64
00:03:08,136 --> 00:03:13,227
And by "separation of concerns," you mean
two things that used to be bundled

65
00:03:13,227 --> 00:03:17,074
but were doing different jobs, yeah?

66
00:03:13,227 --> 00:03:17,074
Exactly.

67
00:03:17,074 --> 00:03:18,951
Focus mode is for READING.

68
00:03:18,951 --> 00:03:21,259
You want the clean final explanation,

69
00:03:21,259 --> 00:03:24,212
no tool chatter,
no command-by-command trail.

70
00:03:24,212 --> 00:03:27,001
Verbose transcript is for INSPECTION.

71
00:03:27,001 --> 00:03:29,721
Something looks off, you hit Ctrl+O,

72
00:03:29,721 --> 00:03:32,435
and now you can see what Claude did step
by step.

73
00:03:32,435 --> 00:03:37,394
Those are not the same mental
mode.That's so developer-brain.

74
00:03:37,394 --> 00:03:41,231
We jam two buttons into one,
live with it for ages,

75
00:03:41,231 --> 00:03:46,343
then later go, "Ohhh...

76
00:03:41,231 --> 00:03:46,343
maybe that was a dog's
breakfast."

77
00:03:46,343 --> 00:03:47,074
It is.

78
00:03:47,074 --> 00:03:51,425
But here's the concrete workflow: say
Claude helps with a long refactor.

79
00:03:51,425 --> 00:03:54,143
Most of the time,
you don't wanna read every tool call.

80
00:03:54,143 --> 00:03:57,093
You want the final explanation -- what
changed,

81
00:03:57,093 --> 00:03:58,772
why, what to verify.

82
00:03:58,772 --> 00:04:01,331
`/focus` gives you that cleaner view.

83
00:04:01,331 --> 00:04:05,160
But if a file looks weird or a rename
seems suspicious,

84
00:04:05,160 --> 00:04:07,466
Ctrl+O is the panic flashlight.

85
00:04:07,466 --> 00:04:12,109
Now you inspect the full trail.

86
00:04:07,466 --> 00:04:12,109
So let me try to explain it back --
slightly

87
00:04:12,109 --> 00:04:13,107
wrong on purpose.

88
00:04:13,107 --> 00:04:21,015
`/focus` is kind of like "hide the
kitchen," and Ctrl+O is "show me the

89
00:04:13,107 --> 00:04:21,015
whole recipe card"?

90
00:04:21,015 --> 00:04:24,995
Or is that too cute?

91
00:04:21,015 --> 00:04:24,995
No, that's actually good.

92
00:04:24,995 --> 00:04:27,433
"Hide the kitchen" for `/focus` is dead
on.

93
00:04:27,433 --> 00:04:30,541
And Ctrl+O is: show me every ingredient,

94
00:04:30,541 --> 00:04:32,771
every step, every mess on the counter.

95
00:04:32,771 --> 00:04:39,431
The old behavior bundled "I want less
noise" with "I want more detail,"

96
00:04:39,431 --> 00:04:40,200
which is...

97
00:04:40,200 --> 00:04:44,145
well, backwards if you say it out
loud.That's why this kind

98
00:04:44,145 --> 00:04:48,668
of split feels obvious only AFTER you've
suffered through the old setup.

99
00:04:48,668 --> 00:04:54,624
Some devs will shrug -- "eh, it's just a
shortcut change." But if you've

100
00:04:54,624 --> 00:04:58,633
ever bounced between wanting a readable
answer and wanting the forensic

101
00:04:58,633 --> 00:05:01,120
trail, you feel it in your bones.

102
00:05:01,120 --> 00:05:05,710
Different jobs, different controls.

103
00:05:01,120 --> 00:05:05,710
And importantly,

104
00:05:05,710 --> 00:05:07,463
it's not dumbing anything down.

105
00:05:07,463 --> 00:05:10,263
You still have visibility into tool use.

106
00:05:10,263 --> 00:05:13,286
It's just no longer welded to the
readability toggle.

107
00:05:13,286 --> 00:05:16,156
That means less accidental mode switching,

108
00:05:16,156 --> 00:05:19,906
less "wait, where did the transcript go,"
and a cleaner model in your

109
00:05:19,906 --> 00:05:24,988
head.The feature I reckon a lot
of folks will quietly love most

110
00:05:24,988 --> 00:05:28,106
is `autoScrollEnabled: false`.

111
00:05:28,106 --> 00:05:32,248
If Claude is running a long build or a
chunky test suite,

112
00:05:32,248 --> 00:05:35,672
the terminal no longer yanks you to the
bottom on every fresh line.

113
00:05:35,672 --> 00:05:38,623
You can keep your place,
read older output,

114
00:05:38,623 --> 00:05:42,840
and the session keeps going underneath
you.

115
00:05:38,623 --> 00:05:42,840
That `false` matters.

116
00:05:42,840 --> 00:05:46,958
Because anyone who's watched tests stream
by knows the pain: you scroll

117
00:05:46,958 --> 00:05:49,618
up to the first failure,
one new line lands,

118
00:05:49,618 --> 00:05:52,092
and boom -- you're snapped back to the
bottom.

119
00:05:52,092 --> 00:05:55,334
It's like trying to read a book while
someone keeps flicking the page

120
00:05:55,334 --> 00:05:57,036
forward.Exactly.

121
00:05:57,036 --> 00:06:00,462
And paired with the steadier fullscreen
TUI,

122
00:06:00,462 --> 00:06:03,095
it makes long-running output way less
feral.

123
00:06:03,095 --> 00:06:08,182
There's also a neat `/config` option now:
when you launch an external

124
00:06:08,182 --> 00:06:12,820
editor with Ctrl+G, Claude's last
response can be injected as commented

125
00:06:12,820 --> 00:06:15,314
context right into the buffer.
Right,

126
00:06:15,314 --> 00:06:17,628
and the specificity there is nice: vim,

127
00:06:17,628 --> 00:06:22,045
nvim, or VS Code can open with the
relevant suggestion already sitting

128
00:06:22,045 --> 00:06:23,612
in the file as a comment block.

129
00:06:23,612 --> 00:06:26,963
So instead of alt-tabbing back to
remember what Claude said,

130
00:06:26,963 --> 00:06:31,278
the guidance is literally in the editing
surface.

131
00:06:26,963 --> 00:06:31,278
That's a lovely handoff.

132
00:06:31,278 --> 00:06:32,238
Very practical.

133
00:06:32,238 --> 00:06:36,999
But -- and here's the sharp edge -- Bash
now enforces its documented

134
00:06:36,999 --> 00:06:38,139
maximum timeout.

135
00:06:38,139 --> 00:06:41,891
It doesn't just accept absurdly large
values anymore.

136
00:06:41,891 --> 00:06:43,726
So if you've got prompts, scripts,

137
00:06:43,726 --> 00:06:48,115
or headless workflows that relied on
giant or basically "infinite" timeouts,

138
00:06:48,115 --> 00:06:53,527
those may suddenly throw errors.
"Documented maximum timeout"

139
00:06:53,527 --> 00:06:56,423
is the phrase people need to hear twice.

140
00:06:56,423 --> 00:07:00,868
Because if somebody set a cartoonishly
high number months ago and forgot

141
00:07:00,868 --> 00:07:05,599
about it, 2.

142
00:07:00,868 --> 00:07:05,599
1.110 can expose that assumption fast.

143
00:07:05,599 --> 00:07:10,119
This is one of those reliability fixes
that feels like a regression only

144
00:07:10,119 --> 00:07:13,320
if you were leaning on undefined
behavior.

145
00:07:10,119 --> 00:07:13,320
Yeah,

146
00:07:13,320 --> 00:07:17,541
and there was another hardening pass too:
"Open in editor" no longer

147
00:07:17,541 --> 00:07:19,863
blindly shell-interpolates filenames.

148
00:07:19,863 --> 00:07:21,143
That's important.

149
00:07:21,143 --> 00:07:23,856
If Claude suggests a file to open,

150
00:07:23,856 --> 00:07:27,532
the filename isn't just stuffed into a
shell command raw anymore,

151
00:07:27,532 --> 00:07:30,998
which closes off a command-injection
path.That one is

152
00:07:30,998 --> 00:07:32,864
huge, even if it sounds boring.

153
00:07:32,864 --> 00:07:36,215
Convenience features become attack
surfaces FAST.

154
00:07:36,215 --> 00:07:40,504
A filename looks harmless right up until
somebody realizes it can smuggle

155
00:07:40,504 --> 00:07:41,551
shell syntax.

156
00:07:41,551 --> 00:07:45,572
So this release is doing two things at
once: making the terminal feel

157
00:07:45,572 --> 00:07:51,371
smoother for humans, and less trusting in
places where trust is dangerous.

158
00:07:45,572 --> 00:07:51,371
Before

159
00:07:51,371 --> 00:07:54,829
teams go all in,
there are a few things worth auditing.

160
00:07:54,829 --> 00:08:00,169
First: `/tui fullscreen` is session-level
unless you persist it.

161
00:08:00,169 --> 00:08:02,240
So if one developer tries it in a shell,

162
00:08:02,240 --> 00:08:05,840
loves it, then opens a new session and
thinks it disappeared -- that's

163
00:08:05,840 --> 00:08:06,778
not a failed feature.

164
00:08:06,778 --> 00:08:11,106
That's just unsaved config.Which comes back to that

165
00:08:11,106 --> 00:08:15,143
exact line in `settings.

166
00:08:11,106 --> 00:08:15,143
json`: `{ "tui": "fullscreen" }`.

167
00:08:15,143 --> 00:08:17,977
Without that,
you're only changing the current session.

168
00:08:17,977 --> 00:08:20,923
I can absolutely see a whole team trying
it once and going,

169
00:08:20,923 --> 00:08:25,640
"Nah, didn't work," when really they just
didn't save the mode.

170
00:08:20,923 --> 00:08:25,640
Second,

171
00:08:25,640 --> 00:08:27,708
terminal compatibility still matters.

172
00:08:27,708 --> 00:08:32,334
Older macOS Terminal.

173
00:08:27,708 --> 00:08:32,334
app had garbled startup rendering in
earlier versions

174
00:08:32,334 --> 00:08:35,201
because synchronized output wasn't
handled well.

175
00:08:35,201 --> 00:08:38,718
2.

176
00:08:35,201 --> 00:08:38,718
1.110 addresses that, which is good,

177
00:08:38,718 --> 00:08:40,464
but if fullscreen still looks off,

178
00:08:40,464 --> 00:08:44,270
it's smart to test in a modern terminal
emulator before blaming Claude

179
00:08:44,270 --> 00:08:47,635
itself.

180
00:08:44,270 --> 00:08:47,635
That is such a classic terminal rabbit
hole.

181
00:08:47,635 --> 00:08:51,172
You think the app is busted,
then it turns out your emulator is the one

182
00:08:51,172 --> 00:08:51,932
dropping the ball.

183
00:08:51,932 --> 00:08:54,882
Not always,
but enough that it's worth checking.

184
00:08:54,882 --> 00:08:59,839
Especially if the rendering weirdness
shows up right at startup.

185
00:08:54,882 --> 00:08:59,839
And third:

186
00:08:59,839 --> 00:09:02,675
audit your Bash timeout assumptions now.

187
00:09:02,675 --> 00:09:04,275
Not later, now.

188
00:09:04,275 --> 00:09:06,272
If you've got automated scripts,

189
00:09:06,272 --> 00:09:11,504
SDK sessions, or long-running Bash tasks
using values way above the documented

190
00:09:11,504 --> 00:09:15,424
ceiling, this release can surface that
immediately.I like

191
00:09:15,424 --> 00:09:20,184
that framing because it's not just
"here's a shiny TUI update." It's also,

192
00:09:20,184 --> 00:09:23,681
"mate,
check your plumbing." Stable fullscreen,

193
00:09:23,681 --> 00:09:26,234
cleaner focus modes, auto-scroll control,

194
00:09:26,234 --> 00:09:28,783
safer editor handoffs -- all good stuff.

195
00:09:28,783 --> 00:09:32,616
But the minute a tool gets more capable
and more integrated,

196
00:09:32,616 --> 00:09:35,317
the rough edges matter more too.
Yeah.

197
00:09:35,317 --> 00:09:38,505
And maybe that's the bigger question
hanging over all of this.

198
00:09:38,505 --> 00:09:42,658
Once Claude Code has a stable fullscreen
TUI,

199
00:09:42,658 --> 00:09:46,299
smarter reading modes, and editor
handoffs that feel intentional instead

200
00:09:46,299 --> 00:09:48,400
of hacked together...

201
00:09:48,400 --> 00:09:51,511
does the terminal stop feeling like a
prompt you visit,

202
00:09:51,511 --> 00:09:55,132
and start feeling like an actual working
environment you inhabit?

203
00:09:55,132 --> 00:09:57,707
That's a good one to leave rattling
around in the toolbox.

204
00:09:57,707 --> 00:10:00,817
Thanks for listening,
and we'll catch you next time.
