EasyWork 是一个桌面优先的开源 AI 工作台,面向“真实执行”而不是“更长的聊天”。
它把自然语言任务落成一个可规划、可审批、可执行、可恢复、可沉淀产物的完整流程。
你可以把它理解为一个面向“执行”的 AI 桌面环境:
-
先规划,再审批,再执行
-
支持多 Provider / Sandbox / Skills
-
支持任务历史、文件预览、定时任务与产物沉淀
-
面向本地工作目录与真实项目,而不是纯对话窗口
-
English README:
README_EN.md
很多 AI 产品擅长回答问题,但不擅长把任务稳定地做完。
EasyWork 关注的是另一件事:
- 如何让 AI 任务有明确阶段和状态
- 如何让用户在执行前看到计划并决定是否继续
- 如何把工具调用、审批、��清、文件、结果都放进一个统一工作台
- 如何让任务可以回看、继续、恢复、调度,而不是一次性聊天结束
如果你也在做 Agent、桌面 AI、任务编排、审批流、工具调用或本地工作区集成,EasyWork 希望能成为一个可运行、可参考、可扩展的开源基础项目。
- 两阶段执行:
Planning -> Approval -> Execution,支持澄清后继续规划 - 意图感知执行:区分信息获取、交互操作与混合型网页任务,并按任务类型选择执行策略
- 任务工作台:时间线、过程/结果查看与文件产物预览一体化
- 可扩展运行时:支持
Provider / Sandbox / MCP / Skills - 恢复与可观测性:支持审批回传、等待用户、执行中断恢复、历史回看与执行审计
- 调度与桌面体验:支持定时任务,以及
Light / Dark / System外观模式
- Node.js
>= 20 - pnpm
>= 9 - Git
- Rust stable(仅桌面模式)
- Tauri prerequisites(仅桌面模式):https://v2.tauri.app/start/prerequisites/
git clone <your-repo-url>
cd EasyWork
corepack enable
corepack prepare pnpm@9 --activate
pnpm install# Web 联调(推荐)
pnpm dev:all
# 单独启动
pnpm dev:api
pnpm dev:web
# 桌面调试(Tauri)
pnpm dev默认端口:
- API:
http://localhost:2026 - Web:
http://localhost:1420
- 打开应用并进入
/welcome - 在 Settings 中配置至少一个 Provider
- 激活 Provider
- 输入任务,进入
计划 -> 审批 -> 执行 - 在任务详情页查看 timeline、过程、结果和产物
运行时设置默认保存在:
~/.easywork/settings.json~/.easywork/plans.json~/.easywork/approval-requests.json~/.easywork/scheduled-tasks.json~/.easywork/turn-runtime.json
# 开发
pnpm dev:all
pnpm dev:api
pnpm dev:web
pnpm dev
# 质量检查
pnpm lint
pnpm typecheck
pnpm test
pnpm smoke:desktop:with-api
pnpm pre-release
# 构建
pnpm build
pnpm build:api
pnpm build:desktopsrc/ 前端(React + Vite)
src-api/ 后端(Hono + Agent Runtime)
src-tauri/ 桌面壳(Tauri 2 + Rust)
shared-types/ 前后端共享类型
scripts/ 构建、质量门禁与发布脚本
openspec/ OpenSpec 规格与变更管理
SKILLs/ 项目级 Skills 定义
- 项目许可证:
MIT - 第三方来源与许可证说明:
THIRD_PARTY_NOTICES.md