12 Ways to Customize Claude Code
Boris Cherny from the Claude Code team put together a great thread on all the ways you can customize Claude Code. As someone who uses AI coding tools daily, I find this kind of deep configurability is exactly what separates tools you tolerate from tools you love. Sharing the full breakdown here.
Original source: Boris Cherny (@bcherny)
Reflecting on what engineers love about Claude Code, one thing that jumps out is its customizability: hooks, plugins, LSPs, MCPs, skills, effort, custom agents, status lines, output styles, etc.
Every engineer uses their tools differently. We built Claude Code from the ground up to not just have great defaults, but to also be incredibly customizable. This is a reason why developers fall in love with the product, and why Claude Code’s growth continues to accelerate.
Here are 12 ways people and teams customize their Claudes:
1. Configure Your Terminal
- Theme: Run
/configto set light/dark mode - Notifications: Enable notifications for iTerm2, or use a custom notifs hook
- Newlines: If you use Claude Code in an IDE terminal, Apple Terminal, Warp, or Alacritty, run
/terminal-setupto enable shift+enter for newlines - Vim mode: Run
/vim
2. Adjust Effort Level
Run /model to pick your preferred effort level:
- Low — less tokens & faster responses
- Medium — balanced behavior
- High — more tokens & more intelligence
Boris personally uses High for everything.
3. Install Plugins, MCPs, and Skills
Plugins let you install LSPs (now available for every major language), MCPs, skills, agents, and custom hooks.
Install from the official Anthropic plugin marketplace, or create your own marketplace for your company. Check settings.json into your codebase to auto-add marketplaces for your team.
Run /plugin to get started.
4. Create Custom Agents
Drop .md files in .claude/agents. Each agent can have a custom name, color, tool set, pre-allowed and pre-disallowed tools, permission mode, and model.
Little-known feature: you can set the default agent for the main conversation via the "agent" field in settings.json or the --agent flag.
Run /agents to get started.
5. Pre-Approve Common Permissions
Claude Code uses a sophisticated permission system with prompt injection detection, static analysis, sandboxing, and human oversight.
Run /permissions to add to the allow and block lists. Full wildcard syntax supported — try "Bash(bun run *)" or "Edit(/docs/**)".
Check these into your team’s settings.json.
6. Enable Sandboxing
Opt into Claude Code’s open source sandbox runtime to improve safety while reducing permission prompts.
Run /sandbox to enable it. Supports both file and network isolation. Windows support coming soon.
7. Add a Status Line
Custom status lines show up right below the composer — show model, directory, remaining context, cost, and anything else you want.
Everyone on the Claude Code team has a different statusline. Use /statusline to get started — it can generate one based on your .bashrc/.zshrc.
8. Customize Your Keybindings
Every key binding in Claude Code is customizable. /keybindings to re-map any key. Settings live reload so you can see how it feels immediately.
9. Set Up Hooks
Hooks let you deterministically hook into Claude’s lifecycle:
- Automatically route permission requests to Slack or Opus
- Nudge Claude to keep going at end of turn (even kick off an agent to decide)
- Pre-process or post-process tool calls for custom logging
Ask Claude to add a hook to get started.
10. Customize Your Spinner Verbs
It’s the little things that make CC feel personal. Customize spinner verbs to replace the default list with your own. Check settings.json into source control to share with your team.
11. Use Output Styles
Run /config to set an output style:
- “Explanatory” — great when getting familiar with a new codebase
- “Learning” — has Claude coach you through making code changes
- Custom styles — adjust Claude’s voice the way you like
12. Customize All the Things!
Check your settings.json into git so your team benefits too. Configure for your codebase, a sub-folder, just yourself, or via enterprise-wide policies.
Claude Code supports 37 settings and 84 environment variables (use the "env" field in settings.json to avoid wrapper scripts).
If you found this helpful, consider buying me a coffee to support more content like this.
Buy me a coffee