


根据真实命令和参数,为 AI 智能体生成命令 Schema
在构建告诉 AI 智能体有哪些命令、如何调用的 Schema 时使用。它从经过审查的命令清单和真实命令单向生成,并检查命令覆盖、示例以及安全和确认信息是否正确。
要使用这个AI规则
## 修改注册表和生成器,而不是生成的文件
将仓库指南视为其适用范围内文件的契约。保留无关工作,对每个修改过的源文件应用对应语言的格式化工具,并且只修改实现所需行为的最小归属输入。
编辑前先确定权威输入。经过审查的命令注册表应负责稳定的命令标识、主路径、别名和导航。可执行命令树应负责确定路径是否存在、能否运行以及接受哪些标志。生成的目录和智能体元数据是输出,而不是编辑界面;应先修改其源输入和生成器,再重新生成。
运行仓库规定的构建、完整测试、生成、漂移检查、策略检查以及覆盖本次变更的针对性命令测试。审查生成的差异,并拒绝无关改写。
## 单向构建 Schema,每个命令只绑定一次
保持架构解析的单向性:
1. 构建真实可执行的命令树和标志。
2. 在绑定前,将经过审查的标识注册表与经过审查的元数据覆盖项合并。
3. 解析参数类型、映射、必填状态、默认值和跨参数约束。
4. 按声明的来源优先级解析智能体选择、安全、接口和运行时门控语义。
5. 将每条命令恰好绑定一次,形成一个类型化工具规范和索引。
6. 只从该类型化权威源发布目录、完整导出、摘要和生成的元数据。
绑定后,不得重新打开注解、源记录、旧目录或生成的 JSON 来修复或再次解析标识。解码嵌入式快照的生产加载器是交付边界,而不是第二个源解析阶段。它绝不能创建或修复命令、标志、注册表条目或后续生成输入。
除非明确授权带版本的变更,否则应保持已经发布的线协议。与其他系统在架构上保持一致,并不能成为进行无版本格式变更的理由。
## 双向检查每个命令和每个 Schema 都能对上
绑定器必须拒绝缺失或不可运行的命令路径、别名冲突,以及与有效注册表不一致的原生标识断言。如果注解只是用于一致性检查,而不是标识的备用来源,则可以允许缺少原生标识断言。
从两个方向强制覆盖:
1. 每个交付的架构工具,包括它在目录中的投影,都必须解析到可执行命令。
2. 每个公开且可运行的命令叶节点都必须解析到架构,或者列入一项精确、经过审查且理由非空的排除项。
绝不能使用前缀或通配符排除,因为它们可能隐藏未来的命令。过时、无效或重复的排除项必须导致生成失败;命令进入架构后,必须停用对应的排除项。
将经过审查的注册表作为稳定标识和导航的唯一权威源,同时将可执行树作为路径、可运行性和标志事实的来源。每当命令树发生变化时,都要运行反向完整性测试。
## 把安全元数据和智能体选择说明分开编写
按所有权拆分人工编写的输入。元数据负责效果、风险、确认、幂等性、接口、运行时门控和可选参数覆盖项。选择信息负责智能体摘要、正向和负向路由指南、示例及产品路由。索引只能将产品标识符映射到这些文件。
不要在这些区块之间混用字段。每个编写的条目都必须经过明确审查,包含具体的审查理由和证据引用,并且是表达用户可见行为的最小条目。选择说明应解释触发意图、同级命令路由和预期结果,而不是重复命令摘要。
按声明的优先级解析证据:先使用可执行运行时事实,再使用实时接口架构、固定接口元数据,最后只把技能文档作为证据。实时发现使用个人凭据时,绝不能显示或提交访问凭据。实时发现失败时,应记录失败,使用获准的备用证据,不得捏造接口或远程过程。
参数覆盖项必须精确指向一个公开且可运行的叶节点和真实标志。它们可以完善说明、接口映射、必填状态和条件要求,但不得创建命令或标志、定义接口或宣传未知的远程过程。
## 每次从头重建全部输出,并检查它们一致
将生成视为一次完整、确定性的快照重建,而不是在旧目录上打增量补丁。重新读取每项经过审查的输入,停用过时的生成产品元数据,并重写准确的输出投影。生成文件绝不能成为合并输入;如果生成过程改动了人工编写的输入或经过审查的注册表,字节守卫应使其失败。
所有投影都使用同一份已经解析的类型化工具规范。叶节点载荷必须等于完整导出和目录中的对应条目,概览与分组摘要必须等于同一工具的摘要投影。别名查询只能改变别名特有的视图字段,不得重新解析或改变命令契约。
对于每个交付的工具和参数字段,选中的来源值必须与交付值完全一致。只检查来源名称、候选数量、字段是否存在或哈希并不充分。
运行生成、运行时确认事实检查、反向完整性测试、针对性命令测试和最终嵌入式加载器检查。接受快照前,审查由此产生的全部差异。
## 不靠跳过或 --yes 来检查示例和试运行
每个工具最多保存两个经过审查的示例。示例必须使用真实的主路径或别名、可接受的标志、必需的位置参数,以及所有有效的 `require-one-of`、`require-together` 和 `mutual-exclusion` 约束。不得包含 shell 注释或 `--yes` 等确认绕过标志。
每个示例都必须通过与其绑定命令相对应的契约验证。缺少必填值、约束失败、运行时错误或接口解析错误属于契约缺陷,不能作为跳过示例的理由。
运行时示例执行必须选择加入,而且只有最终类型化工具发布了明确且经过审查的试运行能力时才允许执行。风险和确认元数据不得凭空生成预览支持。经过审查的人工处置可以把现有试运行能力缩小到一个精确的、从0开始的示例索引,但必须使用获准的原因代码、提供具体理由,并且绝不能把普通契约验证变成跳过。
绝不能捕获试运行失败后将其动态降级为仅契约验证。默认运行全面契约门控;通过真实命令执行时,应隔离用户状态、阻断代理,并且只执行符合条件的试运行子集。应将稳定执行数量的变化视为需要审查的契约变更。
## 不把正确答案发给模型,测试 AI 是否选对命令
将每个正向选择场景视为一项断言,即应选择其经过审查的命令;将每个负向场景视为一项断言,即不得选择该命令。从人工编写的选择字段派生确定性的类型化测试固件,要求精确覆盖工具并使用可运行的主命令,同时拒绝缺失、重复或相互矛盾的预期。仅靠字符串匹配无法证明语义理解。
实时模型选择检查必须明确选择加入。支持小型冒烟集、完整审查集和精确案例列表。只向评估器发送案例标识符、场景文本和同一产品的候选表;将预期断言和禁止断言保留在本地。
将内置 HTTPS 评估端点加入允许列表。使用任何其他 HTTPS 提供商时,必须把其确切基础 URL 加入获准的允许列表;明文 HTTP 只允许用于环回测试服务器。绝不能把 API 凭据发送到任意明文端点。
常规持续集成必须保持确定性,且不得调用模型。其阻断门控包括可复现的测试固件、命令绑定、示例有效性、来源信息和最终交付相等性。
## 按来源优先级决定安全和确认设置
按来源优先级解析安全和参数元数据,而不是选择看起来更严格的值。优先级更高且经过审查的来源可以有意提高或降低效果、风险、确认、幂等性、说明或映射。保留所有候选项和选中的来源;同一优先级发生冲突时应失败,而不是静默合并。
必需的命令标志是不可降低的下限:覆盖项可以把可选标志变为必填,但绝不能减弱可执行命令声明的要求。对于命令文本,应依次优先使用经过审查的命令专用提示、命令帮助和接口元数据;通用远程过程说明不得覆盖专用命令说明。
不要从一个安全字段推断另一个安全字段。破坏性效果或高风险不会机械地改写确认。确认必须与明确的运行时门控一致;需要用户确认时,必须先获得确认,再添加 `--yes` 等绕过标志。
如果已经发布的命令帮助与叶节点架构不一致,只能传递可执行命令接受的标志。如果安全来源冲突,应采用更安全的解释,或者停止并报告契约漂移。确认语义不仅要在生成器单元测试中验证,还要通过最终嵌入式加载器和查询路径进行验证。
## 逐步查找命令,再用真实命令获取数据
常规发现应渐进进行:先查看概览,再查看产品或分组,最后查看叶节点。完整导出应保留为稳定的兼容契约,并为每个最终工具包含完整参数、约束和安全语义,其中没有标志的命令也必须包含空参数对象。紧凑型完整导出不是完整的兼容基线。
命令帮助决定路径是否存在以及可执行程序接受哪些标志。叶节点架构决定智能体选择、参数映射与约束,以及安全和确认语义。任何不一致都属于契约漂移,不能据此猜测。
架构和帮助用于描述命令,并不返回业务数据。完成发现后,应在已确认的权限范围内执行适当的真实读取、搜索或列表命令来获取数据。
交付前,确认命令标识已经审查、可执行覆盖是双向的、排除项精确、人工编写区块的所有权相互分离、来源优先级得到保留、生成输出仍只作为输出、示例通过真实契约、确认与运行时门控一致,并且每项投影都等于同一个类型化权威源。
