PM-Shawn/Abu-Cowork

Abu-Cowork

Open-source alternative to Claude Cowork — a local-first AI agent desktop app · multi-model · self-evolving skills · privacy-first · multi-Harness roadmap · DeepSeek Harness integration in progress

未分類agentagent-frameworkagentic-ai

English | 中文

Abu (阿布)

你的 AI 桌面办公搭子 — 交给阿布就行啦

本地运行的 AI 桌面办公助手,灵感来自 Claude Code 的 Cowork 模式。 你说需求,阿布干活 — 读文件、跑命令、写文档、做报表,全在本地完成。

下载安装 · 快速开始 · 功能介绍 · 使用指南 · 从源码构建

为什么选择 Abu?

特性 · Abu · 普通 AI 聊天 · 传统自动化工具 自主规划并执行复杂任务 · :white_check_mark: · :x: · :x: 读写本地文件、执行命令 · :white_check_mark: · :x: · :white_check_mark: 自然语言交互 · :white_check_mark: · :white_check_mark: · :x: 29 个内置技能 + 自进化(阿布自己攒新技能) · :white_check_mark: · :x: · :x: 多对话按项目聚合(Projects) · :white_check_mark: · :x: · :x: 定时任务 & 事件触发 · :white_check_mark: · :x: · :white_check_mark: IM 机器人(飞书/钉钉/企微/Slack) · :white_check_mark: · :x: · 部分 多 Agent 后台并行 · :white_check_mark: · :x: · :x: 浏览器 & 电脑操控 · :white_check_mark: · :x: · 部分 数据 100% 本地,隐私安全 · :white_check_mark: · :x: · :white_check_mark:

最近更新

下载最新稳定版 · 查看完整更新日志

近期亮点:工作区文件树 + 代码画布(侧栏浏览 / 预览 / 编辑文件,CodeMirror 改源码自动存盘,预览自动刷新,版本快照可回退)、进度面板改声明式(模型通过 report_plan 自己声明步骤和状态)、内联可视化 widget(图表 / HTML / Mermaid 直接渲进对话)、供应商多接入预设(火山 / 百炼 / 智谱多套餐做成预设 + 新增编辑弹窗统一)、能力按模型声明(视觉 / 工具 / 思考 / Token 上限每模型独立),外加 文档评论到对话、全量国际化、签名 + 公证的 macOS 发布包。

每个版本的完整 changelog 见 Releases。

产品预览

简洁直观的界面,强大灵活的能力

欢迎页自然语言输入,对话即指令 任务执行自主规划步骤,调用工具完成复杂任务 计划模式高风险任务先出计划,你点「确认执行」才动手 交互式提问需要你拍板时弹出选项卡片,单选 / 多选 多 Agent 并行最多 5 个后台 Agent 同时干活,进度实时可见 桌宠 · 活动通知条桌面浮窗常驻,活动条实时显示阿布状态 主题切换 · 暗色精心打磨的暗色主题 主题切换 · 亮色亮色 / 暗色 / 跟随系统一键切换 实验室(Labs)打磨中的新功能,默认关闭、按需开启(当前收录:桌宠) 权限控制文件访问需用户授权,安全可控 IM 频道对话在飞书/钉钉中 @阿布 即可交互 Skill 技能29 个内置技能,支持自定义扩展 + 自进化 MCP 连接器一键接入 Playwright、GitHub 等外部工具 定时任务Cron 定时执行,让阿布每天自动工作 触发器 / 值班HTTP、文件变更、IM 消息等事件自动触发 AI 服务管理多厂商 Provider 管理,健康检查,一键切换 IM 频道配置连接飞书、钉钉、企微等 IM 平台 个人记忆记住你的偏好和工作习惯 安全沙箱Seatbelt 沙箱 + 网络隔离,保护隐私 性格设置(Soul)主动度三档预设 + SOUL.md 自定义语气、称呼、回复风格 诊断面板AI 服务 / MCP / 技能 / 网络 / 应用 一键自检 + 诊断包导出 内容安全扫描三档权限模式(请求批准 / 替我审批 / 完全自主)+ 扫描 agent / skill / 记忆里的 prompt 注入与危险指令

功能介绍

