opencode-translateOpenCode plugin that lets the user chat in a configured language while the main chat loop only sees English.
5
331
56 in 7 days
39.0
Multi-signal model
1 month ago
2026-06-24
Install and configure
opencode.jsonWrites to this project's opencode.json — applies to this repository only.
opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-translate@1.0.5"]
}Writes to ~/.config/opencode/opencode.json — applies to every project.
~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["opencode-translate@1.0.5"]
}If you want to modify the plugin locally, install it into the project and reference the local path.
shell
pnpm add -D opencode-translateopencode loads npm dependencies through its embedded runtime on startup and caches them locally — no manual global install needed.
Use opencode in your native language. LLM always hears English.
Demo

Why
LLMs are worse in non-English. Benchmarks confirm it on every frontier model.
- Claude Opus 4.7 / GPT-5.5 / Gemini 3.1 Pro: identical coding tasks scored 5/5 in English but dropped to 0–1/5 in Arabic and Korean (LILT, 2025).
- Anthropic's own numbers: Japanese 96.9%, Korean 96.6%, Yoruba 80.3% — English is always the baseline (Anthropic docs).
- Token tax: Korean ~1.25×, Japanese ~1.25×, Arabic ~3× more tokens per equivalent content. Higher cost, smaller effective context.
This plugin lets you write in your language while the model works in English — best of both worlds.
Full research write-up: docs/why.en.md
Install
bun add -g opencode-translate
Setup
Add to ~/.config/opencode/opencode.jsonc:
{
"plugin": [
["opencode-translate", {
"model": "openai/gpt-5.4-mini", // model to use for translation
"variant": "minimal", // optional model variant / thinking effort
"lang": "Korean" // language you speak
}]
]
}
Usage
Prefix any message with $en to activate translation for that session.
$en 프로젝트 루트의 package.json을 읽고 요약해줘
All subsequent messages in the same session are translated automatically — no need to repeat $en.
Options
| Option | Type | Default | Description |
|---|---|---|---|
model |
string | required | Translator model in provider/model-id form |
variant |
string | optional | Translator model variant / thinking effort (for example, "minimal", "high", or "max") |
lang |
string | required | Language you speak (e.g. "Korean", "Japanese") |
trigger |
string[] | ["$en"] |
Keywords that activate translation |
verbose |
boolean | false |
Print translation logs |