当前位置: 首页 > article >正文

AI编程不只是写Prompt:完整工作流与项目约束指南

上周和一个朋友聊天他说“AI编程不就是写Prompt吗”我告诉他“这只是第一步。真正的AI编程是把整个项目变成一个可以和AI协作的系统。”一、AI编程不只是写Prompt很多人对AI编程的理解还停留在写一个好PromptAI帮你写代码的阶段。但实际上真正高效的AI编程是建立一套人机协作系统。1. 三种层次的AI编程层次特点适用场景行级补全逐行提示AI补全下一行日常编码、快速写逻辑模块生成描述需求AI生成完整模块功能开发、组件编写项目协作AI理解整个项目自主完成任务大型重构、全栈开发2. 工具链的组合需求分析 → Cursor Composer → Claude Code → 测试验证 ↓↓↓↓ PRD文档架构设计代码生成复杂任务部署上线Cursor擅长多文件编辑、代码质量高、支持项目级理解Claude Code擅长终端操作、自主执行任务、适合DevOpsGitHub Copilot擅长实时补全、代码风格贴合二、Harness为什么要融合怎么融合什么是HarnessHarness是一种让AI按规则做事的方法论。它不是一个工具而是一套让AI更可靠的工程实践。为什么要融合Harness我曾经让AI帮我写一个用户登录模块。AI生成的代码功能上没问题但用了和项目不一致的命名规范没有遵循我们团队的错误处理模式没有写单元测试后来我引入了Harness的理念在项目中设置了约束文件。再让AI写代码时自动遵循项目规范自动生成测试用例自动检查代码质量效率提升了返工率从30%降到了5%。三文件法1. .cursorrules - 项目规则文件# 项目约定 ## 技术栈 - 后端FastAPI Python 3.12 - 前端React 18 TypeScript - 数据库PostgreSQLORM用SQLAlchemy 2.0 ## 编码规范 - 函数命名snake_casePython/ camelCaseTypeScript - 注释语言中文 - 错误处理统一使用项目内的AppError类 ## 禁止事项 - 不要使用any类型TypeScript - 不要直接操作DOM统一用React状态管理 - 不要在组件内直接写fetch使用src/hooks/useApi.ts ## 测试要求 - 每个函数必须有单元测试 - API端点必须有集成测试 - 测试覆盖率不低于80%2. AI_TASK_TEMPLATE.md - 任务模板# AI任务模板 ## 任务描述 [清晰描述要做什么] ## 约束条件 - [技术约束] - [时间约束] - [质量约束] ## 验收标准 - [可量化的成功指标] - [边界条件] ## 输出要求 - [文件清单] - [测试要求] - [文档要求]3. PROJECT_KNOWLEDGE.md - 知识库# 项目知识库 ## 核心业务概念 - 用户状态流转pending → active → suspended → deleted - 订单状态机created → paid → shipped → delivered → completed ## 历史决策记录 - 2026-01-15决定使用Redis做缓存 - 2026-02-20放弃使用RabbitMQ改用Redis Streams ## 常见坑 - 用户删除后需要级联删除关联数据 - 支付回调可能重复需要幂等处理三、项目约束文件清单your-project/ ├── .cursorrules# Cursor的项目规则├── CLAUDE.md# Claude Code的项目记忆├── AI_TASK_TEMPLATE.md# AI任务模板├── PROJECT_KNOWLEDGE.md# 项目知识库├── .gitignore# Git忽略配置├── .editorconfig# 编辑器配置├── .eslintrc# ESLint配置├── .prettierrc# Prettier配置├── jest.config.js# 测试配置└── README.md# 项目说明文件作用重要性.cursorrules告诉AI编码规范和技术栈⭐⭐⭐⭐⭐CLAUDE.md给Claude Code提供项目上下文⭐⭐⭐⭐AI_TASK_TEMPLATE.md标准化AI任务格式⭐⭐⭐⭐PROJECT_KNOWLEDGE.md积累业务知识⭐⭐⭐四、实战工作流五步流程需求拆解人做把功能拆成3-10个独立可测试的子任务方案确认人AI讨论和AI讨论实现方案不急着写代码逐任务实现AI主导人审查一次只让AI实现一个子任务代码审查人做检查错误处理、边界情况、安全漏洞重构优化AI辅助让AI做代码审查并给出重构建议实战案例用户认证模块1. 用户模型src/models/user.pyfromdatetimeimportdatetimefromsqlalchemyimportColumn,Integer,String,DateTimefromsqlalchemy.ext.declarativeimportdeclarative_baseimportbcryptimportre Basedeclarative_base()classUser(Base):__tablename__usersidColumn(Integer,primary_keyTrue,autoincrementTrue)usernameColumn(String(50),uniqueTrue,nullableFalse,indexTrue)emailColumn(String(100),uniqueTrue,nullableFalse,indexTrue)password_hashColumn(String(255),nullableFalse)roleColumn(String(20),defaultuser)created_atColumn(DateTime,defaultdatetime.utcnow)updated_atColumn(DateTime,defaultdatetime.utcnow,onupdatedatetime.utcnow)defset_password(self,password:str)-None:设置密码自动加密iflen(password)8:raiseValueError(密码至少8位)self.password_hashbcrypt.hashpw(password.encode(utf-8),bcrypt.gensalt()).decode(utf-8)defcheck_password(self,password:str)-bool:验证密码returnbcrypt.checkpw(password.encode(utf-8),self.password_hash.encode(utf-8))defto_dict(self):序列化为字典return{id:self.id,username:self.username,email:self.email,role:self.role,created_at:self.created_at.isoformat()ifself.created_atelseNone}2. JWT工具类src/utils/jwt_utils.pyimportjwtfromdatetimeimportdatetime,timedeltafromtypingimportOptionalclassJWTUtils:SECRET_KEYyour-secret-key-change-in-productionALGORITHMHS256EXPIRE_HOURS24classmethoddefgenerate_token(cls,user_id:int)-str:生成JWT tokenexpiredatetime.utcnow()timedelta(hourscls.EXPIRE_HOURS)payload{user_id:user_id,exp:expire,iat:datetime.utcnow()}returnjwt.encode(payload,cls.SECRET_KEY,algorithmcls.ALGORITHM)classmethoddefverify_token(cls,token:str)-Optional[dict]:验证token返回payload或Nonetry:payloadjwt.decode(token,cls.SECRET_KEY,algorithms[cls.ALGORITHM])returnpayloadexcept(jwt.ExpiredSignatureError,jwt.InvalidTokenError):returnNoneclassmethoddefget_user_id(cls,token:str)-Optional[int]:从token中提取用户IDpayloadcls.verify_token(token)returnpayload.get(user_id)ifpayloadelseNone3. 认证路由src/routes/auth.pyfromflaskimportBlueprint,request,jsonifyfromsrc.models.userimportUserfromsrc.utils.jwt_utilsimportJWTUtilsfromsqlalchemy.ormimportsessionmakerfromsqlalchemy.excimportIntegrityError auth_bpBlueprint(auth,__name__,url_prefix/api/auth)Sessionsessionmaker(bindengine)classAPIError(Exception):def__init__(self,message:str,code:int400):self.messagemessage self.codecodesuper().__init__(message)auth_bp.errorhandler(APIError)defhandle_api_error(error):returnjsonify({code:error.code,message:error.message}),error.codeauth_bp.route(/register,methods[POST])defregister():用户注册datarequest.get_json()ifnotdata:raiseAPIError(请求体不能为空,400)usernamedata.get(username,).strip()emaildata.get(email,).strip()passworddata.get(password,)ifnotall([username,email,password]):raiseAPIError(用户名、邮箱、密码不能为空,400)userUser(usernameusername,emailemail)try:user.set_password(password)exceptValueErrorase:raiseAPIError(str(e),400)sessionSession()try:session.add(user)session.commit()returnjsonify({code:200,message:注册成功,data:user.to_dict()}),201exceptIntegrityError:session.rollback()raiseAPIError(用户名或邮箱已存在,409)finally:session.close()auth_bp.route(/login,methods[POST])deflogin():用户登录datarequest.get_json()ifnotdata:raiseAPIError(请求体不能为空,400)usernamedata.get(username,).strip()passworddata.get(password,)ifnotusernameornotpassword:raiseAPIError(用户名和密码不能为空,400)sessionSession()try:usersession.query(User).filter_by(usernameusername).first()ifnotuserornotuser.check_password(password):raiseAPIError(用户名或密码错误,401)tokenJWTUtils.generate_token(user.id)returnjsonify({code:200,message:登录成功,data:{token:token,user:user.to_dict()}})finally:session.close()这段代码展示了AI生成代码的标准工作流1. AI先生成基础代码2. 人工审查发现缺少密码验证逻辑3. 让AI补充完整4. 最终代码包含完整的参数校验、错误处理、安全加密五、避坑指南坑一上下文污染应对每个独立任务开新对话通过项目记忆文件保持上下文一致性。坑二接受AI的第一个方案应对让AI给出2-3个方案并分析优劣然后你来选择。坑三跳过测试应对让AI写代码的同时一并生成测试用例。坑四过度依赖AI应对关键核心逻辑自己写重复性工作交给AI。六、最后AI编程的本质是把工程纪律从手写实现转移到设计任务系统与审查机制。人负责需求分析、架构设计、代码审查 AI负责重复性代码、测试生成、优化建议关于作者作者近 20 年技术生涯待过大厂也创过业。 懂大厂的规范与困境也懂创业公司的敏捷与无奈。 懂技术也懂商业实践用技术重构传统业务。欢迎转发转载请注明出处。 觉得有用欢迎点赞 - 让更多人看到转发 - 分享给需要的同事/朋友关注 - 不错过后续更多精彩内容分享

