# aioclaw **Repository Path**: veilking/aioclaw ## Basic Information - **Project Name**: aioclaw - **Description**: AioClaw 为 OpenClaw 的 GO 语言实现,具备高并发与原生跨平台能力,性能与灵活兼备。 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 13 - **Created**: 2026-03-11 - **Last Updated**: 2026-03-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🤖 AioClaw > 懂你,陪你 ~ 您的个人AI助手 🦐 **AioClaw** 灵感源自 `OpenClaw` 采用 `Go` 语言 开发,具备高并发与原生跨平台能力,性能与灵活兼备。 ⚡️ **极致轻量**:对内存和存储空间的需求降至最低,可在树莓派等硬件设备上流畅运行,轻松部署你的专属 AI 助手。 - 目前还是开发中,期待更多人参与完善,欢迎提 PR 开发者贡献,欢迎提 issue 讨论。 ## 快速开始 1. 创建 `config.json` 文件,参考 `config.example.json` 2. 调试 go run test/main.go 3. webui调试 go run main.go gateway, 浏览器访问 http://localhost:8080 4. 打包 go build ## 支持大模型 - 本地大模型 [Ollama](https://ollama.com/) 自主安装适用内网环境 - 支持 `openai` 协议相关模型 - TODO 其它待完善 ## 功能说明 - IM 聊天辅助,支持:钉钉 - 文件操作工具集 ## 开发说明 [钉钉机器人接入文档](https://opensource.dingtalk.com/developerpedia/docs/explore/tutorials/stream/overview) ### 安全特性 - ✅ 工作区路径限制 - 所有操作限制在工作区内 - ✅ 路径遍历攻击防护 - 阻止 `..` 跳转攻击 - ✅ 符号链接安全检查 - 防止符号链接逃逸 - ✅ 文件大小限制 - 可配置最大文件大小 ## 配置说明 复制 `config.example.json` 修改为 `config.json` 根据实际情况修改具体配置 ```json { "file_security": { "workspace_dir": "./workspace", "max_file_size": 10485760, "allowed_paths": [], "forbidden_paths": [], "allow_symlinks": false } } ``` ## 核心架构 ```cmd ┌─────────────────────────────┐ │ User / API │ └──────────────┬──────────────┘ │ ┌─────────▼─────────┐ │ Channels │ │ (渠道管理/消息路由) │ └─────────┬─────────┘ │ ┌─────────▼─────────┐ │ Orchestrator │ │ (任务调度核心) │ └─────────┬─────────┘ │ ┌─────────────────────────┼─────────────────────────┐ │ │ │ ┌───────▼────────┐ ┌───────▼────────┐ ┌──────▼────────┐ │ Planner Agent │ │ Executor Agent│ │ Critic Agent │ │ (任务拆解) │ │ (执行/工具调用)│ │ (自反思/修正) │ └───────┬────────┘ └───────┬────────┘ └──────┬────────┘ │ │ │ │ │ │ │ ┌───────▼────────┐ │ │ │ Skill Router │ │ │ │ (能力调度器) │ │ │ └───────┬────────┘ │ │ │ │ │ ┌──────────▼──────────┐ │ │ │ Tools / Skills │ │ │ │ (Browser, Code, DB) │ │ │ └──────────┬──────────┘ │ │ │ │ └─────────────────────────┼─────────────────────────┘ │ ┌─────────▼─────────┐ │ Memory Engine │ │ (短期+长期记忆) │ └─────────┬─────────┘ │ ┌─────────▼─────────┐ │ Policy Engine │ │ (约束/安全/策略) │ └───────────────────┘ ``` ### 核心模块职责划分 | 模块 | 核心职责 | 是否同步 | 是否可扩展 | |----------------|-------------------| ----- | ----- | | Channels | 渠道管理 + 消息路由 | 是 | 高 | | Orchestrator | 生命周期管理 + Agent 调度 | 是 | 高 | | Planner Agent | 将目标拆解为步骤 DAG | 是 | 高 | | Executor Agent | 执行 step,调用 tool | 是 | 高 | | Critic Agent | 结果评估 + 自反思 | 是 | 高 | | Skill Router | 工具匹配 + 参数补全 | 是 | 极高 | | Tools | 实际执行能力 | 否(IO) | 极高 | | Memory Engine | 状态存储 + 检索增强 | 否 | 极高 | | Policy Engine | 安全与执行边界控制 | 是 | 高 | ### 核心执行时序图 ```cmd User Request │ ▼ Channel Adapter / Router │ ▼ Orchestrator │ ▼ Planner Agent │ 生成 Plan (step1, step2...) ▼ Executor Agent │ ▼ Skill Router │ ▼ Tool Execution │ ▼ Result │ ▼ Critic Agent │ ├── 如果失败 → 修正计划 → 回 Planner │ └── 如果成功 → 输出最终结果 │ ▼ Response Channel ```