skills/user-confirm-skill/SKILL.md
# user-confirm-skill **用途**: 判别式确认 - 展示内容并获取用户反馈 **核心理念**: - 做选择题,不做填空题 - 人类擅长判别(喜不喜欢),不擅长生成(描述细节) - 展示具体方案,让用户说"对/不对" --- ## 输入参数 ```yaml input: content: object | string # 要确认的内容(方案、结果等) format: string # 展示格式(见下方) question: string # 确认问题 options: array # 可选:预定义的选项 ``` ### format 选项 | 格式 | 说明 | 适用场景 | |------|------|----------| | `visual_summary` | 可视化摘要(emoji + 结构化) | 展示设计方案 | | `file_list_with_summary` | 文件列表 + 功能说明 | 展示执行结果 | | `comp
npx skillsauth add maxoreric/sop-engine skills/user-confirm-skillInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
用途: 判别式确认 - 展示内容并获取用户反馈
核心理念:
input:
content: object | string # 要确认的内容(方案、结果等)
format: string # 展示格式(见下方)
question: string # 确认问题
options: array # 可选:预定义的选项
| 格式 | 说明 | 适用场景 |
|------|------|----------|
| visual_summary | 可视化摘要(emoji + 结构化) | 展示设计方案 |
| file_list_with_summary | 文件列表 + 功能说明 | 展示执行结果 |
| comparison_table | 对比表格 | 展示多个选项 |
| markdown | 完整 Markdown | 通用 |
| simple | 简单文本 | 快速确认 |
output:
approved: boolean # 是否通过
satisfied: boolean # 是否满意(同义,兼容性)
confidence: number # 用户信心(1-10)
comments: string # 用户反馈
specific_issues: array # 具体问题点(如果有)
suggestions: array # 改进建议(如果有)
根据 format 参数,将 content 格式化为易读的展示:
def format_content(content, format_type):
if format_type == "visual_summary":
return format_visual_summary(content)
elif format_type == "file_list_with_summary":
return format_file_list(content)
elif format_type == "comparison_table":
return format_comparison(content)
elif format_type == "markdown":
return content # 已经是 markdown
else:
return str(content)
展示模板:
[格式化的内容]
{question}
请回答:
✅ 通过/满意/可以
❌ 需要调整(请说明哪里需要改)
❓ 有疑问(请提出)
识别关键词:
| 用户回复 | approved | confidence | |---------|----------|------------| | "通过" / "可以" / "满意" / "好的" | true | 9 | | "基本可以" / "还行" / "差不多" | true | 7 | | "需要调整" / "不太对" / "有问题" | false | 5 | | "完全不对" / "重新来" | false | 2 |
如果用户说"需要调整",引导提取具体问题:
Claude: "明白了,具体哪里需要调整?我可以帮你改进。"
用户: "workflow 太复杂了,而且缺少 XXX 功能"
→ specific_issues: ["workflow 过于复杂", "缺少 XXX 功能"]
→ suggestions: ["简化 workflow", "增加 XXX 功能"]
输入:
content:
system_name: health-system
structure:
agents: 1
skills: 8
workflows: 3
workflows:
- name: daily-check
trigger: "21:00"
- name: weekly-report
trigger: "Sunday 20:00"
- name: checkup-analysis
trigger: "file_upload"
format: visual_summary
question: "这个方案符合你的预期吗?需要调整哪里?"
Claude 输出:
我已经完成设计!这是方案摘要:
📁 系统结构:
- 1 个 Agent(健康顾问)
- 8 个 Skills(体检分析、指标追踪等)
- 3 个 Workflows(每日检查、每周报告、体检分析)
🔄 核心流程:
① 每天 21:00 自动检查当日数据,生成健康提醒
② 每周日汇总本周情况,分析趋势
③ 上传体检报告时,自动分析并更新健康档案
📊 数据管理:
- 个人档案:基础信息、病史
- 指标记录:按日期存储
- 报告输出:Markdown 格式
这个方案符合你的预期吗?需要调整哪里?
请回答:
✅ 通过/满意/可以
❌ 需要调整(请说明哪里需要改)
❓ 有疑问(请提出)
用户回复: "看起来不错,可以开始创建"
输出:
{
"approved": true,
"satisfied": true,
"confidence": 9,
"comments": "看起来不错,可以开始创建",
"specific_issues": [],
"suggestions": []
}
用户回复: "需要调整,我还想要饮食记录功能,而且每日检查改到早上 8 点"
Claude 追问:
明白了!你希望:
1. 增加饮食记录功能
2. 每日检查改到早上 8:00
还有其他需要调整的吗?
用户: "没了"
输出:
{
"approved": false,
"satisfied": false,
"confidence": 7,
"comments": "需要调整,我还想要饮食记录功能,而且每日检查改到早上 8 点",
"specific_issues": [
"缺少饮食记录功能",
"每日检查时间不合适(应该是早上 8:00)"
],
"suggestions": [
"增加 diet-log-skill",
"调整 daily-check workflow 的触发时间为 08:00"
]
}
输入:
content:
created_files:
- "health-system/.claude/agents/health-advisor.md"
- "health-system/.claude/skills/checkup-analysis/SKILL.md"
- "health-system/.claude/workflows/daily-check.yaml"
# ... 更多文件
summary:
total_files: 25
agents: 1
skills: 8
workflows: 3
format: file_list_with_summary
question: "试用一下,有没有不符合预期的地方?"
Claude 输出:
✅ 系统创建完成!
📁 health-system/
├── .claude/
│ ├── agents/health-advisor.md
│ ├── skills/ (8 个)
│ │ ├── checkup-analysis/
│ │ ├── health-indicators/
│ │ ├── risk-assessment/
│ │ └── ...
│ └── workflows/ (3 个)
│ ├── daily-check.yaml
│ ├── weekly-report.yaml
│ └── checkup-analysis.yaml
├── data/
│ ├── profile.json (示例)
│ └── indicators/
├── outputs/
└── README.md
🚀 下一步:
1. 填写 data/profile.json(你的基本信息)
2. 试用: "执行每日健康检查"
3. 上传体检报告测试分析功能
试用一下,有没有不符合预期的地方?
请回答:
✅ 满意/没问题
❌ 有问题(请说明)
def format_visual_summary(content):
"""
可视化摘要格式
使用 emoji + 结构化展示
"""
output = []
# 系统结构
if "structure" in content:
output.append("📁 系统结构:")
structure = content["structure"]
if "agents" in structure:
output.append(f" - {structure['agents']} 个 Agent")
if "skills" in structure:
output.append(f" - {structure['skills']} 个 Skills")
if "workflows" in structure:
output.append(f" - {structure['workflows']} 个 Workflows")
# 核心流程
if "workflows" in content:
output.append("\n🔄 核心流程:")
for i, wf in enumerate(content["workflows"], 1):
trigger = wf.get("trigger", "手动触发")
output.append(f" {chr(9311 + i)} {wf['name']}: {trigger}")
# 数据管理
if "data_structure" in content:
output.append("\n📊 数据管理:")
for item in content["data_structure"]:
output.append(f" - {item}")
return "\n".join(output)
def format_file_list(content):
"""
文件列表 + 摘要格式
"""
output = ["✅ 系统创建完成!\n"]
# 文件树
if "created_files" in content:
output.append("📁 创建的文件:")
# 简化显示,只显示关键文件
for file in content["created_files"][:10]:
output.append(f" - {file}")
if len(content["created_files"]) > 10:
output.append(f" ... 共 {len(content['created_files'])} 个文件")
# 摘要
if "summary" in content:
output.append("\n📊 摘要:")
summary = content["summary"]
for key, value in summary.items():
output.append(f" - {key}: {value}")
return "\n".join(output)
❌ 错误方式(生成式):
Claude: "你想要什么功能?"
用户: "呃...我想要...那个...嗯..."
✅ 正确方式(判别式):
Claude: "我设计了这个方案:[具体方案]。符合预期吗?"
用户: "基本可以,但需要调整 X"
当用户说"需要调整"时,不要让用户自己描述:
❌ 错误:
Claude: "好的,请详细描述你想要的调整"
用户: "呃...怎么说呢..."
✅ 正确:
Claude: "明白了!具体哪里需要调整?
A. 功能缺失(缺少某个功能)
B. 流程问题(步骤不对)
C. 时间安排(触发时间)
D. 其他(请说明)"
根据用户的措辞判断信心:
| 措辞 | confidence | 含义 | |------|------------|------| | "完美" / "很好" | 10 | 非常满意 | | "可以" / "不错" | 9 | 满意 | | "还行" / "基本可以" | 7 | 勉强接受 | | "有些问题" | 5 | 不满意但可修复 | | "不对" / "重新来" | 2 | 严重不满 |
input:
content: <设计方案>
format: "visual_summary"
question: "这个方案符合你的预期吗?"
input:
content: <执行结果>
format: "file_list_with_summary"
question: "试用一下,有没有不符合预期的地方?"
input:
content: "方案 A vs 方案 B"
format: "comparison_table"
question: "你更倾向哪个?"
options: ["A", "B", "都可以", "都不要"]
需要识别各种表达:
使用简单的 NLP 技巧:
如果用户长时间没回复:
(等待 24 小时后)
Claude: "我还在等待你的确认。如果暂时没时间查看,我会先执行当前方案,后续你可以再调整。"
见 criteria.md
data-ai
# workflow-define-skill **用途**: 定义 Workflow(基于需求生成 Workflow YAML) **输入**: 需求、系统结构、Skills 列表 **输出**: Workflow YAML 定义 --- ## 核心原则 1. **基于需求驱动** - Workflow 服务于具体需求 2. **复用 Skills** - 优先使用已有的 Skills 3. **遵循规范** - 严格遵循 workflow-spec.md 4. **清晰命名** - Workflow 和节点名称自解释 5. **适度复杂** - 避免过度设计,保持简单 --- ## 输入格式 ```yaml input: requirement: # 需求描述 name: string # Workflow 名称 purpose: string # 用途 trigger: object # 触发
testing
Skill 版本管理的 Skill。当需要 A/B test、切换版本、回滚时触发。触发词:版本、version、A/B test、切换、回滚、promote。
data-ai
# system-create-skill **用途**: 创建一个完整的 System/Project **触发**: 当用户表达想要创建一个系统时(如:"创建一个健康管理系统") **核心理念**: - 人只说意图,AI 自己设计 - 做选择题,不做填空题 - 问最关键的一题(最大信息增益) --- ## Workflow 定义 这是一个完整的 Workflow,演示了: - 条件分支 - 循环迭代 - Workflow 嵌套 - 判别式交互 ```yaml workflow: name: system-create-skill description: 创建一个完整的 System/Project version: 1.0.0 input: user_intent: string # 用户的模糊意图 output: system_path: string # 创建的系统路径 summary: object # 系统摘要 # ===============================
data-ai
# synthesize-skill **用途**: 汇总多个部分的信息,形成完整方案 **输入**: 多个组件的输出(structure, workflows, skills, agents...) **输出**: 统一的、完整的设计方案 --- ## 核心能力 1. **信息整合** - 将分散的信息汇总 2. **一致性检查** - 确保各部分之间一致 3. **生成摘要** - 提取关键信息 4. **格式统一** - 输出标准格式 --- ## 输入格式 ```yaml input: structure: object # 目录结构 workflows: array # Workflows 列表 skills: array # Skills 列表 agents: array # Agents 列表(可选) requirements: object # 原始需求 ``` --- ## 输出格式 ```yaml output: design_