Claude Code: 15 Underrated Features for Mobile Coding, Automation, Voice, and More
You might have used Claude Code for a while, but have you tried writing code on your phone? Or setting up an automatic code review every five minutes? The creator of Claude Code, Boris Cherny, recently shared 15 features he thinks are underrated. They range from mobile development to scheduled automation, from voice control to remote desktop access. These features can turn Claude from a simple question‑and‑answer tool into a background worker that runs tasks on its own.
Let’s go through each feature. I’ll explain what it does, how to use it, and what you should watch out for.
1. Mobile Client: Not for Writing Complex Logic on a 6‑Inch Screen
Boris says he writes a lot of code on iOS without opening his computer. How does that work? Download the Claude app (iOS or Android). Open it, and you’ll see a Code tab in the left menu. Tap it to start.
But here is the reality check: the mobile client is best for lightweight edits and task dispatching. For example, you are on the subway and want to start a time‑consuming refactoring job. You can pull out your phone, ask Claude to run it, and by the time you get back to your desk, the job may already be done. It is not meant for writing hundreds of lines of complex logic on a tiny screen. Realistic use cases: fixing one line of configuration, starting a batch process, or checking the progress of a long‑running task.
2. Seamless Session Transfer Between Devices: /teleport and /remote-control
Have you ever started a long task on your work computer – something that takes half an hour – but then you have to leave for a meeting? It would be great if you could continue watching the progress and giving instructions from your phone.
Claude Code’s session transfer solves this problem. Run claude --teleport in the terminal or simply type /teleport. This pulls a cloud session to your local machine. Conversely, use /remote-control to control a local session remotely from your phone or the web.
Boris enables “Enable remote control for all sessions” in his settings so he can switch between devices anytime. One limitation: remote control is still in research preview, and you can only control one session at a time. Check the official documentation for details.
3. /loop and /schedule: Turning Claude into a Background Automation Worker
This might be the most imaginative part of the whole list. /loop and /schedule let Claude run tasks at fixed intervals for up to a week.
Here are the loops Boris runs on his own machine:
| Command | What it does |
|---|---|
/loop 5m /babysit |
Every 5 minutes, handle code review comments, auto‑rebase, and shepherd PRs to merge and deploy |
/loop 30m /slack-feedback |
Every 30 minutes, create PRs based on Slack feedback |
/loop /post-merge-sweeper |
Automatically create PRs for comments missed in previous reviews |
/loop 1h /pr-pruner |
Every hour, clean up stale or unnecessary PRs |
Boris’s advice: combine your workflow into skill + loop. Write a skill for code review first, then use a loop to run it every few minutes.
Three important limitations:
-
The terminal must stay open -
/looptasks run for at most three days (running for a week is possible with/scheduleon the desktop app) -
Your computer cannot sleep
Also, automatic actions like babysit that push changes to production require solid test coverage. Do not copy this pattern if your project has weak tests.
4. Hooks: Adding Deterministic Logic to the Agent Lifecycle
Hooks let you run predefined logic at specific points during Claude’s execution. The idea is similar to Git’s pre‑commit hooks, but it applies to the whole lifecycle of an AI agent.
Supported lifecycle events include:
-
SessionStart – Dynamically load context every time Claude starts -
PreToolUse – Log every bash command before it runs -
PermissionRequest – Send permission requests to WhatsApp for remote approval or rejection -
Stop – Automatically prompt Claude to continue when it stops
This design is what makes Claude Code an “agent platform” rather than just a “coding assistant”. Advanced users will appreciate the fine‑grained control, but there is a learning curve. If you need Claude to ask for your confirmation before certain actions, or if you want to log every step it takes, hooks are the right tool.
5. Cowork Dispatch: Remotely Control Your Desktop
Boris uses Dispatch every day to handle Slack messages, emails, and file management – even when he is away from his computer.
Dispatch is a secure remote control feature of the Claude desktop app. Once enabled, you can remotely use your computer’s MCP servers, browser, and file system. People often confuse Dispatch with the remote control feature mentioned earlier. Here is the difference:
-
Remote Control – Controls a Claude Code session inside the terminal. It can only work with the command line. -
Dispatch – Controls the Claude desktop application. It can operate your browser, open files, and manage your whole computer. It is much more powerful.
Dispatch currently works only on macOS. See the product page for details.
6. Chrome Extension: Give Claude a Way to Verify Its Output
Boris says the most important thing when using Claude Code is to give Claude a way to verify what it produces. His analogy is spot on: if you ask an engineer to build a website but never let them open a browser, how good will the result be? Give them a browser, and they will write code, see the effect, and iterate until they are satisfied.
For frontend development, the Chrome extension is that “browser”. After installing the extension, Claude can preview the pages it writes directly in the browser, see the actual results, and continue adjusting based on what it sees. Boris says this extension is more stable than other similar MCP tools.
This principle is not limited to frontend work. Any mechanism that lets Claude see the results of its own work – running tests, checking compilation, previewing effects – will significantly improve output quality. This might be the single most valuable tip in the entire post.
You can find the download link on the Claude Code documentation site (supports Chrome and Edge).
7. Desktop Built‑in Web Server Preview
The Claude desktop app can automatically run a web server and test your pages in its built‑in browser. You do not need to configure anything manually. If you want similar functionality in the command line or VSCode, you can use the Chrome extension. The official documentation explains how.
8. Session Forking: Explore Multiple Approaches at Once
Sometimes you ask Claude to work on a task, and halfway through you think of a different direction. If you continue, you lose the original idea. If you start over, you waste the work already done.
Session forking solves this. There are two ways:
-
Run /branchinside the current session -
Run claude --resume <session-id> --fork-sessionfrom the command line
After forking, the two sessions do not interfere with each other. You can explore different approaches and later choose the one that works best.
9. /btw: Ask a Question Without Interrupting the Current Task
Claude is running a time‑consuming task – for example, renaming hundreds of files. Suddenly you remember a small question you want to ask. But you do not want to interrupt what Claude is doing.
Type /btw (short for “by the way”) and then ask your question. This is a single‑turn Q&A. It does not call any tools, but it can see the full context of the current session. Claude will answer your question and then resume the original task without any interruption. It is a small feature, but surprisingly useful.
10. Git Worktrees: The Foundation for Running Dozens of Claude Instances in Parallel
Git worktrees let you check out multiple branches from the same repository into different directories. Each directory is independent. Claude Code has deep support for worktrees.
Boris says he often runs dozens of Claude instances simultaneously, thanks to worktrees. How to use it? Run claude -w to start a new worktree session, or check “worktree” in the desktop app. If you do not use git, you can customize the creation logic through the WorktreeCreate hook.
Of course, “dozens of instances” requires enough subscription quota and machine power. But even if you only run 2‑3 parallel sessions, worktrees are much more efficient than switching branches back and forth. You can write new features on one branch, fix bugs on another, and do code review on a third – all at the same time, without interference.
11. /batch: Large‑Scale Parallel Modifications
/batch works like this: first it talks to you to understand what kind of batch modification you want. Then it fans out the task to multiple worktree agents that run in parallel. The number can be tens, hundreds, or even thousands.
This feature is for large‑scale code migrations and other parallelizable work. Examples:
-
Renaming an API across the whole repository -
Migrating every file from an old format to a new format -
Adding a copyright notice to thousands of files
The prerequisites: the task must be truly parallelizable, and you must have enough tests to verify that the batch changes did not break anything. If tasks have dependencies on each other, you cannot use /batch directly.
12. --bare: Up to 10x Faster SDK Startup
By default, claude -p (or the TypeScript/Python SDK) searches your local CLAUDE.md, settings, and MCP configuration when it starts. In non‑interactive scenarios, you usually specify what to load explicitly with parameters like --system-prompt or --mcp-config. The default search becomes wasted time.
Adding the --bare flag skips those unnecessary configuration loads. Startup speed improves noticeably. Boris says this was a design mistake in the early SDK, and a future version will make --bare the default. For now, you need to add it manually.
If you write automation scripts or integrate with CI/CD, this flag is worth remembering.
13. --add-dir: Work Across Multiple Repositories
Sometimes you need Claude to operate on several code repositories at once. For example, one project depends on a private library, and changes often require updating both sides.
Start Claude in one repository, then use --add-dir (or /add-dir) to let it see and operate on another repository. You can also configure additionalDirectories in your team’s settings.json. Then everyone on the team will automatically load those extra directories when they start Claude.
14. --agent: Create Custom Specialized Agents
Define an agent in the .claude/agents directory. Then start it with claude --agent=<name>. Each agent can have its own system prompt and tool set.
The value of custom agents is specialization. Instead of using one generic Claude for everything, create several dedicated agents:
-
One agent specifically for code review -
One agent specifically for writing tests -
One agent specifically for writing documentation
Each agent loads different context and tools, and each does one job well. This idea aligns with the skill‑plus‑loop approach mentioned earlier.
15. /voice: Voice Programming
Boris says he dictates most of his code to Claude instead of typing it. How to do it?
-
Run /voicein the command line, then hold the spacebar and speak -
Press the voice button on the desktop app -
Enable dictation on iOS
Currently, 20 languages are supported.
How well voice programming works depends on the task. Describing functionality requirements, explaining a bug, or dictating a refactoring plan – in these cases, voice can be faster than typing. But when you need to describe code structure precisely or name variables, typing is more efficient. You can mix both: use voice to quickly explain the overall idea, then type to adjust the details.
Frequently Asked Questions (FAQ)
Can I use Claude Code on my phone?
Yes. Download the Claude app (iOS or Android). The Code tab is in the left menu. But the mobile client is best for lightweight edits and task dispatching, not for writing complex logic.
How do I transfer a session from my phone to my computer?
Run claude --teleport in the terminal or type /teleport. This pulls the cloud session to your local machine.
Can Claude run tasks automatically on a schedule?
Yes. Use /loop or /schedule. You can set Claude to run specific tasks every few minutes or hours for up to a week.
What is the difference between Remote Control and Dispatch?
-
Remote Control controls a Claude Code session inside the terminal. -
Dispatch controls the Claude desktop application. It can operate your browser and file system. It is more powerful but currently only works on macOS.
Do I really need the Chrome extension for frontend work?
Boris strongly recommends it. With the extension, Claude can preview page effects and iterate on its own. This leads to much higher output quality than an AI that cannot verify its work.
What is session forking?
Run /branch inside a session. This creates a copy of the session. The two sessions run independently, so you can explore different approaches at the same time.
Which languages does voice programming support?
Currently 20 languages, including English, Chinese, Spanish, and others.
How can I make Claude work on multiple repositories at once?
Use the --add-dir parameter or the /add-dir command to add other directories to the current session.
What command do I use to batch‑modify hundreds of files?
Use /batch. It will first confirm your requirements, then distribute the task to multiple worktree agents in parallel.
Wrapping Up
These 15 features cover a wide range – from mobile access and scheduled automation to voice programming and remote desktop control. They address real pain points that many developers encounter but may not know how to solve. Boris mentioned at the end that he wanted to write even more but forced himself to stop. That suggests there is plenty more to explore in Claude Code. If you try any of these features, start with one or two that fit your daily work. You might be surprised how much time they save.