核心能力

  • Agent 自主执行 — 不只是聊天,能自主规划、调用工具、读写文件、执行命令,完成复杂任务
  • 计划模式 — 涉及删除 / 覆盖 / 发送 / 安装等高风险步骤时,阿布先给出分步计划,等你在卡片上点「确认执行」再动手;计划待批期间只跑只读操作
  • 交互式提问 — 需要你拍板时(选方案、给参数),阿布在输入框上方弹出选项卡片,单选 / 多选皆可,也能填「其他」自定义
  • 每对话独立设置 — 权限模式(请求批准 / 替我审批 / 完全自主)和模型都能按对话临时切换,不同对话互不串味
  • 性格系统(Soul) — 三档主动度预设(寡言 / 伙伴 / 管家)控制阿布何时主动出手;SOUL.md 自定义语气、称呼、回复风格、边界
  • 自进化 Skills — 跑完一段复杂流程后,阿布会主动提议"这套要不要固化成技能",一键生成草稿 → 你审阅 → 采纳上架;下次直接叫技能名字调用,不用重讲
  • 智能通知系统 — 菜单栏未读数 / sidebar 小红点 / 系统通知 三条兜底通道自动选择;全屏 / 勿扰时通知暂存进 inbox,回主窗口通过 badge 感知;打扰记录可审计半年
  • Projects 管理 — 工作区可升级成 Project,同一方向的对话自动聚合,每个项目独立配置图标、默认模型、技能集、MCP
  • 多 Agent 后台并行 — 支持同时运行多个后台 Agent(最多 5 个),各自独立执行任务,进度实时可见
  • 桌宠模式(实验室)— 透明浮窗常驻桌面,跨 Spaces 跟随;左键唤起主窗口、右键菜单、可拖拽吸边隐藏;活动通知条 实时显示阿布状态(处理中 / 等待授权 / 完成),等待输入时可就地回复
  • 主题切换 — 亮色 / 暗色 / 跟随系统,设置 → 外观一键切换
  • 实验室(Labs) — 打磨中的新功能默认关闭、按需开启,可能随时调整或移除(当前收录:桌宠)
  • 对话分享 / 导出 — 一键把对话导出成 JSON 分享给同事;自动脱敏 API Key 与本地路径
  • 29 个内置技能 — PDF/PPTX/DOCX/Excel 生成、前端设计、画布设计、算法艺术、Mermaid/SVG/信息图、阿布内置浏览器、可选 Chrome 桥接、深度研究、Agent 自我反思(reflect)、工作流自动化等,一键安装,支持自定义
  • MCP 工具协议 — 通过 Model Context Protocol 连接数据库、搜索引擎、GitHub 等外部服务
  • 浏览器自动化 — 普通网页任务使用零配置的内置浏览器;需要已有标签页和登录状态时,可选用 Chrome 扩展桥接
  • 电脑操控 — 通过截屏 + 键鼠控制完成桌面级任务,内置敏感应用拦截、危险按键拦截、5 分钟超时熔断等多重防护
  • HTTP Fetch — 内置安全网关:URL 长度校验、凭据嵌入拦截、云元数据端点拦截、10 MB 下载上限、60 秒超时,避免裸 curl 的盲区

AI 服务与模型

  • 12+ 云端厂商 — Anthropic Claude、OpenAI、DeepSeek、通义千问(百炼)、豆包(火山引擎)、Moonshot、智谱、MiniMax、SiliconFlow、七牛、OpenRouter 等
  • 本地模型 — Ollama 零配置接入,自动发现本地模型
  • 自定义接入 — 支持任意 OpenAI 兼容 / Anthropic 兼容 API 端点
  • Provider 管理 — 添加、编辑、删除、排序,连接健康检查 + 延迟检测
  • 模型选择器 — 对话中实时切换模型,能力徽章一目了然(视觉、工具调用、联网搜索、深度思考、图片生成、长上下文)
  • 收藏与历史 — 常用模型一键收藏,最近使用快速切换
  • 图像生成 — 内置 DALL-E 2 / DALL-E 3 接入,也支持任意自定义图片生成端点

联网搜索

  • 多搜索引擎 — 支持 Bing、Brave、Tavily、SearXNG(自托管免 API Key)
  • 独立配置 — 搜索引擎与主 AI 服务解耦,独立管理

自动化与触发器

  • 定时任务 — Cron 表达式定时执行(如每天早上 9 点发 AI 日报);app 关着期间错过的执行,下次启动会按时间顺序补跑
  • 触发器系统 — 支持多种事件源自动触发 Agent 执行:
  • 文件监听 — 监控文件创建/修改/删除,支持 glob 模式匹配
  • HTTP Webhook — 自动生成 POST 端点,接收外部系统回调
  • IM 消息 — 收到特定消息时触发任务
  • Cron 定时 — 按时间计划周期执行
  • 触发器权限模型 — 四级能力等级(只读 → 安全工具 → 完整权限 → 自定义白名单),精细控制自动任务的操作范围

