如何Node.js通用脚手架,使其适应开发需求?
摘要:复刻字节 AI 开发流:实践 Node.js 通用脚手架 前言 最近与前同事深入交流,他现为字节某组的 TL(组长),团队规模近 10 人。在讨论他们团队的 AI 工作流实践中,也得到一些八卦信息。 第一个是: 人才储备变化 他们团队已基本
复刻字节 AI 开发流:实践 Node.js 通用脚手架
前言
最近与前同事深入交流,他现为字节某组的 TL(组长),团队规模近 10 人。在讨论他们团队的 AI 工作流实践中,也得到一些八卦信息。
第一个是: 人才储备变化
他们团队已基本停止招聘实习生,今年仅招一人
个人解读: AI 协作模式下,新人的边际效应大幅下降
第二个是:组织预期转变
业内多位跟他同级的 Leader 私下评估:今年可能出现大规模调整
个人解读: 生成式 AI 在降本增效上的潜力被普遍看好,提前做好裁员准备
第三个是:开发方法论的周期性
层出不穷的新概念:Vibe Coding、SDD 规范、Harness Engineering……
理性看待:这些都是过渡阶段产物,随着大模型升级,这些方法论的生命周期可能只有几个月
个人建议: 不必投入过多精力去追赶,因为等你熟练一种方法论后,可能用不了多久就被淘汰了
第四个是:招聘标准演变
前端岗位招聘标准很多 JD 上开始冠以"全栈开发" 的名义招聘了
实际面试:侧重前端能力考察,但开始要求一些后端基础能力了
个人解读: AI 协作工具提效下,企业希望前端承担更多职能
好了,八卦之后,关于他们的 ai 工作流的核心如下:
你得教 AI,不断沉淀并固化它的规范
具体实践方法:
识别问题:第一次遇到某类问题,AI 执行效果不理想
人工介入:手动处理并解决问题
规则沉淀:将解决方案固化为规则或 Skill
迭代积累:问题解决越多,效率提升越明显,也就是后期 ai 执行的只要不是新的场景和复杂业务,基本不会出错
本质: 通过持续的反馈循环来训练和优化 AI 的工作能力,而不是一开始就寻求完美的工作流
这个理念在字节技术专家杨晨的全软软件开发大会分享中也提出过:Prompt = 可训练资产(像模型一样优化)
让后我个人抽象了这个单 Agent 的工作流程图如下:
接下来我会解释每个步骤的思路和如何落地:
步骤 1:项目初始化 + 全局规则设计
项目初始化是指,大多数现代框架都提供了开箱即用的脚手架工具,例如:
# Vue/React 生态
npm create vite@latest
# Nest.js
nest new project-name
# Hono.js
pnpm create hono@latest
初始化完成后,立即在根目录创建规则文件,通常命名为 CLAUDE.md 或 AGENTS.md。
这个文件是 AI 协作的宪法,应包含例如项目定位,技术栈清单,核心哲学(例如测试先行,采用 TDD 测试方案),项目结构示例,AI 协作原则等等内容。有兴趣的同学可以找我要这个项目的全局规则。
两个关键注意事项
✅ 动态迭代
规则文件不是一成不变的。当发现 AI 写的代码不规范时,要想到如何抽离抽象的规则来约束,而不是一味手动修改
✅ SKILL 机制(规则的模块化)
当规则内容过多时,抽象可复用的 Skill 文件。好处是 AI 按需加载,不会每次都把全局规则加入上下文,大大减少 token 用量
规则中引用 SKILL 的示例:
## 3. 核心哲学:测试先行 (TDD)
参考 `.trae/skills/tdd-first/SKILL.md` 中的测试驱动开发规范。
所有新功能开发或 Bug 修复必须遵循 **「红-绿-重构」** 循环。**严禁**在没有对应测试用例的情况下提交业务逻辑代码。
---
## 4. 响应格式
参考 `.trae/skills/response-standard/SKILL.md` 中的响应格式规范。
**[强制]** 所有接口统一返回 JSON,使用 `@/utils/response` 中的工具函数生成响应。
---
步骤 2:需求分析
如果你很清楚自己要做什么,可以直接下发任务。但如果只有模糊想法,建议先和 AI 一起做需求分析。
推荐提示词
你好!现在的任务是:我们要从零开始设计并实现 `hono.js boilerplate`。
你现在是资深的 Node.js 工程师。我有一个初步的想法,需要你通过向我提问,帮助我澄清需求、挖掘边缘场景,最终目标是理清我做一个通用后端功能的脚手架需要实现哪些功能。并按顺序输出一个实现这些功能的大纲。
请开始你的提问。
效果: Claude 会像资深 PM 一样向你提问,你逐一回答这些问题后,AI 会生成一份完整的功能清单文档。
步骤 3:测试先行 + AI 执行代码
这是整个工作流的核心环节,必须让 AI 严格按照 TDD 测试方案执行代码。
