docs: open source under 0BSD
Cross-platform packages / Validate source (push) Canceled after 0s
Cross-platform packages / linux arm64 (push) Canceled after 0s
Cross-platform packages / macos arm64 (push) Canceled after 0s
Cross-platform packages / windows arm64 (push) Canceled after 0s
Cross-platform packages / linux x64 (push) Canceled after 0s
Cross-platform packages / macos x64 (push) Canceled after 0s
Cross-platform packages / windows x64 (push) Canceled after 0s
Cross-platform packages / Publish GitHub Release (push) Canceled after 0s
Cross-platform packages / Validate source (push) Canceled after 0s
Cross-platform packages / linux arm64 (push) Canceled after 0s
Cross-platform packages / macos arm64 (push) Canceled after 0s
Cross-platform packages / windows arm64 (push) Canceled after 0s
Cross-platform packages / linux x64 (push) Canceled after 0s
Cross-platform packages / macos x64 (push) Canceled after 0s
Cross-platform packages / windows x64 (push) Canceled after 0s
Cross-platform packages / Publish GitHub Release (push) Canceled after 0s
This commit is contained in:
+12
-6
@@ -1,12 +1,11 @@
|
||||
# GoodBuddy 功能矩阵与路线图
|
||||
|
||||
本文集中记录 GoodBuddy 已提供、正在开发和计划中的主要能力。路线图用于表达产品方向,不代表未完成能力已经包含在当前发布版本中。
|
||||
本文记录 GoodBuddy 的已提供能力和路线图。未完成项目不代表已包含在当前版本中。
|
||||
|
||||
## 状态说明
|
||||
|
||||
- [x] **已提供**:已在当前代码和产品流程中提供。
|
||||
- [ ] **开发中**:已进入实现或集成阶段,完整交付前仍可能调整。
|
||||
- [ ] **规划中**:已确认产品方向,尚未承诺具体发布时间。
|
||||
- [x] 已提供
|
||||
- [ ] 开发中或规划中,具体以条目标注为准
|
||||
|
||||
## 功能总表
|
||||
|
||||
@@ -15,6 +14,7 @@
|
||||
- [x] **跨平台桌面应用**:支持 Windows、macOS、Linux,以及 `x64`、`arm64` 发布目标。
|
||||
- [x] **Projects 与独立对话**:按项目隔离上下文,管理会话、附件和 Git 工作区变更。
|
||||
- [x] **文件、截图、窗口、剪贴板上下文**:用户明确选择后才加入模型上下文。
|
||||
- [x] **富文本回答**:支持 GitHub Flavored Markdown、LaTeX 数学公式和受控 Mermaid 图表;大图可缩放、拖动或查看源码,失败时保留原始图表代码。
|
||||
- [ ] **项目 Agent Space 与策略包**(规划中):在现有 Project 中统一角色、知识、Skills/MCP、模型、变量、审批策略、预算和超时,并支持模板化复用。
|
||||
|
||||
### Agent Runtime 与模型连接
|
||||
@@ -32,7 +32,7 @@
|
||||
### Skills、MCP 与知识库
|
||||
|
||||
- [x] **Skills 按需接入**:使用有界资源和受控 Runtime 边界。
|
||||
- [x] **MCP Tools**:直连模型可使用显式启用的 MCP Tools。
|
||||
- [x] **MCP Tools**:直连模型可使用显式启用的 MCP Tools,并可在模型轮次间按需刷新动态 MCP 工具。
|
||||
- [x] **本地知识库**:支持文件、目录和网页导入、SQLite FTS5 检索及来源追溯。
|
||||
- [x] **知识图谱**:支持规则、模型和混合抽取,以及实体、关系、别名和证据维护。
|
||||
- [x] **向量模型配置与检索**:可配置兼容 Embeddings 接口并用于语义检索。
|
||||
@@ -66,6 +66,12 @@
|
||||
- [x] **版本检查**:仅检查固定官方 Release 和当前平台清单,不自动下载或安装。
|
||||
- [x] **内网兼容模式**:默认开启;允许应用内 HTTP 与无效、自签名或过期的 HTTPS 证书,关闭后恢复严格地址和证书校验。
|
||||
|
||||
### 开源、构建与发布
|
||||
|
||||
- [x] **0BSD 开源许可**:原创代码可自由使用、复制、修改、分发和商用;第三方组件和资源仍遵循各自许可证。
|
||||
- [x] **可复现依赖安装与源码构建**:使用锁定依赖、Node.js 24 和统一的测试、类型检查、Lint、生产构建命令。
|
||||
- [x] **六平台原生发布矩阵**:Windows、macOS、Linux 的 `x64`、`arm64` 目标由原生 Runner 构建,并提供发布清单和 SHA-256 哈希。
|
||||
|
||||
### 开放接口、团队协作与远程执行
|
||||
|
||||
- [x] **远程任务委派**:仅在用户显式配置端点和令牌后启用,按全局内网兼容模式使用 HTTP(S),结果进入持久化发件箱。
|
||||
@@ -77,7 +83,7 @@
|
||||
|
||||
### Agent 框架与协作能力
|
||||
|
||||
参考 MesaLogo 中已经存在或正在验证的 Action Space、受控工作流、Subagent、MCP 管理、批量实验和运行观测思路,GoodBuddy 计划在现有本地优先架构上逐步增加以下能力。这里列出的项目均为 GoodBuddy 自身规划,不表示 MesaLogo 的原型或路线图已在 GoodBuddy 中提供。
|
||||
以下能力均为 GoodBuddy 规划,不代表已在当前版本中提供。
|
||||
|
||||
- [ ] **项目 Agent Space 与策略包**:不新增与 Project 重复的一级概念,而是在现有 Project 中统一角色、知识集合、Skills/MCP、默认模型、变量、工作模式、审批策略、预算和超时,并支持模板化复用。
|
||||
- [ ] **统一 Run Graph**:先统一父子任务、节点、模型调用、知识命中、工具审批、用量、成果和取消事件,作为工作流、可执行 Subagent、批量实验和回放的共同基础。
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
Copyright (C) 2026 MesaLogo
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software for any
|
||||
purpose with or without fee is hereby granted.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
||||
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
PERFORMANCE OF THIS SOFTWARE.
|
||||
@@ -1,155 +1,75 @@
|
||||
# GoodBuddy
|
||||
|
||||
面向全球专业工作场景的安全、跨平台桌面智能助手。
|
||||
|
||||
GoodBuddy 将模型连接、Agent Runtime、本地知识库、知识图谱、远程消息通道、任务协作和持续成长能力组织在同一个桌面工作空间中。它不是简单的聊天窗口,而是一套可审计、可控制、可长期使用的个人智能工作环境。
|
||||
安全、跨平台、本地优先的桌面 AI 助手与 Agent 工作空间。
|
||||
|
||||

