openkoto
让真实内容成为外语课本,AI驱动沉浸式语言学习,支持PDF/EPUB/视频字幕
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
让真实内容成为外语课本,AI驱动沉浸式语言学习,支持PDF/EPUB/视频字幕
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:你在追一部心仪的日语生肉番剧,或者读到一篇原汁原味的英语新闻——生词密密麻麻,语法结构陌生,查词典打断思路,停下来又心痒难耐。传统语言学习 App 给你安排了固定课程,但你的兴趣偏偏在别处。
OpenKoto Desktop 解决的就是这个痛点:它不让你去适应 App,而是让 App 适应你。你可以在任何感兴趣的内容上叠加 AI 学习辅助——新闻、小说、歌词、PDF 文档,甚至是视频字幕——工具会自动识别生词、解析语法、生成上下文释义,让你边读边学,真正把语言能力用在刀刃上。

图1:OpenKoto 主界面,支持多格式内容导入与沉浸式阅读
本项目由开发者 hikariming 创建,原名 TextLingo(文字语言),2025 年正式更名为 OpenKoto——Open 延续开源精神,Koto(日语「こと」,意为"话语/语言")点明产品的语言学习本质。更名背后折射出团队野心的扩展:不再只是一款翻译工具,而是一个围绕真实内容进行沉浸式语言学习的完整平台。
项目采用 Apache 2.0 开源许可证,支持 Mac、Windows、Linux 三平台。截至 2026 年 6 月,项目累计获得 387 Stars,最新版本 v0.6.16 于 2026 年 6 月 23 日发布,重点更新了基于 Whisper 的字幕提取功能(ASR),支持 word-level 时间戳,显著提升了自动字幕的准确率。
OpenKoto 采用了三层架构,这是它区别于大多数 Web 版语言学习工具的根本原因:
前端层(React 19 + TypeScript):使用 React 19 最新特性构建 UI,配合 Tailwind CSS 进行样式管理,通过 Radix UI 组件库保证无障碍可访问性。UI 框架同时引入了 shadcn/ui 的设计理念,提供现代化、一致性的交互体验。值得注意的是,项目前端完全运行在 Tauri 的 WebView 中,而非传统浏览器标签页——这意味着它拥有原生窗口的所有能力(系统托盘、系统通知、文件访问),同时保持 Web 开发的效率。
核心计算层(Rust + Tauri v2):Rust 后端处理所有重量级操作,包括文章解析(基于 scraper + readability 库实现网页内容提取)、PDF 渲染(集成 pdfjs-dist)、EPUB 阅读器(集成 epubjs),以及文件压缩(zip 库)。Rust 的零成本抽象确保了这些操作在桌面端的高性能。Tauri v2 提供了原生 IPC 通道,前端通过 @tauri-apps/api 与 Rust 后端通信,同时支持系统对话框(tauri-plugin-dialog)和外部链接打开(tauri-plugin-opener)。
AI 集成层(ai-sdk + 多 Provider 支持):前端通过 @ai-sdk/openai(OpenAI SDK 的前端版本)直接对接 LLM API,支持 OpenAI、DeepSeek、Google Gemini、OpenRouter 等多个 Provider。用户只需配置自己的 API Key,数据直接从本地机器发送到 AI 提供商——中间没有任何自建服务器中转,隐私完全由用户掌控。AI 功能包括:逐句翻译与解释、词汇与语法深度分析、文章摘要与要点提取。
开发工作流(agent-worker 子项目):项目中包含一个独立的 agent-worker 子目录,基于 TypeScript + AI SDK 构建,很可能用于自动化内容处理(如批量导入、LLM 驱动的预分析等),体现了项目对 AI First 工作流的探索。
多格式内容导入:OpenKoto 支持网页 URL 导入(自动提取正文)、PDF 文件、EPUB 电子书、TXT 纯文本、DOCX Word 文档等多种格式DEV。导入后,工具利用 Rust 的 scraper 和 readability 库提取干净的文章内容,去除广告和导航元素,呈现纯净阅读体验。
沉浸式阅读与即时查词:阅读模式下,用户点击任意单词或句子即可触发 AI 解释。解释内容包括:单词的多个中文/目标语言释义、例句(在原文上下文中生成的)、语法解析、近义词推荐。这一流程让阅读不再是「查词典→忘上下文→继续读→再查」的碎片化体验。
AI 字幕提取(v0.6.16 新功能):最新版本引入 Whisper ASR 驱动的字幕提取,支持 word-level 时间戳,可以将视频或音频内容转写为带时间轴的字幕文件。这个功能让用户可以用 OpenKoto 观看生肉视频——边看边学,听力阅读两不误。
多语言 i18n:项目前端内置完整的 i18n 支持(i18next + react-i18next),仓库 README 提供了中文、英文、日文三个版本,界面语言可动态切换,适合全球用户。
对于普通用户,官方在 GitHub Releases 提供了完整安装包,覆盖三大平台:
.exe 安装程序(x64)+ .msi 企业部署格式.dmg 磁盘镜像(x64 + aarch64 Apple Silicon 双架构).app.tar.gz 便携包下载对应安装包后,双击运行,全程无需命令行操作,10 分钟内可完成安装并启动。
对于开发者,从源码构建需要准备 Rust(rustup)、Node.js >= 18、Git 以及 Python 包管理器 uv(用于管理 agent-worker 依赖)。项目提供了 dev.sh 脚本辅助环境检查和启动,但仍需手动安装依赖——对非 Rust 开发者有一定门槛。
重要局限:OpenKoto 不提供 Docker 支持,无法通过容器化方式部署。对于希望在服务器上运行或需要批量部署的用户,目前只能通过源码编译,工作量较大。