相关文章:

AI编程不只是写Prompt:完整工作流与项目约束指南

上周和一个朋友聊天,他说:“AI编程不就是写Prompt吗?” 我告诉他:“这只是第一步。真正的AI编程,是把整个项目变成一个可以和AI协作的系统。” 一、AI编程不只是写Prompt 很多人对AI编程的理解,还停留在&qu…...

基于多指标综合评估的工业机器人轨迹规划【附代码】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,查看文章底部二维码(1)时间-冲击-灵巧度多目标加权综合模型构建&#xff…...

MPC-BE深度解析:构建专业级Windows媒体播放器的5大核心技术实践

MPC-BE深度解析:构建专业级Windows媒体播放器的5大核心技术实践 【免费下载链接】MPC-BE MPC-BE – универсальный проигрыватель аудио и видеофайлов для операционной системы Windows. 项目…...

5分钟免费搞定Steam游戏配置:Onekey智能自动化工具终极指南

5分钟免费搞定Steam游戏配置:Onekey智能自动化工具终极指南 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 还在为Steam游戏清单配置而烦恼吗?面对复杂的SteamTools和Gre…...

基于改进遗传算法的串联机械臂轨迹规划工业机器人【附代码】

✨ 本团队擅长数据搜集与处理、建模仿真、程序设计、仿真代码、EI、SCI写作与指导,毕业论文、期刊论文经验交流。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,查看文章底部二维码(1)基于正弦自适应遗传操作的关节空间轨迹规划&#x…...

