摘要:简单来说,Claude Code 是能直接在终端调用的Claude AI 助手,专治各种编码痛点:
“数字共生”
作为一个每天和代码打交道的开发者,最近挖到了一款堪称“终端搭子”的神器-Anthropic的Claude Code!它简直是我的编码救星:调试时秒揪bug、写测试比我手速还快、推PR 都能自动生成描述……
Claude Code 是什么?
简单来说,Claude Code 是能直接在终端调用的Claude AI 助手,专治各种编码痛点:
✔️ 灵活适配:不强制改开发习惯,无缝融入现有工作流
✔️ 安全管家:改文件前先请示,误操作?不存在
✔️ 氛围担当:自动get 代码风格
✔️ 摸鱼神器:帮写模板代码、做重复操作,把时间留给创意开发
eg:给Node.js API 加用户登录时,它直接钻进auth.js 文件提出调整建议,并以比我更快的速度编写测试。
搞定初始化:让AI 秒懂你的项目
1.用CLAUDE.md 建立“沟通手册”
在项目根目录丢一个CLAUDE.md,告诉AI 你的代码规则、git 习惯等:
ShopEasy BasicsHow We CodeStick to arrow functions: const add = (a, b) => a + bWrite JSDoc for big functionsNo var. Use const or letGit StuffBranches look like feature/SHOP-123-cool-thingRebase before you mergeCommits start with SHOP-123:TestsRun npm test to check your workTry for 90% test coverage2.动态更新,增加团队协作
把CLAUDE.md当作一个动态文档,当发现Claude忘做代码检查?直接加一句:
# Don’t Forget- RUN `npm run lint` BEFORE COMMITTING!然后把更改提交到Git,这样我的队友也可以看到啦。
3.告别"灵魂拷问":设置免确认权限
Claude默认情况下非常谨慎,总是询问是否可以编辑文件或运行命令。所以我通过一个设置文件让它放宽心:
{ "allowedTools": [ "Edit", "Bash(git commit:*)", "Bash(npm run lint)", "Bash(npm test)" ]}现在它能自动跑测试、提交代码,而不会打扰我了。
无缝集成工具链
1.玩转Bash 脚本
把自定义脚本写进CLAUDE.md,AI 就能直接调用:
Handy Scripts./deploy.sh: Pushes to staging with ./deploy.sh --env staging./logs.sh: Grabs recent logs with ./logs.sh --count 100实战场景:
服务器崩了?直接让claude "运行./logs.sh -count 100,分析错误原因" ,它在两秒钟内就发现了一个缺失的配置,比我翻日志快10 倍😭。
2. GitHub操作一键化
安装gh 命令行工具,这样Claude 就可以处理GitHub 事务了。为登录功能创建一个拉取请求,只需说:
/project:pr "SHOP-123: Add user logins"然后你会看到:代码自动commit→推送到分支→PR 连描述都写好了。
实战:看AI如何优雅写代码
【实战1】从0 到1 构建登录系统
Step 1:先让AI 读代码摸清楚套路
让Claude 查看我们的auth 文件,而不进行任何操作。
提示:“读取src/auth.js 并告诉我它在做什么。不要编写代码。”
Step 2:让AI 脑暴方案
让Claude 仔细思考,所以我说:“仔细思考并制定一个向src/auth.js 添加登录的计划。”
它给了我一个简单的计划:
Plan for J LoginsAdd jsonwebtoken with npm install jsonwebtokenPut generateToken and verifyToken in src/auth.jsMake a middleware in src/middleware.js tocheck tokensAdd tests in tests/auth.test.jsUpdate README.md with setup notes我很喜欢这个计划,所以我把它保存为j-plan.md,以备需要回溯时使用。
Step 3:按计划生成代码
按照jwt-plan.md 向src/auth.js 添加JWT。以下是我得到的代码:
constjwt = require('jsonwebtoken');constSECRET_KEY = process.env.J_SECRET || 'dont-tell-anyone'; // Fix this later!/** * Makes a J token for a user * @param {Object} user - User with id and role * @returns {string} Token */constgenerateToken = (user) => {return j.sign({ id: user.id, role: user.role }, SECRET_KEY, { expiresIn: '1h' });};/** * Checks a J token * @param {string} token - Token to check * @returns {Object} User data */constverifyToken = (token) => {return j.verify(token, SECRET_KEY);};module.exports = { generateToken, verifyToken };生成的代码精准踩中团队风格:箭头函数+ JSDoc 注释,直接能合并!
Step 4:提交,完工
告诉Claude:“提交时使用‘SHOP-123: 添加J 登录’并创建一个拉取请求。” 它进行了代码检查,提交了代码,并使用gh打开了一个拉取请求。完成。
【实战2】测试先行的折扣功能开发
反向操作示范:
先写测试“倒逼”代码
告诉Claude:“为src/checkout.js 中的折扣函数编写测试。如果总价超过100 美元,给予10% 的折扣。暂时不要编写代码。”
const { discount } = require('./checkout');constassert = require('assert');describe('discount', => { it('gives 10% off for over $100', => {assert.strictEqual(discount(150), 135); // 150 - 10% = 135 }); it('no discount for $100 or less', => {assert.strictEqual(discount(100), 100);assert.strictEqual(discount(50), 50); });});跑测试发现失败?(是的,因为功能还不存在)直接让AI 填坑。
告诉Claude:“向src/checkout.js 添加折扣功能,使测试通过。不要更改测试。”
/** * Adds a discount to the total * @param {number} total - Amount in dollars * @returns {number} New total */constdiscount= (total) => {if (total > 100) {return total * 0.9; // 10% off }return total;};module.exports = { discount };告诉它:“提交时使用‘SHOP-124: 添加折扣’。”Claude 提交并推送了代码。
搞定,so esay。
高阶玩法:让两个AI 同时为你打工
遇到复杂项目?开两个Claude 并行干活!
比如开发结账模块时:
✔️ Claude A:专注写折扣计算函数
✔️Claude B:同时在另一个分支做代码审查
用git worktree隔离环境,两个AI 互不干扰,还能互相挑刺(比如发现“总价为负数” 的漏洞)🤖+🤖=💥
最后的重点
让AI听话的3个秘诀
1.指令越具体越好
✖️模糊:“加个新功能”
✔️清晰:“在api.js 里用checkout.js 的discount 函数,创建/discount 路由”
2.截图比文字更管用
拖个UI 设计图给AI,它秒懂你要什么交互效果。
3.玩脱了别慌
按Escape中断操作,或输入/clear从头开始,比Ctrl+Z 还省心~
Claude Code 不是让你彻底摆烂的工具,而是把你从“搬砖” 中解放出来的搭档,写模板代码、跑重复测试这种事交给AI,我们只管聚焦真正有挑战的创意开发,这才是未来程序员的生存之道啊!
传送门:想试试?去下面的链接
最后,你最想让AI 帮你搞定哪些coding 破事?来评论区聊聊来源:opendotnet