mcpField
M
meta-command-creator

meta-command-creator

github.com/oakossAgent 工作流2091 次安装10 周前更新
代码仓库

关于 meta-command-creator

用于设计可复用斜杠命令和技能的 Claude Code 技能,说明文件位置、参数、frontmatter、工具限制及工作流选择。

主要功能

  1. 01项目级和个人命令位置
  2. 02参数与文件引用语法
  3. 03注入 Bash 输出
  4. 04frontmatter 选项与工具限制
  5. 05命令优先级和命名

适用场景

  1. 01创建可复用的团队工作流
  2. 02添加由参数驱动的命令
  3. 03为受控操作限制工具
  4. 04选择使用命令还是技能

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/oakoss/agent-skills --skill meta-command-creator

安装后在 Claude Code 中输入/meta-command-creator确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
arguments-and-refs.md
command-anatomy.md
templates.md
scripts/
validate-command.py

详细介绍

自定义斜杠命令创建器

概述

Claude Code 斜杠命令是带有可选 YAML frontmatter 的 Markdown 文件,可创建可重复使用的 /command 工作流。命令和技能已统一:.claude/commands/ 文件和 .claude/skills/ 目录都能创建斜杠命令。建议使用技能,因为它们支持支持文件等额外功能,但单文件命令仍然可用。

适用场景: 可重复使用的提示词、团队工作流标准化、带防护措施的操作(部署、提交)、多阶段任务、通过 bash 输出动态注入上下文。

不适用场景: 需要多个文件和脚本的复杂功能(请改用完整的技能目录)、一次性提示词、已存在的内置命令(/compact、/help、/init)。

快速参考

功能语法 / 位置要点
项目命令.claude/commands/name.md在 /help 中显示“(项目)”
项目技能.claude/skills/name/SKILL.md相较于命令更受推荐,支持额外文件
个人命令~/.claude/commands/name.md在所有项目中可用
个人技能~/.claude/skills/name/SKILL.md在所有项目中可用
插件命令<plugin>/skills/name/SKILL.md命名空间格式为 plugin-name:skill-name
子目录命令.claude/commands/git/commit.md在 /help 中显示“(项目:git)”
所有参数$ARGUMENTS完整参数字符串
位置参数$0、$1、$2 或 $ARGUMENTS[0]从 0 开始的索引
Bash 注入!`git status`在发送提示词前运行,输出会替换占位符
文件引用@src/file.ts将文件内容内联到提示词中
扩展思考在内容中加入“ultrathink”触发更深入的推理模式
会话 ID${CLAUDE_SESSION_ID}用于日志记录的当前会话标识符
Frontmatter 描述description: What it does在 /help 列表中显示及供 Skill 工具使用时必填
工具限制allowed-tools: Read, Grep, Glob限制工具,无需逐次审批
仅手动调用disable-model-invocation: true阻止 Claude 自动触发
从菜单中隐藏user-invocable: false仅作为 Claude 加载的背景知识
参数提示argument-hint: [issue-number]在自动补全中显示
模型覆盖model: claude-sonnet-4-20250514为此命令指定模型
子 Agent 执行context: fork在隔离的上下文中运行
子 Agent 类型agent: Explorecontext: fork 时使用内置或自定义 Agent

优先级顺序

当不同层级中存在同名命令时,优先级较高的位置生效:

  1. 企业级(托管设置)
  2. 个人级(~/.claude/)
  3. 项目级(.claude/)

插件命令使用命名空间(plugin:name),因此不会冲突。如果技能和命令同名,则技能优先。

常见错误

错误影响正确做法
在命令文件中添加 name 字段对 .md 命令无效名称会根据文件名推断
缺少 description frontmatter不会显示在 /help 和 Skill 工具中始终包含 description
使用 category 或 tags 字段会被静默忽略使用子目录进行组织
使用 $ARGUMENTS 时未处理空值行为异常检查是否为空,并提供默认值
使用 !`bash` 却未设置 allowed-tools命令无法执行在 frontmatter 中添加 allowed-tools: Bash(...)
认为项目级命令会覆盖个人命令个人命令优先个人命令优先级更高;重命名以避免冲突
使用 context: fork 却未指定任务子 Agent 没有可执行的工作仅对包含明确分步说明的技能进行分叉
覆盖内置命令名称无法覆盖内置命令使用不同名称(用 /my-help,而不是 /help)

委派

  • 命令模式发现:使用 Explore Agent 查找 .claude/commands/ 或 .claude/skills/ 中的现有命令
  • 复杂工作流技能:对于多文件功能,创建包含 SKILL.md 和支持文件的完整技能目录

参考资料

评论

支持 Markdown