SuperAPI AI 工具集

delegate-setup

智能体与模型

查看项目

更新于 10-26 02:45

技能介绍

用途

Delegate Setup 用于配置“委派通道(lanes)”——即决定哪一类工作由哪个已安装的实现型 CLI(implementer CLI)来处理。它处于“编排者(orchestrator)设置模式”:发现本机已安装的实现器 CLI,提出一份通道方案,并且只在用户批准后写入配置。

该技能不派发编码工作,只负责编写通道映射。文中统一使用“lanes”这一概念,不使用“routes”。

何时使用

  • 你想配置哪类工作由哪个实现器 CLI 处理(fleet lanes)。
  • 你需要发现已安装的实现器,并在用户批准后写入通道配置。

何时不使用

  • 用户想要实现某个任务——应改用对应的 *-delegate 技能。
  • 只想对单次派发临时改模型——在该次 relay 上传入 --model / --effort / --variant。

主要能力与硬性规则

  • 每个通道必须包含 implementer。
  • 只有当该实现器支持时,才在同一对象上设置 model、effort 或 variant 等参数(参见 references/schema.md)。
  • 每次写入前都要展示人类可读的通道表格和完整 JSON;每次调整后重新展示。
  • 仅在明确批准(“yes”“approve”“write it”)后才写入。
  • 除非已明确,否则询问作用域:全局(所有项目)还是仅当前仓库。不要仅因为当前目录是 git 仓库就创建项目文件。若没有 git 仓库,默认全局并说明。
  • 不要臆造模型标识符。
  • 在访谈或使用扫描模式下,绝不写入用户未提供且 schema 未要求的参数——省略它,让 CLI 或 relay 自身的默认值生效。
  • 优先 3–5 条有用的通道,而非大而全的映射。
  • 绝不编辑 AGENTS.md、CLAUDE.md 或其他用户代理指令文件。
  • 绝不从本技能运行 *-delegate relay。

使用方式(流程)

discover → load → grounding menu → propose(带 Basis)→ scope → approve → write

  1. 验证运行时可用性,然后发现:本技能为纯文档树,scripts/discover.mjs、config.mjs、lane.mjs 均不存在。不要对不存在的路径运行示例命令,也不要伪造发现/信任结果。若存在单独安装的运行时,先检查其已验证的修订版本、许可证与行为再使用。否则只产出提议的表格/JSON,明确标注为未验证,并在依赖缺失的校验器/批准哈希机制之前停止配置写入。

  2. 加载现有配置(有效映射):node "<skill-dir>/scripts/config.mjs" load --cwd "$PWD"。两者都不存在则提示“尚未配置通道”。否则展示带 Source 列(global / project)的有效通道表格。若 projectPresent 为 true 且 projectTrusted 为 false,将项目通道标注为不受信任,在用户审阅并批准项目写入前无法派发。

  3. 提出方案:发现只报告能力,不报告任务适配度。因此先问一个基准问题(三选一,不是向导):(1) 快速默认——由我决定,不问问题;(2) 访谈——约四个关于工作分配的问题;(3) 使用扫描——重读各 CLI 本地会话文件夹(仅计数与日期,绝不读对话内容),让数据决定通道位置。快速默认则立即提议;访谈则按 references/setup-dialogue.md 中的四个问题提问;使用扫描则运行 node "<skill-dir>/scripts/discover.mjs" --usage,运行前告知用户这只是元数据。

在 git 仓库内,仓库信号(语言、测试比重、前端占比)是第四类证据,不改变菜单,但会喂给提议与仓库依据。

委派经济学:编排者审阅并落地每个结果,审阅即质量门,因此优化总成本而非实现器声望。优先为有界、可客观验证的工作(测试、机械重构、直接修复)选择有能力、已认证、可消耗、低使用率的 CLI;避免默认把通道绑定到用户正在保护或用于编排的 CLI;当返工与审阅成本超过节省、实现器不稳定、正确性依赖安全/并发/迁移/未言明的领域知识、或产出本身就是产品(辩论、架构、研究)时,盈余放置会失效,应绑定更强的实现器。

然后提出通道,按用户描述的工作命名,回退到 feature、tests、ui、fast、complex。仅限已安装的实现器。展示:Lane、Implementer、Model、Effort / variant、Basis、Source(若为更新)。每条通道的 Basis 必填:your answer / usage data / repo / my opinion / schema requirement。

随后给出完整 JSON(version: delegate-fleet.v1),每条通道一行理由,标注 auth 或模型不确定性。

  1. 作用域:用户说全局/所有项目/项目外 → 全局;无 git 仓库 → 全局(说明);否则询问一次:全局还是仅此仓库。

  2. 批准与写入:明确同意后,只写入所选作用域(先校验)。从该作用域的原始文件(或新建时为空 lanes 对象)构建载荷——不要用有效合并视图,否则项目写入会遮蔽仅全局通道,全局写入会提升仅项目通道。在平台临时目录($TMPDIR、%TEMP% 或 Node os.tmpdir();绝不硬编码 /tmp)下创建唯一命名文件,用编排者的文件写入工具写入已批准的精确 JSON,并以该路径作为 <lanes-json>。绝不校验空临时文件。校验/写入尝试后无论成败都删除临时文件。

node "<skill-dir>/scripts/config.mjs" validate "<lanes-json>" node "<skill-dir>/scripts/config.mjs" write --scope global "<lanes-json>"

或:write --scope project --cwd /path/to/repo "<lanes-json>"

再次 load 读取,确认写入路径与生效通道名。项目写入将批准绑定到精确配置内容;后续更改在重新批准前会失败关闭。更新时,简短的前后对比即可。

  1. 准备委派:确认后停止,告知用户映射已就绪。后续工作:读取该通道的 implementer,加载对应 *-delegate 技能,并以 --lane <name> 派发(显式传入的 --model / --effort / --variant 仍优先)。除非用户要求,否则不要启动委派任务。

重新配置

流程相同:展示当前有效映射,提出更改,批准,写入某一作用域的文件。重新安装技能包不得重写这些文件——它们位于包外。

限制

  • 绝不自行派发工作——只在明确批准后发现 CLI 并写入配置。
  • 纯文档导入——不含可执行辅助脚本(scripts/);完整运行时见上游。需要 Node 18+。
  • 改编自 amElnagdy/delegate-skills(MIT)——纯文档,未捆绑运行时。

配置信任限制

schema 参考描述的是上游行为,而非此处提供的实现。已安装/已认证并不确立受支持的模型 ID、配额、安全默认值或强制只读行为。缺少运行时意味着无法声称项目信任哈希。在批准写入前,检查符号链接目标,保留无关通道/设置,使用私有临时文件,避免暴露会话文件名/账户元数据。使用扫描仍为可选加入,且需验证其实际实现只读取承诺的元数据。本次审阅期间未发生任何发现、会话扫描、配置写入或委派。