从PyTorch到TensorRT:手把手教你将训练好的模型转成.engine文件(附完整代码)

从PyTorch到TensorRT:手把手教你将训练好的模型转成.engine文件(附完整代码) 在深度学习模型部署的实践中,TensorRT因其出色的推理性能优化能力而备受青睐。许多开发者在使用PyTorch完成模型训练后,都希望将其转换为Te…...

论文解读:生成式智能体让25个AI小人自己组织了一场情人节派对

有没有想过,一个AI能不能"过日子"?不是回答你的问题,不是帮你写代码,不是在benchmark上刷分——而是真的像一个人那样,早上起来刷牙,出门前和家人聊两句,路上碰到邻居寒暄几句选举八卦…...

别再死记硬背三环了!用Arduino+伺服电机做个机械臂,实战理解位置、速度、力矩模式

用Arduino和伺服电机打造智能机械臂:三环控制实战指南 从理论到实践的跨越 在机器人控制领域,"三环控制"常被视为高深莫测的理论概念,让许多初学者望而却步。传统的教学方式往往停留在数学公式和框图层面,缺乏直观感受。…...

别再手动筛特征了!用PyTorch+LassoNet给你的神经网络做个‘自动瘦身’(附完整代码)

用PyTorchLassoNet实现神经网络特征自动筛选:工程实践全指南 在Kaggle竞赛或实际业务场景中,我们常常面对数百甚至数千个特征变量。传统手工筛选特征不仅耗时费力,还容易遗漏重要特征组合。本文将介绍如何利用LassoNet这一创新工具&#xff0…...

