Skip to content

FAQ

yaku (訳, Japanese for “translation”) is a CLI tool that translates text, files, and developer artifacts from your terminal. It reads from stdin, files, or arguments and writes translated text to stdout — like jq or sed, but for natural language.

How is yaku different from other translation tools?

Section titled “How is yaku different from other translation tools?”

See Why yaku? for a detailed comparison with Google Translate, general-purpose AI CLIs (llm, sgpt, aichat), and Translate Shell.

The CLI is open source (MIT license) and free to use with your own API key. The hosted service at api.yakulang.com works with no setup and includes a free tier. See Hosted Service & Plans for tier details and quota limits.

Four backends:

BackendDefault modelHow to use
Hosted (api.yakulang.com)Server-sideDefault — works with no setup
Google Geminigemini-2.5-flashyaku config set backend gemini
OpenAIgpt-4o-miniyaku config set backend openai
Anthropicclaude-haiku-4-5-20251001yaku config set backend anthropic

The OpenAI backend also works with any OpenAI-compatible API (Groq, Together.ai, DeepSeek, Ollama). See Backends.

Any language your chosen LLM backend can translate. yaku does not maintain a hardcoded language list — it passes the language code directly to the model. See Languages.

Local backends (Gemini, OpenAI, Anthropic): yaku sends your text directly to the LLM API and returns the result. Nothing is stored by yaku. Review your LLM provider’s privacy policy for their data handling.

Hosted backend: your text is sent to api.yakulang.com for translation. The hosted service does not persist your text after the response is returned.

Yes, with a local model via the OpenAI-compatible backend. For example, with Ollama:

Terminal window
yaku --backend openai \
--api-base http://localhost:11434/v1 \
--model llama3 \
--to en "Bonjour"

See Backends — OpenAI-compatible providers.

Use a glossary file. Create .yaku-glossary.yaml in your project root:

zh-TW:
Kubernetes: ~ # keep in English
container: 容器 # always translate to this

yaku auto-loads it and injects the terms into every translation prompt.

Yes, with local backends. The --prompt flag replaces yaku’s built-in system prompt entirely:

Terminal window
yaku --to en --prompt my-prompt.txt -f docs.ja.md

Custom prompts only work with local backends (Gemini, OpenAI, Anthropic). The hosted backend uses server-side prompts and ignores --prompt. See Custom Prompts.

Open an issue with your yaku version (yaku version), the command you ran, and the error message.