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

年没人敢碰的老代码,我用AI重构了它——然后翻车了

1 安装与初始化# 全局安装 OpenSpecnpm install -g fission-ai/openspeclatest# 在项目目录下初始化cd /path/to/your-projectopenspec init初始化时OpenSpec 会提示你选择使用的 AI 工具Claude Code、Cursor、Trae、Qoder 等。3 OpenSpec 如何教AI 工作OpenSpec 的核心机制是通过一套规范注入系统让 AI 在每次对话前先学习项目规范。3.1 不同 AI 工具的初始化差异根据你使用的 AI 工具不同OpenSpec 会生成不同的目录结构。这背后的设计理念是最大限度地适配各工具的特性。3.2 ?? 场景 1Claude CodeClaude Code 在执行了 OpenSpec Init 后的目录结构如下.claude/├── commands/│ └── openspec/│ ├── apply.md│ ├── archive.md│ └── proposal.md├── AGENTS.md└── CLAUDE.mdcommands/openspec 这个目录定义了三个不同的命令每个命令文件中所写的提示词都是 AI 在执行该命令时需要参考的规范。上述三个命令分别是apply.md表示执行已批准的变更archive.md归档已完成的变更proposal.md发起新变更提案当我们需要发起新的提案时可以直接使用/openspec:proposal 就可以触发该指令此时 AI 就会根据 proposal.md 中所定义的规范来创建一个新的变更提案。核心文件解读AGENTS.md这个文件是 Claude Code 每次对话时的第一课内容如下# OpenSpec 说明这些指令是针对参与本项目的人工智能助手。当请求中包含以下内容时请务必打开 /openspec/AGENTS.md- 提及规划或提案如提案、规范、变更、计划等字眼- 引入新功能、重大变更、架构调整或重大的性能/安全工作- 听起来含糊不清且在编码前需要权威规范使用 /openspec/AGENTS.md 来学习- 如何创建和应用变更提案- 规范格式和约定- 项目结构和指南保留此托管块以便openspec update可以刷新指令。工作原理Claude Code 启动时自动读取 AGENTS.md判断用户请求是否触提案/变更等关键词如果触发自动加载 openspec/AGENTS.md 中的详细规范AI 按照规范执行任务3.3 ?? 场景 2Trae字节跳动OpenSpec 在初始化时可选择的AI 工具中是不支持 Trae 的但是很多朋友是基于 Trae 在开发。所以对于使用 Trae 的朋友我们在执行 OpenSpec Init 的时候可以选择最后一个选项 Other Tools (适用于 VsCode 等此时初始化后的目录结构如下项目根目录/├── AGENT.md # 项目级规范需手动配置└── openspec/├── AGENTS.md # OpenSpec 详细规范├── project.md # 项目知识库├── specs/ # 已实现能力规范└── changes/ # 变更提案关键差异需要手动配置与 Claude Code 不同老版本的 Trae 不会自动读取 AGENT.md。此时你需要手动将规范内容添加到 Trae 的项目规则中。但是对于Trae 2026 年 1 月份最新的一次版本变更中也已经兼容了读取 AGENT.md 文件作为项目规则来使用。所以使用老版本 Trae 的朋友需要基于下述步骤进行配置打开 Trae 的项目设置找到项目规则配置将 AGENT.md 的内容粘贴进去保存后Trae 每次对话都会加载该规则配置完成后Trae 的工作流程与 Claude Code 类似每次对话自动加载项目规则判断是否触发 OpenSpec 规范根据规范执行对应任务3 OpenSpec 规范核心要点无论使用哪种 AI 工具OpenSpec 的核心工作流都是一致的。理解这套规范你就能更好地与 AI 协作。三阶段工作流阶段1创建变更Proposal↓阶段2实现变更Apply↓阶段3归档变更Archive何时必须创建提案场景 是否需要提案新增功能或能力 ? 必须破坏性变更API/Schema ? 必须架构或模式调整 ? 必须Bug 修复恢复既有行为 ? 跳过拼写、格式、注释修正 ? 跳过非破坏性依赖升级 ? 跳过常用命令openspec list # 列出所有变更openspec list --specs # 列出所有规范openspec validate # 校验变更openspec archive # 归档变更?? 小贴士作为人类开发者你无需记忆这些命令。AI 会自动执行相应的操作来检查和管理变更提案。你只需要理解这套规范的工作流程就能与 AI 配合无间。openspec/project.md 的作用这个文件是项目的知识库用于存放项目目标和背景核心业务术语技术栈说明详细文档索引4 常见问题解答4.1 Q1为什么有时候 AI 不触发 OpenSpec 规范A这通常是因为触发条件未被满足。OpenSpec 的触发机制基于关键词匹配如提案、变更、规范等。如果你的请求不包含这些关键词AI 则不会加载 OpenSpec 规范。解决方案明确使用触发词帮我创建一个变更提案直接指定文件先阅读 openspec/project.md 再回答使用斜杠命令/openspec:proposal如果工具支持5.2 Q2project.md 中的业务知识什么时候生效A只有触发 OpenSpec 规范后才会读取。这是一个重要的设计权衡知识类型 存放位置 触发条件通用开发规范 /AGENTS.md 每次对话自动加载OpenSpec 工作流 openspec/AGENTS.md 触发关键词后加载业务上下文 openspec/project.md 通过规范索引间接加载实践建议将通用规则如项目结构、编码风格放在 /AGENTS.md 中将业务知识索引也写在 /AGENTS.md 中便于日常对话触发或者在对话中明确要求 AI 先阅读特定文档5.3 Q3如何让 AI 自动检索相关背景知识A这是 OpenSpec 的进化方向。目前最佳实践是在 /AGENTS.md 中建立业务知识索引采用提案方式讨论业务逻辑自动触发规范对话中明确指定先阅读 docs/xxx.md 再回答6 五、总结OpenSpec 的核心价值回到开篇的问题为什么有时候让 AI 发起提案时灵时不灵答案现在很清楚了触发机制AI 需要识别到特定关键词才会加载 OpenSpec 规范工具差异不同 AI 工具对规范文件的支持程度不同知识分层业务知识与开发规范需要合理分层存放OpenSpec 的核心价值在于通过规范注入让 AI 从项目小白成长为熟悉业务的开发伙伴。它不是银弹但当你理解了它的工作原理后就能让 AI 在团队协作中发挥真正的作用。当然在有需要的时候我们也可以修改 OpenSpec 初始化时所生成的一系列.md文件直接变更规范使其更加符合企业内的业务流程。窖皇蕾乜

