G'day, brought to you by Jellypod AI.
James, have you uh, have you updated to the new Claude Code yet?
The, the 2.1.207 release?
They've-they've finally turned on Auto Mode by default across the board.
No more messing around with that CLAUDE_CODE_ENABLE_AUTO_MODE env var if you're on
Bedrock, Google Vertex, or Foundry.
It's just...
ready to roll.
Oh, thank goodness.
Honestly, having to set that environment variable every time I spun up a new
container or changed shells on Vertex was a massive pain.
So it's just, what, natively recognized now across all those enterprise model
gardens?
Yeah, fair dinkum.
It's built right in now.
But-but-but here's the real kicker, and this is a massive security update.
They've completely hardened how autoMode configurations are read.
It used to be that Claude Code would look at repo-level settings,
you know, like .claude/settings.json or .claude/settings.local.json
inside a project you just cloned from GitHub.
Wait, so if I cloned a random public repo, it could have a malicious
.claude/settings.json in the git tree?
And if I ran Claude Code in there, it would just execut- wait,
could it trigger a shell injection or override my local permissions automatically?
Exactly!
Spot on.
A total drive-by shell-injection nightmare.
You clone a repo, run Claude, and boom, some dodgy custom settings block or
permission-override script runs on your machine.
So now, the dev team has blocked that entirely.
It is strictly read from your global user settings.
That's ~/.claude/settings.json on Unix or, you know,
%USERPROFILE%\.claude\settings.json if you're on Windows.
Too easy.
That makes complete sense.
Keep the control global, not repo-local.
So if I actually want to tweak it, like if I want to turn off Auto Mode entirely,
I have to use the global /config command?
Like /config disableAutoMode=disable?
Yeah, you got it.
/config disableAutoMode=disable updates that global config file directly.
No more sneaky repo-level overrides hijacking your terminal.
I reckon it's a solid fix.
Speaking of security, I saw they also cracked down on custom plugins and hooks.
They're rejecting any shell-form plugins using ${user_config.*} variables now,
right?
To stop people from passing unescaped config values straight into a shell command?
Yeah, exactly.
If you try to use those variables in a custom plugin, it'll outright reject it.
They're pushing everyone to use exec-form or the proper env vars like
$CLAUDE_PLUGIN_OPTION_