我把自己一直在用的一套 AI 工作台整理了一遍,开源了,叫 Light AI。
做它的起因不是"缺一个聊天页面"——聊天页面多的是。烦的是别的:聊天在一个网站,写代码要开另一个终端,生成图片是第三套工具。模型、账号、文件、历史记录各管各的,每切一次工具,刚建立起来的上下文就断一次。
我想要的是一个地方:打开之后可以先把问题聊清楚,也可以把真实任务丢给 Agent,还能顺手做图,而这些共用同一套账号、导航和数据边界。
三个工作区,一套交互
对话、任务、图像。
对话区是多会话、流式回复、Markdown、附件、分享、归档、导出,操作方式尽量不制造惊喜。任务区能跑 Codex、Gemini CLI 和 Claude Code,让 Agent 进项目、读文件、执行命令、改代码。图像区接了 OpenAI 兼容接口和 Gemini 图像模型,可以带参考图生成,也可以沿着一次任务继续迭代。
我不想让它们只是侧边栏里的三个入口。所以三个区共用同一套导航、状态反馈和视觉语言,从"有个模糊想法"走到"拿到能用的结果",中间不用学三遍交互。桌面端尽量把空间留给内容;移动端是单独做的抽屉、底部导航和触控细节,不是把桌面页硬塞进手机屏。
几个我自己天天用的地方
任务过程要看得见。 编码 Agent 最难受的用法是:输入一句话,等半天,收到一句"完成了"。Light AI 会把计划、执行过程、文件变更和产物摊开。任务可以挑模型、推理强度、Plan 模式和工作区权限,也能按项目归类。
长任务不绑网页。 对话、绘图和 Agent 都可能跑很久,这些交给独立 Worker,编码任务再进一次性的 Docker Runner。关掉页面任务不会消失,回来还能看到状态,取消、失败、重试都有明确反馈。这里有些看着很小的保护其实挺关键,比如任务租约和取消后的结果隔离——不然一个已经被取消的旧请求晚到一步,就把新状态覆盖了。
推理过程要能读。 除了 Markdown 和代码高亮,界面能渲染 Mermaid,另外有单独的推理可视化入口。模型输出很长的时候,"能生成"只是第一步。
微信入口。 扫码配对之后,微信消息可以转成 Agent 任务,处理结果回到聊天里,图片、文件、视频、语音都能当附件进任务工作区。不是为了再做一个聊天机器人窗口,是为了我离开电脑的时候也能随手把事情丢给自己的工作台。
另外还有统一的模型管理、邀请注册、用户权限、运行日志和用量估算。管理员集中配端点和密钥,普通用户不用在浏览器里反复粘 API Key。密钥服务端加密存,编码任务跑在资源和 capability 受限的独立容器里。
自托管,以及它不适合做什么
Next.js + SQLite + Docker Compose,个人或者小团队在一台 Linux 机器上就能跑起来。SQLite 开了 WAL,部署和备份都直接;真要撑更大规模,把数据库和任务队列换成外部服务更合适。
有一条得说明白:编码 Agent 的 Worker 需要访问 Docker socket,这意味着它在宿主机上权限不低。Runner 限了 CPU、内存、进程数和 capability,但它不是一个面向陌生用户的多租户安全沙箱。所以只给信得过的人开 Agent 权限,也别在没有 HTTPS、强密码和防火墙的情况下把它挂到公网。
现在的状态
已经在我自己的真实环境里跑着,但开源版还早,接口和数据库结构可能继续改。仓库里有 Docker 部署文档、Agent 部署说明、单元测试,以及基于 Mock Provider 的端到端测试——不配真实模型密钥也能跑通验证流程。
Apache License 2.0:
GitHub:JimiZhou/light-ai
想自己搭一套的话可以试试,踩到坑欢迎提 issue。
若无法加载请检查网络环境。
若无法加载请检查网络环境,或切回 Disqus 稍后再试。