图2:项目作者 Hikari Ming,专注开发语言学习工具
项目在代码质量上表现出较高的工程标准:
前端测试:使用 Vitest 作为测试框架(vitest + @vitest/coverage-v8),配合 @testing-library/react 进行组件测试,@testing-library/user-event 模拟真实用户交互,jsdom 提供浏览器环境模拟。测试覆盖命令 npm run coverage 可生成 V8 基准覆盖率报告。
E2E 测试:集成 Playwright(@playwright/test),在 e2e/ 目录下维护端到端测试用例,playwright.config.ts 统一配置浏览器和超时策略。
TypeScript 严格模式:tsconfig.json 启用 strict 模式,npm run typecheck 执行全量类型检查,保证类型安全。
Tailwind CSS v4:使用 Tailwind v4 最新版本,配合 @tailwindcss/postcss PostCSS 插件,构建优化后的生产样式。
依赖管理:使用 Vite 7 作为构建工具(vite + @vitejs/plugin-react),vite-plugin-static-copy 处理静态资源复制,构建效率较高。
OpenKoto 在隐私设计上下了功夫:用户数据(API Key、阅读历史、收藏文章)全部存储在本地(macOS: ~/Library/Application Support/,Windows: %APPDATA%,Linux: ~/.config/),不经过任何第三方服务器。API Key 通过 Rust 的 keyring 库安全存储(依赖系统密钥链,macOS Keychain / Windows Credential Manager / Linux libsecret),而非明文配置文件。
这一「本地优先」策略在语言学习类工具中相对少见——对比 Duolingo、Language Reactor 等云端方案,OpenKoto 的隐私优势非常明显,适合对数据主权有要求的专业用户。
尽管功能完善,OpenKoto 仍面临一些挑战:
1. 依赖用户自备 API Key:工具本身免费,但需要用户自行在 OpenAI/DeepSeek/Gemini 等平台付费购买 API 配额。对零基础用户而言,仍存在配置门槛。
2. 缺少内置 AI 模型:无法离线使用(除非用户自建本地 LLM),在没有网络或 API Key 的环境下只能做基础的 PDF 阅读。
3. 视频字幕功能新上线:Whisper ASR 字幕提取在 v0.6.16 首次发布,实际效果和稳定性有待社区验证。
4. 文档不够完善:项目 README 较为详细,但 API 文档、插件开发文档等开发者资源仍显不足。
OpenKoto 的出现填补了语言学习领域的一个关键空白:如何让真实内容成为学习素材,而不是让学习素材限制你的阅读选择。
从产品定位看,它对标的是 Language Reactor(Chrome 插件,专注视频双语字幕)和 Duolingo(游戏化课程),但 OpenKoto 的优势在于全格式支持(PDF/EPUB/网页/歌词)、完全本地化、AI 深度解释,以及完全开源透明——没有任何平台锁定风险。
从技术选型看,Tauri v2 + React 19 + Rust 的组合在 2024-2025 年间迅速成为跨平台桌面应用的主流方案,OpenKoto 堪称这一技术栈在语言学习垂直领域的典型应用案例,对于想学习 Tauri 开发的开发者也有较高的参考价值。
随着 v0.6.16 引入 Whisper 字幕提取,OpenKoto 的野心已经延伸到听力和口语训练场景。如果未来版本支持语音识别对比(用户跟读 → AI 评分),它有望成为一个真正意义上的「全能语言学习工作站」。