SuperAPI AI 工具集

consult

智能体与模型

查看项目

更新于 10-15 08:43

技能介绍

用途

consult 是一个跨工具 AI 咨询技能(Cross-tool AI consultation)。其核心用途是查询另一个 AI 命令行工具并返回其响应。当用户希望获得不同 AI 工具的第二意见,或要求与 gemini/codex/claude/opencode/copilot 进行咨询、提问、交叉验证,或需要比较不同 AI 工具的回答、用外部 AI 验证某个决策时,可以调用该技能。

主要能力

该技能支持从 $ARGUMENTS 中解析以下参数:

  • --tool:目标工具,可选 gemini、codex、claude、opencode、copilot。
  • --effort:思考强度,可选 low、medium、high、max,默认 medium。
  • --model:覆盖模型选择,可填任意模型名称。
  • --context:自动附带上下文,可选 diff、file=PATH、none,默认 none。
  • --continue:可填 (flag) 或 SESSION_ID,用于恢复之前的会话。

除上述标志外的内容均视为问题文本。

使用方式

技能会依据参数完成命令构建,流程包括:解析模型、Codex 的信任门(trust gate)、构建命令字符串、上下文打包、以及安全的问题传递。

输入校验方面:--tool 必须为 gemini、codex、claude、opencode、copilot、kiro 之一;--effort 必须为 low、medium、high、max;--model 允许任意字符串但在命令中需加引号;--continue=SESSION_ID 需匹配 ^(?!-)[A-Za-z0-9._:-]+$;--context=file=PATH 必须解析在项目目录内,并经过路径包含性校验、阻断 UNC 路径等安全检查。

命令构建方面:若指定 --model 则直接使用,否则按提供商表中基于 effort 的模型选择。Codex 的 --skip-git-repo-check 由信任门(Step 1b)决定,需在当前项目工作目录内运行 git rev-parse --is-inside-work-tree 判定。会话续接时,Claude 或 Gemini 追加 --resume;Codex 使用 codex exec resume 形式;OpenCode 使用 --session 或 --continue,max 强度时追加 --thinking。

上下文打包:--context=diff 时运行 git diff 并前置到问题;--context=file=PATH 时读取文件并前置其内容。

安全的问题传递:用户提供的问题文本不直接插值到 shell 命令中,而是先写入临时文件(如 {AI_STATE_DIR}/consult/question.tmp),再通过 stdin 或临时文件方式传入;命令完成后删除临时文件。模型与会话 ID 为受控字符串,可直接加引号使用。

提供商配置方面,文档给出了各工具的命令模板、会话恢复方式、可选模型、effort 与模型对照表、输出解析方式和是否可续接会话,其中包括 Claude、Gemini、Codex、OpenCode、Copilot 以及仅支持 ACP 的 Kiro。

ACP 传输

ACP(Agent Client Protocol)是 CLI 子进程调用之外的另一种传输方式,提供结构化 JSON-RPC 2.0 通信、会话持久化与流式响应。技能会检测目标提供商的 ACP 可用性:可用时优先使用 ACP 传输,不可用时回退到 CLI 传输。ACP 提供商适配器包括 Claude(npx -y @anthropic-ai/claude-code-acp)、Gemini(原生 ACP)、Codex(npx -y @zed-industries/codex-acp)、Copilot(copilot --acp --stdio)、Kiro(kiro-cli acp)、OpenCode(opencode acp)。所有 ACP 提供商通过统一的 ACP runner 脚本执行:node acp/run.js --provider="PROVIDER" --question-file="{AI_STATE_DIR}/consult/question.tmp" --timeout=TIMEOUT_MS [--model="MODEL"] [--session-id="SESSION_ID"]。

会话管理与提供商检测

成功咨询后,会话保存到 {AI_STATE_DIR}/consult/last-session.json,包含 tool、model、effort、session_id、timestamp、question、continuable、transport 等字段。使用 --continue 时会读取会话文件并恢复 tool、session_id、model,并在使用前重新校验(工具需在允许列表内,session_id 与 model 需匹配相应正则),校验失败则拒绝。

提供商检测跨平台进行:Windows 使用 where.exe,Unix 使用 which,检查 claude、gemini、codex、opencode、copilot、kiro 并仅返回可用者。ACP 检测通过 node acp/run.js --detect --provider="PROVIDER" 完成。

适用场景

适用于需要向另一个 AI 工具获取第二意见、跨工具交叉验证、比较不同 AI 工具回答,或用外部 AI 验证决策的开发者工作流。

限制

不同提供商的模型、思考强度支持和会话可续接性不同(例如 Copilot 无 effort 控制且不可续接,Kiro 仅支持 ACP 且不可续接)。部分能力依赖相应 CLI 工具或 npx 是否在 PATH 中,缺失时无法使用。文档未提供收费、价格、性能效果等方面的信息。