CLAUDISH_*配置终极参考:claudish-to-english 20+环境变量逐一详解
【免费下载链接】claudish-to-english项目地址: https://gitcode.com/gh_mirrors/cl/claudish-to-english
claudish-to-english是一个 Claude Code 插件:它调用本地大模型(ollama,默认)或 Anthropic / OpenAI 兼容 API,把每条 Claude 回复改写成通俗易懂的"白话文"给你看。所有行为——用哪个模型、以什么样式显示、是否改写 Markdown 文件、何时悄悄罢工——都由CLAUDISH_*环境变量控制。本文把这23 个环境变量逐一讲透,从入门到排障,一篇就够了。
先弄懂:这个插件到底做什么?
📌 核心心智模型,只需要记住三点:
- 只改"你看到的":Claude 的推理过程和保存的记录仍是原文,只有屏幕上的展示被改写(fail-open 设计——模型挂了、超时、缺 key,你看到的就是原文,绝不会吞掉回答)。
- 两个钩子:rewrite.sh 负责"屏幕展示改写"(
MessageDisplay事件);rewrite-md.sh 负责"改写磁盘上的 Markdown 文件"(PostToolUse事件,默认关闭,需手动开启)。 - 配置全靠环境变量:所有设置都通过
CLAUDISH_*变量传入,核心默认值集中在 providers.sh 中。
⚠️ 重要原则:请设置
~/.claude/settings.json里的env块,而不要去改插件自带的 hooks/hooks.json——它在只读的插件缓存目录里,每次更新都会被覆盖。
正确配置 CLAUDISH_* 变量:3 种姿势
姿势 1:写入 settings.json(推荐,永久生效)
{ "env": { "CLAUDISH_MODEL": "gemma4:26b-mlx", "CLAUDISH_MODE": "append" } }作用域有 3 个文件,按需选择:
| 文件 | 作用范围 |
|---|---|
~/.claude/settings.json | 你的所有项目(个人配置) |
.claude/settings.json | 当前仓库,可提交、与团队共享 |
.claude/settings.local.json | 当前仓库,仅自己可见 |
姿势 2:启动时临时注入(一次性调试)
CLAUDISH_MODEL=llama3.2:3b claude钩子是 Claude Code 拉起的子进程,会直接继承启动 shell 的环境变量。
姿势 3:会话中紧急开关(不用重启)
touch ~/.claude/claudish-off # 立即暂停改写,下条消息生效 rm ~/.claude/claudish-off # 恢复环境变量在会话启动时就"冻结"了,而这个flag 文件每条消息都会重新检查,是唯一能中途开关的方式(路径可用CLAUDISH_OFF_FILE覆盖)。
23 个环境变量逐一详解
一、供应商与模型(9 个)——决定"谁来改写"
🔌 改写请求由 providers.sh 统一路由,三个供应商任选其一。
| 变量 | 默认值 | 一句话说明 |
|---|---|---|
CLAUDISH_PROVIDER | ollama | 选供应商:ollama(本地)/anthropic/openai(含任何 OpenAI 兼容端点) |
CLAUDISH_MODEL | 按供应商 | 模型名,优先级高于供应商默认值;ollama 默认gemma4:26b-mlx(仅 Apple 芯片),Windows 必须手动覆盖 |
CLAUDISH_OLLAMA | http://localhost:11434 | ollama 服务地址 |
CLAUDISH_ANTHROPIC_KEY | 未设置 | Anthropic API key;未设时回退读ANTHROPIC_API_KEY |
CLAUDISH_ANTHROPIC_URL | https://api.anthropic.com | 走代理/网关时改这里 |
CLAUDISH_OPENAI_KEY | 未设置 | OpenAI(-兼容) key;未设时回退OPENAI_API_KEY,仅连 api.openai.com 时才需要 |
CLAUDISH_OPENAI_URL | https://api.openai.com/v1 | 指向 LM Studio、llama.cpp、vLLM、OpenRouter 等任意兼容端点 |
CLAUDISH_OPENAI_EFFORT | api.openai.com 上为none | 控制reasoning_effort字段;显式设为空可彻底省略该字段(给拒绝此字段的模型用) |
CLAUDISH_MAX_TOKENS | 4096 | anthropic 供应商的输出上限;撞上限的改写会被整体丢弃(fail-open),会收到一次提示,建议调大 |
💡隐私提醒:切到云供应商是"知情同意开关"——openai/anthropic模式下每条助手消息(开启 Markdown 钩子后还包括文件内容)都会发往外部 API。插件会回退读取环境里现成的OPENAI_API_KEY/ANTHROPIC_API_KEY,想隔离请专门配CLAUDISH_*_KEY。
二、展示样式(2 个)——决定"怎么给你看"
🎨 只影响屏幕展示钩子 rewrite.sh。
| 变量 | 默认值 | 说明 |
|---|---|---|
CLAUDISH_MODE | append | append:原文照常流式显示,末尾追加💬 In plain English:白话块(最安全);replace:只展示改写版,原文被抑制(实验性,失败时回显原文) |
CLAUDISH_PROMPT_FILE | 未设置 | 指向一个文本文件,整体替换展示钩子的系统提示词。文件为空/不可读时自动回退内置默认,坏路径不会导致罢工 |
注意提示词文件是"替换"而非"合并":不想要的默认规则(保留事实、代码块不动、只输出改写结果)都要自己重写进去。
三、Markdown 文件改写(5 个)——决定"要不要改文件"
📄 由 rewrite-md.sh 读取,不设置CLAUDISH_MD_DIR时整个钩子什么都不做。
| 变量 | 默认值 | 说明 |
|---|---|---|
CLAUDISH_MD_DIR | 未设置 | 开启开关。只有该目录内的*.md会被改写,其余文档一律不碰(路径请用正斜杠,如C:/dev/docs/plain) |
CLAUDISH_MD_MODE | sibling | sibling:在旁边生成NAME.plain.md,原文件纹丝不动;overwrite:原地覆盖,并写入幂等标记防止重复改写(弱模型可能"改坏"正式文档,慎用) |
CLAUDISH_MD_SUFFIX | plain | sibling 模式的中缀名:NAME.<后缀>.md |
CLAUDISH_MD_TIMEOUT | 150 | 文件钩子的 LLM 超时(秒)。故意设得比展示钩子长——大模型改长文档可能要一两分钟;需保持在钩子总预算 180s 之内 |
CLAUDISH_MD_PROMPT_FILE | 未设置 | 文件钩子的自定义提示词,语义同CLAUDISH_PROMPT_FILE |
两种模式下,YAML frontmatter 都会被原样剥离再拼回(frontmatter 保持在第 1 行),代码块由模型指令保护,短文件直接跳过,写入是原子操作。
四、行为控制(4 个)——决定"何时改写"
⚙️ 两个钩子共享的总闸,读取逻辑见 rewrite.sh。
| 变量 | 默认值 | 说明 |
|---|---|---|
CLAUDISH_ENABLED | 1 | 总开关,0= 原样放行一切。会话启动时读取一次,下次会话才生效 |
CLAUDISH_OFF_FILE | ~/.claude/claudish-off | 运行时急停开关文件,存在即暂停;每条消息实时检查 |
CLAUDISH_MIN_CHARS | 200 | 正文(去掉代码后)短于该字符数的消息/文件直接跳过 |
CLAUDISH_TIMEOUT | 45 | 展示钩子的 LLM 超时(秒),需小于钩子总预算 60s(见 hooks/hooks.json) |
五、排障与杂项(3 个)——出问题时救你
🔍
| 变量 | 默认值 | 说明 |
|---|---|---|
CLAUDISH_DEBUG | 0 | 1= 在$TMPDIR/claudish-to-english/debug.log写调试日志(Windows 上通常在AppData\Local\Temp\claudish-to-english\) |
CLAUDISH_NOTICE | 1 | 改写被跳过(供应商不可达 / 超时 / 缺 key / 模型未拉取)时,每会话提示一次原因;0= 完全静默 |
CLAUDISH_STUB | 0 | 1= 用确定性桩替代真实模型调用,专测展示机制 |
23 个变量速查总表
| # | 变量 | 默认值 | 作用 |
|---|---|---|---|
| 1 | CLAUDISH_ENABLED | 1 | 总开关 |
| 2 | CLAUDISH_OFF_FILE | ~/.claude/claudish-off | 会话中急停文件 |
| 3 | CLAUDISH_MODE | append | 展示模式:追加 / 替换 |
| 4 | CLAUDISH_PROMPT_FILE | 未设置 | 自定义展示提示词 |
| 5 | CLAUDISH_PROVIDER | ollama | 供应商选择 |
| 6 | CLAUDISH_MODEL | 按供应商 | 模型名覆盖 |
| 7 | CLAUDISH_OLLAMA | http://localhost:11434 | ollama 地址 |
| 8 | CLAUDISH_ANTHROPIC_KEY | 未设置 | Anthropic key |
| 9 | CLAUDISH_ANTHROPIC_URL | https://api.anthropic.com | Anthropic 端点 |
| 10 | CLAUDISH_OPENAI_KEY | 未设置 | OpenAI(-兼容) key |
| 11 | CLAUDISH_OPENAI_URL | https://api.openai.com/v1 | OpenAI(-兼容) 端点 |
| 12 | CLAUDISH_OPENAI_EFFORT | 条件默认 | reasoning_effort控制 |
| 13 | CLAUDISH_MAX_TOKENS | 4096 | 输出 token 上限 |
| 14 | CLAUDISH_MIN_CHARS | 200 | 最短正文门槛 |
| 15 | CLAUDISH_STUB | 0 | 测试桩模式 |
| 16 | CLAUDISH_TIMEOUT | 45 | 展示钩子 LLM 超时 |
| 17 | CLAUDISH_MD_TIMEOUT | 150 | 文件钩子 LLM 超时 |
| 18 | CLAUDISH_DEBUG | 0 | 调试日志 |
| 19 | CLAUDISH_NOTICE | 1 | 跳过提示开关 |
| 20 | CLAUDISH_MD_DIR | 未设置 | 文件改写开启开关 |
| 21 | CLAUDISH_MD_MODE | sibling | 并排 / 覆盖 |
| 22 | CLAUDISH_MD_SUFFIX | plain | 并排文件后缀 |
| 23 | CLAUDISH_MD_PROMPT_FILE | 未设置 | 文件钩子提示词 |
3 个最常见的配置坑
- Windows 不覆盖
CLAUDISH_MODEL会静默失败——默认模型gemma4:26b-mlx是 Apple 芯片专用,Windows 下每次改写都被跳过(每会话提示一次)。请设为普通 tag,如gemma4:26b。 env块不跨作用域合并——最高优先级的 settings 文件定义了env,就整个用它,不与低优先级叠加。把所有CLAUDISH_*放在同一份生效的文件里。- 改了
env要重启 Claude Code——值在启动时捕获,运行中的会话继续用旧值;想立刻生效用claudish-off文件。
写在最后
23 个变量虽多,但 90% 的用户只需要动 3 个:CLAUDISH_MODEL(换模型)、CLAUDISH_MODE(换样式)、CLAUDISH_MD_DIR(开文件改写)。其余默认值都经过精心设计,保持"一切失败都放行原文"的安全底线。完整行为说明可查阅 README.md,每个变量的版本沿革见 CHANGELOG.md。
【免费下载链接】claudish-to-english项目地址: https://gitcode.com/gh_mirrors/cl/claudish-to-english
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考