<p>应通过五步解决:一、用/init生成含项目语义的CLAUDE.md;二、在文件末尾添加# Company Code Standards区块,写入“做什么+为什么”的专属规范;三、遇违规代码时按#键将错误作为训练信号追加至CLAUDE.md;四、在CLAUDE.md中添加自动运行npm run lint校验指令;五、在templates/下创建standard-dev.md模板,嵌入规范钩子并用/template调用。</p>
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望 Claude 在开发过程中自动识别并遵循公司内部的代码规范,但当前它仍按通用风格生成代码,则说明 CLAUDE.md 中尚未注入规范约束或未建立有效反馈机制。以下是解决此问题的步骤:
一、初始化项目并生成基础 CLAUDE.md
CLAUDE.md 是 Claude Code 每次会话启动时优先读取的核心配置文件,它决定了 AI 对项目上下文的理解深度与行为边界。必须通过 /init 命令触发自动生成,而非手动创建空文件,否则无法绑定项目结构语义。
1、在终端中进入项目根目录,确保 package.json、tsconfig.json、.eslintrc.cjs 等关键配置文件存在。
2、输入 /init 并回车,等待 Claude 扫描完成并输出初始 CLAUDE.md 内容。
3、检查生成的文件是否包含技术栈识别(如 “TypeScript + React + ESLint”)、目录结构摘要(如 “components/ 下为函数组件,hooks/ 存放自定义 Hook”)等上下文锚点。
二、注入公司专属规范条目
规范条目必须聚焦“项目特有”“非标准”“易出错”三类内容,避免重复通用规则(如“使用分号”),而应强调团队约定的例外情形和强制逻辑。
1、打开 CLAUDE.md,在末尾新增一个名为 # Company Code Standards 的区块。
2、逐条写入不可协商的规范,每条需含“做什么”+“为什么”,例如:
“禁止在 hooks/ 目录下使用 export default,必须用 export const useXxx = …;因为 Storybook 预览器依赖命名导出解析”。
3、对命名规则添加反例对比:
“API 请求函数统一以 fetch 开头,如 fetchUserProfile;禁止使用 get / load / request 等前缀,因 CI 流水线中的 linter 规则仅匹配 fetch* 正则模式”。
三、用真实错误驱动规范固化
当 Claude 违反规范生成代码时,不直接修改输出,而是将该错误作为训练信号写入 CLAUDE.md,使 AI 形成条件反射式规避能力。
1、运行一次任务后,若发现其生成了 class 组件(而团队已禁用),立即按下 # 键。
统一LLM网关 - 一个API对接70+AI模型,使用单一API密钥即可调用GPT、Claude、Gemini、Qwen、Deepseek、Grok等主流模型。
2、在弹出的指令框中输入:
"禁止生成 class 组件;所有新组件必须是函数组件 + React.memo + TypeScript 接口定义;因为我们已移除所有 legacy lifecycle 方法且测试覆盖率工具不支持 class 快照"。
3、确认提交后,Claude 会将该条指令追加至 CLAUDE.md,并在后续所有会话中优先加载。
四、构建规范验证闭环
仅靠文本约束不足以保障执行,需引入可执行校验环节,让 Claude 主动调用本地工具链验证自身输出是否合规。
1、在 CLAUDE.md 中添加指令:
"每次生成代码后,必须运行 npm run lint -- --fix 并报告错误数;若错误数 > 0,需重新生成直至零错误"。
2、确保项目中已配置 ESLint 插件 @company/eslint-config,并在 package.json 的 scripts 中定义 lint 命令。
3、在 Claude Code 中执行任意代码生成任务后,观察其是否自动调用 lint 命令并展示结果;若未触发,说明 CLI 权限未开启或路径配置异常。
五、设置规范感知型提示词模板
在 templates/ 目录下创建 standard-dev.md,内嵌带规范钩子的自然语言指令,供日常开发直接调用,避免每次重复描述。
1、新建文件 Claude-Workspace/templates/standard-dev.md。
2、写入以下内容:
"请严格按公司代码规范实现:① 使用函数组件 + React.memo;② Props 类型定义在 interface Props { ... } 中;③ 所有副作用封装进自定义 Hook;④ 提交前运行 eslint --fix 并确认无报错。请先输出计划,等待我确认后再执行。"
3、今后开发新组件时,在 Claude Code 中输入 /template standard-dev 即可激活整套规范流程。

