|
||||
|
||||
## 为什么选择 GoodBuddy
|
||||
## 核心能力
|
||||
|
||||
### 安全可控的 Agent 执行
|
||||
|
||||
GoodBuddy 通过统一的 Agent Runtime 控制层接入直连模型、OpenCode 和 Continue。工具不会被直接暴露给界面,所有执行都受到工作模式、权限策略和运行边界约束。
|
||||
|
||||
- `Ask`:只读问答,不调用工具。
|
||||
- `Execute`:选择该模式即授权当前交互运行使用已启用的受控工具。
|
||||
- 可在设置中禁止直连模型执行所有工具;工具调用仍记录到活动。
|
||||
- 统一处理取消、超时、输出边界、进程退出和异常恢复。
|
||||
|
||||
### 数据主权与本地优先
|
||||
|
||||
- 会话、任务、成果、记忆、知识库和图谱保存在本地 SQLite。
|
||||
- API Key 通过系统安全存储加密,不以明文写入配置。
|
||||
- Electron Main、Preload、Renderer 严格分层,Renderer 仅能使用类型化 IPC。
|
||||
- 子进程使用环境变量白名单,避免继承无关凭据。
|
||||
- 默认不依赖 GoodBuddy 云端账户,也不代理用户的模型流量。
|
||||
|
||||
### 跨平台、开放协议与自托管
|
||||
|
||||
GoodBuddy 面向全球用户提供跨平台发布、开放模型协议、远程消息通道、离线语音和本地或私有网络部署能力。下表只列当前代码与发布流程覆盖的目标;具体操作系统版本、设备、桌面环境和网络组合仍应在目标环境完成安装、启动、模型调用和桌面集成验收。
|
||||
|
||||
#### 支持的平台
|
||||
|
||||
| 操作系统 | 处理器架构 | 交付形式 |
|
||||
| --- | --- | --- |
|
||||
| Windows | `x64`、`arm64` | NSIS 安装包、便携 ZIP |
|
||||
| macOS | `x64`、`arm64` | DMG、ZIP |
|
||||
| Linux | `x64`、`arm64` | AppImage、DEB |
|
||||
|
||||
六组系统与架构目标均由原生 GitHub Actions Runner 构建和校验,并生成包含 SHA-256 哈希的发布清单。其他操作系统和处理器架构目前不提供正式发布包。
|
||||
|
||||
#### 模型与服务连接
|
||||
|
||||
GoodBuddy 不绑定特定模型厂商。用户可以通过 OpenAI Responses、OpenAI 兼容 Chat Completions、Anthropic Messages、OpenAI Images Generations 和 OpenAI 兼容 Embeddings 接口连接云端服务、本机模型、私有服务或企业网关。支持自定义服务地址、API Key 和无需认证的受控连接;文本、推理、工具、图片和上下文能力取决于所连接服务的具体实现。
|
||||
|
||||
#### 消息通道、离线语音与自托管能力
|
||||
|
||||
| 类别 | 已支持项 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 消息通道 | 微信 ClawBot、企业微信、钉钉 | 支持独立通道项目与远程会话;提供加密凭据、连接测试、动态启停、发送者范围和状态诊断 |
|
||||
| 微信附件 | 文字、图片和文件 | 微信 ClawBot 使用本机扫码绑定;单条消息最多 4 个附件,解密后合计不超过 12MB |
|
||||
| 远程 Runtime | 直连文本模型、OpenCode、Continue | 每个通道使用系统管理项目和独立远程会话,支持 Ask / Execute 与活动审计 |
|
||||
| 离线语音(SenseVoice) | SenseVoiceSmall INT8 | 支持中文、粤语、英语、日语和韩语,适合本地 CPU |
|
||||
| 中英及中粤英离线语音 | Paraformer 中英双语 INT8、Paraformer 中粤英三语 INT8 | 分别面向普通话与英语,以及普通话、粤语和英语的快速本地识别 |
|
||||
| 多语言离线语音 | Whisper Tiny、Small、Medium 多语言 INT8 | 提供从轻量快速到高质量的多语言识别选择 |
|
||||
| 界面语言与字体 | 简体中文、English;Inter Variable、Noto Sans SC Variable | 语言与字体资源随应用打包,不依赖远程字体服务 |
|
||||
| 本地数据 | SQLite、FTS5、本地知识库与知识图谱 | 会话、任务、成果、记忆和知识数据默认保存在本机 |
|
||||
| 自托管模型与网关 | 自定义 HTTP(S) 地址、API Key 或无需认证 | 可连接本机、私有网络、企业网关和自托管模型服务 |
|
||||
| 私有网络连接兼容性 | HTTP、自签名证书、无效或过期证书 | GoodBuddy 进程管理的连接采用宽松证书策略;外部浏览器以及微信凭据和媒体端点仍执行各自的严格校验 |
|
||||
| MCP | `stdio`、Streamable HTTP、SSE | 可接入本机或远程 MCP Server;远程连接支持 Bearer Token |
|
||||
| Agent Runtime | 内置 OpenCode、Continue | 支持自定义程序路径、配置路径、模型来源和服务地址;Linux 内置 OpenCode 可使用 bubblewrap 严格沙箱 |
|
||||
|
||||
> 自定义端点表示 GoodBuddy 已实现对应协议并允许用户配置服务地址,不等同于对每个服务商、模型版本或套餐逐一完成认证。
|
||||
|
||||
## 核心功能
|
||||
|
||||
### 一体化智能工作空间
|
||||
|
||||
- Projects 与独立对话上下文。
|
||||
- 专家角色和最多三个只读专家并行分析。
|
||||
- 任务、活动、成果、记忆和自动化集中管理。
|
||||
- 支持文件、桌面截图、应用窗口、剪贴板和语音上下文。
|
||||
- 显示真实 Git 工作区变更。
|
||||
- 支持远程任务委派与持久化结果发件箱。
|
||||
- Skills 与 MCP 能力按需接入。
|
||||
|
||||
### 远程消息通道与微信 ClawBot
|
||||
|
||||
微信 ClawBot、企业微信和钉钉分别使用系统管理的通道项目。远程发送者拥有独立会话,任务、活动和成果持续归属于对应通道与项目。
|
||||
|
||||
- 微信 ClawBot 使用本机扫码绑定,支持个人微信私聊文字、图片和文件。
|
||||
- 单条微信消息最多 4 个附件,解密后合计不超过 12MB;图片和支持的文档进入现有受控上下文。
|
||||
- 通道可选择直连文本模型、OpenCode 或 Continue。OpenCode/Continue 始终跟随“Agent Runtime”中的全局配置,不在通道中维护第二套 Runtime 配置。
|
||||
- 远程消息支持 Ask 与 Execute。Execute 不显示通道专属逐次审批,但仍受发送者范围、项目目录、Runtime、沙箱、能力开关和活动审计约束。
|
||||
- 当前任务生成的图片可以返回微信;明确要求文件时可将本次最终文本生成为 Markdown 附件,不自动发送已有工作区文件。
|
||||
- “断开本机绑定”只停止本机收发并清除本地凭据,不会删除通道项目、远程会话或历史,也不承诺解除微信服务端授权。
|
||||
|
||||
完整设计、安全边界和联调状态见[远程消息通道项目与微信 ClawBot 集成 PRD](docs/features/wechat-clawbot-channel-project-prd.md)。
|
||||
|
||||
### 本地知识库与知识图谱
|
||||
|
||||
文件、目录和网页内容可以按知识库独立管理。GoodBuddy 会完成解析、索引、检索和图谱构建,并保留可追溯的来源与证据。
|
||||
- **安全执行**:`Ask` 保持只读;`Execute` 仅运行已启用且受边界约束的工具,并保留活动记录。
|
||||
- **本地优先**:会话、任务、成果、记忆、知识库和图谱保存在本地 SQLite;API Key 由系统安全存储加密。
|
||||
- **多 Runtime**:支持直连模型、OpenCode 和 Continue,统一处理取消、超时、输出限制和进程退出。
|
||||
- **开放连接**:支持 OpenAI Responses、OpenAI 兼容 Chat Completions、Anthropic Messages、OpenAI Images、Embeddings、Skills 和 MCP。
|
||||
- **知识工作区**:支持文件、目录和网页导入,以及全文、词组、向量和图谱混合检索。
|
||||
- **工作管理**:集中管理 Projects、对话、任务、活动、成果、记忆、魔法笔记和智能心跳。
|
||||
- **远程通道**:支持微信 ClawBot、企业微信和钉钉,每个发送者使用独立远程会话。
|
||||
- **桌面上下文**:可选择文件、截图、应用窗口、剪贴板和语音作为上下文。
|
||||
- **离线语音**:支持 SenseVoice、Paraformer 和 Whisper 本地模型。
|
||||
- **富文本回答**:支持 Markdown、LaTeX 公式和受控 Mermaid 图表。
|
||||
|
||||

|
||||
|
||||
- SQLite FTS5、中文词组、向量和图谱混合检索,并提供可调权重、本地重排与有界上下文。
|
||||
- 检索测试工作台展示候选数量、通道降级、耗时、排名、分数和实际送入模型的上下文。
|
||||
- 支持固定长度、结构化和父子分块,以及分块搜索、编辑、停用、删除和可取消重建。
|
||||
- 对话可选择由模型按需检索或每次先检索,并展示检索状态与可打开上下文的来源引用。
|
||||
- 支持规则、模型和混合图谱抽取。
|
||||
- 支持实体、关系、别名、证据与来源位置追溯。
|
||||
- 图谱可搜索、筛选、缩放和拖动节点。
|
||||
- 支持实体编辑、合并以及关系维护。
|
||||
- 文档解析包含压缩包展开限制、路径校验和敏感字段过滤。
|
||||
|
||||

|
||||
|
||||
### 魔法笔记
|
||||
|
||||
魔法笔记提供本地优先的笔记与待办工作台,支持范围管理、编辑、筛选和受控 AI 评论。
|
||||
|
||||

|
||||
|
||||
### 智能心跳
|
||||
|
||||
智能心跳让 GoodBuddy 不只响应当前问题,还能定期回顾近期工作,沉淀长期记忆,发现风险,并将洞察转化为可处理的建议。
|
||||
|
||||

