Claude Code 的隐藏功能让你可以从移动端编写和审查代码,将会话在不同设备间无缝切换,设置自动循环任务,并利用 Hooks 在代理生命周期关键节点注入自定义逻辑。这些由 Claude Code 创始人 Boris Cherny 亲授的技巧,旨在帮助用户从基础的提示交互升级到系统化、高效率的代理工程工作流。

Boris Cherny 的 15 个隐藏功能:Mobile App、Teleport、/loop、Voice

Claude Code 的创造者 Boris Cherny 在一次分享中,揭示了 15 个他日常高频使用但容易被忽略的强大功能。这些功能涵盖了从移动办公到大规模并行开发的各个层面,旨在将 Claude Code 从一个对话工具,转变为一个全面的软件工程代理平台。对于希望深入掌握 Claude Code、构建结构化工作流的用户而言,这些功能是提升效率的关键。

1. 跨越设备屏障:Mobile App 与会话控制

Claude Code 的能力早已不局限于终端。

  • Mobile App:下载官方 iOS 或 Android 应用,进入“Code”标签页,你可以在手机上直接审查代码变更、批准 PR 甚至编写新代码。Boris 很多代码编写工作就是通过移动端完成的。
  • Teleport 与 Remote Control:通过 claude --teleport/teleport 命令,可以将一个云端会话“传送”到本地终端继续工作。相反,使用 /remote-control 则可以从手机或网页端控制一个正在本地运行的 CLI 会话,实现真正的跨设备无缝协作。Boris 在其配置中为所有会话启用了远程控制。

2. 自动化引擎:/loop 与 /schedule

/loop/schedule 是 Claude Code 中最强大的自动化功能之一。它们允许你设定任务,让 Claude 按固定间隔自动运行,最长可持续一周。

  • 实战示例:Boris 的本地环境运行着多个循环任务,例如:
    • /loop 5m /babysit:每 5 分钟自动处理代码审查、自动 rebase 并推动 PR 合并。
    • /loop 30m /slack-feedback:每 30 分钟为 Slack 反馈自动创建 PR。
    • /loop 1h /pr-pruner:每小时关闭过时的 PR。
  • 将你的技能与循环任务结合,可以创造出强大的自动化工作流。

3. 生命周期钩子:确定性逻辑注入

Hooks 允许你在代理生命周期的特定阶段运行确定性逻辑,非常适合用于控制和监控。

  • 常用场景
    • SessionStart:每次启动 Claude 时,动态加载最新的上下文信息。
    • PreToolUse:记录模型运行的每一个 Bash 命令,用于审计或调试。
    • PermissionRequest:将权限请求路由到 WhatsApp 等外部工具,实现远程审批。
    • Stop:当代理停止时,自动“戳”一下让它继续工作。

4. 前端开发利器:Chrome Extension 与桌面端集成

让 Claude 能够验证自己的输出至关重要。

  • Chrome Extension:进行前端 Web 开发时,务必使用 Chrome 扩展。这相当于给了 Claude 一个浏览器,它可以反复编写代码、查看效果并迭代,直到结果令人满意。这比其他类似 MCP 服务器更可靠。
  • Desktop App Web Server 测试:Claude Desktop 应用内置了自动启动 Web 服务器并在内置浏览器中进行测试的功能,为 Web 开发提供了集成化的体验。

5. 会话管理与并行开发

  • Fork 会话 (/branch):在当前会话中运行 /branch 可以创建一个分支对话。要返回原始会话,使用 claude -r <原始会话ID>
  • Git Worktrees:Claude Code 深度集成了 Git Worktrees,这是实现大规模并行工作的基石。Boris 通常同时运行着数十个 Claude 实例。使用 claude -w 命令或在 Desktop App 中勾选“worktree”选项,即可在独立的工作树中启动新会话。对于非 Git 版本控制系统用户,可以通过 WorktreeCreate 钩子自定义工作树创建逻辑。

6. 大规模并行操作

  • /batch 扇出变更:当你需要进行大规模代码迁移或任何可并行的任务时,使用 /batch。它会与你交互式地确定任务,然后分发给任意数量(可达数十甚至数百个)的 Worktree 代理同时执行,每个代理都工作在自己独立的代码库副本上。
  • --bare 加速 SDK 启动:默认情况下,通过 SDK(CLI -p、TypeScript、Python)调用时,Claude 会搜索本地 CLAUDE.md、设置和 MCP。对于非交互式场景,使用 --bare 标志可以跳过这些搜索,并通过 --system-prompt 等参数显式指定所需内容,从而实现高达 10 倍的启动速度提升。
    claude -p "summarize this codebase" \
        --output-format=stream-json \
        --verbose \
        --bare

7. 扩展访问与定制

  • --add-dir 访问多仓库:当需要跨多个仓库工作时,可以在启动 Claude 的目录外使用 --add-dir(或会话中使用 /add-dir)来授予 Claude 访问其他目录的权限。也可以在团队的 settings.json 中配置 "additionalDirectories" 来实现永久加载。
  • --agent 自定义代理:在 .claude/agents/ 目录下定义自定义子代理,然后使用 claude --agent=<代理名称> 来启动。自定义代理可以拥有受限的工具集、特定的描述和模型,非常适合创建只读审查代理或领域专用工具。
  • /btw 侧查询:在代理执行长任务时,使用 /btw 可以插入一个不中断当前任务的侧问题,快速获取答案。
  • /voice 语音输入:Boris 大量的代码编写是通过语音完成的。在 CLI 中运行 /voice,按住空格键即可说话;在 Desktop App 中可以直接点击语音按钮。

FAQ

Q: 这些高级功能都需要复杂的配置才能开始使用吗? A: 大部分功能如 /loop/btw/voice/branch 只需在 Claude Code 会话中输入对应命令即可使用。像 Hooks 和自定义代理(--agent)则需要在项目目录中预先创建相应的配置文件,但其结构本身是清晰的。

Q: 使用 Mobile App 开发是否有限制? A: Mobile App 提供了核心的代码审查、批准和编写能力,非常适合处理中断、进行小修改或审批流程。但对于复杂的、需要终端深度集成的开发任务,桌面端或 CLI 仍然是更高效的选择。

Q: /batch 适合处理什么样的任务? A: 非常适合大规模、重复性高的代码迁移(如语法更新、API 替换)、跨仓库的统一重构,或者任何可以分解为多个独立子任务并行处理的工作。它充分利用了 Git Worktrees 和并行代理的能力。