粗活儿更容易,但细活儿更快。
很多人看来,AI给这个世界带来的剧变已经黑云压城,他们正快马加鞭地追赶,但仍有相当一部分人没有这个认识,或浅尝辄止。
AI可以回答问题,可以帮忙干活,技术门槛被抹平后,还靠什么拉开差距?
如果只会发指令,等同于AI时代的“刀耕火种”,仍处于生产力的末端,还需要做哪些探索呢?读罢本文,你会有自己的理解。
Skill
我一开始以为,安装好Claude Code直接使用就行。后来发现自己总在进行重复操作:每次提交代码前都要提醒进行lint检查,每次新建组件都要交代一遍项目规范,每次查数据都要手动复制SQL结果并粘贴给Claude Code……
一旦重复超过3次,就该想办法自动化了。
skill是最容易上手的扩展机制,做法很简单:在.claude/skills/目录下创建一个文件夹,存放一个SKILL.md文件,Claude Code就会根据上下文自动加载该文件中的指令。
1 | .claude/skills/ |
通过/skill-name命令可以手动调用某个skill,Claude Code也会根据对话内容自动判断是否加载相应的skill。
比如,你说:“帮我创建一个新的React组件”,Claude Code就会自动加载react-component skill中的规范。
两种类型的skill
知识型skill:告诉Claude Code“这个项目里的事情应该怎么做”,比如API规范、编码风格、项目约定。
工作流型skill:告诉Claude Code“遇到特定任务按什么步骤执行”,比如/fix-issue(修复bug的标准流程)、/review-pr(代码审查流程)。
安装别人的skill
skill可以共享,你甚至不需要去它存放的地方找。
Boris就公开了他常用的skill集合。你告诉Claude Code:“帮我安装Boris的skill集合”,它就会自动找到对应的公开仓库,把SKILL.md下载到本地的~/.claude/skills/boris/目录下。
安装后,你就拥有了Boris日常使用的工作流,包括他的commit规范、PR模板、代码审查标准等。
社区正在不断贡献新的skill,你可以在Claude Code中通过/plugin命令浏览。
Hook
hook不是新概念,在编程领域很常见,常译为“钩子”,即在某个节点触发某种行为。
skill有一个天然的局限:它本质上是对Claude Code的“建议”。Claude Code会尽量遵守,但遵从率不是100%,尤其是在长对话的后期,它可能忘了。
hook就是为了解决这个问题。它支持多个触发时机。
- 调用工具前/后
- 需要用户授权时
- 完成一个对话回合时
- 上下文被压缩后
一个很典型的场景是,Claude Code会在一个复杂任务中途停下来问“要继续吗?”。Stop hook可以检测这种情况,自动让Claude Code继续执行,适合无人值守的批处理场景。
同样,你不需要从零开始写hook,告诉Claude Code:“帮我写一个hook,每次编辑文件后自动运行eslint”,它会帮你生成配置并写入.claude/settings.json文件。
MCP
skill和hook的操作,都还是在项目内部,如果你需要触达外部,比如,让Claude Code查数据库、调用API、读取设计稿,MCP就派上用场。
MCP(Model Context Protocol)是Anthropic推出的开放标准,像一个USB插口一样,能让AI工具连接外部数据源和服务。
1.添加MCP服务器(Slack为例)
代码如下:
1 | # 添加一个MCP服务器 |
添加后,MCP服务器的能力会以“工具”的形式提供给Claude Code。
2.实用MCP推荐

Boris有一个经典用法:他给Claude Code接上Slack MCP,当有人在Slack里报告bug时,Claude Code会自动读取bug描述、找到相关代码、尝试修复、提交PR,然后在Slack里回复“已修复,PR链接在这里”。整个过程不需要人工介入。
不要一开始就试图搭建一套完整的扩展体系。从你最不想再做的那个重复操作开始:总在口述规则?写个skill。总忘记进行lint检查?加个hook。总在手动倒腾数据?接个MCP。一个一个地添加,慢慢地,你的Claude Code就会变成一个为你量身定制的工作台。
Harness工具链
讲了这么多具体操作,现在值得建立一个全局视角。Claude Code的所有能力,可以归入3个层次。
prompt层:你在终端输入的每一句话,比如“帮我加一个登录页面”“修复这个bug”等。大多数初学者的全部交互停留在这一层。
context层:Claude Code在回答之前所“看到”的所有信息,包括CLAUDE.md文件、项目的文件结构、Git提交历史、package.json中的依赖列表等。这些信息不需要你每次重复提供,Claude Code会自动读取。上篇文章提到的CLAUDE.md,就是在优化这一层。
harness层:你搭建的自动化环境。skill把常用工作流封装成可复用的指令;hook让特定事件自动触发操作;MCP可以连接外部服务;Agent Teams让多个Claude Code智能体并行协作。这一层的特点是一旦搭建完成,就一直工作,不需要你每次手动触发。
Claude Code的表现,就取决于这3层的综合质量。如果读完本书只记住一件事,那么请记住:尽量把信息沉淀到context层,把重复操作交给harness层,只在prompt层处理真正需要临时决策的事情。
一个完整的harness什么样,以作者的写作项目为例:
1 | ~/Documents/写作/ |
勤奋的协作者
Boris曾公开表示,自己超过90%的代码由Claude Code生成。
他的日常工作更多是描述需求、审查输出、做架构决策,更像是一名有技术判断力的产品经理。
这意味着关键能力正在发生转移。
旧能力(重要性下降):编码能力、框架与API记忆能力、手动调试技巧、代码模板积累
新能力(重要性上升):需求拆解能力、架构判断力、输出质量、评审能力、产品品味
所以,顺应发展的当务之急,是不再死守阵地,对技术的细枝末节过多投入,而是懂得交给AI更多的任务,同时教会AI怎么做。
Twikoo 已启用,请在主题配置中填写
comment.twikoo.envId。