|
||||
|
||||
- 按项目或全局配置周期回顾计划。
|
||||
- 展示心跳健康、记忆沉淀、洞察发现和行动转化。
|
||||
- 提供成长趋势、最新报告和可审计的运行轨迹。
|
||||
- 建议记忆可确认或忽略。
|
||||
- 后续任务可带入 Ask 对话、标记完成或忽略。
|
||||
- 支持手动运行、暂停、恢复和安全删除计划。
|
||||
完整功能和路线图见 [FEATURES.md](FEATURES.md)。
|
||||
|
||||
### 多 Runtime 与模型连接
|
||||
## 安装
|
||||
|
||||
| 能力 | 适用场景 | 控制方式 |
|
||||
从 [GitHub Releases](https://github.com/mesalogo/goodbuddy/releases) 下载:
|
||||
|
||||
| 系统 | 架构 | 格式 |
|
||||
| --- | --- | --- |
|
||||
| 直连模型 | 问答、知识总结、受控工具执行、图像生成 | Ask 只读;Execute 自动授权已启用的工作区、浏览器与 MCP 工具,可设置为全部禁止 |
|
||||
| OpenCode | 完整编码与工作区任务 | Execute 不弹 GoodBuddy 审批,保留 Runtime 自身权限、取消和活动记录 |
|
||||
| Continue | Agent 编码与工作区任务 | Execute 不弹 GoodBuddy 审批,使用独立宿主、取消和活动记录 |
|
||||
| Windows | `x64`、`arm64` | NSIS、便携 ZIP |
|
||||
| macOS | `x64`、`arm64` | DMG、ZIP |
|
||||
| Linux | `x64`、`arm64` | AppImage、DEB |
|
||||
|
||||
消息通道选择 OpenCode 或 Continue 时只选择 Runtime 类型,具体模型来源、自有配置、可执行文件和服务地址统一复用“Agent Runtime”设置,并在每次远程请求开始时解析当前全局配置。
|
||||
当前尚未配置代码签名和 macOS notarization,系统可能显示安全提示。
|
||||
|
||||
## 功能矩阵与路线图
|
||||
## 从源码运行
|
||||
|
||||
以下为仓库首页的简要路线图;完整能力说明、状态和重大规划统一记录在 [FEATURES.md](FEATURES.md)。
|
||||
需要 Node.js 24 和 npm:
|
||||
|
||||
- [x] [跨平台桌面工作空间与安全上下文](FEATURES.md#桌面基础工作空间与上下文)
|
||||
- [x] [多 Runtime、模型连接、Skills 与 MCP](FEATURES.md#agent-runtime-与模型连接)
|
||||
- [x] [本地知识库、向量检索与知识图谱](FEATURES.md#skillsmcp-与知识库)
|
||||
- [x] [任务、成果、记忆与智能心跳](FEATURES.md#工作管理长期协作与工作流)
|
||||
- [x] [微信 ClawBot、企业微信与钉钉消息通道](FEATURES.md#浏览器通信语音与应用维护)
|
||||
- [x] [本地录音与离线转写](FEATURES.md#浏览器通信语音与应用维护)
|
||||
- [x] [魔法笔记 / Magic Notes](FEATURES.md#知识工作空间与魔法笔记):本地优先的笔记与待办工作台,支持受控 AI 评论。
|
||||
- [ ] [Agent 框架、受控工作流与团队协作](FEATURES.md#agent-框架与协作能力)
|
||||
- [ ] [多云远程沙盒 Agent](FEATURES.md#多云远程沙盒-agent)
|
||||
```bash
|
||||
git clone https://github.com/mesalogo/goodbuddy.git
|
||||
cd goodbuddy
|
||||
npm ci
|
||||
npm run dev
|
||||
```
|
||||
|
||||
`[x]` 表示当前已提供,`[ ]` 表示开发中或规划中;未完成项目不代表已包含在当前发布版本中。
|
||||
构建与打包说明见 [BUILD.md](BUILD.md)。
|
||||
|
||||
## 隐私说明
|
||||
## 隐私与安全
|
||||
|
||||
模型请求只会发送到用户选择的模型连接。本地数据保存在当前系统的应用数据目录中;远程委派仅在用户显式配置端点和令牌后启用。为兼容受控私有网络,GoodBuddy 进程管理的连接允许 HTTP,并接受无效、自签名或过期的 HTTPS 证书;交由外部浏览器打开的 URL 仍遵循浏览器自身的证书策略。微信凭据和媒体端点不受该策略放宽,始终只允许经过校验的腾讯微信 HTTPS 主机与重定向。
|
||||
- 模型请求只发送到用户选择的服务。
|
||||
- 本地数据默认保存在系统应用数据目录。
|
||||
- Renderer 不接触原始 Electron API 或模型凭据。
|
||||
- 远程委派仅在用户配置端点和令牌后启用。
|
||||
- 内网兼容模式允许应用内 HTTP 和非标准 HTTPS 证书;微信凭据和媒体端点仍执行严格校验。
|
||||
|
||||
## 参与贡献
|
||||
|
||||
欢迎提交 Issue 和 Pull Request。请先阅读 [AGENTS.md](AGENTS.md),提交前运行:
|
||||
|
||||
```bash
|
||||
npm test
|
||||
npm run typecheck
|
||||
npm run lint
|
||||
```
|
||||
|
||||
## 开源许可
|
||||
|
||||
GoodBuddy 的原创代码采用 [0BSD License](LICENSE),可自由使用、修改、分发和商用。第三方组件和资源遵循各自许可证。
|
||||
|
||||
Generated
+1
-1
@@ -7,7 +7,7 @@
|
||||
"": {
|
||||
"name": "goodbuddy",
|
||||
"version": "0.8.20",
|
||||
"license": "UNLICENSED",
|
||||
"license": "0BSD",
|
||||
"dependencies": {
|
||||
"@antv/g6": "^5.1.1",
|
||||
"@modelcontextprotocol/sdk": "^1.30.0",
|
||||
|
||||
+8
-1
@@ -8,7 +8,14 @@
|
||||
"author": {
|
||||
"name": "MesaLogo"
|
||||
},
|
||||
"license": "UNLICENSED",
|
||||
"license": "0BSD",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/mesalogo/goodbuddy.git"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/mesalogo/goodbuddy/issues"
|
||||
},
|
||||
"main": "./out/main/index.js",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
|
||||
Reference in New Issue
Block a user