Baidu File Translate
/install baidu-file-translate
baidu-file-translate — Agent Reference
File translation is async. Always use the submit → poll loop below.
Never rely on --wait without a timeout — it may block indefinitely in an
Agent framework.
Step 1: trans file submit \x3Cfile> --from auto --to en --json
→ exit ≠ 0 → handle by error code (see Error Handling)
→ exit 0 → record request_id from stdout
Step 2: every 5 s: trans file query \x3Crequest_id> --json
→ exit ≠ 0 → handle error; DOC_FAILED = don't retry
→ exit 0, status=processing → keep polling
→ exit 0, status=done → use file_url, or re-run with --download
Set an Agent-level timeout (e.g. 10 min). On WAIT_TIMEOUT, save the request_id — the job is still running and can be resumed later.
trans file submit \x3Cfile>
trans file submit report.pdf --from zh --to en --json
trans file submit report.pdf --to en --reference "Use academic tone"
| Flag | Default | Description |
|---|---|---|
--from |
auto | Source language (auto-detect) |
--to |
zh | Target language — auto is not accepted |
--reference |
— | Custom translation instruction, ≤ 1000 Unicode code points |
--trans-image |
false | Also translate text inside images |
--wait |
false | Block until done (always pair with --wait-timeout) |
--wait-timeout |
0 (no limit) | Max wait time for --wait mode |
trans file query \x3CrequestId>
trans file query REQ123 --json
trans file query REQ123 --download --output ./output/
| Flag | Default | Description |
|---|---|---|
--download |
false | Download the translated file when done |
--output |
./ | Download directory (used with --download) |
--wait |
false | Block until done |
--wait-timeout |
0 (no limit) | Max wait time for --wait mode |
JSON Contract
submit success (stdout):
{"request_id": "REQ123", "status": "submitted"}
query — in progress (stdout):
{"request_id": "REQ123", "status": "processing", "name": "report.pdf", "from": "zh", "to": "en"}
query — done (stdout):
{"request_id": "REQ123", "status": "done", "file_url": "https://...", "char_count": 1000, "amount": 70}
With --download, the done response gains:
{"local_path": "/absolute/path/to/report_en.pdf"}
error (stderr, exit ≠ 0):
{"code": "AUTH_FAILED", "message": "...", "help_url": "https://fanyi-api.baidu.com/manage/apiKey"}
help_url is omitted when not applicable.
Error Handling
exit ≠ 0
├── CONFIG_MISSING (exit 2) → guide user to set TRANS_API_KEY
├── AUTH_FAILED (exit 2) → key invalid/expired; check fanyi-api.baidu.com/manage/apiKey
├── QUOTA_EXCEEDED (exit 3) → balance exhausted; recharge, then retry
├── RATE_LIMITED (exit 3) → back off 30 s, then retry
├── NETWORK_ERROR (exit 4) → check connectivity, retry
├── DOC_FAILED (exit 3) → server-side failure; do NOT retry
├── INVALID_INPUT (exit 1) → fix file path / format / --to value
└── WAIT_TIMEOUT (exit 1) → job still running; save request_id and resume later
stderr carries errors only — there are no progress events on stderr.
Supported Formats
docx / doc / pdf / xlsx / xls / pptx / ppt / html / htm / txt / xml / md
file_url expires after 30 days.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install baidu-file-translate - 安装完成后,直接呼叫该 Skill 的名称或使用
/baidu-file-translate触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Baidu File Translate 是什么?
Use this skill for file translation with trans-cli (Baidu LLM File Translation API). Covers the submit → poll → download async workflow, requestId lifecycle,... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 49 次。
如何安装 Baidu File Translate?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install baidu-file-translate」即可一键安装,无需额外配置。
Baidu File Translate 是免费的吗?
是的,Baidu File Translate 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Baidu File Translate 支持哪些平台?
Baidu File Translate 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Baidu File Translate?
由 baidu-translate(@baidu-translate)开发并维护,当前版本 v1.0.0。