# AgentBrother **Repository Path**: reworkteam/agentbrother ## Basic Information - **Project Name**: AgentBrother - **Description**: AgentBrother(龙哥🐉)这是一个跨平台Agent管理框架-统一管理OpenClaw (龙虾🦐)、ZeroClaw(螃蟹🦀)等Agent框架,方便用户所见所得创建AI数字员工等智能体。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: clean-master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 21 - **Forks**: 4 - **Created**: 2026-03-05 - **Last Updated**: 2026-03-11 ## Categories & Tags **Categories**: ai **Tags**: openclaw, zeroclaw, agentbrother, 代理框架, 龙虾 ## README

AgentBrother Logo

**[中文](README.md) | [English](README.en.md) | [日本語](README.ja.md) | [Français](README.fr.md) | [Deutsch](README.de.md)** **官网:[https://agentbrother.cn](https://agentbrother.cn)** # 龙哥(AgentBrother) 它本来是奔着跨平台 Agent 管理框架 - 统一对接 OpenClaw、ZeroClaw 等 Agent 框架,然后再在上面加一层应用框架,方便用户所见即所得创建 AI 数字员工等智能体。而不需要管理底层配置,只需要在应用层配置即可。 ## 项目目的 龙哥的核心目标是为用户提供一个统一的、跨平台的界面,用于集成各种 AI Agent 框架,如 OpenClaw 和 ZeroClaw。通过龙哥,用户可以: - 统一管理多个 Agent 框架,无需在不同工具之间切换 - 所见即所得地创建、配置和使用 AI 数字员工 - 在不同平台(Mac、Windows、Web、手机)上获得一致的使用体验 - 简化 Agent 的创建和管理流程,降低使用门槛 龙哥不只是为了管理龙虾和螃蟹,更是为了让普通用户轻松创作出好玩、有趣、有用的 AI 代理数字人、数字宠物等。我们给每个 Agent 赋予独特的情感和个性,让它们成为你生活中的得力助手和伙伴! ## 功能特性 ### 核心功能 - **多框架支持**:集成 OpenClaw、ZeroClaw 等主流 Agent 框架 - **跨平台兼容**:支持 Mac、Windows、Web 和移动设备 - **所见即所得**:直观的界面,轻松创建和配置 AI 数字员工 - **统一管理**:集中管理所有 Agent,包括状态监控和配置 - **浮点输入**:支持全局快捷方式调出浮点输入窗口,快速与 Agent 交互 - **文件拖拽**:支持拖拽上传 txt、doc、docx、pdf 文件,自动解析内容并整合到对话中 - **自动启动**:启动应用后自动检测并启动 OpenClaw Gateway ### 技术特性 - **Electron 桌面应用**:提供原生桌面体验 - **Web 界面**:支持通过浏览器访问 - **TypeScript**:类型安全的代码库 - **模块化设计**:易于扩展和集成新的 Agent 框架 - **实时通信**:支持与 Agent 的实时交互 - **本地文件解析**:在本地解析文件内容,节省 Token 消耗 ## 界面截图 ### 主界面

主界面

### 项目管理

项目管理

### 任务管理

任务管理

### 代理管理

代理管理

### 项目任务

项目任务

### 任务管理

任务管理

## 快速开始 ### 环境要求 - Node.js >= 20.0.0 - npm >= 10.0.0 ### 安装依赖 ```bash npm install ``` ### 开发模式运行 #### 桌面应用 ```bash npm run dev ``` #### Web 应用 ```bash npm run start:web ``` ### 构建应用 ```bash # 编译 TypeScript npm run build # 打包桌面应用 npm run dist ``` ## 项目结构 ``` agentbrother/ ├── docs/ # 文档 ├── electron/ # Electron 主进程代码 │ ├── main.js # 主进程入口 │ ├── preload.js # 预加载脚本 │ └── renderer/ # 渲染进程代码 │ ├── index.html # 主界面 │ ├── styles.css # 样式文件 │ ├── main.js # 渲染进程主逻辑 │ ├── framework.js # 框架管理模块 │ ├── agents.js # 代理管理模块 │ ├── floatInput.js # 浮点输入模块 │ └── settings.js # 设置模块 ├── src/ # 核心代码 │ ├── core/ # 核心功能 │ │ ├── bridges/ # 框架桥接(OpenClaw、ZeroClaw) │ │ └── types.ts # 类型定义 │ ├── web/ # Web 服务器 │ └── index.ts # 主入口 ├── ui/ # 用户界面 │ └── float-input/ # 浮点输入组件 ├── dist/ # TypeScript 编译输出 ├── package.json # 项目配置 ├── tsconfig.json # TypeScript 配置 └── README.md # 项目说明 ``` ## 使用指南 ### 创建 AI 数字员工 1. 打开 AgentBrother 应用 2. 在左侧导航栏点击「代理」 3. 选择一个 Agent 框架(OpenClaw 或 ZeroClaw) 4. 点击「创建新代理」按钮 5. 填写代理名称、选择图标、配置模型参数 6. 点击「保存」按钮完成创建 ### 与 Agent 交互 1. 在左侧导航栏点击「浮点输入」 2. 选择要对话的 Agent 3. 在输入框中输入消息或拖拽文件到输入区域 4. 点击发送按钮或按 Enter 键 5. 等待 Agent 回复 ### 使用浮点输入 1. 按下全局快捷方式(默认为 `Cmd+Shift+A`) 2. 在弹出的浮点窗口中输入消息 3. 按 Enter 键发送消息 4. 查看 Agent 回复 ### 文件拖拽功能 支持拖拽以下格式文件到聊天区域: - **.txt** - 纯文本文件,直接读取内容 - **.doc/.docx** - Word 文档,使用 mammoth.js 提取文本 - **.pdf** - PDF 文件,使用 pdf-parse 提取文本 文件大小限制:100KB ### 配置消耗管理 1. 在左侧导航栏点击「配置消耗」 2. 查看 OpenClaw 和 ZeroClaw 框架状态 3. 点击「启动 Gateway」手动启动 OpenClaw Gateway 4. 应用启动时会自动检测并启动 OpenClaw Gateway(如果已安装) ## 支持的平台 - **Mac**:通过 Electron 应用(主要支持平台) - **Windows**:通过 Electron 应用 - **Web**:通过浏览器访问 - **移动设备**:通过 Web 界面 ## 配置 ### 框架配置 AgentBrother 会自动检测系统中安装的 OpenClaw 和 ZeroClaw 框架: - **OpenClaw**:检测路径 `~/Documents/trae_projects/openclaw_test/openclaw.sh` - **ZeroClaw**:检测路径 `~/Documents/trae_projects/zeroclaw_test/zeroclaw-main/target/release-fast/zeroclaw` ### 浮点输入配置 可以在设置中配置浮点输入的: - 启用/禁用状态 - 全局快捷方式(默认 `Cmd+Shift+A`) - 位置(左上角、右上角、左下角、右下角、中心) - 透明度 - 是否始终置顶 ### 环境变量 - `ARK_API_KEY` - 火山引擎 API 密钥 - `OPENCLAW_CONFIG_PATH` - OpenClaw 配置文件路径(可选) ## 扩展 ### 添加新的 Agent 框架 要添加新的 Agent 框架,需要: 1. 在 `src/core/bridges/` 目录下创建一个新的桥接类,继承自 `FrameworkBridge` 2. 实现所有抽象方法(detect、connect、disconnect、getAgents、sendMessage 等) 3. 在 `src/index.ts` 中注册新的桥接类 4. 在 `electron/renderer/agents.js` 中添加框架特定的配置 UI ### 支持的 Agent 类型 AgentBrother 支持多种 Agent 类型: - **chat** - 聊天型 Agent - **code** - 代码型 Agent - **image** - 图像型 Agent - **video** - 视频型 Agent - **audio** - 音频型 Agent - **custom** - 自定义型 Agent ## 开发指南 ### 技术栈 - **前端**:HTML5、CSS3、JavaScript (ES6+) - **桌面**:Electron 33+ - **后端**:Node.js、Express - **类型**:TypeScript 5+ - **构建**:electron-builder ### 文件解析依赖 - **mammoth** (^1.11.0) - 解析 .docx 文件 - **pdf-parse** (^2.4.5) - 解析 .pdf 文件 ### 开发注意事项 1. **TypeScript 编译**:修改 `src/` 目录下的文件后需要运行 `npm run build` 编译 2. **Electron 主进程**:修改 `electron/main.js` 后需要重启应用 3. **渲染进程**:修改 `electron/renderer/` 下的文件后刷新页面即可 4. **文件解析**:文件解析功能依赖 Node.js 环境,仅在 Electron 中可用 ## 常见问题 ### Q: 启动时提示 "Electron API 未就绪" A: 这是正常的初始化顺序问题,应用会在 1 秒后自动重试。如果持续出现,请检查 Electron 是否正确加载。 ### Q: OpenClaw Gateway 无法自动启动 A: 请检查: 1. OpenClaw 是否已安装在默认路径 2. `openclaw.sh` 脚本是否有执行权限 3. 端口 18789 是否被占用 ### Q: 文件拖拽功能不可用 A: 文件拖拽功能仅在 Electron 桌面应用中可用,Web 版本不支持。 ### Q: 编译时出现类型错误 A: 请确保使用 Node.js 20+ 版本,并运行 `npm install` 安装所有依赖。 ## 贡献 欢迎贡献代码、报告问题或提出建议! ### 提交 Issue 请描述: - 问题现象 - 复现步骤 - 期望行为 - 实际行为 - 环境信息(操作系统、Node.js 版本等) ### 提交 PR 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/amazing-feature`) 3. 提交更改 (`git commit -m 'Add amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 创建 Pull Request ## 许可证 MIT License ## 更新日志 ### v1.0.0 - 初始版本发布 - 支持 OpenClaw 和 ZeroClaw 框架 - 实现浮点输入功能 - 支持文件拖拽解析(txt、doc、docx、pdf) - 自动启动 OpenClaw Gateway - 跨平台支持(Mac、Windows、Web) **(声明:这是我自己玩的项目,不提供任何支持或保证,是个半吊子想法。如果使用问题或建议,欢迎联系我。谢谢。)**