Boris Cherny Profile picture
Mar 30 17 tweets 7 min read Read on X
I wanted to share a bunch of my favorite hidden and under-utilized features in Claude Code. I'll focus on the ones I use the most.

Here goes.
1/ Did you know Claude Code has a mobile app?

Personally, I write a lot of my code from the iOS app. It's a convenient way to make changes without opening a laptop.

Download the Claude app for iOS/Android > Code tab on the left. Image
2/ Move sessions back and forth between mobile/web/desktop and terminal

Run "claude --teleport" or /teleport to continue a cloud session on your machine.

Or run /remote-control to control a locally running session from your phone/web. Personally, I have "Enable Remote Control for all sessions" set in my /config.

code.claude.com/docs/en/remote…
3/ Two of the most powerful features in Claude Code: /loop and /schedule

Use these to schedule Claude to run automatically at a set interval, for up to a week at a time.

I have a bunch of loops running locally:

- /loop 5m /babysit, to auto-address code review, auto-rebase, and shepherd my PRs to production
- /loop 30m /slack-feedback, to automatically put up PRs for Slack feedback every 30 mins
- /loop /post-merge-sweeper to put up PRs to address code review comments I missed
- /loop 1h /pr-pruner to close out stale and no longer necessary PRs
- lots more!..

Experiment with turning workflows into skills + loops. It's powerful.

code.claude.com/docs/en/schedu…
4/ Use hooks to deterministically run logic as part of the agent lifecycle

For example, use hooks to:
- Dynamically load in context each time you start Claude (SessionStart)
- Log every bash command the model runs (PreToolUse)
- Route permission prompts to WhatsApp for you to approve/deny (PermissionRequest)
- Poke Claude to keep going whenever it stops (Stop)

See code.claude.com/docs/en/hooks
5/ Cowork Dispatch

I use Dispatch every day to catch up on Slack and emails, manage files, and do things on my laptop when I'm not at a computer. When I'm not coding, I'm dispatching.

Dispatch is a secure remote control for the Claude Desktop app. It can use your MCPs, browser, and computer, with your permission.

claude.com/product/cowork…
6/ Use the Chrome extension for frontend work

The most important tip for using Claude Code is: give Claude a way to verify its output. Once you do that, Claude will iterate until the result is great.

Think of it like any other engineer: if you ask someone to build a website but they aren't allowed to use a browser, will the result look good? Probably not. But if you give them a browser, they will write code and iterate until it looks good.

Personally, I use the Chrome extension every time I work on web code. It tends to work more reliably than other similar MCPs.

Download the extension for Chrome/Edge here: code.claude.com/docs/en/chrome
7/ Use the Claude Desktop app to have Claude automatically start and test web servers

Along the same vein, the Desktop app bundles in the ability for Claude to automatically run your web server and even test it in a built-in browser.

You can set up something similar in CLI or VSCode using the Chrome extension, or just use the Desktop app.

code.claude.com/docs/en/deskto…
8/ Fork your session

People often ask how to fork an existing session. Two ways:

1. Run /branch from your session
2. From the CLI, run claude --resume <session-id> --fork-session Image
9/ Use /btw for side queries

I use this all the time to answer quick questions while the agent works Image
10/ Use git worktrees

Claude Code ships with deep support for git worktrees. Worktrees are essential for doing lots of parallel work in the same repository. I have dozens of Claudes running at all times, and this is how I do it.

Use claude -w to start a new session in a worktree, or hit the "worktree" checkbox in the Claude Desktop app.

For non-git VCS users, use the WorktreeCreate hook to add your own logic for worktree creation.

Learn more: x.com/bcherny/status…
11/ Use /batch to fan out massive changesets

/batch interviews you, then has Claude fan out the work to as many worktree agents as it takes (dozens, hundreds, even thousands) to get it done.

Use it for large code migrations and others kinds of parallelizable work.

12/ Use --bare to speed up SDK startup by up to 10x

By default, when you run claude -p (or the TypeScript or Python SDKs) we search for local CLAUDE.md's, settings, and MCPs.

But for non-interactive usage, most of the time you want to explicitly specify what to load via --system-prompt, --mcp-config, --settings, etc.

This was a design oversight when we first built the SDK, and in a future version, we will flip the default to --bare. For now, opt in with the flag.Image
13/ Use --add-dir to give Claude access to more folders

When working across multiple repositories, I usually start Claude in one repo and use --add-dir (or /add-dir) to let Claude see the other repo. This not only tells Claude about the repo, but also gives it permissions to work in the repo.

Or, add "additionalDirectories" to your team's settings.json to always load in additional folders when starting Claude Code.

code.claude.com/docs/en/cli-re…
14/ Use --agent to give Claude Code a custom system prompt & tools

Custom agents are a powerful primitive that often gets overlooked.

To use it, just define a new agent in .claude/agents, then run claude --agent=<your agent's name>

code.claude.com/docs/en/sub-ag…Image
15/ Use /voice to enable voice input

Fun fact: I do most of my coding by speaking to Claude, rather than typing.

To do the same, run /voice in CLI then hold the space bar, press the voice button on Desktop, or enable dictation in your iOS settings.
Hope this was useful! I wanted to keep going but had to stop myself. Will post more soon.

What are your favorite underrated Claude Code features?

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Boris Cherny