IM 频道集成

让阿布成为你的团队机器人 — 在 IM 中 @阿布 即可对话:

  • 支持平台 — D-Chat、飞书、钉钉、企业微信、Slack
  • 会话管理 — 自动按用户/群/线程隔离对话,超时自动归档,支持"继续上次"恢复
  • 安全控制 — 用户白名单、工作空间路径限制、能力等级管控
  • 响应模式 — 仅 @提及响应 或 全部消息响应

记忆与上下文

  • 三层记忆体系(Memdir 文件化架构):
  • 个人记忆 — ~/.abu/memory/ 多文件目录,跨项目生效,自动按主题分文件存储,MEMORY.md 作为索引注入对话
  • 项目记忆 — ~/.abu/projects//memory/ 自动按工作区隔离,每条记忆为独立 .md 文件,便于阅读、搜索和回收
  • 历史升级自动迁移 — 老版本的 ~/.abu/agents/abu/memory.md 和 {workspace}/.abu/MEMORY.md 启动时自动迁移到新结构
  • 项目规则(手写):
  • ~/.abu/ABU.md — 用户级规则(跨项目)
  • {workspace}/.abu/ABU.md — 项目级规则
  • {workspace}/.abu/rules/*.md — 模块化规则(按字母序加载,最多 20 个文件)
  • Projects 聚合 — 工作区可升级成 Project,同一文件夹下的对话自动归到一起,老对话启动时自动回填 projectId;每个项目可独立配置默认模型、技能集、MCP 连接器
  • 会话记忆 — 大体积工具输出自动落盘,会话内保留紧凑摘要,防止上下文爆炸
  • Todo 跨重启 — 对话里的 todo_write 计划持久化到本地磁盘,重启续聊直接接着用
  • 自动压缩 — 对话过长时智能压缩历史消息,保留关键上下文

安全与隐私

  • 三档权限模式 — 请求批准(工作区内自由读写,越界写入和危险命令需确认,默认)/ 替我审批(越界操作交 AI 审核:放行低风险、拦截高风险、不确定才问你)/ 完全自主(除系统红线外全部自动执行);可设全局默认,也能在对话输入框上方按对话临时切换
  • 内容安全扫描 — 扫描 agent 写入的 skill / 记忆,拦截危险指令、prompt 注入、硬件指令等 120+ 类风险
  • OS 沙箱 — macOS Seatbelt (sandbox-exec) / Windows PowerShell ConstrainedLanguage,隔离 shell 命令的文件访问范围
  • 网络隔离 — 本地代理 + 域名白名单 + 私有网络访问开关,可控制每条请求的目标
  • 路径与命令双重校验 — 敏感目录(系统目录、SSH 密钥等)默认拦截;危险命令(rm -rf / 等)静态识别
  • 电脑操控防护 — 敏感应用黑名单(钥匙串/系统设置/微信/Slack 等 15+)、危险按键拦截(Cmd+Q、Cmd+Tab、Force Quit 等)、会话级窗口隐藏、5 分钟超时熔断
  • API Key 加密存储 — Windows DPAPI / macOS AES-256-GCM(硬件 UUID 派生),不再明文写 localStorage
  • 本地优先 — 数据存在本地,API Key 存在本地,不经过第三方服务器
  • 跨平台 — 支持 macOS (Apple Silicon / Intel) 和 Windows

诊断与排障

  • 一键自检 — 设置 → 诊断面板,逐项检查 AI 服务连接、数据&权限、MCP、技能、网络、应用环境
  • 诊断包导出 — 出问题时一键打包日志、配置、版本信息(自动脱敏 API Key 和路径),方便发给作者排障
详细功能说明请查看 使用指南

下载安装

前往 GitHub Releases 下载最新版本:

平台 · 文件 macOS (Apple Silicon) · Abu-x.x.x-mac-arm64.dmg macOS (Intel) · Abu-x.x.x-mac-x64.dmg Windows x64 · Abu-x.x.x-windows-x64-setup.exe

官方 macOS 包已签名并公证。Windows 使用当前用户级安装包,不需要管理员权限,但暂未进行 Authenticode 签名;SmartScreen 可能需要选择 更多信息 → 仍要运行。详见安装指南。

快速开始

1. 配置 AI 服务

打开 Abu → 设置 → AI 服务管理:

  • 最快上手:选择一个 API 厂商(如 DeepSeek、Anthropic),填入 API Key,点击验证
  • 本地模型:安装 Ollama,Abu 自动发现本地模型,无需 API Key
  • 自定义接入:填入任意 OpenAI 兼容 API 的 Base URL 和 Key

2. 开始对话

回到主界面,用模型选择器选择你想用的模型,然后开始对话。

试试这些指令:

帮我整理下桌面的文件,按类型分类放好
把这个 PDF 里的表格提取出来,生成 Excel
每天早上 9 点帮我搜索最新的 AI 新闻,生成日报
用前端技能帮我做一个产品 landing page
帮我做一份本周的工作周报 PPT

3. 进阶玩法

  • 安装技能:设置 → 自定义 → 技能商店,按需安装 PDF、PPT、前端设计等技能
  • 连接 MCP:设置 → MCP 连接器,一键接入 GitHub、Playwright 等外部工具
  • 配置定时任务:让阿布每天自动搜新闻、跑数据、发报告
  • 连接 IM:设置 → IM 频道,让团队在飞书/钉钉里直接 @阿布
更多使用场景请查看 使用指南

内置技能一览(共 29 个)

类别 · 技能 文档生成 · PDF、PPTX、DOCX、XLSX 设计创作 · 前端设计 (frontend-design)、画布设计 (canvas-design)、算法艺术 (algorithmic-art)、SVG 图表 (svg-diagram)、Mermaid 图表 (mermaid-diagram)、信息图 (infographic)、Slack GIF (slack-gif-creator)、HTML 小组件 (html-widget) 浏览器自动化 · Abu-Browser(内置、独立会话)、Abu-Chrome-Bridge(可选 Chrome 扩展,复用已有标签页和登录状态) 开发工具 · Claude API、MCP Server 构建 (mcp-builder)、Web Artifacts (web-artifacts-builder)、Web 应用测试 (webapp-testing) 内容写作 · 文档协作 (doc-coauthoring)、品牌规范 (brand-guidelines)、内部通讯 (internal-comms) 自动化 · 定时任务 (schedule)、触发器 (trigger)、告警 SOP (alert-sop) 项目管理 · 技能创建器 (skill-creator)、项目初始化 (init)、Agent 创建 (create-agent) Agent 反思 · 自省技能 (reflect) — agent 跑完任务后回溯沉淀 主题 · 主题工厂 (theme-factory)(10+ 预设主题,应用到任何产出物)

除了内置技能,阿布还支持自进化 Skills — 在你跑完多轮复杂流程后主动提议"固化成技能",自己攒出专属于你工作流的能力库。详见 使用指南 · Skill 技能系统。

技术栈

层级 · 技术 桌面框架 · Electron(主进程 + preload + 隔离的 React renderer) 前端 · React 19 + TypeScript (strict) + TailwindCSS v4 + Vite LLM 适配 · 双协议适配器 (Anthropic / OpenAI-compatible) 状态管理 · Zustand + Immer + Persist 工具协议 · MCP (@modelcontextprotocol/sdk) 联网搜索 · Bing / Brave / Tavily / SearXNG 安全沙箱 · macOS Seatbelt + 路径/命令双重校验 UI 组件 · Radix UI + Lucide Icons + shadcn 风格 测试 · Vitest + happy-dom(覆盖核心 store / agent / skill / memdir 等模块) 评测 · 自带 OpenAI 协议工具调用评测器(npm run eval:tool-selection)

从源码构建

前置要求

  • Node.js 24 与 npm
  • Rust stable(安装 Rust),用于原生 helper 和 sandbox launcher
  • 平台构建工具:macOS 使用 Xcode Command Line Tools,Windows 使用 Visual Studio Build Tools

开发

# 克隆仓库
git clone https://github.com/PM-Shawn/Abu-Cowork.git
cd Abu-Cowork

# 准备 worktree 内独立的依赖、Electron/浏览器运行时、Sidecar、
# 原生辅助程序、沙箱启动器和 OSS 前端
npm run setup:electron-dev

# 启动 Electron 桌面应用;启动前会重新构建 OSS 前端
npm run electron:dev

# 企业版 worktree:准备并启动包含私有模块的企业版前端
npm run setup:electron-dev:enterprise
npm run electron:dev:enterprise

# 仅启动前端预览(不能作为桌面端验收)
npm run dev

Tauri 不再用于新功能开发和验收;相关源码仅为已发布版本兼容、数据迁移和回退保留。

构建

npm run dist:electron

构建产物位于 release-electron/。可分发安装包必须在目标操作系统构建并验证;macOS 交叉构建不能代替真实 Windows 验收。

源码构建和 fork 包默认不使用阿布生产更新源,也不会迁移已安装阿布的数据。准备分发修改版前,请先阅读 Fork 与二次分发指南。

测试

npm test              # 运行测试
npm run test:watch    # 监听模式
npm run test:coverage # 覆盖率报告
npm run lint          # ESLint 检查

项目结构

src/
├── components/       # React UI 组件
│   ├── chat/         # 对话界面、消息气泡、模型选择器
│   ├── sidebar/      # 侧边栏导航(含 Recents 折叠搜索)
│   ├── panel/        # 右侧详情面板(工作区、项目记忆/指令)
│   ├── customize/    # 自定义(技能、Agent、模型)
│   ├── schedule/     # 定时任务视图
│   ├── trigger/      # 触发器(值班)管理视图
│   ├── settings/     # 系统设置(16 个面板,详见 settings/sections/)
│   ├── preview/      # 文件预览(PDF/Office/图片/Markdown)
│   └── ui/           # 基础 UI 组件 (shadcn/Radix)
├── core/             # 核心引擎(非 UI)
│   ├── agent/        # Agent 循环、后台 Agent、project rules
│   ├── llm/          # LLM 适配层(Claude / OpenAI-compatible / Ollama)
│   ├── tools/        # 工具注册、内置工具、安全校验
│   ├── mcp/          # MCP 客户端
│   ├── skill/        # Skill 加载与预处理
│   ├── search/       # 联网搜索(Bing/Brave/Tavily/SearXNG)
│   ├── memdir/       # 文件化记忆体系(personal/project,多文件 + 索引)
│   ├── scheduler/    # 定时调度引擎
│   ├── trigger/      # 触发器引擎(HTTP/文件/Cron/IM)
│   ├── im/           # IM 频道适配(D-Chat/飞书/钉钉/企微/Slack)
│   ├── permissions/  # 权限模型、能力等级
│   ├── context/      # 上下文管理与自动压缩
│   ├── session/      # 会话管理与磁盘落盘
│   ├── sandbox/      # 沙箱配置
│   ├── logging/      # 结构化日志
│   └── updates/      # 自动更新通道
├── eval/             # 工具调用 / 模型能力评测脚手架(开发者使用)
├── stores/           # Zustand 状态管理
├── hooks/            # React Hooks
├── i18n/             # 国际化 (中文 / English)
├── types/            # TypeScript 类型定义
└── utils/            # 工具函数

builtin-skills/       # 29 个内置技能(每个为独立目录)
abu-browser-bridge/   # 浏览器桥接 MCP Server
abu-chrome-extension/ # Chrome 扩展(Abu-Chrome-Bridge 技能依赖)
electron/             # Electron 主进程、preload 桥和原生 host
sidecar/              # Agent / 运行时 sidecar 进程
src-tauri/
├── src/
│   ├── computer_use.rs    # 截屏 + 键鼠控制 + 敏感应用拦截
│   ├── feishu_ws.rs       # 飞书 WebSocket 长连接
│   ├── overlay.rs         # 电脑操控状态浮层
│   ├── proxy.rs           # 网络隔离代理
│   ├── sandbox.rs         # macOS Seatbelt / Win ConstrainedLanguage
│   ├── trigger_server.rs  # HTTP 触发器服务器
│   └── window_info.rs     # 行为感知(活跃应用采样)
└── tauri.conf.json

文档

文档 · 说明 使用指南 · 完整的产品功能介绍与使用说明 安装指南 · 各平台安装与常见问题解决 Fork 与二次分发指南 · fork 的应用身份、更新源、签名、迁移与发布边界

贡献

欢迎提交 Issue 和 Pull Request!准备分发修改版桌面包前,请先阅读 Fork 与二次分发指南。

  1. Fork 本仓库
  2. 创建你的分支:git checkout -b feat/my-feature
  3. 提交改动:git commit -m 'feat: add my feature'
  4. 推送分支:git push origin feat/my-feature
  5. 发起 Pull Request

反馈与交流

使用中遇到问题或有好的想法,欢迎扫码加微信交流:

赞赏支持

如果阿布对你有帮助,欢迎请作者喝杯咖啡: