Claude Code – Everything You Can Configure That the Docs Don't Tell You Claude Code's source code reveals undocumented configuration capabilities, including a "YOLO Classifier" auto-mode permission system that accepts plain English environment descriptions to determine safe auto-approvals. Hooks can return JSON on stdout with event-specific fields that modify Claude Code's behavior in real time, such as rewriting tool inputs mid-flight or programmatically allowing or denying permissions. These findings come from version 2.1.87 of the npm package, with some features explicitly flagged as experimental and subject to change. I Read the Claude Code Source Code. Here's Everything You Can Configure That the Docs Don't Tell You. Hook fields that rewrite commands mid-flight, persistent agent memory, auto-mode rules in plain English, self-improving dream loops, and every example is copy-paste ready. Claude Code’s auto-mode permission system is internally called the “YOLO Classifier.” That’s the actual variable name in yoloClassifier.ts. And you can configure it with plain English descriptions of your environment, things like “this is a staging server, destructive operations are acceptable,” that the classifier reads to decide what’s safe to auto-approve. This isn’t in any documentation. It’s one of dozens of undocumented capabilities buried in the Claude Code source code, which is sitting right there in your node modules as a publicly distributed npm package. The official docs cover the basics well enough. But the source code reveals fields, response formats, and settings that dramatically expand what you can build. Everything here works right now, and every example is designed to be dropped into your project as-is. A note on versioning: These findings come from @anthropic-ai/claude-code@2.1.87. Undocumented features can change between releases, so treat this as a snapshot of what’s available today. Fields with “EXPERIMENTAL” in their names are explicitly flagged as unstable by Anthropic’s own engineers, and I’ll call those out individually. Before you start Quick reference for where everything lives: Settings: ~/.claude/settings.json personal or .claude/settings.json project, shared via git Skills: ~/.claude/skills/