讯享网
90% 的人用 Claude Code 都在做同一件蠢事:把它当一个高级聊天框。
问它”帮我写个 Next.js 路由”,等它输出,粘贴,跑一下,报错,再问。来回三次,一个小时过去了。
而我现在做同样的事:从问题到跑通,12 分钟。
差距不在 Prompt 写得好不好,在于你有没有把 Claude Code 和 Terminal 真正接在一起——让它们形成一个闭环,而不是两个割裂的工具。
我见过很多做出海的独立开发者,英语不行,就靠 AI 撑着干。用 Claude Code 的方式基本都是这样:
打开 claude.ai 或者 VS Code 插件 → 粘贴需求 → 把代码复制出来 → 去 Terminal 跑 → 报错 → 回来再粘贴错误 → 再等
说人话就是:人在中间当传话筒。
Claude Code 生成的代码,Terminal 的执行结果,这两边的信息流你在手动搬运。搬运本身不创造价值,只消耗你的注意力。
我当时傻乎乎地以为这就是”正确用法”,直到我看到有人直接在 Terminal 里调 Claude Code CLI,上下文全部自动传递,才意识到我白浪费了三周。
这套工作流的核心逻辑只有一句话:Terminal 看到什么,Claude Code 就知道什么。
不需要你手动复制错误信息,不需要你解释”刚才报了个 TypeError”,执行结果直接进上下文。
npm install -g @anthropic-ai/claude-code
claude –version
讯享网
装完之后,在你的项目根目录执行:
讯享网claude
这会启动一个交互式会话,当前目录的所有文件结构自动进入上下文。
这里有个细节要注意:Claude Code CLI 和 claude.ai 网页版不是一个东西。CLI 版本能读本地文件、能执行命令、能拿到 Terminal 输出。网页版什么都做不到。大多数教程没区分这两个,是因为作者自己也没深入用过 CLI。
默认状态下,Claude Code 会生成代码但不执行。加上这个参数,让它真的跑起来:
claude –allowedTools “Bash,Edit,Write” –print “帮我初始化一个 Next.js 14 项目,用 App Router,顺便装好 Tailwind”
说人话就是:你给了它”手”,不只是”嘴”。
它会自己执行 npx create-next-app,自己装依赖,自己确认配置。你只需要看着。
细节:
这是整套工作流最关键的部分,也是大多数人没做到的。
进入交互模式后,不要只问代码问题,要让它直接执行并拿回结果:
讯享网> 帮我跑一下 npm run build,看看有没有报错,有的话直接修
Claude Code 会:
-
执行 npm run build -
拿到 Terminal 输出 -
如果有错误,直接定位到对应文件改掉 -
再跑一次确认
全程你不需要复制任何东西。这才是闭环。
这个东西 90% 的人没用,但它能省掉你 40% 的重复 Prompt。
在项目根目录创建 CLAUDE.md:
# 项目背景
这是一个面向北美市场的 SaaS 工具,主要用户是中小企业主。
# 技术栈
- Next.js 14 App Router
- Tailwind CSS
- Prisma + PostgreSQL
- Stripe(国际支付,注意货币用 USD,时区用 UTC 存储)
# 代码规范
- 所有用户可见文案必须支持 i18n,用 next-intl
- 日期显示用 date-fns,存储统一用 UTC
- API 路由放 app/api/,命名用 kebab-case
# 当前任务
正在开发订阅计费模块,Stripe Webhook 还没接完
每次启动 Claude Code,它会自动读这个文件。你不用每次重新解释项目背景、技术选型、出海适配要求。
对出海项目来说,把 Stripe、时区、多语言这些信息写进 CLAUDE.md 特别重要。不然它会默认给你生成只适合国内的代码结构,比如日期格式用 YYYY年MM月DD日,支付用支付宝接口——这种错误改起来很烦。
这是我现在固定的桌面布局:
讯享网左侧 60%:编辑器(VS Code 或直接 vim)
右上 20%:Claude Code 交互终端
右下 20%:项目运行 Terminal(npm run dev)
Claude Code 的终端和项目运行的终端必须分开。原因很简单:你需要实时看到 dev server 的热重载日志,同时和 Claude Code 保持对话。混在一起你会疯的。
用 tmux 的话,这个配置可以直接复用:
# 创建一个名为 dev 的 session,分三个 pane
tmux new-session -d -s dev
tmux split-window -h -t dev
tmux split-window -v -t dev:0.1
tmux send-keys -t dev:0.0 ‘code .’ Enter
tmux send-keys -t dev:0.1 ‘claude’ Enter
tmux send-keys -t dev:0.2 ‘npm run dev’ Enter
tmux attach -t dev
跑完这段,三个窗口全部就位,直接开干。
做出海产品有一些反复出现的需求,我固定了几个 Prompt 模板,在 Claude Code 交互模式里直接用:
Stripe Webhook 接入模板:
帮我创建 Stripe Webhook 处理器,路径 app/api/webhooks/stripe/route.ts。需要处理 checkout.session.completed 和 customer.subscription.deleted 两个事件。记得验证 webhook signature,用环境变量 STRIPE_WEBHOOK_SECRET。处理完更新数据库里的 subscription 状态,Prisma schema 已经有 subscription 表了你可以直接读。
多语言页面模板:
这个组件现在是硬编码中文,帮我改成 next-intl 的方式,key 按照”模块名.功能名.具体文案”的格式命名,同时生成 en 和 zh 两个 messages 文件
时区处理模板:
检查这个模块里所有日期处理的代码,确保:存储用 UTC,显示时根据用户浏览器时区转换,用 date-fns-tz 实现
坑一:给了太多权限,它把不该改的文件改掉了
刚开始用 –allowedTools “Bash,Edit,Write” 的时候,我让它”修一下支付相关的 bug”。它修完了,但顺手把 lib/utils.ts 里一个通用函数也重构了一遍,因为它觉得”更优雅”。
问题是那个函数还被别的地方用着,重构完之后语义变了,另一个模块悄悄报错了。我在 dev server 日志里看到一个奇怪的 500,折腾了四十分钟才发现是这个。
解决方案: 任务描述要限定范围。不说”修一下支付 bug”,说”只修改 app/api/payment 目录下的文件,不要动其他地方”。Claude Code 会严格遵守范围限定。
坑二:CLAUDE.md 写太长,它反而忽略关键信息
我一开始把 CLAUDE.md 写得巨详细,项目背景、技术决策、历史踩坑、API 文档摘要,洋洋洒洒八百字。
结果它读了之后,关键约束反而没执行到。比如我在 CLAUDE.md 里写了”时区统一用 UTC 存储”,但它生成的代码还是用了本地时间。
后来我测了一下,超过 400 字的 CLAUDE.md,靠后的内容会被稀释。
解决方案: CLAUDE.md 控制在 300 字以内,只写最核心的约束。技术细节放到具体 Prompt 里临时补充,不要全堆在文件里。
Claude Code 的上限,取决于你给它的反馈质量,而不是你的 Prompt 有多精妙。
Terminal 闭环、CLAUDE.md 上下文、窗口分工——这三件事做到位,你就不是在用一个聊天工具,你是在驱动一个真的能感知项目状态的执行引擎。
最后一个问题留给你:
你现在的 CLAUDE.md 里写了什么?或者你根本没用过这个文件——如果是后者,你觉得阻碍你写它的原因是什么?懒,还是不知道该写什么?
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/208837.html