1
00:00:00,300 --> 00:00:01,240
Morning, everyone.

2
00:00:01,940 --> 00:00:07,540
Before anything else, thanks to Jellypod
for helping make this daily show a reality.

3
00:00:08,660 --> 00:00:15,180
Today's topic is Codex 0.164.0, which
shipped on October 23,

4
00:00:15,600 --> 00:00:16,420
2026.

5
00:00:17,420 --> 00:00:23,100
If you've ever tried to point an agent at
an MCP server sitting behind an enterprise

6
00:00:23,160 --> 00:00:26,960
gateway, this release changes how that
sign in works.

7
00:00:27,928 --> 00:00:30,328
Here's the change, straight from the
release notes.

8
00:00:31,108 --> 00:00:35,648
Codex can now authenticate enterprise MCP
connections in two ways.

9
00:00:36,388 --> 00:00:41,728
The first is to use eligible Codex account
grants, so the credentials you already

10
00:00:41,788 --> 00:00:43,688
have with Codex can be reused.

11
00:00:44,388 --> 00:00:47,928
The second is a dedicated sign in for that
MCP server.

12
00:00:49,068 --> 00:00:53,608
The notes also say this covers OAuth
clients that require secrets.

13
00:00:54,688 --> 00:00:59,548
Those are confidential clients, the kind
many enterprise identity setups issue.

14
00:01:00,508 --> 00:01:07,168
The pull requests listed for the headline
item are 55334, 55859,

15
00:01:07,528 --> 00:01:09,128
and 56001.

16
00:01:09,902 --> 00:01:14,082
The practical impact is easiest to see by
looking at the supporting commits in the

17
00:01:14,122 --> 00:01:16,922
full changelog, because they show what the
team had to handle.

18
00:01:17,482 --> 00:01:22,842
There's one titled Reuse Codex account
grants for enterprise MCP authentication,

19
00:01:23,162 --> 00:01:24,582
number 55698.

20
00:01:25,402 --> 00:01:30,062
There's one that rechecks account login
ownership for enterprise MCP,

21
00:01:30,822 --> 00:01:31,762
55680.

22
00:01:32,462 --> 00:01:37,022
Another preserves enterprise MCP
authorization across runtime refreshes,

23
00:01:37,702 --> 00:01:38,722
55696.

24
00:01:39,402 --> 00:01:44,362
And another refines the enterprise MCP
auth errors, 55691.

25
00:01:45,022 --> 00:01:50,222
Put together, that reads as: reuse the
grant you have, verify it still belongs to

26
00:01:50,282 --> 00:01:53,882
the account that's signed in, keep it
alive when the runtime refreshes,

27
00:01:54,242 --> 00:01:56,322
and give you a clearer error when it
fails.

28
00:01:57,082 --> 00:02:00,702
That's my reading of the commit titles,
not something the notes spell out in those

29
00:02:00,742 --> 00:02:01,022
words.

30
00:02:01,653 --> 00:02:02,933
So how do you use it?

31
00:02:03,873 --> 00:02:05,433
I'll be upfront about a gap.

32
00:02:06,373 --> 00:02:10,573
The notes tell us what the feature does,
but they don't print config syntax.

33
00:02:11,473 --> 00:02:16,253
The summary we worked from describes
defining your enterprise server under an

34
00:02:16,273 --> 00:02:22,213
mcp_servers section in your Codex
configuration, where you can supply a client

35
00:02:22,333 --> 00:02:25,133
secret or choose account grant
inheritance.

36
00:02:25,993 --> 00:02:31,193
It also describes a slash command, /mcp
login followed by the server name,

37
00:02:31,633 --> 00:02:36,173
to start the dedicated sign in when a
grant needs first time consent or has to be

38
00:02:36,213 --> 00:02:36,693
renewed.

39
00:02:37,773 --> 00:02:41,553
I can't confirm those exact key names or
the command from the official release

40
00:02:41,613 --> 00:02:41,933
notes.

