diff --git a/.specstory/.gitignore b/.specstory/.gitignore index c5b4129ef..53b537f48 100644 --- a/.specstory/.gitignore +++ b/.specstory/.gitignore @@ -1,4 +1,2 @@ -# SpecStory project identity file -/.project.json # SpecStory explanation file /.what-is-this.md diff --git a/.specstory/history/2026-02-25_09-23Z-current-branch-status.md b/.specstory/history/2026-02-25_09-23Z-current-branch-status.md deleted file mode 100644 index 4d968c8b8..000000000 --- a/.specstory/history/2026-02-25_09-23Z-current-branch-status.md +++ /dev/null @@ -1,266 +0,0 @@ - - - - -# Current branch status (2026-02-25 09:23Z) - -_**User (2026-02-25 09:23Z)**_ - -查看当前分支情况 - ---- - -_**Agent (model claude-4.5-sonnet-thinking, mode Agent)**_ - -
Thought Process -用户要查看当前分支情况。我需要运行 git 命令来查看当前分支状态。最常用的命令是: -- `git branch` - 查看本地分支 -- `git status` - 查看当前分支和状态 -- `git branch -a` - 查看所有分支(包括远程) - -让我先运行 git status 和 git branch 来查看当前分支情况。
- ---- - -我来帮你查看当前的分支情况。 - ---- - - -
Tool use: **run_terminal_cmd** • Run command: cd /home/0668001505/Desktop/picoclaw/picoclaw && git branch -a - -```bash -cd /home/0668001505/Desktop/picoclaw/picoclaw && git branch -a -``` - -``` -* main - remotes/origin/HEAD -> origin/main - remotes/origin/feat/agent-browser-tool - remotes/origin/feat/mcp-context7-integration-cleanup - remotes/origin/main - remotes/origin/refactor/channel-system - -``` -
-
- ---- - - -
Tool use: **run_terminal_cmd** • Run command: cd /home/0668001505/Desktop/picoclaw/picoclaw && git status - -```bash -cd /home/0668001505/Desktop/picoclaw/picoclaw && git status -``` - -``` -位于分支 main -您的分支与上游分支 'origin/main' 一致。 - -未跟踪的文件: - (使用 "git add <文件>..." 以包含要提交的内容) - .cursorindexingignore - .specstory/ - -提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪) - -``` -
-
- ---- - -
Thought Process -好的,我已经获取了分支信息。让我总结一下: - -1. 当前在 main 分支上 -2. 本地分支只有 main -3. 远程分支有: - - origin/main - - origin/feat/agent-browser-tool - - origin/feat/mcp-context7-integration-cleanup - - origin/refactor/channel-system -4. 当前分支与上游分支 origin/main 一致 -5. 有一些未跟踪的文件(.cursorindexingignore 和 .specstory/) - -现在我用中文总结给用户。
- ---- - -根据查看结果,当前分支情况如下: - -## 📍 当前分支 -- **当前所在分支**: `main` -- **状态**: 与上游分支 `origin/main` 一致 - -## 📋 本地分支 -- `main` (当前分支) - -## 🌐 远程分支 -- `origin/main` -- `origin/feat/agent-browser-tool` -- `origin/feat/mcp-context7-integration-cleanup` -- `origin/refactor/channel-system` - -## 📝 工作区状态 -- 工作区干净,没有待提交的更改 -- 有未跟踪的文件: - - `.cursorindexingignore` - - `.specstory/` - -你目前在主分支上,且与远程保持同步。有几个特性分支在远程仓库中,如果需要切换到其他分支进行开发,可以使用 `git checkout` 命令。 - ---- - -_**User (2026-02-25 09:23Z)**_ - -ZeroClaw 是一个高性能、低资源占用、可组合的自主智能体运行时。ZeroClaw 是面向智能代理工作流的运行时操作系统,通常被视为 OpenClaw 的 Rust 重写版本。 它抽象了模型、工具、记忆和执行层,使代理可以一次构建、随处运行,它通过 Trait 驱动架构实现了模型、通信渠道、工具、记忆系统等组件的可插拔替换,旨在提供一个安全、快速且资源友好的自主智能体运行环境。 -核心定位:定位为生产级“Agent 操作系统”(Agent OS),适用于边缘设备、高并发 Agent 集群、自动化运维等场景。 - -技术栈:采用 Rust 编写,单二进制部署,跨 ARM / x86 / RISC-V,单文件体积极小(3.4MB 或 8.8MB 版本),内存占用极低(低于 5MB),启动速度极快(启动时间可低至毫秒级)。 - -安全设计:内置安全沙箱、配对鉴权(pairing authentication)和显式 allowlist,默认安全性高。 - -特性:支持 17+ 多种通信渠道(Telegram、Discord、Slack 等),支持 22+ AI 提供商(OpenAI、Claude、Ollama 等),支持本地模型运行 - - - - -参考上面zeroclaw ,给出本项目的描述 - ---- - -_**Agent (model claude-4.5-sonnet-thinking, mode Agent)**_ - -
Thought Process -用户希望我参考 ZeroClaw 的描述风格,给出当前项目 picoclaw 的描述。我需要先了解一下 picoclaw 项目的实际情况,然后基于项目的真实特性,仿照 ZeroClaw 的描述风格来撰写。 - -让我先查看一下项目的基本信息,比如 README、package.json 或其他配置文件。
- ---- - -我来帮你了解项目并给出描述。首先让我查看一下项目的基本信息。 - ---- - - -
Tool use: **read_file** • Read file: /home/0668001505/Desktop/picoclaw/picoclaw/README.md - -
-
- ---- - -Could not find file '/home/0668001505/Desktop/picoclaw/picoclaw/package.json' in the workspace. - ---- - - -
- Tool use: **list_dir** • Listed directory, 0 results - -No results found -
-
- ---- - -
Thought Process -好的,现在我了解了 picoclaw 项目的情况。这是一个用 Go 语言编写的超轻量级 AI 助手,与 ZeroClaw(Rust 编写)的定位类似,但更注重极致的资源效率。 - -让我根据 README 的内容,参考 ZeroClaw 的描述风格,给出 picoclaw 的项目描述。
- ---- - -根据项目信息,我为你撰写了 PicoClaw 的描述,参考了 ZeroClaw 的风格: - ---- - -## PicoClaw 项目描述 - -**PicoClaw 是一个超轻量、极低资源占用的个人 AI 助手运行时。** PicoClaw 受 nanobot 启发,从 TypeScript 完全重写为 Go 语言,通过 AI 自举过程(self-bootstrapping)完成架构迁移和代码优化,是 OpenClaw 的极致精简版本。它抽象了模型、工具、通信渠道和记忆系统,使智能代理可以一次构建、随处运行,旨在将 AI 助手带入 $10 硬件和 <10MB 内存的极限环境。 - -### 核心定位 -定位为**超轻量级"个人 AI 助手操作系统"(Personal AI Assistant OS)**,适用于边缘设备、低功耗硬件(RISC-V单板机)、旧手机复活、智能家居、服务器自动化运维等场景,让 AI 智能体能够在资源受限的环境中高效运行。 - -### 技术栈 -- **开发语言**:采用 Go 编写,单二进制部署,无任何外部依赖 -- **跨平台支持**:原生支持 x86_64、ARM64、RISC-V 架构 -- **极致轻量**: - - 内存占用:**<10MB**(比 OpenClaw 减少 99%,比 NanoBot 减少 90%) - - 启动速度:**<1秒**(即使在 0.6GHz 单核处理器上,比 OpenClaw 快 400 倍) - - 单文件体积:约 10MB 左右 -- **成本优势**:可运行在 $10 硬件上(比 Mac mini 便宜 98%) - -### 安全设计 -- **内置安全沙箱**:默认限制文件和命令访问范围(`restrict_to_workspace`) -- **白名单机制**:通过 `allow_from` 配置显式授权用户访问 -- **危险命令拦截**:自动阻止 `rm -rf`、`format`、`shutdown` 等危险操作 -- **一致性安全边界**:主 Agent、子 Agent、定时任务共享相同安全限制 - -### 核心特性 - -#### 🌐 多通道支持(7+ 通信平台) -- **即时通讯**:Telegram、Discord、QQ、钉钉、LINE、企业微信(WeCom) -- **灵活接入**:通过配置文件即可启用/禁用任意通道 - -#### 🤖 多模型支持(15+ AI 提供商) -- **主流大模型**:OpenAI、Anthropic (Claude)、Google Gemini、智谱 AI (GLM)、通义千问 (Qwen)、DeepSeek、Moonshot、Groq、Cerebras、NVIDIA -- **聚合服务**:OpenRouter(访问所有主流模型) -- **本地模型**:Ollama、vLLM、GitHub Copilot -- **零代码扩展**:通过 `vendor/model` 格式(如 `zhipu/glm-4.7`)即可添加新提供商 - -#### 🛠️ 丰富工具生态 -- **文件操作**:读写、编辑、列目录(沙箱保护) -- **命令执行**:系统命令执行(危险命令拦截) -- **网络搜索**:Brave Search、Tavily、DuckDuckGo(自动降级) -- **定时任务**:支持一次性提醒和周期性任务(Cron 表达式) -- **技能系统**:支持自定义技能扩展(Skills) -- **子 Agent 生成**:`spawn` 工具创建独立子智能体 - -#### 💾 记忆与上下文管理 -- **会话历史**:自动保存对话上下文(sessions/) -- **长期记忆**:持久化记忆系统(MEMORY.md) -- **Agent 人格**:可配置的身份(IDENTITY.md)和灵魂(SOUL.md) -- **用户偏好**:记录用户习惯和偏好(USER.md) - -#### ⏰ 心跳机制(Heartbeat) -- **周期性任务**:每 30 分钟自动执行 HEARTBEAT.md 中的任务 -- **异步子 Agent**:长时间任务通过 `spawn` 创建独立子智能体,不阻塞主流程 -- **主动通知**:子 Agent 可通过 `message` 工具主动向用户推送结果 - -#### 🐳 部署方式多样 -- **预编译二进制**:直接下载运行 -- **源码编译**:支持 `make build` 和 `make build-all`(多平台) -- **Docker Compose**:容器化部署,支持 Gateway 和 Agent 模式 -- **终端模式**:交互式命令行聊天 - -### 创新应用场景 -- **旧手机复活**:在 Termux 中运行,让十年前的 Android 手机变身 AI 助手 -- **极低成本部署**:$9.9 的 LicheeRV-Nano(RISC-V)可运行完整 AI 助手 -- **服务器运维**:NanoKVM 上实现自动化服务器维护 -- **智能监控**:MaixCAM 上构建智能摄像头 - -### 架构设计 -- **模块化架构**:Agent、Provider、Channel、Tool、Session 完全解耦 -- **可插拔组件**:通过接口(Interface)实现组件替换 -- **消息总线**:基于 Event Bus 的消息路由系统 -- **会话管理**:支持多用户、多通道的会话隔离 -- **负载均衡**:同一 model_name 配置多个端点自动轮询 - -### 与同类项目对比 - -| | **OpenClaw** | **NanoBot** | **PicoClaw** | -|---------------------|---------------|-------------|----------------------| -| **语言** | TypeScript | Python | **Go** | -| **内存占用** | >1GB | >100MB | **<10MB** | -| **启动时间**(0.8GHz)| >500s | >30s | **<1s** | -| **硬件成本** | Mac Mini $599 | SBC ~$50 | **最低 $10** | - ---- - -**核心理念**:让 AI 助手回归本质 —— 在任何设备上都能快速、安全、高效地运行,无需昂贵硬件,无需复杂配置。PicoClaw 证明了即使在最受限的环境中,也能构建功能完整的自主智能体系统。 - ---- - diff --git a/.specstory/history/2026-02-25_10-14Z-zeroclaw-autonomous-agent-runtime-overview.md b/.specstory/history/2026-02-25_10-14Z-zeroclaw-autonomous-agent-runtime-overview.md deleted file mode 100644 index 355159c3f..000000000 --- a/.specstory/history/2026-02-25_10-14Z-zeroclaw-autonomous-agent-runtime-overview.md +++ /dev/null @@ -1,155 +0,0 @@ - - - - -# ZeroClaw autonomous agent runtime overview (2026-02-25 10:14Z) - -_**User (2026-02-25 09:23Z)**_ - -ZeroClaw 是一个高性能、低资源占用、可组合的自主智能体运行时。ZeroClaw 是面向智能代理工作流的运行时操作系统,通常被视为 OpenClaw 的 Rust 重写版本。 它抽象了模型、工具、记忆和执行层,使代理可以一次构建、随处运行,它通过 Trait 驱动架构实现了模型、通信渠道、工具、记忆系统等组件的可插拔替换,旨在提供一个安全、快速且资源友好的自主智能体运行环境。 -核心定位:定位为生产级“Agent 操作系统”(Agent OS),适用于边缘设备、高并发 Agent 集群、自动化运维等场景。 - -技术栈:采用 Rust 编写,单二进制部署,跨 ARM / x86 / RISC-V,单文件体积极小(3.4MB 或 8.8MB 版本),内存占用极低(低于 5MB),启动速度极快(启动时间可低至毫秒级)。 - -安全设计:内置安全沙箱、配对鉴权(pairing authentication)和显式 allowlist,默认安全性高。 - -特性:支持 17+ 多种通信渠道(Telegram、Discord、Slack 等),支持 22+ AI 提供商(OpenAI、Claude、Ollama 等),支持本地模型运行 - - - - -参考上面zeroclaw ,给出本项目的描述 - ---- - -_**Agent (model claude-4.5-sonnet-thinking, mode Agent)**_ - -
Thought Process -用户想要我参考 ZeroClaw 的描述,为当前项目 picoclaw 提供一个类似的项目描述。 - -让我先探索一下这个项目的结构和内容,了解它的特点和功能。 - -我需要: -1. 查看项目结构 -2. 了解项目的主要文件和配置 -3. 基于 ZeroClaw 的描述风格,为 picoclaw 创建一个类似的描述 - -让我先探索项目结构。
- ---- - -我来帮您探索 picoclaw 项目并给出描述。让我先查看项目结构。 - ---- - - -
- Tool use: **list_dir** • Listed directory, 0 results - -No results found -
-
- ---- - - -
Tool use: **read_file** • Read file: /home/0668001505/Desktop/picoclaw/picoclaw/README.md - -
-
- ---- - - -
-Tool use: **glob_file_search** • Searched codebase "Cargo.toml" • **0** result in **1** directory - -Directory: **/home/0668001505/Desktop/picoclaw/picoclaw** (0 file) - -
-
- ---- - -
Thought Process -好的,我现在了解了 picoclaw 项目的结构。让我查看更多关键文件来了解项目的核心特性。
- ---- - - -
Tool use: **read_file** • Read file: /home/0668001505/Desktop/picoclaw/picoclaw/go.mod - -
-
- ---- - - -
Tool use: **read_file** • Read file: /home/0668001505/Desktop/picoclaw/picoclaw/README.zh.md - -
-
- ---- - -
Thought Process -好的,现在我对 picoclaw 项目有了全面的了解。让我基于这些信息,参考 ZeroClaw 的描述风格,为 PicoClaw 项目创建一个类似的中文描述。 - -PicoClaw 的特点: -1. 使用 Go 语言编写 -2. 超轻量级 - <10MB 内存占用 -3. 极快启动 - 1秒内启动 -4. 单二进制部署 -5. 跨平台 - 支持 ARM、x86、RISC-V -6. 低成本 - 可在 $10 硬件上运行 -7. 支持多种通信渠道(Telegram、Discord、QQ、钉钉、飞书、企业微信等) -8. 支持 16+ AI 提供商 -9. 安全沙箱设计 -10. AI 自举开发(95% 由 AI Agent 生成) - -让我创建一个类似 ZeroClaw 风格的描述:
- ---- - -根据我对项目的分析,以下是参考 ZeroClaw 风格为 **PicoClaw** 项目撰写的描述: - ---- - -## PicoClaw 项目描述 - -**PicoClaw** 是一个超轻量级、超低成本、极速启动的自主智能体运行时。PicoClaw 是面向边缘设备和资源受限环境的智能代理运行时系统,受 [nanobot](https://github.com/HKUDS/nanobot) 启发,是通过 AI 自举过程完全用 Go 语言重写的个人 AI 助手框架。它通过极简化的架构设计和 Go 语言的并发特性实现了模型、通信渠道、工具、记忆系统等组件的灵活配置和组合,旨在提供一个极致轻量、快速响应且资源友好的智能代理运行环境。 - -**核心定位**:定位为"人人可用的边缘 AI 助手"(Edge AI Assistant for Everyone),适用于老旧手机、$10 开发板、边缘设备、个人助理、智能监控等场景。 - -**技术栈**:采用 Go 语言编写,单二进制部署,跨 ARM / x86 / RISC-V 架构,单文件体积极小(约 8-10MB),内存占用极低(低于 10MB,比 OpenClaw 节省 99% 内存),启动速度极快(在 0.6GHz 单核处理器上 1 秒内启动,比 NanoBot 快 30 倍,比 OpenClaw 快 400 倍)。 - -**成本优势**:可在 $10 硬件上流畅运行(如 LicheeRV-Nano),比 Mac mini 便宜 98%,能够将老旧 Android 手机改造为智能助手,实现硬件资源的二次利用。 - -**安全设计**:内置安全沙箱(workspace 隔离)、通信渠道白名单机制(allow_from)和命令执行保护,默认限制文件访问和命令执行范围,支持配置化的安全边界控制。 - -**核心特性**: -- 支持 10+ 多种通信渠道(Telegram、Discord、QQ、钉钉、飞书、企业微信、Slack、LINE、OneBot、WhatsApp 等) -- 支持 16+ AI 提供商(OpenAI、Anthropic/Claude、智谱、DeepSeek、Gemini、Groq、Qwen/通义千问、Moonshot、Ollama、Cerebras、火山引擎、GitHub Copilot 等) -- 支持本地模型运行(Ollama、VLLM) -- 内置负载均衡和模型回退机制 -- 支持定时任务(Cron)和心跳周期任务(Heartbeat) -- 支持子 Agent 异步任务派发(Spawn) -- 支持语音转文字(通过 Groq Whisper) -- 支持网络搜索(Brave、Tavily、DuckDuckGo) -- 支持技能市场(ClawHub)和自定义技能 -- AI 自举开发(95% 核心代码由 AI Agent 生成,人机协作优化) - -**部署场景**: -- 🦐 **个人助理**:在老旧手机(通过 Termux)或低成本开发板上运行 -- 🏠 **家庭助手**:LicheeRV-Nano ($9.9) 用于极简家庭 AI 助理 -- 🖥️ **运维助手**:NanoKVM ($30-100) 用于自动化服务器运维 -- 📹 **智能监控**:MaixCAM/MaixCAM2 ($50-100) 用于 AI 视觉监控 -- 💬 **企业协作**:通过钉钉、飞书、企业微信集成到企业工作流 -- 🌐 **多渠道接入**:同时连接多个聊天平台,统一管理对话 - ---- - -这个描述突出了 PicoClaw 与 ZeroClaw 的相似之处(轻量、跨平台、安全、多渠道),同时强调了其独特优势(极低成本、边缘设备部署、AI 自举开发)。 - ---- - diff --git a/.specstory/history/2026-02-25_10-32Z-version-0-1-1-changes-summary.md b/.specstory/history/2026-02-25_10-32Z-version-0-1-1-changes-summary.md deleted file mode 100644 index 8bf00dfb2..000000000 --- a/.specstory/history/2026-02-25_10-32Z-version-0-1-1-changes-summary.md +++ /dev/null @@ -1,145 +0,0 @@ - - - - -# Version 0.1.1 changes summary (2026-02-25 10:32Z) - -_**User (2026-02-25 09:23Z)**_ - -v0.1.1 -What's Changed -feat: implement dynamic context compression by @Danieldd28 in #3 -fix: enable Feishu message flow by @imguoguo in #6 -Add QQ channel support by @yinwm in #5 -feat: Add DingTalk channel support via Stream Mode by @tianrking in #12 -Agent Memory System & Tool Execution Improvements by @yinwm in #14 -fix a typo by @n0bisuke in #19 -feat: Cron tool and agent integration by @yinwm in #23 -Remove duplicate truncate functions, reuse utils.Truncate by @DevEverything01 in #29 -fix(agent): use atomic.Bool for AgentLoop.running to prevent data race by @DevEverything01 in #30 -chore: lint readme.md by @Sethispr in #44 -feat(auth): add OAuth login with SDK-based subscription providers by @corylanou in #32 -feat(migrate): add picoclaw migrate command for OpenClaw workspace migration by @corylanou in #33 -feat(channels): add Slack channel integration with Socket Mode by @corylanou in #34 -feat(telegram): Use Telego instead of go-telegram-bot-api by @mymmrac in #40 -better version info by @jadeydi in #45 -refactor(channels): consolidate media handling and improve resource cleanup by @yinwm in #49 -Add provider field support for explicit provider selection by @victorhdchagas in #48 -Fix Telegram channel permission check by @victorhdchagas in #51 -Enforce workspace directory boundaries for system tools by @RinZ27 in #26 -ci: add build check workflow by @imguoguo in #71 -Fix LLM error by cleaning up CONSCIOUSLY message history by @Diegox-17 in #55 -fix(auth): support string interval in OpenAI device-code flow by @jmahotiedu in #56 -fix(heartbeat): resolve bug where service could never start by @DevEverything01 in #64 -Add ClawdChat Agent Social Network section by @xray918 in #72 -feat: add cli-based LLM provider by @Leeaandrob in #73 -feat(cron): Add support for direct shell command execution in scheduled jobs by @SatyamDevv in #74 -build: add darwin arm64 target by @imguoguo in #76 -fix(version): default to dev by @imguoguo in #95 -以上是git的0.1.1版本的提交记录,请简要描述改版本的主要改动 - ---- - -_**Agent (model claude-4.5-sonnet-thinking, mode Agent)**_ - -
Thought Process -用户要求我用中文总结这个Git版本(v0.1.1)的主要改动。我需要分析这些变更记录并将其归类为几个主要的改进方向。 - -让我看看这些变更: -1. 动态上下文压缩 -2. 消息流支持(Feishu、QQ、DingTalk、Slack、Telegram) -3. Agent内存系统和工具执行改进 -4. Cron工具 -5. OAuth登录 -6. 迁移命令 -7. 多个渠道集成 -8. 版本信息改进 -9. 媒体处理和资源清理 -10. Provider字段支持 -11. 工作空间目录边界 -12. CI构建检查 -13. 错误修复(LLM、认证、心跳等) -14. CLI-based LLM provider -15. Cron直接shell命令执行 -16. Darwin arm64支持 - -我应该将这些归纳为几个主要类别: -- 多平台/渠道支持扩展 -- Agent能力增强 -- 认证和安全改进 -- 开发者体验改进 -- Bug修复和性能优化
- ---- - -基于这些提交记录,v0.1.1版本的主要改动可以归纳为以下几个方面: - -## 📡 **多平台渠道支持** -- 新增多个通讯平台集成:**QQ频道**、**钉钉(DingTalk)**、**Slack**、**飞书(Feishu)** -- 改进 **Telegram** 集成(使用Telego替代原有库) -- 统一媒体处理和资源清理机制 - -## 🤖 **Agent能力增强** -- 实现 **Agent记忆系统**和工具执行改进 -- 添加 **Cron定时任务**工具,支持直接执行Shell命令 -- 实现 **动态上下文压缩**功能 -- 添加 **CLI-based LLM provider** 支持 -- 修复LLM错误历史消息清理问题 - -## 🔐 **认证与安全** -- 添加 **OAuth登录**功能(基于SDK的订阅提供商) -- 强化 **工作空间目录边界**安全控制 -- 修复Telegram权限检查问题 - -## 🛠️ **开发者体验** -- 新增 `picoclaw migrate` 命令用于OpenClaw工作空间迁移 -- 添加 **CI构建检查**工作流 -- 改进版本信息显示 -- 添加 **darwin arm64** 构建支持 -- 代码优化:移除重复函数、使用原子操作防止数据竞争 - -## 🐛 **Bug修复** -- 修复心跳服务无法启动的问题 -- 修复OpenAI设备代码流中的字符串间隔支持 -- 修复权限检查和各种小问题 - -总体来说,这是一个**功能丰富的版本**,重点在于**扩展多平台支持**、**增强Agent智能能力**和**改善开发者工具链**。 - ---- - -_**User (2026-02-25 09:23Z)**_ - -用100字总结 - ---- - -_**Agent (model claude-4.5-sonnet-thinking, mode Agent)**_ - -
Thought Process -用户要求用100字总结v0.1.1版本的主要改动。我需要更简洁地概括核心内容。 - -核心内容: -1. 多平台支持(QQ、钉钉、Slack、飞书、Telegram) -2. Agent功能增强(记忆系统、Cron工具) -3. OAuth认证 -4. 迁移命令 -5. Bug修复和优化 - -用中文100字左右总结:
- ---- - -v0.1.1版本主要更新: - -**多平台集成**:新增QQ频道、钉钉、Slack、飞书支持,改进Telegram集成。 - -**Agent增强**:实现记忆系统、动态上下文压缩、Cron定时任务工具。 - -**认证与工具**:添加OAuth登录、`picoclaw migrate`迁移命令。 - -**安全优化**:强化工作空间目录边界控制。 - -**开发改进**:添加CI构建、支持darwin arm64、修复数据竞争和心跳服务等多项Bug。 - ---- - diff --git a/.specstory/history/2026-02-25_10-36Z-version-0-1-2-release-notes.md b/.specstory/history/2026-02-25_10-36Z-version-0-1-2-release-notes.md deleted file mode 100644 index a10bceb48..000000000 --- a/.specstory/history/2026-02-25_10-36Z-version-0-1-2-release-notes.md +++ /dev/null @@ -1,282 +0,0 @@ - - - - -# Version 0.1.2 release notes (2026-02-25 10:36Z) - -_**User (2026-02-25 09:23Z)**_ - -42e0e58 * The docker-build workflow will no longer run when submitting a PR. -7140e73 * fix fmt bug -68abf6b * fix: docker build failed -878650c * fix: heartbeat/service_test.go test failed -951b05d 1. add AI Code Generation selection in pr template -5fb2721 1. add android phone termux quick guide -0fadbcd 1. add roadmap.md -da79c20 1. fix typo -ac4b16d 1. rename doc to docs -13e4028 1. update wechat group qrcode 2. publish roadmap -b484d3f Add dependencies for fmt-check in vet and test jobs -341dbd3 Add health check endpoints (/health and /ready) for container orchestration liveness and readiness probes. (#104) -cd638ff Add local AI ollama for security purpose (#226) -1516cb5 Change Docker build trigger to on release published -8d757fb Feat issue 183 (#189) -32cb8fd Feat: Discord message length check and auto split (#143) -ba0ef4b Merge branch 'main' into architecture-32-bit -2cb90f2 Merge branch 'main' into architecture-32-bit -bc27707 Merge branch 'main' into main -bd9c9d7 Merge branch 'main' into main -fc40f29 Merge branch 'main' into main -25a47b5 Merge branch 'main' into patch-1 -a286100 Merge branch 'main' into patch-1 -f739c45 Merge branch 'main' of https://github.com/SatyamDevv/picoclaw -04924ed Merge branch 'main' of https://github.com/SatyamDevv/picoclaw -e0a7662 Merge branch 'main' of https://github.com/sipeed/picoclaw -0c4b8b0 Merge branch 'sipeed:main' into main -fbe1152 Merge branch 'sipeed:main' into main -9036a51 Merge branch 'sipeed:main' into main -0d339d9 Merge branch 'sipeed:main' into main -5339389 Merge pull request #105 from Zhaoyikaiii/bugfix/fix-duplicate-telegram-messages -9ccfea4 Merge pull request #108 from yinwm/ralph/tool-result-refactor -c58f8b7 Merge pull request #111 from shengsuan/ssy -ee3e8cc Merge pull request #124 from mengzhuo/mengzhuo-fmt-1 -14de80d Merge pull request #128 from yinwm/feat/better-version -82a9a80 Merge pull request #130 from MHCP000/fix/codeblock-index-bug -3334595 Merge pull request #134 from Sethispr/patch-1 -5872e0f Merge pull request #147 from ex-takashima/feat/line-channel -ddd73ca Merge pull request #151 from qiaoborui/codex/fix-openai-oauth-authorize-url -1cff7d4 Merge pull request #153 from alexhoshina/doc/fix-errors -b805ec8 Merge pull request #158 from easyzoom/feat/device-hotplug-notifications -0f506d4 Merge pull request #165 from alexhoshina/feat/onebot -59c7aa1 Merge pull request #167 from Lixeer/main -1cb690d Merge pull request #169 from PixelTux/architecture-32-bit -6ce7659 Merge pull request #172 from mymmrac/docker-curl -8eb9dcd Merge pull request #173 from is-Xiaoen/fix/code-review-bugs-116 -6f2e730 Merge pull request #178 from Lixeer/main -7f60392 Merge pull request #24 from Esubaalew/main -55d5e89 Merge pull request #78 from SatyamDevv/main -1aea912 Merge pull request #83 from carzygod/main -c0d1346 Merge pull request #85 from lesichkovm/patch-1 -3c2e467 Merge remote-tracking branch 'origin/HEAD' into feat/better-version -a6aa833 Merge remote-tracking branch 'origin/main' into ralph/tool-result-refactor -53b5be8 Merge remote-tracking branch 'origin/main' into ralph/tool-result-refactor -ab20314 Merge upstream/main into ralph/tool-result-refactor -a371d53 Prevent panic on publish after MessageBus is closed (#223) -1d748fb Remove duplicate file extension in DownloadFile (#230) -e7f15af Update issue templates -5893245 Update launch announcement in README -2720fa7 add I2C and SPI tools for hardware interaction (#140) -cddafb4 add build constraints for feishu to support 32-bit builds -811e4f8 add when picoclaw responsed to discord message will show its typing (#236) -132fe7d bugfix: fix duplicate Telegram message sending -159a954 build: support building for linux/loong64 (#272) -a5503ae build: temporary disable UPX compression (#257) -7fa70b8 chore(docs): remove completed PRD document from tasks -b36c87b chore: Clean up Ralph agent tracking files -3eb9d6a chore: Remove backup cron files -ff92973 chore: fix tab in build -d7822e5 chore: fmt code in build -15e3c7d chore: lint readme -ecbe315 chore: remove redundant debug output -9a3f361 ci: init goreleaser -0d18210 ci: use goreleaser to release docker and binary (#180) -5a6ad37 code fmt -f294a71 feat(channels): add LINE Official Account channel support -5aa4dd2 feat(cli): add git commit hash to version output -a24cbd4 feat(docker): Added curl for Docker image -c6c82b3 feat(skills): add validation for skill info and test cases (#231) -53df8d1 feat: Add DuckDuckGo search fallback. -18d3634 feat: Improve parameter fault tolerance for DeepSeek -a9557aa feat: Support installing built-in AGENT files and skills during picoclaw onboard -ca781d4 feat: US-002 - Modify Tool interface to return *ToolResult -c6c61b4 feat: US-004 - Delete isToolConfirmationMessage function -b573d61 feat: US-005 - Update AgentLoop tool result processing logic -56ac18a feat: US-006 - Add AsyncCallback type and AsyncTool interface -7bcd8b2 feat: US-007 - Add heartbeat async task execution support -4c4c10c feat: US-008 - Inject callback into async tools in AgentLoop -b94941d feat: US-009 - Add state save atomicity with SetLastChannel -feba44e feat: US-010 - Add RecordLastChannel to AgentLoop with atomic state save -2989c39 feat: US-011 - Add MessageTool tests -e7e3f95 feat: US-012 - Add ShellTool tests -88014ec feat: US-013 - Add FilesystemTool tests -0ac93d4 feat: US-014 - Add WebTool tests -35fa64c feat: US-015 - Add EditTool tests -a141815 feat: US-016 - Refactor CronTool to use ToolResult -061b071 feat: US-016, US-017 - Mark CronTool and SpawnTool as complete -28734c3 feat: US-018 - Add SubagentTool with ToolResult support -03b02cc feat: US-019 - Enable heartbeat by default in config -e63f967 feat: US-020 - Move heartbeat log to memory directory -be81ba1 feat: US-021 - Heartbeat calls ExecuteHeartbeatWithTools -e77b0a6 feat: add Codex CLI provider for subprocess integration (#80) -7fa641a feat: add OneBot channel support -896eae4 feat: add ShengSuanYun(胜算云) as a models provider. -5faa67b feat: add Github Copilot provider -3780455 feat: add device hotplug event notifications (USB on Linux) -afc3a2c feat: add provider deepseek -2f5849b feat: add support for DuckDuckGo and refactor Brave search configuration support the control with config.js -9d5728e feat: implement structured Telegram command handling with a dedicated command service and telegohandler integration. (#164) -e7e0861 feat: merge heartbeat service improvements from feat-heartbeat branch -e353844 feat: re-enable cronTool service after refactor completion -17685da feat: update the make deps logic to prevent the project from frequently updating dependency package versions (#277) -0aab8d8 feat:add github_copilot to providers factory -7fa341c fix concurrency and persistence safety in session/cron/heartbeat services -7304ab7 fix(auth): align OpenAI OAuth authorize URL and params -a961a2d fix(ci): use env var for release tag (#342) -da804a0 fix(codex): include required instructions and improve account-id extraction -16e5a02 fix(http_provider): Remove extra parameter from CreateProvider function. -e3f65fc fix(security): block critical symlink workspace escape (#188) -9eb1a53 fix: PR workflow execution failure -dbf2739 fix: Remove the waiting animation for Telegram replies to reduce the risk of being rate-limited. -0cb9387 fix: codex agent 400 error (#102) -1e17bac fix: correct index bug in extractCodeBlocks and extractInlineCodes -8cff6cf fix: improve connection handling in OneBotChannel -4b886b6 fix: not used result -6c392c3 fix: openclaw crash because of empty config -474f3db fix: resolve code review issues in tool-result-refactor -0a88ff0 fix: resolve multiple bugs from code review #116 -5c321a9 fix: tighten file perms and enforce Slack ACL checks (#186) -773ce9b fix: update BotStatus type in oneBotRawEvent and adjust status checks -6463796 fix: update tests to match upstream API changes -000e64c gh: add pull request check -f6d6221 make fmt -7a96599 make fmt -aa7a8b8 merge: resolve conflict with upstream main -cf5a84a merge: resolve conflicts with upstream/main -584a3dc misc: fmt code -b594642 perf(cron): use read lock for concurrent reads in addJob -0cce9fc refactor(agent): extract reusable tool loop and make subagents independent -4dfa133 refactor(heartbeat): add configurable interval and channel-aware routing -8fbbb67 refactor(heartbeat): simplify service with single handler and direct bus usage -8851152 refactor(tools): extract shared logic for internal channels and tool definitions -92490fe refactor(version): extract version formatting helpers and improve build info display -45351a6 refactor: Trim trailing slashes from the API base URL and enhance API error messages with status codes. -1299b20 refactor: remove unused min func -c86e121 refactor: update tool registry usage and enhance WebSearchTool execution result handling -60c3d96 style: fix alignment of fields in BotStatus struct -1fcf3fd style: fix format -ac79a23 style: fix gofmt formatting (CRLF -> LF) -b5a8eff style: fix var block formatting -f742112 style: remove unnecessary log messages in WebSocket listener -0a4bf32 try after workflow fix -57dac39 update pr template -82fea61 update readme -875a16d update telegram username support -6083168 update wechat group qrcode -214b201 update wechat group qrcode - -以上是0.1.2版本的提交记录,请简要描述此版本的主要改动 - ---- - -_**Agent (model claude-4.5-sonnet-thinking, mode Agent)**_ - -
Thought Process -用户提供了一系列git提交记录,并要求我简要描述这些提交记录对应的0.1.2版本的主要改动。 - -让我分析这些提交记录,总结主要的功能改动: - -1. **工具系统重构** - 大量的feat: US-xxx系列提交,涉及工具接口返回ToolResult、异步工具支持、心跳任务等 -2. **新增渠道支持** - OneBot、LINE、Telegram改进 -3. **新增AI提供商** - DeepSeek、ShengSuanYun(胜算云)、GitHub Copilot、Codex CLI、本地Ollama -4. **新功能** - - 健康检查端点(/health和/ready) - - 设备热插拔通知 - - DuckDuckGo搜索 - - I2C和SPI硬件交互工具 - - 技能验证 -5. **CI/CD改进** - goreleaser支持、Docker构建优化 -6. **Bug修复** - 多个并发安全、消息重复、代码块索引等问题 -7. **文档更新** - roadmap、Android Termux指南、README更新 - -用户要求用中文回复,所以我需要用中文总结这些改动。
- ---- - -根据这些提交记录,0.1.2版本的主要改动可以总结为: - -## 核心架构重构 -- **工具系统全面升级**:重构Tool接口返回`*ToolResult`,支持异步工具执行,优化工具结果处理逻辑 -- **心跳服务增强**:默认启用心跳功能,支持异步任务执行,增加可配置间隔和渠道路由 - -## 新增功能 - -### 通道支持 -- 新增 **LINE** 官方账号渠道支持 -- 新增 **OneBot** 渠道支持 -- 优化 **Telegram** 命令处理和用户名支持 -- 优化 **Discord** 消息长度检查和自动分割 - -### AI提供商 -- 新增 **DeepSeek** 提供商 -- 新增 **胜算云(ShengSuanYun)** 提供商 -- 新增 **GitHub Copilot** 提供商 -- 新增 **Codex CLI** 提供商用于子进程集成 -- 新增 **本地Ollama** 支持(用于安全目的) -- 新增 **DuckDuckGo** 搜索回退功能 - -### 其他功能 -- 健康检查端点(`/health` 和 `/ready`)用于容器编排 -- 设备热插拔事件通知(Linux USB) -- I2C 和 SPI 硬件交互工具 -- 技能文件验证和测试用例支持 -- 内置AGENT文件和技能在onboard时自动安装 - -## CI/CD改进 -- 集成 **goreleaser** 用于Docker和二进制文件发布 -- 优化Docker构建触发机制(改为release发布时触发) -- 新增PR检查流程 - -## Bug修复 -- 修复Telegram消息重复发送问题 -- 修复代码块索引bug -- 修复OpenAI OAuth授权URL问题 -- 修复并发安全和持久化问题(session/cron/heartbeat服务) -- 加强文件权限和Slack ACL检查 -- 修复符号链接工作区逃逸安全漏洞 - -## 文档更新 -- 新增项目路线图(roadmap.md) -- 新增Android Termux快速指南 -- 更新微信群二维码 -- 优化PR模板 - -这是一个功能丰富的版本,主要聚焦在工具系统重构、多渠道支持扩展和AI提供商生态完善。 - ---- - -_**User (2026-02-25 09:23Z)**_ - -用100次左右进行总结 - ---- - -_**Agent (model claude-4.5-sonnet-thinking, mode Agent)**_ - -
Thought Process -用户要求用100字左右进行总结,之前的回答太详细了。我需要精简到大约100个汉字。 - -让我重新组织一下,只提取最核心的几点: -1. 工具系统重构 -2. 新增多个渠道(LINE、OneBot) -3. 新增多个AI提供商(DeepSeek、GitHub Copilot、Ollama等) -4. 集成goreleaser -5. 安全和bug修复 - -100字左右的总结:
- ---- - -## 0.1.2版本主要改动总结 - -**核心重构**:工具系统全面升级,支持异步执行和新的ToolResult返回机制;心跳服务增强并默认启用。 - -**新增渠道**:LINE官方账号、OneBot支持;优化Telegram和Discord消息处理。 - -**AI提供商扩展**:新增DeepSeek、胜算云、GitHub Copilot、本地Ollama等多个提供商。 - -**基础设施**:集成goreleaser自动化发布,新增健康检查端点,支持设备热插拔通知。 - -**安全加固**:修复符号链接逃逸漏洞、并发安全问题,加强权限控制和ACL检查。 - ---- -