Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

在 Cursor 中使用 PRECC

PRECC 最初是作为 Claude Code 的 PreToolUse 钩子构建的,但其底层技能库——cargo-wrong-dirgit-wrong-dirnpm-wrong-dirjj-translate 等——与编辑器无关。通过一小段 shell 代码片段,你可以将 Cursor 集成终端中输入的每个命令都路由到 precc-hook,让那些为 Claude Code 节省 token 的相同重写规则同样在 Cursor 上生效。

Requires precc ≥ 0.3.45. Earlier versions don’t plant the integration scripts under <data_dir>/integrations/cursor/. Run precc update to upgrade if you have an older release.

覆盖范围

此集成会捕获你在 Cursor 终端中输入的命令。在 zsh 上,它会在你按下回车之前自动重写命令行;在 bash 上,它只能发出警告(DEBUG trap 是在命令定型之后才触发的)。Cursor 的智能体bash -c 子进程生成的命令不会加载你的交互式 shell 初始化文件,因此钩子无法看到它们;要弥合这一缺口需要一个 PATH 垫片,目前该目录尚未提供。Cursor 的非 shell 工具调用(文件编辑、代码搜索)同样不在覆盖范围内。

安装

zsh(自动重写)

source ~/.local/share/precc/integrations/cursor/precc-preexec.zsh

运行一次 precc init —— 它会将脚本安装到上述路径(使用 precc 存储中的 <data_dir>,因此 CLAUDE_CONFIG_DIR 等配置隔离会被遵守)。然后将 source 行添加到 ~/.zshrcprecc-hookjq 必须在 PATH 中;如果任一缺失,脚本会安全地不执行任何操作。

bash(仅警告)

source ~/.local/share/precc/integrations/cursor/precc-preexec.bash

运行一次 precc init —— 它会将脚本安装到上述路径。然后将 source 行添加到 ~/.bashrcDEBUG 陷阱会将建议的改写输出到 stderr,但不会自动应用;你可以手动复制该建议。

验证

在 Cursor 的终端中,执行 cd /tmp(或任意 Rust 项目之外的目录),输入一个 Rust 构建命令然后按下回车。在 zsh 上,缓冲区应原地变为 PRECC 重写后的形式(通常是 cd PATH && … 风格的前置)。在 bash 上,你应该会在 stderr 上看到一行 [precc] suggested rewrite: …

注意事项

  • 会引入 precc-hook 的每次按键延迟。钩子的目标是 p50 < 5 ms,但在冷缓存下 p99 会更高;请参阅本书中关于钩子延迟的说明。
  • 此路径不上报遥测。钩子会以它检测到的任何 agent_class 上报,但那不会是 claude-code——你在 Cursor 上节省的部分不会出现在公开统计页面上。
  • 重写原因会通过 zle -M 闪现一次按键时长。安静而非模态。
  • 要覆盖智能体场景,下一步计划是引入 PATH 垫片(在 ~/.precc/bin/cargo~/.precc/bin/git、…… 处放置包装器)。