相关文章:

年没人敢碰的老代码,我用AI重构了它——然后翻车了

1 安装与初始化 # 全局安装 OpenSpec npm install -g fission-ai/openspeclatest # 在项目目录下初始化 cd /path/to/your-project openspec init 初始化时,OpenSpec 会提示你选择使用的 AI 工具(Claude Code、Cursor、Trae、Qoder 等)。 3 O…...

2025届学术党必备的AI辅助论文网站实际效果

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 旨在辅助学术论文撰写的人工智能写作工具DeepSeek,能通过让用户明确研究主题&…...

SYNBO 已上线 BitMart 交易所,Synbo Camp 同步开启

2026年3月31日,Synbo.io 原生代币 SYNBO 将上线 BitMart 交易所,这也成为 Synbo 发展进程中的又一里程碑,并同步开启 Synbo Camp 招募活动。这不仅是一次产品上线与活动发布,更标志着 Synbo 正式向行业递交一套关于未来融资协作方…...

如果没有 Tools,Agent 什么都做不了

一、什么是urllib3? urllib3 是一个用于处理 HTTP 请求和连接池的强大、用户友好的 Python 库。 它可以帮助你: 发送各种 HTTP 请求(GET, POST, PUT, DELETE等)。 管理连接池,提高网络请求效率。 处理重试和重定向。 支…...

WuliArt Qwen-Image Turbo优化指南:启用BF16模式,让生成更稳定高效

WuliArt Qwen-Image Turbo优化指南:启用BF16模式,让生成更稳定高效 1. 理解BF16模式的核心价值 在个人GPU上运行文生图模型时,最令人沮丧的体验莫过于等待几秒后只得到一张全黑的图片。这不是你的Prompt写得不好,而是FP16&#…...

SpringBoot项目实战:5分钟搞定XXL-JOB 3.0.0与Admin控制台的本地联调

SpringBoot与XXL-JOB 3.0.0深度联调实战:从零搭建到避坑指南 当你需要在本地开发环境快速验证定时任务逻辑时,是否遇到过调度中心与业务项目无法联通的困扰?本文将手把手带你完成SpringBoot与XXL-JOB 3.0.0控制台的无缝对接,重点解…...

