SuperAPI AI 工具集

headless-adapters

智能体与模型

查看项目

更新于 10-16 02:21

技能介绍

用途

Headless Adapters 是面向无头(headless)CLI 智能体的模式驱动适配器。其特点是不需要编写代码,只需定义一份描述如何与该 CLI 交互的 JSON schema 即可完成适配,用于发现、创建和验证智能体的集成适配器,并提供脚手架工具与基于 schema 的合规性测试。

典型使用场景:包装(Wrap)无头 CLI 智能体时使用 headless 命令;创建新 schema 时参考 Schema Creation Guide。

主要能力

该方案提供 headless 命令,作为面向任意无头 CLI 智能体的模式驱动适配器,通过 --schema 参数指定适配器 schema 的 JSON 路径(必填,短参数为 -s)。

Schema 格式示例:

{
  "version": 1,
  "name": "my-agent",
  "command": ["my-agent-cli"],
  "sessionMode": "stream",
  "prompt": { "flag": "-p" },
  "output": { "flag": "--output-format", "value": "stream-json" },
  "autoApprove": ["--allow-all"],
  "outputEvents": [
    {
      "match": { "path": "$.type", "value": "message" },
      "emitAs": "message",
      "extract": { "content": "$.text" }
    }
  ],
  "result": {
    "matchPath": "$.type",
    "matchValue": "result",
    "contentPath": "$.content"
  }
}

会话模式(Session Modes)有两种:

模式 说明 适用情况
stream 保持进程存活,通过 stdin 进行多轮交互 CLI 支持会话恢复
iterative 每轮新建进程,累积历史记录 CLI 是无状态的

预置 schema 中提供了经过测试的适配文件:

Schema 智能体 模式 认证环境变量 状态
claude-headless.json Claude Code stream ANTHROPIC_API_KEY Tested
gemini-headless.json Gemini CLI iterative GEMINI_API_KEY Tested

使用方式

先检查 schemas/ 目录下是否已存在所需 schema,然后运行适配器。

Claude Code 用法:

ANTHROPIC_API_KEY=... bunx @plaited/agent-eval-harness headless --schema .claude/skills/headless-adapters/schemas/claude-headless.json

Gemini CLI 用法:

GEMINI_API_KEY=... bunx @plaited/agent-eval-harness headless --schema .claude/skills/headless-adapters/schemas/gemini-headless.json

创建新 schema 的流程:

  1. 查看该 CLI 的 --help,识别 prompt、output 与 auto-approve 相关参数;
  2. 捕获 CLI 的示例 JSON 输出;
  3. 将 JSONPath 模式映射到输出事件;
  4. 基于已有模板创建 schema 文件;
  5. 使用 headless 命令进行测试。

完整流程参见 Schema Creation Guide。

适用场景

  • 需要将无头 CLI 智能体统一接入智能体评估流程(agent integration)。
  • 需要为尚不支持的 CLI 快速建立适配 schema 并进行合规性测试。
  • 已提供 Claude Code 与 Gemini CLI 的可用 schema,可直接复用。

限制与故障排查

常见问题与处理方式:

问题 可能原因 解决方案
工具调用未被捕获 JSONPath 未遍历数组 使用 [*] 通配符语法,参见指南
“unexpected argument” 错误 Stdin 模式配置错误 使用 stdin: true,参见指南
401 认证错误 API key 未正确配置 设置正确的 API key 环境变量(见预置 schema 表)
prompt 超时 JSONPath 未匹配 捕获原始 CLI 输出,核对路径,参见指南
响应为空 内容提取失败 检查 extract 路径,参见指南

完整故障排查文档参见 Troubleshooting Guide。

相关资源

  • AgentSkills Spec:agentskills.io
  • 相关:agent-eval-harness skill,用于针对适配器运行评估。