如何在 Taotoken 平台快速获取并管理你的 API Key

如何在 Taotoken 平台快速获取并管理你的 API Key 1. 注册与登录 Taotoken 平台 要开始使用 Taotoken 的服务,首先需要注册一个账号。访问 Taotoken 官方网站完成注册流程,使用邮箱验证后即可登录控制台。登录后你将看到仪表盘界面,这里提供…...

5步掌握TIDAL无损音乐下载:tidal-dl-ng专业工具终极指南

5步掌握TIDAL无损音乐下载:tidal-dl-ng专业工具终极指南 【免费下载链接】tidal-dl-ng TIDAL Media Downloader Next Generation! Up to HiRes / TIDAL MAX 24-bit, 192 kHz. 项目地址: https://gitcode.com/gh_mirrors/ti/tidal-dl-ng 想要在TIDAL平台上获取…...

C++ typename auto 彻底讲透:核心作用、推导规则、避坑指南

本文属于C typename & autod ,上一篇我们讲透了模板进阶的非类型参数、特化与分离编译,今天我们拆解两个最常用但最容易被误解的关键字 ——typename 和 auto。很多 C 开发者每天都在写 template 和 auto it v.begin(); 但很少有人能彻…...

Steam库存管理终极指南:5分钟掌握智能批量操作,效率提升500%

Steam库存管理终极指南:5分钟掌握智能批量操作,效率提升500% 【免费下载链接】Steam-Economy-Enhancer 中文版:Enhances the Steam Inventory and Steam Market. 项目地址: https://gitcode.com/gh_mirrors/ste/Steam-Economy-Enhancer …...

快速免费备份微信聊天记录的完整指南

快速免费备份微信聊天记录的完整指南 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 你是否曾经担心手机丢失或损坏导致珍贵的微信聊天记录永远消失?那些与家…...

长期项目使用 Taotoken 后对月度账单可预测性的实际感受

长期项目使用 Taotoken 后对月度账单可预测性的实际感受 在为期数月的项目开发中,我们团队将多个大模型 API 的调用统一接入了 Taotoken 平台。一个最直接的感受是,项目在 AI 调用方面的月度成本变得前所未有的清晰和可预测。这种可预测性并非来自成本的…...

AISMM模型实战指南(企业ESG转型必读白皮书):从目标映射、指标拆解到动态验证的完整链路

更多请点击: https://intelliparadigm.com 第一章:AISMM模型与可持续发展目标 AISMM(Artificial Intelligence for Sustainable Management Model)是一种面向联合国17项可持续发展目标(SDGs)的可解释AI建模…...

AISMM模型不是方法论,而是生存协议:致所有正在烧钱却看不到AI ROI的CEO(限时开放前100份能力成熟度快筛)

更多请点击: https://intelliparadigm.com 第一章:AISMM模型不是方法论,而是生存协议 AISMM(Autonomous Intelligence Security & Maintenance Model)并非传统意义上供团队“选择采用”的工程方法论,而…...

为什么83%的AISMM导入项目失败?SITS2026真实战场数据揭示3大隐形陷阱,你中招了吗?

更多请点击: https://intelliparadigm.com 第一章:SITS2026案例:AISMM驱动的组织变革 在SITS2026国际航天信息系统技术峰会中,欧洲航天局(ESA)与德国航空航天中心(DLR)联合实施的AI…...

AISMM模型选型生死线:3分钟速判你的Benchmark测试是否具备工业级可信度

更多请点击: https://intelliparadigm.com 第一章:AISMM模型选型生死线:3分钟速判你的Benchmark测试是否具备工业级可信度 在大模型落地实践中,Benchmark 测试常被误认为“跑通即可信”。但工业级部署要求的不仅是准确率数字&…...

