能力地图

基于当前仓库现实的能力页

这一页只讲已经在代码树里落地的东西,不把 docs/ 下的设计草案当成现有卖点。

运行时已经覆盖了什么

重点不是“它看起来多自主”,而是当智能体真的碰到工具和副作用时,哪些运行时问题已经被补齐。

服务生命周期

session 所有权、run 存储、队列协调和可恢复执行,都是运行时的一等概念。

安全门控

审批、策略决策、审计记录和 runtime profile 为高风险动作建立了明确控制点。

能力暴露

内置工具、Layer 2 工具组、browser/desktop 宿主工具和本地技能,共享同一个执行面。

操作 API

runs、tools、approvals、artifacts 和 health 都通过 HTTP 暴露,而不是困在某个演示 UI 里。

工具与能力分组

HopClaw 并不把所有能力都抽象成同一种“插件”,而是清楚地区分内置、宿主和技能加载。

核心工具

文件、命令、网络、文本、运行时、审计与通用工具直接编进 Go 二进制。

Layer 2 工具组

git、packages、containers、search、speech、media 等依赖环境的工具组。

浏览器宿主

通过 hopclaw-browserd 提供 session、navigate、click、type、wait、snapshot、screenshot、list tabs 等能力。

桌面宿主

通过 hopclaw-desktopd 提供 app 聚焦、窗口检查、输入、热键、截图、剪贴板与树形捕获等能力。

频道接入

聊天与 webhook 适配器把不同入口统一接到相同的 runtime 生命周期上。

技能系统

本地 SKILL.md 发现、绑定,以及 skill.ensure 触发后的策略化安装流程。

安全与操作控制

护栏应该由运行时负责。模型不能自己定义信任边界。

审批单

潜在高风险工具调用会生成待处理审批单,可以稍后恢复执行。

审计链路

工具执行、审批和相关安全事件都会被记录,供之后追查。

Runtime profiles

desktop、trusted_desktop、production 在第一条 run 开始前就改变默认行为。

用 artifact 替代聊天刷屏

大输出可以落到 artifact,再回写引用,而不是把模型上下文塞满。

上下文引擎与模型路由

运行时负责把上下文控制在边界内,让长期运行的智能体还能保持可用,而不是任由历史无限膨胀。

  • 滑动窗口压缩保留最旧和最新消息,中间部分做摘要。
  • token 预算会预留输出空间,不让长输入吃掉整个窗口。
  • 大工具结果会做 soft-trim,并可持久化为 artifact 供后续检查。
system
oldest N
summary
newest N
reserved output

HTTP 操作表面

Web UI 故意保持轻量。真正稳定的控制边界是下面这些 HTTP API。

区域Endpoint / 表面适用场景
HealthGET /healthz健康检查与服务监控。
RunsPOST /runtime/runs从外部系统创建或入队新的任务。
StatusGET /runtime/runs/:id查询 run 的状态、结果和相关细节。
ApprovalsGET /runtime/approvals查看待处理审批与操作员积压。
ArtifactsGET /runtime/artifacts不重跑任务也能检查已存储输出。
ToolsGET /runtime/tools发现当前环境下运行时实际可用的工具。