Boris Cherny Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @bcherny

Apr 16
Dogfooding Opus 4.7 the last few weeks, I've been feeling incredibly productive. Sharing a few tips to get more out of 4.7 🧵
1/ Auto mode = no more permission prompts

Opus 4.7 loves doing complex, long-running tasks like deep research, refactoring code, building complex features, iterating until it hits a performance benchmark.

In the past, you either had to babysit the model while it did these sorts of long tasks, our use --dangerously-skip-permissions.

We recently rolled out auto mode as a safer alternative. In this mode, permission prompts are routed to a model-based classifier to decide whether the command is safe to run. If it's safe, it's auto-approved.

This means no more babysitting while the model runs. More than that, it means you can run more Claudes in parallel. Once a Claude is cooking, you can switch focus to the next Claude.

Auto mode is now available for Opus 4.7 for Max, Teams, and Enterprise users. Shift-tab to enter auto mode in the CLI, or choose it in the dropdown in Desktop or VSCode.Image
2/ The new /fewer-permission-prompts skill

We've also released a new /fewer-permission-prompts skill. It scans through your session history to find common bash and MCP commands that are safe but caused repeated permission prompts.

It then recommends a list of commands to add to your permissions allowlist.

Use this to tune up your permissions and avoid unnecessary permission prompts, especially if you don't use auto mode.

code.claude.com/docs/en/permis…
Read 8 tweets
Apr 9
Just got a nice DM from a big enterprise customer using Claude Code in one of the world's biggest codebases

Here's how we made @-mentions 3x faster in large enterprise codebases 🧵 Image
To power file @-mentions in Claude Code, we used to use a custom Rust-based file indexer that we invoked from Claude Code via NAPI. It was pretty fast.
But in big codebases, it would fall over.

So we introduced a new fileSuggestion setting in Claude Code, so customers with large codebases could plug in their custom code index (using SourceGraph, an in-house index, etc.).

code.claude.com/docs/en/settin…
Read 7 tweets
Apr 3
Starting tomorrow at 12pm PT, Claude subscriptions will no longer cover usage on third-party tools like OpenClaw.

You can still use these tools with your Claude login via extra usage bundles (now available at a discount), or with a Claude API key.
We’ve been working hard to meet the increase in demand for Claude, and our subscriptions weren't built for the usage patterns of these third-party tools. Capacity is a resource we manage thoughtfully and we are prioritizing our customers using our products and API.
Subscribers get a one-time credit equal to your monthly plan cost. If you need more, you can now buy discounted usage bundles. To request a full refund, look for a link in your email tomorrow. support.claude.com/en/articles/13…
Read 4 tweets
Apr 1
Today we're excited to announce NO_FLICKER mode for Claude Code in the terminal

It uses an experimental new renderer that we're excited about. The renderer is early and has tradeoffs, but already we've found that most internal users prefer it over the old renderer. It also supports mouse events (yes, in a terminal).

Try it: CLAUDE_CODE_NO_FLICKER=1 claude
Some of the upsides:
- No more flickering
- No more jumping
- Constant memory and CPU usage as the conversation grows
- Mouse support! You can now click to move your cursor within the input box. Some other UI elements are also clickable now.
- Nicer selection behavior. eg. when you select code, we no longer include line numbers and UI elements in the selection
There's also downsides:
- Native cmd-f doesn't work. Instead, hit ctrl+o then / to search the transcript (or, use ctrl-r for reverse search)
- Native copy-paste doesn't work. Instead, we copy to the clipboard by default when you make a selection. You can configure this in your settings.json to use ctrl+c instead, if you prefer.
- Scrolling gravity varies by device, and we are in the process of tuning the physics to make it feel good on every terminal
Read 6 tweets
Feb 28
In the next version of Claude Code..

We're introducing two new Skills: /simplify and /batch. I have been using both daily, and am excited to share them with everyone.

Combined, these kills automate much of the work it used to take to (1) shepherd a pull request to production and (2) perform straightforward, parallelizable code migrations.Image
/simplify

Use parallel agents to improve code quality, tune code efficiency, and ensure CLAUDE.md compliance.

Usage: "hey claude make this code change then run /simplify"
/batch

Interactively plan out code migrations, then execute in parallel using dozens of agents.

Each agent runs with full isolation using git worktrees, testing its work before putting up a PR.

Usage: "/batch migrate src/ from Solid to React"
Read 4 tweets
Feb 21
Introducing: built-in git worktree support for Claude Code

Now, agents can run in parallel without interfering with one other. Each agent gets its own worktree and can work independently.

The Claude Code Desktop app has had built-in support for worktrees for a while, and now we're bringing it to CLI too.

Learn more about worktrees: git-scm.com/docs/git-workt…Image
1/ Use claude --worktree for isolation

To run Claude Code in its own git worktree, just start it with the --worktree option. You can also name your worktree, or have Claude name it for you.

Use this to run multiple parallel Claude Code sessions in the same git repo, without the code edits clobbering each other.

You can also pass the --tmux flag to launch Claude in its own Tmux session.Image
2/ Use worktree mode in the Desktop app

If you prefer not to use terminal, head to the Code tab in the Claude Desktop app and ☑️ worktree mode

code.claude.com/docs/en/deskto…Image
Read 7 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(