OpCore-Simplify智能配置工具:让系统环境适配不再复杂

OpCore-Simplify智能配置工具:让系统环境适配不再复杂 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 当技术爱好者小张第三次尝试配置系统…...

FXGL:JavaFX游戏开发的现代化架构实践

FXGL:JavaFX游戏开发的现代化架构实践 【免费下载链接】FXGL Java / JavaFX / Kotlin Game Library (Engine) 项目地址: https://gitcode.com/gh_mirrors/fx/FXGL FXGL是一个基于JavaFX构建的现代化游戏开发框架,为Java开发者提供了完整的游戏开发…...

DeerFlow企业级部署:支持大规模并发请求的架构升级

DeerFlow企业级部署:支持大规模并发请求的架构升级 1. 企业级部署的核心挑战 当您开始考虑将DeerFlow从个人研究助手升级为企业级应用时,第一个需要面对的问题就是并发处理能力。单个用户的研究请求可能很轻松,但当几十个甚至上百个用户同时…...

GLM-4.7-Flash作品集:政务通知、新闻通稿、宣传文案风格迁移生成

GLM-4.7-Flash作品集:政务通知、新闻通稿、宣传文案风格迁移生成 1. 快速上手:用GLM-4.7-Flash玩转文本风格迁移 你是不是经常需要写各种不同类型的文案?今天要写政务通知,明天要写新闻通稿,后天又要写宣传文案&…...

猫抓浏览器扩展:轻松获取网页媒体资源的终极指南

猫抓浏览器扩展:轻松获取网页媒体资源的终极指南 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 还在为无法下载网页视频而烦恼吗&…...

Navicat连接PostgreSQL常见问题排查指南

1. Navicat连接PostgreSQL的典型问题场景 第一次用Navicat连PostgreSQL的朋友,八成会遇到这个报错画面——输入完账号密码点连接,结果弹个红叉提示"无法连接到服务器"。这种情况我见得太多了,特别是连接远程服务器或者虚拟机里的数…...

3大颠覆突破!Wan2.2-TI2V-5B让消费级GPU生成720P视频成为现实

3大颠覆突破!Wan2.2-TI2V-5B让消费级GPU生成720P视频成为现实 【免费下载链接】Wan2.2-TI2V-5B Wan2.2-TI2V-5B是一款开源的先进视频生成模型,基于创新的混合专家架构(MoE)设计,显著提升了视频生成的质量与效率。该模型…...

告别 Mac mini 挂机,千元级AI边缘计算机让 Clawdbot 7×24 小时稳定值守

近日,开源 AI Agent 项目 Clawdbot(现 OpenClaw)火遍全球🔥 它不是普通聊天机器人。而是那种——真的会「动手干活」的 AI。 读文件、跑命令、改代码、调接口,甚至直接拥有系统权限,替你完成自动化操作。让…...

轻量级华硕硬件控制工具:GHelper如何重新定义笔记本性能管理

轻量级华硕硬件控制工具:GHelper如何重新定义笔记本性能管理 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Str…...

如何利用payload-dumper-go构建企业级Android OTA安全验证流水线

如何利用payload-dumper-go构建企业级Android OTA安全验证流水线 【免费下载链接】payload-dumper-go an android OTA payload dumper written in Go 项目地址: https://gitcode.com/gh_mirrors/pa/payload-dumper-go 在Android生态系统的持续交付流程中,OTA…...

MOCo. x 姆明快闪店美陈设计为何刷屏出圈?肆墨设计

在商业空间同质化加剧的当下,快闪店已成为品牌破圈、链接消费者的核心载体。MO&Co. 携手经典 IP 姆明打造的「姆明划水俱乐部」全国首展,以成熟的美陈设计逻辑,实现了品牌调性、IP 情感与商业转化的三重统一,为 IP 联名快闪美…...

Windows Subsystem for Android:让你的Windows电脑也能畅玩安卓应用

Windows Subsystem for Android:让你的Windows电脑也能畅玩安卓应用 【免费下载链接】WSA Developer-related issues and feature requests for Windows Subsystem for Android 项目地址: https://gitcode.com/gh_mirrors/ws/WSA 还在为需要在电脑和手机之间…...

零基础玩转AI上色:cv_unet_image-colorization保姆级部署教程

零基础玩转AI上色:cv_unet_image-colorization保姆级部署教程 1. 工具简介与核心价值 黑白照片上色技术让历史影像重获新生,而cv_unet_image-colorization正是这样一款开箱即用的AI工具。基于ModelScope的UNet架构模型,它能够智能分析黑白照…...