41
00:02:42,553 --> 00:02:44,033
So the workflow is this.

42
00:02:44,733 --> 00:02:47,193
Update to 0.164.0.

43
00:02:47,793 --> 00:02:54,113
For npm users that's npm install, dash g,
at openai slash codex at

44
00:02:54,413 --> 00:02:56,073
0.164.0.

45
00:02:56,853 --> 00:03:00,913
Then check the current docs for your
version for the exact fields before you commit

46
00:03:00,973 --> 00:03:02,333
anything to a shared config.

47
00:03:03,010 --> 00:03:08,410
And since a client secret is involved,
think about where that secret lives before

48
00:03:08,450 --> 00:03:09,130
you write it down.

49
00:03:09,590 --> 00:03:12,950
Don't paste it into a config file that
goes into a repository.

50
00:03:13,730 --> 00:03:18,090
The notes don't tell us how Codex stores
it, so treat that as a question for the

51
00:03:18,130 --> 00:03:21,330
docs, or for whoever administers your
identity provider.

52
00:03:22,070 --> 00:03:26,550
If your organization issues confidential
clients, they're the ones who can tell you

53
00:03:26,610 --> 00:03:31,610
whether your MCP gateway expects the
account grant path or its own sign in.

54
00:03:32,195 --> 00:03:34,335
A few caveats worth knowing.

55
00:03:35,315 --> 00:03:37,095
First, remote environments.

56
00:03:37,915 --> 00:03:44,715
Change 53990 keeps host MCP and plugin
configuration local when you're

57
00:03:44,755 --> 00:03:46,415
working with remote environments.

58
00:03:47,295 --> 00:03:53,315
So if you run against a remote exec
server, don't assume your MCP definitions travel

59
00:03:53,375 --> 00:03:53,955
with the task.

60
00:03:55,115 --> 00:04:01,615
Second, change 54079: rejected MCP OAuth
refresh tokens are now

61
00:04:01,655 --> 00:04:02,215
retired.

62
00:04:03,215 --> 00:04:06,835
If the server turns down a refresh token,
Codex drops it.

63
00:04:07,535 --> 00:04:12,735
In practice, that means you should expect
to sign in again rather than watch silent

64
00:04:12,795 --> 00:04:14,355
retries loop in the background.

65
00:04:15,515 --> 00:04:21,815
Third, 55701 turns on MCP OAuth refresh
coordination by default,

66
00:04:22,395 --> 00:04:26,275
which is aimed at the case where several
sessions try to refresh the same

67
00:04:26,335 --> 00:04:26,935
credentials.

68
00:04:27,755 --> 00:04:31,915
The notes don't say more than that, so
test it with your own multi session setup.

69
00:04:32,570 --> 00:04:37,090
There's also a security adjacent feature
in the same release that matters if you

70
00:04:37,130 --> 00:04:38,010
handle these secrets.

71
00:04:38,470 --> 00:04:43,490
Codex now masks credentials during
supported remote Bash commands and Zsh snapshot

72
00:04:43,530 --> 00:04:46,050
sessions, including credentials from
custom providers.

73
00:04:46,610 --> 00:04:48,370
The key word is supported.

74
00:04:48,790 --> 00:04:51,470
If you're running remote exec servers and
passing secrets around,

75
00:04:51,890 --> 00:04:54,650
confirm masking is actually active in your
setup.

76
00:04:55,230 --> 00:05:00,850
One related change, 55719, lets unified
exec fall back when credential masking is

77
00:05:00,890 --> 00:05:01,510
unavailable.

78
00:05:01,970 --> 00:05:04,689
So there's a path where a command still
runs without masking,

79
00:05:04,869 --> 00:05:08,010
and I'd read that as a reason to check
rather than assume.

80
00:05:08,652 --> 00:05:13,112
One more item in the headline list, for
anyone on AWS.

81
00:05:14,092 --> 00:05:18,352
The Amazon Bedrock setup wizard is now
enabled by default.

82
00:05:19,552 --> 00:05:26,472
When Codex detects AWS credentials, the
API key entry is grouped alongside the other

