关于 creation-feasibility-gate
用于判断新建 Agent、技能、工作流、钩子、模板或模式是否可行的预检技能。它要求先查重并提供文件级证据,再给出 PASS、WARN 或 BLOCK 及后续步骤。
主要功能
- 01查重与存在性检查
- 02技术栈和集成预检
- 03安全边界检查
- 04PASS、WARN 或 BLOCK 判定
- 05证据与补救步骤
适用场景
- 01检查拟新增的技能
- 02评估工作流创建条件
- 03在创建前识别阻碍
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ oimiragieo/ agent-studio --skill creation-feasibility-gate安装后在 Claude Code 中输入/creation-feasibility-gate确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
commands/creation-feasibility-gate.mdhooks/post-execute.cjspre-execute.cjsreferences/research-requirements.mdrules/creation-feasibility-gate.mdschemas/input.schema.jsonoutput.schema.jsonscripts/main.cjstemplates/implementation-template.md详细介绍
创建可行性门控
概述
在创建新的 agent/skill/workflow/hook/template/schema 之前,先快速进行可行性预检,避免低价值或无法实现的创建流程。
适用场景
- Phase 0.5 动态创建流程
- 用户要求新增能力
- 反思/演进建议创建制品
铁律
- 绝不在此 skill 中创建制品——只能返回带有证据的 PASS/WARN/BLOCK;所有实际创建工作都应由下游适当的创建器 skill 完成。
- 始终先进行存在性/重复项检查——如果任何目录或注册表中已存在功能相同的制品,绝不能继续判定为 PASS。
- 始终为每项判定提供具体的文件级证据——未引用具体路径或目录条目就直接给出 PASS 或 BLOCK,违反规范。
- 绝不让 WARN 悄然变成 PASS——每个 WARN 都必须列出调用 Agent 在继续创建前必须确认的确切注意事项。
- 始终通过可执行的后续步骤和建议的目标 Agent 解除 BLOCK 状态——没有补救任务的 BLOCK 是不完整的门控判定。
反模式
| 反模式 | 失败原因 | 正确做法 |
|---|---|---|
| 未运行重复项检查就返回 PASS | 会创建重复制品,分散 Agent 流量并扩充目录 | 返回 PASS 前,始终查询目录、注册表和文件系统 |
| 返回 BLOCK 却不提供补救任务 | 调用 Agent 会陷入停滞,无路可走 | 在 nextActions 中列出具体的 Agent/skill,以解除阻碍 |
| 跳过安全/创建器边界检查 | 治理钩子可能会阻止创建器流程;悄然绕过会导致运行时失败 | 返回 PASS 前,始终确认创建器 skill 调用链可用 |
| 仅将 WARN 视为提示信息 | WARN 注意事项不会呈现给用户;创建会在风险未解决时继续 | 调用方必须在任务元数据中明确确认 WARN |
| 在门控 skill 中执行创建步骤 | 违反职责分离原则;无法独立验证门控输出 | 门控只输出判定 JSON;将创建工作委派给创建器 skill |
工作流
步骤 1:确定目标
- 确定拟创建制品的类型和名称
- 确定预期的运行时/工具依赖项
- 确定预期的所有者 Agent
步骤 2:存在性/重复项检查(铁律 #2)
使用共享的重复项检测库:
const { checkDuplicate } = require('.claude/lib/creation/duplicate-detector.cjs');
const result = checkDuplicate({
artifactType: artifactType, // from Step 1 classification
name: proposedName,
description: proposedDescription,
});
if (result.decision === 'EXACT_MATCH') {
return {
gate: 'BLOCK',
reason: `Artifact exists at ${result.matchedPath}. Use the ${artifactType}-updater skill instead.`,
};
}
if (result.decision === 'REGISTRY_MATCH') {
return {
gate: 'WARN',
reason: `"${proposedName}" found in ${result.message} but file may be missing. Investigate.`,
};
}
if (result.decision === 'SIMILAR_FOUND') {
return {
gate: 'WARN',
reason: `Similar artifacts found: ${result.candidates.map(c => `${c.name} (${(c.score * 100).toFixed(0)}%)`).join(', ')}. Confirm creation is intentional.`,
};
}
return { gate: 'PASS' };
3 个检测层(文件系统、注册表/目录、模糊/语义)由库内部处理。详情请参阅 .claude/lib/creation/duplicate-detector.cjs。
步骤 2.5:其他预检
根据具体证据运行以下检查:
- 技术栈兼容性检查
- 所需工具/运行时是否符合当前项目约定
- 集成就绪性检查
- 创建后是否可以路由/发现/分配
- 安全/创建器边界检查
- 确保创建器流程和治理要求均可满足
步骤 3:判定
返回以下状态之一:
PASS:目前可以创建WARN:可以创建,但有明确注意事项BLOCK:目前无法创建;必须先解除阻碍
使用以下输出格式:
{
"status": "PASS|WARN|BLOCK",
"artifactType": "agent|skill|workflow|hook|template|schema",
"artifactName": "example-name",
"evidence": ["..."],
"blockers": [],
"nextActions": ["..."]
}
输出协议
如果为 BLOCK,请提供具体的补救任务和建议的目标 Agent。
如果为 PASS 或 WARN,请提供下一步要运行的确切创建器 skill 调用链。
记忆协议
将可行性模式和反复出现的阻碍记录到 .claude/context/memory/learnings.md。
评论
支持 Markdown