AI 原生开发工作流实战
15
15
1.0x
00:00/00:00
登录|注册

08|自定义指令:精通Slash Commands,打造你的私人命令集

你好,我是 Tony Bai。
在前面的几讲中,我们已经学会了如何通过 @ 指令为 AI 提供精准的上下文,以及如何通过 CLAUDE.mdconstitution.md 为它注入持久的“记忆”和“原则”。现在,我们的 AI 伙伴已经足够“博学”,能够“懂你项目”了。
但是,一个新的效率瓶颈又出现了。你可能会发现,自己每天都在输入一些类似但冗长的指令:
“请帮我审查一下 @internal/api/ 这个包里的 Go 代码,重点关注错误处理和是否符合我们的 constitution.md。”
“请为我刚才写的 @utils/parser.go 这个文件生成一份单元测试,确保覆盖所有分支,并使用表格驱动的风格。”
“请分析 !git diff --staged 的输出,并为我生成一条符合 Conventional Commits 规范的提交信息。”
这些指令虽然有效,但每次都手动输入,不仅繁琐,而且容易出错。它们就像 Shell 脚本出现之前,我们每次都要手动敲打一长串的 find | xargs | grep 组合一样。有没有一种方法,可以将这些高频、复杂的、蕴含了我们最佳实践的工作流,封装成一个简单的、可复用的指令呢?
答案是肯定的。这正是我们今天要精通的核心工具——Slash Commands(斜杠指令)。正如 Anthropic 在其官方最佳实践指南中提到的,对于重复性的工作流——无论是调试、日志分析还是代码审查——将提示模板存储为 Slash Commands 是提升效率的关键。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. Slash Commands是一种工具,能够将高频、复杂的工作流封装成简单、可复用指令,提升日常工作效率。 2. 自定义Slash Commands是AI原生开发范式中的重要一步,能够将经验、团队最佳实践沉淀为AI可以理解和执行的标准化指令。 3. 自定义指令分为Project级与User级指令,平衡了团队协作和个人效率,适合封装团队的公共工作流和最佳实践,以及个人的高频习惯和常用工具集。 4. 自定义指令的参数系统包括`$ARGUMENTS`和`$1`, `$2`, `$3`…,使指令更加灵活和强大。 5. 利用Frontmatter定义元数据可以为指令赋予丰富的元数据和清晰的“签名”,提高指令的专业性和可读性。 6. 在指令中调用Shell命令是自定义指令最强大的功能之一,能够实现一次上下文的自动化准备,提高效率。 7. 设计理想中的“AI代码审查”工作流,结合了确定性工具和AI深度分析的系统化过程,提高了审查的质量和深度。 8. 创建指令文件和编写指令的“源代码”是实战中的重要步骤,需要明确工作流并将其转化为可执行的指令。 9. 使用Frontmatter定义元数据和在指令中调用Shell命令是自定义指令的高级技巧,能够提高指令的专业性和效率.

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 原生开发工作流实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(1)

  • 最新
  • 精选
  • Geek_c4cad7
    --- description: 根据当前暂存区的代码变更,生成一条符合Conventional Commits规范的Commit Message。 allowed-tools: Bash(git add:*) --- 你是一位资深的Git专家。请根据以下提供的 **Git上下文信息**,按照逻辑判断并生成内容。 ### Git 上下文信息 **1. 当前分支 (Current Branch):** !`git branch --show-current` **2. 文件状态概览 (File Status):** !`git status --short` **3. 暂存区变更 (Staged Changes - 优先):** !`git diff --staged` **4. 工作区未暂存变更 (Unstaged Changes - 备用):** !`git diff` --- ### 生成逻辑与要求 请按照以下优先级顺序进行判断和输出: **情况 A:如果「暂存区变更」不为空** 1. 忽略「工作区未暂存变更」。 2. 仅根据「暂存区变更」的内容,生成一条符合 Conventional Commits 规范的 Commit Message。 3. **输出格式**:直接输出 Commit Message,不需要任何前缀或解释。 **情况 B:如果「暂存区变更」为空,但「工作区未暂存变更」或「文件状态概览」不为空** 1. 这说明用户忘记执行 `git add` 了。 2. 根据「工作区未暂存变更」的内容,生成一条 **建议的** Commit Message。 3. **重要**:在输出 Commit Message 之前,必须先用一行加粗文字提示用户:**"暂存区为空,以下是根据工作区变更生成的建议(请先 git add):"** **情况 C:如果所有变更都为空** 1. 直接回复:"当前工作区是干净的,没有检测到任何代码变更。" ### Commit Message 规范 - 格式:`<type>(<scope>): <subject>` - 常用Type:feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert - 语言:请使用中文(除非项目主要语言为英文) 请只输出commit message本身,不要有任何额外的解释。
    2025-12-05归属地:中国台湾
    1
收起评论
显示
设置
留言
1
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部
文章页面操作
MAC
windows
作用
esc
esc
退出沉浸式阅读
shift + f
f11
进入/退出沉浸式
command + ⬆️
home
滚动到页面顶部
command + ⬇️
end
滚动到页面底部
⬅️ (仅针对订阅)
⬅️ (仅针对订阅)
上一篇
➡️ (仅针对订阅)
➡️ (仅针对订阅)
下一篇
command + j
page up
向下滚动一屏
command + k
page down
向上滚动一屏
p
p
音频播放/暂停
j
j
向下滚动一点
k
k
向上滚动一点
空格
空格
向下滚动一屏
播放器操作
MAC
windows
作用
esc
esc
退出全屏
⬅️
⬅️
快退
➡️
➡️
快进
空格
空格
视频播放/暂停(视频全屏时生效)