如何调教专属白话翻译官:用CLAUDISH_PROMPT_FILE定制claudish-to-english改写提示词
【免费下载链接】claudish-to-english项目地址: https://gitcode.com/gh_mirrors/cl/claudish-to-english
claudish-to-english 是一款 Claude Code 插件,它借助本地大模型(默认 ollama)把 Claude 的每一条回复自动改写成通俗易懂的白话文,只改屏幕显示、不动原始回答。而真正让它可以"听你指挥"的,就是CLAUDISH_PROMPT_FILE这一个变量——今天我们就来手把手教你定制改写提示词,把默认翻译官调教成符合你口味的专属白话翻译官。
先搞懂:默认提示词是怎么工作的?
插件的每个钩子都内置了一段"系统提示词",用来告诉改写模型该怎么做。以显示钩子为例,它的默认提示词大意是:
把助手消息改写成更简单的白话英文;保留所有事实、名字、数字和文件路径;用短句和日常用词;不改围栏代码块;只输出改写结果,不加任何前言和标签。
这段文字硬编码在 rewrite.sh 中。问题在于:它是固定的。如果你希望改写成中文、语气更口语、或者按特定风格输出,就得把提示词换成自己的——这正是CLAUDISH_PROMPT_FILE的作用。
两个钩子,两个变量
| 钩子 | 作用 | 对应的提示词文件变量 |
|---|---|---|
| 显示钩子 rewrite.sh | 把屏幕上的回复改成白话 | CLAUDISH_PROMPT_FILE |
| Markdown 钩子 rewrite-md.sh | 改写.md文件正文 | CLAUDISH_MD_PROMPT_FILE |
变量指向一个普通文本文件,文件的全部内容会整体替换内置提示词。
三步完成提示词定制:最快配置方法
第 1 步:写一个提示词文件
新建一个文本文件(比如prompts/plain.txt),写下你想让模型遵守的全部规则。提示词要完整自包含,因为它会整体替换默认值,而不是追加。一个想输出中文的示例(节选):
把助手消息改写成通顺的中文白话: - 保留所有事实、名字、数字和文件路径 - 用短句和日常用词 - 围栏代码块原样保留 - 只输出改写结果,不加任何前言和标签第 2 步:在 settings.json 的 env 块中配置
在~/.claude/settings.json(个人全部项目生效)中添加:
{ "env": { "CLAUDISH_PROMPT_FILE": "/ABS/PATH/prompts/plain.txt" } }⚠️ 注意两点:
- 路径要用绝对路径;
- 不要直接改插件自带的 hooks/hooks.json——它位于只读插件缓存中,每次更新都会被覆盖。所有配置都应走 settings.json 的
env块(作用域:~/.claude/settings.json个人级 >.claude/settings.json项目级 >.claude/settings.local.json本地级,env块不跨作用域合并)。
第 3 步:重启 Claude Code
env的值是在启动时捕获的,改完配置必须重启 Claude Code才生效。启动后让 Claude 说点长内容,屏幕下方就会出现按你提示词改写后的白话块。
提示词写作指南:5 个实用技巧
写全规则,别偷懒。因为是整体替换,你漏写的默认规则(保留事实、不改代码块)就没了。建议先参考 rewrite.md 提示词 的完整措辞,再按自己需求增删。
想改中文输出?直接下令。提示词里明确写"改写成中文",模型就会输出中文白话——这是新手最常见也最实用的定制场景。
显示钩子会自动附加用户提问。无论你的提示词怎么写,显示钩子都会把原始用户问题(截断到 800 字符)追加为上下文,帮助改写保持切题(见 rewrite.sh)。所以你的提示词只需替换基础指令,不必自己处理上下文。
保住"只输出改写结果"这条底线。加一句"输出 ONLY 改写内容,不加前言、标签或评论",避免模型输出多余解释污染屏幕。
Markdown 钩子要单独照顾结构。如果同时启用文件改写,
CLAUDISH_MD_PROMPT_FILE里要额外强调:保持标题、列表、表格、链接等 Markdown 结构,不改围栏代码和 YAML frontmatter(参考 rewrite-md.sh)。
💡 小提示:把提示词放进独立文件还有个附带好处——长段落、多行内容不用再折腾 JSON 转义。
安全兜底:配置错了也不会"翻车"
claudish-to-english 的核心设计是fail-open(失败即放行),调教提示词时完全可以放心试错:
- 路径不存在 / 文件为空 / 读不到→ 自动回退到内置默认提示词,改写照常进行(逻辑见 rewrite.sh);
- 模型挂了、超时、缺依赖→ 屏幕上原样显示 Claude 的原始文本,绝不会被"吞掉"答案;
- 想确认钩子是否生效→ 设置
CLAUDISH_DEBUG=1,查看$TMPDIR/claudish-to-english/debug.log,回退到默认提示词时日志里也会明确记录原因。
常见问题速查
Q:改完提示词没生效?先确认三件事:路径是绝对路径且文件可读、配置写在正确的 settings.json 作用域里、改完env后重启了 Claude Code。
Q:提示词文件是整段替换还是增量合并?整段替换(whole prompt, not merged)。文件内容 = 你看到的完整系统提示词。
Q:显示钩子和 Markdown 钩子可以共用一个提示词文件吗?技术上可以,但两者的改写对象不同(屏幕消息 vs 文件正文),建议分文件维护,互不干扰。
Q:想临时停掉改写?运行touch ~/.claude/claudish-off即可即时暂停(每条消息都会重新检查该文件),删除该文件恢复。
完整的环境变量列表(CLAUDISH_MODEL、CLAUDISH_PROVIDER、CLAUDISH_MODE等)见 README.md 的 Configuration 一节;提示词定制功能自 0.3.0 版本加入,变更记录在 CHANGELOG.md。改写调用细节可进一步参考 providers.sh 的注释。
现在,打开你的文本编辑器,写出第一段"白话翻译官"的岗位说明书吧 📝
【免费下载链接】claudish-to-english项目地址: https://gitcode.com/gh_mirrors/cl/claudish-to-english
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考