ingFang SC", Cambria, Cochin, Georgia, Times, "Times New Roman", serif;font-feature-settings: normal;font-variation-settings: normal;font-size: 13.5px;text-align: left;line-height: 1.75;color: rgb(221, 17, 68);background: rgba(27, 31, 35, 0.05);padding: 3px 5px;border-radius: 4px;">$ARGUMENTS参数占位。这样就不用每次重复输入大量的提示词了。~/.claude/commands/命令名1.md→ 用/命令名1调用<repo>/.claude/commands/命令2.md→ 用/命令名2调用如果你的自定义命令过多,可以创建文件夹进行命令分类,这样方便区分管理。
<repo>/.claude/commands/frontend/bugfix.md→ 用/frontend:bugfix调用如果有参数,可以在命令的 markdown 文档中添加$ARGUMENTS占位符即可。下面是一些测试用例
使用示例
mkdir -p .claude/commands.claude/commands/feature.md,内容如下:你是一名资深前端工程师,精通各种前端技术。请基于以下需求完成前端代码开发:
$ARGUMENTS
要求如下:
-确保执行代码修改前,先添加单元测试用例
-确保测试用例能全部通过
-确保代码符合 eslint 规范,通过 eslint 命令进行验证和修复
-变更结束后,生成一段提交信息(Conventional Commits)/feature为当前管理后台增加一个登录功能”
以下是一些建议事项
命令命名与组织建议
feature、writetests、fixbug.claude/commands/frontend/*、backend/*、devops/*传参与变量$ARGUMENTS:参数是承载命令后的全部文本,需要放在 Prompt 文本的合适位置。
如果在命令体内有一些格式规范需要说明,可以在命令文本内进行参数格式说明,例如:<title> --scope=<name> --priority=<p1|p2|p3>
安全命令白名单配置
一定要及时在项目根的.claude/settings.local.json添加允许的Bash命令清单,这样可以减少确认操作导致的打断:
{
"allowedCommands":[
"git *",
"npm *",
"pnpm *"
],
"defaultOutputStyle":"explanatory"
}这个功能比较有意思,简单来说就是给 Claude Code 换“说话方式”的开关, 可以理解成:同一个人,换了不同的“工作模式”,比如“只管干活”“边干边讲解”“教你怎么干”。原来那些读写文件、跑命令对的本事都还在,只是思路和表达方式变了。我觉得这个工具用来学习的话, 作用更大一些!
Claude Code 内置三种输出风格:
Default(默认):高效地完成编码任务并提供简洁的回答。简单概括就是:少废话,快干活。Explanatory(解释):解释它的实现选择和代码库模式。边做边解释“为什么这么做”(适合读旧代码、过方案)。Learning(学习):暂停并要求你编写小段代码以进行动手实践。像带教结对,留 TODO 让你亲手补,再给反馈(适合学习/培养新人)。手把手教你学习编程, 最佳学习助手!切换方式:
/output-style/output-style explanatory、/output-style learningoutputStyle即可。学习型示例
先把输出模式切换到学习模式, 然后发送一个学习要求, 比如快速排序。
/output-styleleaning
如上图所示, 我们让 Claude Code 教我们学习一个快速排序算法, 会给我们生成一个完成核心代码逻辑的编程题,而且测试用例也帮我做好了!
自定义风格示例
---
name: Code Reviewer (CN)
description: 更注重审查、风险提示与修复建议
---
你是严格的代码评审助手:
-首先输出风险与依据(含安全/性能/可维护性)
-再给最小修复 diff 与验证步骤
-对关键决策写出取舍说明说实话,在用 Claude Code 之前还真不知道 Git 有这个功能,worktree 就是在“同一个仓库,多开几个彼此独立的工作目录”。它们共用一套.git历史与对象库,但各自有单独的文件视图和分支检出位。好处就是:
git clone浪费磁盘和网络;但又能像多仓库一样互不干扰做不同任务。stash/checkout来回切,减少“把没提交的改动搞丢/搞乱”的风险。Claude Code 结合这个功能并行开发就更方便了,我们可以同时开多个窗口,让AI同时干活,把 AI 压榨到极致,3倍+开发效率不是梦!最近就用这个方式对一个项目功能升级,本来是10天的工作量,压缩到了4天。
# 建议将所有 worktree 放在隐藏目录
mkdir-p .trees
echo".trees">> .gitignore
# 为三个任务创建独立工作区(会各自创建分支)
git worktree add -b ui_feature .trees/ui_feature main
git worktree add -b testing_feature .trees/testing_feature main
git worktree add -b quality_feature .trees/quality_feature main
# 分别进入并启动 Claude Code(互不干扰)
cd.trees/ui_feature && claude
cd.trees/testing_feature && claude
cd.trees/quality_feature && claude每个工作区都是隔离的文件状态,适合同时改动相同配置文件(如vite.config.js),把冲突延后到合并阶段再统一处理。
# 回到主工作目录(main)
git checkout main
# 顺序合并(示例)
git merge ui_feature
git merge testing_feature
# 若第三个与前面都改了 vite.config.js,这里更可能产生冲突
git merge quality_feature
# 解决冲突后继续
git add -A && git commit -m"resolve conflicts"实践建议:让 Claude Code 协助分析冲突标,解决冲突代码!
# 列出所有 worktree
git worktree list
# 移除不再需要的 worktree(不会删分支)
git worktree remove .trees/ui_feature有一点需要注意,新建的 worktree 需要进行环境初始化:新建 worktree 后,按项目类型分别执行
npm install,修改配置文件等。
Claude 用 MCP(模型上下文协议)就像是给它配上了一个“万能插座”。需要查询资料,打开网页,访问数据库,操作 Github等等,让 Claude Code 能方便地调用各种外部信息和功能来完成复杂任务,极大地增强了它的实用性。
这次给大家安利 2 款必装插件:Context7 MCP和Playwright MCP。
首先第一个需要安装的是Context7 MCP, 他能将最新的、特定版本的文档和代码片段等信息,直接整合到你给大模型的提示(prompt)中。大模型便能根据这些实时更新的资料编写代码,避免被其固有的、可能过时的知识库所误导。基本上绝大部分项目文档这里都有,基本满足绝大部分的项目开发需求!
安装的话需要我们先登录 context7 官网申请一个 API 密钥, 然后使用以下命令安装即可。
claude mcp add --scope user context7 -- npx -y @upstash/context7-mcp --api-key
claude mcp list其中--scope user参数的作用是将MCP服务添加到我们的用户配置而不是项目配置, 这样任意一个项目中都可以使用这个 MCP 服务了。如果我们只想在某个项目中使用,那么就在项目根目录在运行如下命令:
claude mcp add --scope project /path/project context7 -- npx -y @upstash/context7-mcp --api-key
claude mcp listPlaywright MCP 是一个基于Playwright 自动化测试框架构建的Model Context Protocol (MCP) 服务器,它为大语言模型(LLM)提供了强大的浏览器自动化能力。其核心在于通过结构化的可访问性快照(accessibility snapshots)而不是视觉模型或截图,让大模型能够“理解”和“操作”网页。这使得AI 能够执行如点击、填写表单、抓取数据、执行JavaScript 等复杂操作,极大地提高了AI 在处理网页任务时的效率和准确性,我们可以用这个插件让 Claude Code 自行进行网页操作,测试验证功能!
安装流程如下:
第一步安装基础库:
npminitplaywright@latest
第二步安装 MCP:
claudemcpadd--scopeuserplaywrightnpx@playwright/mcp@latest
然后我们可以开一个 Claude Code 窗口验证下浏览器操作功能:
访问网址https://www.baidu.com/输入搜索:ip,查询当前的访问客户端的IP地址
实现过程中,因为网页代码内容过长,超过了大模型的输入限制,改为截图形式获取了页面内容!
把 Claude 接入脚本/Pipline,上一讲我们介绍了 Cluade Code 支持文本/JSON/流式 JSON 输出,通过这种形式我们可以用 Cluade Code 能力做更多的事情, 而不仅仅是开发任务。
claude-p--dangerously-skip-permissions"访问网址https://www.baidu.com/输入搜索:天气,查询当前的访问客户端的天气信息"
catgeocoding.py|claude-p"解释当前代码的作用"--output-formattext>plan-code.txt
总之,通过掌握斜杠命令、可编程输出风格、Git Worktree 并行开发以及强大的进阶集成,我们能将 Claude Code 从一个问答式助手,真正转变为一个可编程的智能工程伙伴。希望本文分享的技巧能帮助你充分挖掘它的潜力,让 AI 深度融入你的开发工作流,体验到开发效率的显著飞跃。
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |