加载中...
返回AI 编程实战
AI 编程知识库 · AI 编程实战 · Skill 进阶

任务型 Skill 实战

三种调用模式对比

阅读提示:任务型 Skill 通过 disable-model-invocation: true 实现用户显式控制,适合有副作用的自动化工作流。本文基于官方文档和社区最佳实践。


15.1 disable-model-invocation 正确使用

三种调用模式

通过 disable-model-invocation 和 user-invocable 两个 Frontmatter 字段的组合,可以实现三种调用模式:

模式 disable-model-invocation user-invocable Claude 调用 用户调用
默认 false(默认) true(默认) ✅ 可以 ✅ 可以
任务型 true true(默认) ❌ 禁止 ✅ 可以
后台型 false(默认) false ✅ 可以 ❌ 禁止

为什么任务型需要禁用自动调用

问题场景:Git 提交 Skill

# ❌ 错误配置:允许 Claude 自动调用
---
name: git-commit
description: Git 提交专家。帮助创建提交。
---

风险:

  • Claude 可能在不合适的时机自动触发提交
  • 用户失去对提交时机的控制
  • 可能产生不符合预期的提交

正确配置:

# ✓ 正确配置:用户显式控制
---
name: git-commit
description: Git 提交专家。使用 /git-commit 创建符合 Conventional Commits 格式的提交。
disable-model-invocation: true
---

选择决策树

这个 Skill 有副作用吗(修改文件、执行命令)?
├── 是 → 使用 disable-model-invocation: true
│   └── 用户需要显式控制执行时机
└── 否 → 使用默认配置
    └── Claude 可以在需要时自动调用

15.2 实战案例一:Git 提交信息生成 Skill

任务型 Skill 工作流程

场景

自动化 Git 提交流程,生成符合 Conventional Commits 规范的提交信息。

目录结构

.claude/skills/git-commit/
├── SKILL.md
└── scripts/
    └── security-check.sh

SKILL.md

AI 编程知识库会员专享内容
开通后解锁「任务型 Skill 实战」全文,AI 编程知识库全年访问

扫码添加企业微信,找大熊掌门开通会员

企业微信二维码

添加后说明想开通的会员类型即可

加载中...