mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-09-21 17:38:10 +00:00
P0: WebUI重构
- 完整 SPA 仪表盘 (7标签页), //go:embed dashboard.html
P1: OpenClaw兼容 (三通道: SKILL.md / sidecar / simulator)
- Node.js 模拟进程统一加载任意 OpenClaw 插件
- JSON-RPC 2.0 over stdio 协议, go:embed 内嵌
P2: Healthcheck 优化
- 定时自动执行 (startAutoCheck, 30min)
- healthcheck_perf 性能监控工具
其他: agentcli/cmd 插件, integration_test, status.go,
test_deepseek 清理, 多项 bug 修复
4.1 KiB
4.1 KiB
MILESTONE — 项目进展与路线图
已完成
插件系统基础
- agentcli 插件:6 个 PTY 终端工具(create/write/read/resize/close/list),完整按键映射
- cmd 插件:
cmd_run工具(command/timeout/workdir),8 单元测试 - timer 插件:定时器工具
- 12 个跨插件集成测试
非记忆 LLM 调用机制
StageContext.NoMemory标记 — agent 跳过emitMemoryCandidateInjectTextNoMemoryTo/InjectTextSyncNoMemoryTo— IOManager 层InjectTextNoMemory/InjectTextSyncNoMemory— PluginSDK 层ProviderManager.QuickChat()— 直连 Provider 的快捷调用
LLM 驱动健康检查(healthcheck 插件)
healthcheck_report工具 — LLM 上报测试结果testLLMDriven()— 独立工具循环:LLM 发现→调用→上报- 动态排除本插件工具(
selfToolNames),不硬编码插件名 - E2E 真实 DeepSeek API 测试通过(8 个真实工具全部测试通过)
内核状态接口(StatusProvider)
internal/agent/core/status.go—KernelStatus聚合快照Agent.GetKernelStatus()— 实现StatusProvider接口healthcheck_kernel工具 — Agent 可自主查询内核状态- WebUI
/api/v1/kernel端点 — 状态 JSON API - 所有子系统:plugins / tools / channels / memory / knowledge / documents / text_memory / social / skills / LLM / runtime / tracker
技术债务清理
- 移除旧
test_deepseek插件 - 修复 agentcli PTY readLoop 死锁(goroutine reader + close 顺序)
- 修复 knowledge.Store.Delete 不存在方法
P0 — WebUI 重构
- 完整的 SPA 仪表盘(7 标签页:概览/对话/插件/记忆/知识/设置/内核)
- 深色主题,响应式布局
- 使用
//go:embed dashboard.html替代硬编码 HTML 变量 - 全部 REST API 端点保持兼容
P1 — OpenClaw 兼容插件(Go 插件 + Node.js sidecar + 模拟器架构)
- 设计 Go ↔ Node.js 通信协议(JSON-RPC 2.0 over stdio)
- Go 侧 sidecar 管理器(进程启动、心跳、重启、
waitReady) - 工具发现(
tools/list)和执行(tools/call)转译 - Node.js 测试插件
echoplugin(echo/add/ping 三个工具) - 5 个端到端测试(无 main.js 兜底、列表、调用 echo/add、不存在的工具、并发调用)
- 现有 SKILL.md 加载路径保留(三通道:SKILL.md / sidecar / simulator)
- Node.js OpenClaw 模拟进程(
simulator/main.js):完整实现OpenClawPluginApi,加载任意遵循 OpenClaw 插件标准的真实插件 - 模拟器内嵌于 Go 二进制(
//go:embed),启动时自动提取 - 支持
package.json#openclaw.extensions/runtimeExtensions入口发现,兼容.ts→.js编译回退 - 用 ClawHub 真实插件(chart-plot)验证端到端链路通过
P2 — 进一步优化
- Healthcheck 定时自动执行(
startAutoCheckgoroutine,默认 30 分钟) - Agent 自主健康状态感知(通过
healthcheck_kernel) - 更多 WebUI 可视化面板(7 标签页 SPA)
- 性能监控与告警(
healthcheck_perf工具 +PerfData历史记录 100 条)
当前状态
所有 P0 / P1 / P2 计划项已完成。项目处于维护和迭代阶段。
已注册的工具(14 个)
cmd_run— 命令执行terminal_create / write / read / resize / close / list— PTY 终端healthcheck— 全面健康检查(含 LLM 驱动阶段)healthcheck_plugins— 列出已加载插件healthcheck_tools— 列出所有已注册工具healthcheck_memory— 图记忆系统测试healthcheck_report— LLM 汇报接口healthcheck_kernel— 内核状态快照healthcheck_perf— 性能监控数据timer_set— 定时器
内置插件(7 个)
- agentcli — PTY 终端管理
- cli — Unix socket 通信
- cmd — 命令执行
- healthcheck — 健康检查 + 性能监控 + 自动调度
- mcp — MCP 协议支持
- openclaw — SKILL.md + Node.js sidecar 双通道
- webui — HTTP 服务器 + SPA 仪表盘
- timer — 定时器