by Edwardxlai
把英文论文读成舒服的中文:本地 PDF 论文翻译、原文对照、边读边问 AI、文献管理。Read English papers in comfortable Chinese.
# Add to your Claude Code skills
git clone https://github.com/Edwardxlai/easyreadLast scanned: 10/2/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-10-02T10:20:09.293Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how easyread compares with popular alternatives.
easyread is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Edwardxlai. 把英文论文读成舒服的中文:本地 PDF 论文翻译、原文对照、边读边问 AI、文献管理。Read English papers in comfortable Chinese. It has 897 GitHub stars.
Yes. easyread passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/Edwardxlai/easyread" and add it to your Claude Code skills directory (see the Installation section above).
easyread is primarily written in Python. It is open-source under Edwardxlai on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh easyread against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
| 引擎 | 要什么 | 说明 |
|---|---|---|
| Claude Code(推荐) | 装好并登录 Claude Code | 不用 Key,用你订阅的额度;会自己看原页图核对公式,译文最好 |
| Codex CLI | 装好并登录 Codex | 不用 Key,用 ChatGPT 账号 |
| Grok Build / Antigravity CLI / Cursor CLI | 装好并登录 Grok Build、Antigravity CLI 或 Cursor CLI | 不用 Key,用各自的订阅;模型名自己填,留空用它的默认 |
| API 接口 · 国内直连:DeepSeek / 智谱 / 阿里云百炼 / Kimi / 硅基流动 / 魔搭 | API Key | 智谱 GLM-4.7-Flash、硅基流动小模型免费;DeepSeek 一篇 20 页论文几毛钱 |
| API 接口 · 海外(要梯子):OpenAI / Anthropic / Gemini / OpenRouter / Groq / Cerebras | API Key | Gemini、OpenRouter、Groq、Cerebras 有免费额度 |
| API 接口 · 本机:Ollama / LM Studio | 本机装 Ollama 或 LM Studio | 完全离线、免费,推荐 qwen3.5:9b(显卡小用 4b) |
| API 接口 · 自定义地址:任意 OpenAI 兼容接口、中转站 | 地址 + Key | Chat Completions 和 Responses 两种格式都支持;点“获取模型列表”从接口拉模型名 |
不想让它导入后马上翻译,在设置里关掉“导入后自动开始翻译”就行,之后可以让对话里的 agent 来译。
设置里会自动检测本机装了什么,点“试译一句”马上知道能不能用。某一页翻译失败(限流、网络、额度)会自动重试,还不行就先跳过、接着译后面的页,最后一键“重试失败的页”。
最省事:下载安装包(不用装 Python)。在 Releases 下载:
EasyRead-Setup-x.x.x.exe,双击安装。没有代码签名,如果弹出“Windows 已保护你的电脑”,点“更多信息 → 仍要运行”。EasyRead-x.x.x-arm64.dmg,把 EasyRead 拖进“应用程序”;第一次打开被系统拦截时,按下面对应的提示处理EasyRead-x.x.x.AppImage,chmod +x 后运行。libfuse.so.2,可按 AppImage 官方说明配置 FUSE,或在独立目录运行 ./EasyRead-x.x.x.AppImage --appimage-extract,再运行 ./squashfs-root/AppRun;无需关闭沙箱论文和设置存在哪:Windows 安装版在安装目录下的 data 文件夹(装在 D 盘就在 D 盘,更新和卸载都会保留);macOS、Linux 在用户目录下的 EasyRead 文件夹(和 pip 安装版同一个位置)。卸载重装不会丢。
以后升级:Windows、macOS 安装版和直接打开的 Linux AppImage 都可以在程序里更新,有新版本时顶栏会提示(也可以在右上角问号里手动检查),点“更新”,可以放到后台下载,下好后点“更新并重启”。解压运行的 AppImage 和从源码运行的照旧从 Releases 下载新版。macOS 和 Linux 从 1.3.2 及以前升级时,要先手动下载 1.3.3 一次;macOS 要把 EasyRead 放在“应用程序”里才能在程序里更新。
提示“无法验证开发者”或“Apple 无法验证是否包含恶意软件”:先点“完成”(不要点“移到废纸篓”),打开“系统设置 → 隐私与安全性”,向下找到安全性提示,点“仍要打开”;在确认窗口点“打开”,按提示输入登录密码或使用 Touch ID
提示“已损坏,无法打开”:先从 EasyRead 官方 Releases 重新下载,并把应用拖进“应用程序”;文件也可能确实损坏或被改动,不能只凭这条提示判断原因。只有确认文件来自这个官方仓库、并信任该文件后,才在“终端”执行下面的命令,再重新打开 EasyRead;这条命令移除隔离属性,不会修复损坏的文件
xattr -dr com.apple.quarantine /Applications/EasyRead.app
为什么会出现验证提示:目前的 macOS 安装包用的是项目自己的自签名证书(为了应用内更新),不是 Apple 开发者证书,也没有经过公证,因此可能被系统拦截;代码完全开源,也可以从源码运行
如果系统提示“将损坏你的电脑”,或明确检测出恶意软件并要求移到废纸篓,请停止安装,不要用上面的步骤绕过;按 Apple 官方说明 处理
或者从源码运行:需要 Python 3.10+。
先从 Releases 下载最新版的 zip 解压(或者 git clone 本仓库)。
Windows:双击 start.cmd。第一次会自动装好环境(一分钟左右),之后双击直接打开。
macOS / Linux:在解压出来的目录里运行
./start.sh
这样启动的,浏览器里的 EasyRead 页面全部关掉后,后台服务过十几秒会自己退出;还有翻译在跑的话,等译完再退。
每次推送都会在 Windows、macOS、Linux 上自动装一遍、跑测试、启动一次(见上面的“测试”徽章)。
或者用 pip(数据放在 ~/EasyRead):
pip install git+https://github.com/Edwardxlai/easyread
easyread
浏览器会打开 http://127.0.0.1:8765。服务只监听本机。
桌面版复用同一套本地 Python 服务和 Web 界面,由 Electron 负责启动服务并显示窗口。开发环境需要 Node.js 22+、Python 3.10+ 和 PyInstaller:
npm install
python -m pip install pyinstaller
npm run dev
生成可分发安装包:
npm run dist
输出在 dist/electron/:Windows 为 NSIS 安装程序,macOS 为 DMG(另有一个给应用内更新用的 zip),Linux 为 AppImage。macOS 包由 scripts/mac_sign.cjs 用固定的自签名证书签名,证书从环境变量 MAC_SIGN_P12、MAC_SIGN_P12_PASSWORD 读(发版时来自仓库 Secrets);本机没设时退回临时签名,这样打出的包不能应用内更新。推送 v* 标签后,GitHub Actions 会在三个系统上构建,并把这些安装包自动附加到 GitHub Release;源码 zip 仍会由 GitHub 保留。打包后的文献库和设置:Windows 存在安装目录下的 data(安装目录写不进去时退回 ~/EasyRead),macOS、Linux 存在 ~/EasyRead。
Ctrl+V 也行)。长论文可以选“只译正文”,或者“指定页”只译第几页到第几页。导入时还能选这次用哪个模型;“导入后”选“读英文原文”就只排版、不翻译,想看中文了随时点“翻译成中文”。
整篇翻译默认超过 60 页时会先确认,可以选择全部翻译、只译前 60 页或先不译;上限在“设置 → 模型”里修改,填 0 表示不询问EasyRead 自带命令行,Claude Code / Codex 这类 agent 可以在对话里直接读你的笔记和问题、把回答写到对应段落旁边,也可以亲自翻译或重译某几页。技能说明在 skill/paper-reading/SKILL.md,把这个目录放进 ~/.claude/skills/ 或 ~/.codex/skills/ 即可。
想让 agent 把一篇论文讲透而不是只译出来——还原作者真实的思考起点、把关键公式落到能自己算的例子、再把结论的边界查一遍——用 skill/paper-xray/SKILL.md。它读的是同一份 library/<ID>/,谈出来的东西照样写成锚在段落旁的讨论条目。
easyread list # 列出文献库
easyread import 论文.pdf # 或 arXiv 编号 / 链接
easyread status ID # 进度、我改过的译文、笔记、待回答的问题
easyread discuss ID --from 回答.json # 把讨论写到页边
easyread export ID # 导出单文件离线 HTML
完整命令见 easyread --help,数据格式见 docs/data-format.md。
能翻译成中文以外的语言吗? 能,目前支持简体中文、繁体中文、英语、日语、韩语、西班牙语、法语、德语和意大利语。在“设置 → 阅读 → 论文译成”里修改默认语言,也可以在导入时单独选择;读德语、法语等非英语论文时也可以译成英语。不需要翻译时,可以直接读英文原文
翻译到一半失败了? 文献库里点这篇,右侧“翻译”一栏会写原因和失败的页,点“重试”。“翻译记录”里有每一批的详细情况;设置底部“运行日志”能看到服务本身的日志。
用 Claude Code 要挂梯子吗? 和你平时在终端里用 claude 一样:平时要,这里也要。不想折腾就在设置的“API 接口”里选智谱、硅基流动(都有免费模型)或本机 Ollama,国内直连。
Claude Code 额度用完了? 等额度恢复后点“重试”,或者在设置里临时换成 API / Ollama,已经译好的页不会重译。
数据存在哪? 默认保存在本机;在“设置 → 云文献库”里可以迁移到其他磁盘或网盘同步文件夹,上传和同步由你自己的网盘客户端完成。翻译和提问时,相关内容会发给你选择的模型。Windows 安装版在安装目录的 data\library\(1.3.1 及以前放在 ~/EasyRead,升级后第一次打开会自动搬过去);从源码运行时在项目目录的 library/;pip 安装后在 ~/EasyRead/library/。每篇论文一个文件夹,里面是原 PDF、原页图和几个 JSON(译文、你的笔记、AI 讨论、对话记录),设置和界面偏好在 config.json、prefs.json。可以直接备份或同步。为什么不用数据库见 docs/data-format.md。
能离线看、发给别人吗? 能。文献库里右键一篇论文 → “导出离线 HTML”,得到一个单文件网页(命令行是 easyread export ID)。对方不用装 EasyRead,双击用浏览器打开就能读:译文、公式、原页图、你的划线和笔记都在里面,也能切对照、开原页、接着划线。原页图是打包进去的,所以文件不小(27 页的论文约 10 MB)。在离线版里新做的划线和笔记只存在打开它的那个浏览器里;想并回文献库,在左侧“说明”里点“导出我的修改”得到一个 JSON,再运行 easyread merge ID --from 导出.json。
想放到网站上(比如 GitHub Pages),用 easyread demo ID --out 目录:图片另存成文件、按需加载,还会带上问 AI 的对话记录(只能看)。
没有前端构建:easyread/web/ 下是纯 HTML/CSS/JS,改完刷新即可。后端只用 Python 标准库加 PDF 处理库。
python -m unittest discover tests # 翻译调度等单元测试
node tests/e2e.cjs library/<论文ID> # 浏览器端到端测试(需要 Playwright 和一篇已译好的论文)
设计取舍见 docs/design.md,版本变化