PenEcho 是一个面向“画布式 AI 思考”的开源 Web/Node.js 工具。它不再要求用户把问题完全输入到聊天框,而是允许在浏览器中的大画布上手写公式、草图、流程图、几何图形或零散想法,然后由 AI 读取局部画布截图和空间关系,在旁边生成可编辑的答案、解释、公式、图示或排版结果。项目基于 JavaScript/Node.js,提供 npm 全局安装和本地服务运行方式,支持 OpenAI 兼容 API、Anthropic/Claude API、Codex CLI、Claude Code CLI 等多种执行后端。当前 Star 约 382,采用 AGPL-3.0 许可证,更适合个人学习、教育实验、AI 交互原型和可接受开源合规要求的团队使用。
适用领域
AI 辅助学习 / 手写识别与视觉推理 / 教育科技 / 数学与公式推导 / 交互式白板 / Canvas 绘图应用 / 多模态 AI 应用 / 空间推理与图形化思考 / 本地 AI 工具链集成 / 开发者生产力工具
配置难度
中等。普通用户如果只使用 API 模式,需要具备 Node.js、npm、API Key 配置和终端操作基础;如果使用 Codex CLI 或 Claude CLI,还需要额外处理 CLI 安装、PATH、登录认证和模型选择。对于开发者二次开发而言,主要难点在 Canvas 交互、AI 请求结构化输出、多模型适配以及本地配置安全。整体上手难度高于普通 Web App,但低于从零构建多模态白板系统。
商业价值
该项目的商业价值主要体现在 AI 教育、在线辅导、数学/工程学习工具、AI 白板、研究协作和多模态交互原型方向。它验证了一种比聊天框更自然的 AI 交互模式:用户可以保留手写和空间布局,AI 直接理解局部画布并生成可编辑结果。对教育科技公司而言,可作为 AI 解题白板、教师备课工具或学生自学工具的原型参考;对企业内部创新团队而言,可用于探索视觉化思考和知识工作流。但由于 AGPL-3.0 许可证、早期项目成熟度、模型成本和识别质量不确定性,直接商业化前需要进行许可证审查、技术稳定性验证和模型效果评测。
01
技术亮点
- 交互方式新颖:把 AI 对话从聊天框扩展到共享画布,适合手写、公式、图形和空间推理场景。
- 支持大画布:逻辑画布达到 20000 x 20000,并使用稀疏 512 x 512 tiles,避免巨大位图带来的内存浪费。
- AI 结果不是直接覆盖原内容,而是以可移动、可调整、可接受或丢弃的 draft 形式出现在画布上,交互安全性较好。
- 支持套索选择:可以只把选中的确认墨迹发送给 AI 或进行 Typeset,减少无关上下文干扰。
- 多后端支持:可使用 API、Codex CLI、Claude CLI,适合不同用户的模型和账号环境。
- 支持中英文引导:内置九步功能导览,并提到支持英文和中文,对于中文开发者上手较友好。
- 本地快照保存:可在浏览器本地保存轻量 canvas snapshot。
- 可导出 PNG:确认后的画布内容可导出为带边距的裁剪 PNG。
- 配置中心较完善:提供模型、推理强度、端口、超时、图像格式、请求记录等设置。
- 适合二次开发:主题、工具栏、画布交互、AI draft、模型执行器等模块具有较清晰的产品边界。
02
目标用户
- 需要用手写公式、草图、图表与 AI 交互的学生和教师
- 数学、物理、工程等领域中经常进行公式推导和图形分析的用户
- 想探索多模态 AI 交互方式的产品经理、设计师和研究人员
- 希望构建或二次开发 AI 白板、AI 教育工具的前端/全栈开发者
- 已经使用 Claude Code CLI、Codex CLI 或 OpenAI/Anthropic API 的 AI 工具用户
- 需要在本地浏览器中保存轻量草稿、进行视觉化思考的个人用户
03
配置要求
- Node.js 版本要求为 18.17+。
- 默认配置文件位于 ~/.penecho/config.env。
- API 密钥会以明文形式保存在本地配置文件中,POSIX 系统下会设置为仅所有者可读写,但仍需像保护普通密钥一样保护该文件。
- 支持 OpenAI 兼容 API 格式和 Anthropic/Claude 兼容 API 格式,需要配置 URL、模型、Key、推理强度等参数。
- Codex CLI 模式要求 shell PATH 中存在 codex 可执行文件,并且已完成登录认证。
- Claude CLI 模式要求本地存在 claude 命令,并完成 Claude Code CLI 认证。
- 可以配置模型超时时间、发送给模型的图像格式、请求记录与保留策略、监听地址和端口、初始 Auto AI 延迟等。
- 默认图像格式为 WebP,也可选择 PNG。
- 画布中的 Reasoning 菜单可在请求级别临时选择 none、low、medium、high、xhigh/max 等推理强度,但模型是否支持取决于具体提供商。
- PenEcho 不会自动读取项目目录下的 .env 文件,必须使用默认全局配置或通过 --config 显式指定配置文件。
04
适用场景
- 在画布上手写数学题、物理题或工程公式,让 AI 在旁边给出提示、步骤或答案
- 绘制流程图、架构图、关系图后,让 AI 根据空间布局生成解释或扩展内容
- 圈选已有手写内容并执行 Typeset,将手写公式或文字转换为更干净的文本、公式和图形元素
- 课堂教学中用作 AI 辅助白板,教师或学生可以边写边让 AI 补充说明
- 科研或头脑风暴时在大画布上摆放零散想法,让 AI 结合上下文生成推理和结构化建议
- 用作多模态 AI 产品原型,验证“画布 + 大模型”的交互体验
- 在本地运行一个可连接多种 LLM 后端的视觉推理前端,测试不同模型对手写、公式、图示的理解能力
05
部署与配置
- 安装 Node.js 18.17 或更高版本。
- 根据使用方式准备至少一种 LLM 后端:OpenAI 兼容 API Key、Anthropic/Claude API Key、已登录的 Codex CLI,或已登录的 Claude Code CLI。
- 通过 npm 全局安装:npm install -g penecho
- 运行交互式配置:penecho configure
- 在配置菜单中选择 LLM source,可选择 Claude CLI、Codex CLI 或 API,并设置模型、推理强度、URL、Key 等。
- 完成 Test & Save 保存配置。
- 启动服务:penecho
- 在终端显示的本地地址中打开浏览器,进入 PenEcho 画布。
- 如需使用自定义配置文件,可运行:penecho configure --config ./team.env,然后用 penecho --config ./team.env 启动。
- 如需 Codex CLI,需额外安装并登录:npm install -g @openai/codex@latest,随后运行 codex login 或检查 codex login status。
- 如需 Claude CLI,需安装 Claude Code CLI 并通过 claude auth login 完成认证。
06
风险与注意事项
- AGPL-3.0 许可证对商业闭源集成有较强约束,如果作为 SaaS 或网络服务改造并对外提供,需要认真评估开源合规义务。
- 项目仍处于较早期版本,README 中最新版本为 0.5.1,功能可能快速变化,API、配置和交互行为可能不稳定。
- AI 效果高度依赖模型能力,README 明确提到较弱模型可能产生较差的画布结果。
- API Key 明文保存在本地配置文件中,虽然不会发送到浏览器端,但本机安全和文件权限仍然是风险点。
- 使用 Claude CLI 或 Codex CLI 时依赖外部 CLI 的安装、认证状态、模型目录和行为变化,运维和排障成本高于纯前端应用。
- 对中文手写、复杂公式、复杂图形的实际识别效果需要实测,README 主要描述能力,不等于在所有场景下可靠。
- 如果启用请求记录,需要关注画布截图、公式、笔记等敏感内容的本地留存风险。
- 作为本地 Web 服务,需要注意监听接口和端口配置,避免误暴露到不可信网络。
- npm 全局安装和自动更新提示虽然方便,但在团队受控环境中可能与版本锁定、审计流程冲突。
- Star 数和社区规模中等偏小,长期维护能力和生态成熟度仍需观察。
2026-07-21
第20名
新收录 · github_search