1
00:00:00,160 --> 00:00:02,969
So, I- I- I was looking at the new build
pipelines this morning,

2
00:00:03,620 --> 00:00:04,300
and...

3
00:00:04,340 --> 00:00:09,420
okay, so if you've ever had to wait for a
massive CLI tool to rebuild its shell

4
00:00:09,480 --> 00:00:13,170
autocomplete or helper scripts every
single time it compiles,

5
00:00:13,760 --> 00:00:16,080
you know how incredibly annoying that is.

6
00:00:16,140 --> 00:00:23,080
And that is exactly what the Codex team
just killed off in v0.1.0 of their Zsh

7
00:00:23,320 --> 00:00:23,900
integration.

8
00:00:25,970 --> 00:00:25,971
Oh, yeah.

9
00:00:26,000 --> 00:00:31,080
The classic "why is my terminal freezing
for three seconds on startup" problem.

10
00:00:31,720 --> 00:00:33,100
So what did they actually do?

11
00:00:33,380 --> 00:00:35,120
Did they just stop compiling it?

12
00:00:35,970 --> 00:00:37,020
Well, sort of, yeah.

13
00:00:37,450 --> 00:00:38,830
They decoupled it.

14
00:00:38,890 --> 00:00:45,610
So, codex-zsh is now its own standalone
thing, and they're using Meta's DotSlash

15
00:00:45,790 --> 00:00:48,530
manifest format in the main build
pipeline.

16
00:00:49,170 --> 00:00:54,290
Instead of shipping this massive, bloated
payload or rebuilding the Zsh helper on

17
00:00:54,330 --> 00:00:58,490
every run, the main binary just reads this
tiny...

18
00:00:58,530 --> 00:01:01,970
like, a literally tiny JSON-like manifest
file.

19
00:01:02,612 --> 00:01:03,883
Wait, DotSlash?

20
00:01:04,423 --> 00:01:08,762
Isn't that the tool Meta open-sourced to
handle platform-specific executable

21
00:01:08,803 --> 00:01:09,273
provisioning?

22
00:01:10,102 --> 00:01:12,283
How does that actually work in a shell
setup?

23
00:01:13,252 --> 00:01:14,052
Exactly that.

24
00:01:14,632 --> 00:01:21,362
So, when you run the setup on macOS or
Linux, Codex parses this --zsh-manifest file.

25
00:01:21,982 --> 00:01:27,972
It looks at your host architecture-say,
Apple Silicon or x86_64

26
00:01:28,012 --> 00:01:33,942
Linux-and then it just pulls down the
exact, verified platform-native helper binary.

27
00:01:34,652 --> 00:01:41,212
And because it's DotSlash, it has a
SHA-256 hash right there in the manifest to

28
00:01:41,252 --> 00:01:43,692
verify the binary integrity on the fly.

29
00:01:44,332 --> 00:01:49,232
No manual checksumming, no bloated
multi-architecture builds clogging up your disk

30
00:01:49,332 --> 00:01:49,652
space.

31
00:01:50,212 --> 00:01:51,092
It's just...

32
00:01:51,152 --> 00:01:51,532
clean.

33
00:01:53,178 --> 00:01:53,179
Huh.

34
00:01:53,228 --> 00:01:57,508
That's actually a pretty elegant way to
decouple the shell updates from the core

35
00:01:57,608 --> 00:01:58,728
Rust compiler chain.

36
00:01:59,388 --> 00:02:04,788
I mean, having to rebuild the whole core
Rust binary just because you tweaked a Zsh

37
00:02:04,867 --> 00:02:09,068
autocomplete script was always a bit of an
architectural nightmare.

38
00:02:09,177 --> 00:02:10,546
Oh, it was a total mess.

39
00:02:11,117 --> 00:02:14,606
And shout out to Jellypod for keeping us
on top of these release notes,

40
00:02:15,137 --> 00:02:20,357
because this kind of plumbing shift is
exactly what makes a tool feel instant rather

41
00:02:20,377 --> 00:02:21,037
than sluggish.

42
00:02:21,803 --> 00:02:22,312
Okay, but wait.

43
00:02:22,632 --> 00:02:23,992
If we're talking about Zsh...

44
00:02:24,792 --> 00:02:28,292
I'm assuming our Windows devs are
completely left out in the cold here,

45
00:02:28,612 --> 00:02:29,002
right?

46
00:02:29,032 --> 00:02:33,992
Since, well, Zsh isn't exactly native to
Windows unless you're deep in WSL.

47
00:02:35,598 --> 00:02:36,438
Yeah, exactly.

48
00:02:37,158 --> 00:02:42,368
If you are on Windows, this whole
codex-zsh DotSlash packaging...

49
00:02:43,078 --> 00:02:44,968
it just completely bypasses you.

50
00:02:45,678 --> 00:02:49,788
Windows developers won't see any changes
to their pipeline because,

51
00:02:49,858 --> 00:02:53,938
honestly, why would you run a native Zsh
helper on Windows anyway?

52
00:02:54,678 --> 00:02:58,657
But if you *are* on macOS or Linux, it's a
massive win.

53
00:02:59,357 --> 00:03:00,597
Right, makes sense.

54
00:03:00,997 --> 00:03:02,617
Keep Unix tools on Unix.

55
00:03:03,277 --> 00:03:05,937
But they also dropped a couple of point
releases, right?

56
00:03:06,337 --> 00:03:09,237
Like 0.142.2 and .3?

57
00:03:10,422 --> 00:03:12,662
Yeah, some really nice quality-of-life
stuff.

58
00:03:13,202 --> 00:03:17,322
For one, the formatter runs are now
completely silent on success.

59
00:03:18,002 --> 00:03:21,562
No more "everything is fine" spam in your
build logs.

60
00:03:22,222 --> 00:03:28,342
And they did some critical security
bumps-OpenSSL is up to 3.6.3 and

61
00:03:28,442 --> 00:03:31,382
esbuild is at 0.28.1.

62
00:03:32,939 --> 00:03:33,489
Oh, thank goodness.

63
00:03:33,869 --> 00:03:38,609
The silent formatter is such a small
thing, but when you're running pre-commit

64
00:03:38,689 --> 00:03:43,669
hooks, having your terminal output stay
quiet unless something is actually broken

65
00:03:43,829 --> 00:03:44,009
is...

66
00:03:44,569 --> 00:03:45,649
it's a sanity saver.

67
00:03:46,553 --> 00:03:46,943
Totally.

68
00:03:47,613 --> 00:03:52,233
Oh, and one last thing that caught my
eye-they added a safeguard for Code Mode.

69
00:03:52,933 --> 00:03:57,393
If you select an LLM that doesn't support
the necessary metadata for code

70
00:03:57,433 --> 00:04:03,333
generation, the CLI will now throw a
warning immediately instead of silently failing

71
00:04:03,373 --> 00:04:05,183
halfway through a complex code block.

72
00:04:06,133 --> 00:04:11,233
It- it- it basically stops you from
burning API credits on a model that can't

73
00:04:11,333 --> 00:04:12,533
actually do the job.

74
00:04:14,153 --> 00:04:14,163
Wow.

75
00:04:14,223 --> 00:04:16,583
That's a huge money saver, actually.

76
00:04:17,243 --> 00:04:19,643
Alright, well, that's a solid set of
updates.

77
00:04:20,103 --> 00:04:20,903
Good chatting, Ethan.

78
00:04:21,788 --> 00:04:22,708
Yep, talk soon.