83
00:05:26,632 --> 00:05:28,192
AWS sign in methods.

84
00:05:29,532 --> 00:05:32,672
Before this you'd need to turn the wizard
on yourself.

85
00:05:33,372 --> 00:05:39,352
Now it's just there when credentials are
detected, so check how it behaves on a

86
00:05:39,392 --> 00:05:42,152
machine that has several AWS profiles.

87
00:05:42,958 --> 00:05:47,278
Now the smaller fixes, because several of
them remove real annoyances.

88
00:05:47,938 --> 00:05:52,198
Resuming a session now finds compressed
histories and restores saved thread

89
00:05:52,258 --> 00:05:52,618
settings.

90
00:05:53,118 --> 00:05:57,818
Before, a resumed thread could end up with
the global defaults replacing what you'd

91
00:05:57,898 --> 00:06:01,558
chosen, so your model or permissions might
quietly change.

92
00:06:02,158 --> 00:06:05,338
If you've resumed a long running thread
and felt the behavior shift,

93
00:06:05,818 --> 00:06:07,398
that's the sort of bug this targets.

94
00:06:07,878 --> 00:06:12,078
The changes are 54008 and 55923.

95
00:06:12,737 --> 00:06:14,997
Next, configuration overrides.

96
00:06:15,757 --> 00:06:20,257
The CLI now preserves them when the config
flag, short or long form,

97
00:06:20,657 --> 00:06:22,857
shows up at more than one subcommand
level.

98
00:06:23,977 --> 00:06:29,437
If you wrap Codex in scripts and pass an
override at the top and another further

99
00:06:29,497 --> 00:06:32,777
down, the earlier one used to be at risk
of getting lost.

100
00:06:33,357 --> 00:06:35,217
That's change 56022.

101
00:06:36,297 --> 00:06:41,017
Also, queued prompts now wait for pending
permission selections to resolve before

102
00:06:41,057 --> 00:06:41,617
continuing.

103
00:06:42,537 --> 00:06:46,637
If you stack prompts while an approval is
open, they won't run ahead of your

104
00:06:46,677 --> 00:06:47,057
decision.

105
00:06:47,657 --> 00:06:49,617
That's 55682.

106
00:06:50,153 --> 00:06:50,553
Two more.

107
00:06:51,113 --> 00:06:56,233
On Windows, HTTPS and WebSocket
connections now handle proxy authentication

108
00:06:56,273 --> 00:07:01,173
challenges using the signed in user's
Negotiate or NTLM credentials.

109
00:07:01,653 --> 00:07:04,353
If you're on a corporate network with an
authenticating proxy,

110
00:07:04,573 --> 00:07:05,393
that's meaningful.

111
00:07:05,953 --> 00:07:10,413
And there's sandbox hardening: checks for
case variant metadata paths on macOS,

112
00:07:10,893 --> 00:07:14,033
and for replaceable symlinks used to
locate executables.

113
00:07:14,373 --> 00:07:18,093
Those are 54273 and 55384.

114
00:07:18,813 --> 00:07:20,173
Last, housekeeping.

115
00:07:20,633 --> 00:07:25,253
Codex now prunes unused installations,
cleans abandoned marketplace checkouts,

116
00:07:25,613 --> 00:07:29,293
and bounds daemon logs, so it should stop
quietly eating disk.

117
00:07:29,943 --> 00:07:31,883
So the action list is short.

118
00:07:32,603 --> 00:07:35,423
Update to 0.164.0.

119
00:07:36,043 --> 00:07:42,943
If you use enterprise MCP, find out which
sign in path your gateway expects and read

120
00:07:42,963 --> 00:07:45,363
the docs for the exact configuration.

121
00:07:46,343 --> 00:07:48,983
Treat any client secret like a secret.

122
00:07:49,703 --> 00:07:54,783
And if you run remote environments, verify
that credential masking is on.

123
00:07:55,663 --> 00:07:56,543
That's it for today.

