SuperAPI AI 工具集

harness-agents

智能体与模型

查看项目

更新于 10-15 20:09

技能介绍

用途:在 Agent Native 中接入完整智能体运行时(harness),如 Claude Code、Codex、Pi、Cursor、Mastra,以及通过 ACP 协议驱动的本地编码智能体(Gemini CLI、Claude Code 等)。

主要能力:完整 harness 拥有自己的循环、工作区、原生工具、会话状态、压缩、审批模型与沙箱行为,因此不作为 AgentEngine provider 使用,而应使用 @agent-native/core/agent/harness 中的 AgentHarness 基座。可注册或解析适配器(registerBuiltinAgentHarnesses、resolveAgentHarness),通过 run-manager 桥接启动回合(startAgentHarnessRun),并用 saveAgentHarnessSession、updateAgentHarnessSession、getLatestAgentHarnessSessionForThread 在 SQL 中持久化原生会话状态(resumeState 为不透明数据,仅存储不解析)。运行可经 createAgentHarnessBackgroundAgentController() 投影为共享的 BackgroundAgentRun,通过现有运行路由以 goalId=agent-harness 访问。

ACP 支持:Agent Native 可作为 ACP 客户端驱动本地编码智能体,以子进程方式通过 stdio 上的换行分隔 JSON-RPC 通信,继承父环境以复用本地 CLI 登录;非托管/沙箱传输,也非聊天/A2A 传输。内置预设 acp:gemini、acp:claude-code,或按命令自定义。协议传输为可选依赖,懒加载。permissionMode 映射到 ACP 的 session/request_permission;resumeState 携带 ACP sessionId,仅在智能体声明 loadSession 能力时恢复。fs 读写限定在会话工作区内,终端方法不对外声明。

代码执行沙箱:run-code 通过可插拔 SandboxAdapter 执行,默认 LocalChildProcessAdapter,可用 AGENT_NATIVE_SANDBOX 或 registerSandboxAdapter() 替换。长计算可用 background: true 或 AGENT_NATIVE_SANDBOX=background 入队到 sandbox_executions 表异步执行。子智能体委派深度默认上限 2,可用 AGENT_NATIVE_MAX_SUBAGENT_DEPTH 覆盖(0 禁用,上限 16)。

限制与注意:不要把 harness 作为 AgentEngine;不要每回合重放完整聊天历史,应恢复 harness 会话;resumeState 不应存入 application_state;不要默认向每个 harness 会话暴露全部应用动作。harness 包应保持可选,适配器使用动态导入并通过 installPackage 给出安装提示。ACP 智能体二进制需用户自行安装,预设默认经 npx 启动。