Dbeaver SQL美化器使用指南

DBeaver 自带强大的 SQL 美化(格式化)功能,一键排版、可深度自定义,也能集成外部美化工具。一、快速使用(一键美化)快捷键(最常用)Windows/Linux:CtrlShiftFmacOS&#x…...

Meta 借助 AI 强化年龄验证,回应欧盟裁决保障未成年人上网安全

Meta 借助 AI 强化年龄验证机制,回应欧盟裁决,多举措保障未成年人上网安全Meta 正在借助一套 AI 系统强化其年龄验证机制。该系统会分析 Instagram 和 Facebook 上的图像与视频,寻找“视觉线索”,如身高和骨骼结构,以识…...

谷歌云推出欺诈防御:reCAPTCHA 全新进化,保障智能网络安全与业务增长

安全与身份认证:谷歌云欺诈防御——reCAPTCHA 的全新进化2026 年 4 月 23 日,谷歌云在 Next ‘26 大会上推出了谷歌云欺诈防御,这是一款适用于智能网络的信任平台,也是 reCAPTCHA 的全新进化。智能网络带来的挑战与应对智能网络借…...

10个关键挑战:如何顺利部署Kohya_ss AI绘画训练框架

10个关键挑战:如何顺利部署Kohya_ss AI绘画训练框架 【免费下载链接】kohya_ss 项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss Kohya_ss是一款强大的Stable Diffusion模型训练GUI工具,为AI绘画爱好者和专业创作者提供了便捷的LoRA…...

高效电路板分析工具:OpenBoardView深度解析与实战指南

高效电路板分析工具:OpenBoardView深度解析与实战指南 【免费下载链接】OpenBoardView View .brd files 项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView OpenBoardView是一款专为电子工程师、维修技术人员和PCB设计爱好者打造的专业级.brd电路板…...

Grid 完全体:从“网格”到“杂志级排版”

那个让我重新思考布局的下午 2022年夏天,设计部丢给我一个官网改版的设计稿。 说实话,看第一眼的时候我是兴奋的——不对称网格、卡片重叠、文字环绕图片、对角线排列……这完全是杂志级别的排版,不再是那些千篇一律的“左边图片右边文字”的营销套餐。 但兴奋只持续了五…...

别再死记硬背了!用Python实战Agent的PEAS模型,手把手教你设计一个智能翻译系统

用Python实战Agent的PEAS模型:构建智能翻译系统的全流程指南 当理论遇上代码,AI学习才能真正落地。想象一下,你正在开发一个能实时翻译电话对话的系统——这不是科幻电影,而是可以用Python实现的智能Agent。本文将带你从零开始&am…...

3分钟掌握百度网盘秒传链接提取:永久文件分享的终极指南

3分钟掌握百度网盘秒传链接提取:永久文件分享的终极指南 【免费下载链接】rapid-upload-userscript-doc 秒传链接提取脚本 - 文档&教程 项目地址: https://gitcode.com/gh_mirrors/ra/rapid-upload-userscript-doc 你是否厌倦了百度网盘分享链接频繁失效…...

告别Keil!用VSCode+Jlink+OpenOCD调试STM32的保姆级教程(附避坑指南)

从Keil到VSCode:STM32开发者的现代化调试工具链迁移指南 如果你已经厌倦了Keil和IAR这类传统IDE的笨重界面和繁琐操作,现在正是转向更轻量、更灵活的VSCode开发环境的最佳时机。本文将带你一步步搭建基于VSCode、Jlink和OpenOCD的完整STM32开发调试环境&…...

Keras模型推理超快

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 Keras模型推理加速:构建实时AI应用的超快引擎目录Keras模型推理加速:构建实时AI应用的超快引擎 引言&…...

如何解锁惠普OMEN游戏本隐藏性能:OmenSuperHub完整使用指南

如何解锁惠普OMEN游戏本隐藏性能:OmenSuperHub完整使用指南 【免费下载链接】OmenSuperHub 使用 WMI BIOS控制性能和风扇速度,自动解除DB功耗限制。 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 还在为你的惠普OMEN游戏本性能被限…...