Claudian Thinking Translator

approvedunreviewed

by chengmiaofan

Translate Claudian's thinking into Chinese as it streams, only when you expand a block.

Updated todayMIT

Claudian Thinking Translator

Translate Claudian's thinking into Chinese as it streams, only when you expand a block.

  • 默认只显示译文,点一下切回原文
  • 只在展开思考块时翻译,折叠状态零请求
  • 默认走免费机翻(Google),不需要任何密钥
  • 以旁挂 DOM 的方式工作:不改 Claudian 一行代码

亮色

Not affiliated with Claudian or Obsidian. This is an independent plugin. It reads the thinking blocks that Claudian renders in the chat view and adds a translation next to them. It contains no Claudian source code and needs Claudian installed to be useful.

Requirements

  • Obsidian desktop (uses Node APIs, so isDesktopOnly is set)
  • Claudian installed and enabled — this plugin has nothing to translate without it

Install

git clone https://github.com/serena-sheng/claudian-thinking-translator
cp main.js manifest.json styles.css \
  "$YOUR_VAULT/.obsidian/plugins/claudian-thinking-translator/"

Then enable Claudian Thinking Translator in Settings → Community plugins.

install.sh syncs the files into a vault for you:

VAULT="/path/to/vault" ./install.sh

Usage

Expand a thinking block and a single caption row appears:

SituationWhat you see
Translating正在译成中文, original still readable
Translatedonly ⇄ 看原文; original hidden
Content already Chinesenothing, no request
All engines failed没能译成中文 + 重试

Commands in the command palette:

  • 切换思考翻译开关
  • 测试翻译接口

Network use

Translation is the only reason this plugin talks to the network. Nothing is sent while a thinking block stays collapsed.

EngineEndpointWhat is sent
Google (default, free)clients5.google.com, translate.googleapis.comThe text of the thinking block being translated
MyMemory (fallback, free)api.mymemory.translated.netSame, if both Google endpoints fail
DeepSeek (optional, paid)api.deepseek.comSame, plus a short system prompt
  • No telemetry, no analytics, no ads, no self-update.
  • Translations are not written to disk; the API key is cached in memory for 30 minutes.
  • Turn the feature off entirely with the 启用 toggle, or switch engines in settings.
  • If a block contains material you must not send to a third party, collapse it before reading, or disable the plugin.

Settings

SettingDefaultPurpose
启用onOff = no scanning, no requests
翻译引擎免费机翻or DeepSeek (needs a key from 1Password)
最小翻译长度120wait for this many characters before cutting a segment
每段目标长度420larger = fewer requests, slower first output
静默合并时间1800 msflush the tail after this much silence
术语白名单vault skill token …keep these words in English
加载时翻译已展开的块offalso only translates blocks currently in view

Design docs

  • Spec and contract: docs/spec.md
  • Evidence ledger: docs/evidence.md
  • Changelog: CHANGELOG.md

Known limitations

  • Machine translation quality: expect the occasional awkward rendering. Switch to DeepSeek when accuracy matters.
  • Depends on Claudian's DOM contract (.claudian-thinking-block / .claudian-thinking-content). If upstream changes its markup, this plugin silently stops working.
  • Desktop only.

License

MIT

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.