STM32CubeHAL 多外设仿真实战 | Proteus 8.15 驱动整合与调试技巧(LCD/OLED/温湿度/舵机/蜂鸣器)

1. 工程环境搭建与工具准备 第一次用Proteus仿真STM32时,我踩过一个坑:明明CubeMX生成的代码在开发板上运行正常,但仿真时外设死活不工作。后来发现是Proteus版本太旧,根本不支持HAL库模型。这里分享下经过验证的黄金组合&#xf…...

边走边聊 Python 3.8:Chapter 1 Win7 上手 Python 3.8(环境篇)

Chapter 1:Win7 上手 Python 3.8(环境篇) 在 Win7 上学习 Python,从来不是一件轻松的事:版本兼容、环境变量、注册表、库安装……每一步都可能踩坑。但正因为如此,当你真正把 Python 跑起来,你会比任何人都更懂系统、懂环境、懂底层。本章将带你从零开始,搭建一个稳定…...

3分钟掌握Windows安卓应用安装:免费轻量级APK安装器完全指南

3分钟掌握Windows安卓应用安装:免费轻量级APK安装器完全指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 想在Windows电脑上直接运行安卓应用却不想安装…...

收藏!只会CRUD也能学大模型,程序员3个月上手实战指南(小白必看)

最近刷CSDN和技术交流群,经常看到很多程序员朋友在纠结两个问题,尤其刚入门或只做过基础开发的小白,问得最多: “我只会写CRUD,没接触过AI,现在学大模型还来得及吗?” “从现在开始学&#xff0…...

不只是代码:用 Agent 构建全自动数据分析与可视化流水线

不只是代码:用 Agent 构建全自动数据分析与可视化流水线 1. 引入与连接:从"手动分析"到"智能自动化"的范式转变 1.1 一个数据分析师的典型一天 让我们想象一下,李明是一家互联网公司的资深数据分析师。每天早上9点,他都会坐在电脑前开始他熟悉的工作…...

工业五官:05 工厂也要做体检?五大传感器告诉你设备健康状况

05 工厂也要做体检?五大传感器告诉你设备健康状况 今天聊的这五大传感器——温度、压力、液位、流量、力,就是工厂的“全套体检套餐”。机器跟人一样,也得量体温、测血压、查血量、看血流、试力气。要是全靠师傅用手摸、用眼看,那多原始啊?这些小医生24小时在线,一有风吹…...

网易云无损解析工具:高效解析与资源管理全指南

网易云无损解析工具:高效解析与资源管理全指南 【免费下载链接】Netease_url 网易云无损解析 项目地址: https://gitcode.com/gh_mirrors/ne/Netease_url 在数字音乐收藏领域,用户常面临音质受限、批量下载繁琐、元数据缺失三大核心痛点。网易云无…...

拒绝文献堆砌:如何打造逻辑严密的基金立项依据?

在基金申报的征途中,许多科研人员常陷入一个误区:认为立项依据就是文献的简单叠加。于是,我们花费大量时间搜集资料,将数十篇参考文献的摘要机械地罗列在一起。然而,这样的做法往往导致一个致命的弱点:缺乏…...

ai赋能教学:让快马智能体带你通关mysql安装,实时解答所有疑惑

最近在准备MySQL数据库的课程教学资料时,发现很多学生在安装环节就会遇到各种问题。传统的静态教程很难覆盖所有可能的情况,于是尝试用AI技术做了一个智能辅导应用,效果出乎意料的好。这里分享下实现思路和具体功能设计。 智能问答模块 这是最…...

C++的std--ranges系统支持

C20引入的std::ranges系统彻底改变了算法与容器的交互方式,为现代C编程带来了声明式编程范式和更强的类型安全性。这一革新不仅简化了代码,还通过编译期优化提升了性能,成为近年来标准库最重要的进化之一。下面从三个关键角度解析其核心价值。…...

STM32CubeMX配置SenseVoice-Small边缘计算模块

STM32CubeMX配置SenseVoice-Small边缘计算模块 1. 引言 在嵌入式设备上实现语音识别功能一直是物联网和智能设备开发的热点。SenseVoice-Small作为一款轻量级多语言语音识别模型,为边缘计算场景提供了理想的解决方案。本文将手把手教你如何使用STM32CubeMX工具配置…...