news 2026/4/27 2:33:58

AI编程新范式:文件即规划,告别上下文丢失与目标漂移

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AI编程新范式:文件即规划,告别上下文丢失与目标漂移

1. 项目概述:为什么“文件即规划”是AI编程的范式革命

如果你和我一样,长期在Claude Code、Cursor这类AI编程助手上工作,一定经历过这样的挫败感:一个复杂的重构任务进行到一半,因为上下文窗口满了,不得不/clear清空对话,结果AI助手瞬间“失忆”,刚刚讨论好的架构设计、已经排查出的几个关键依赖,全都烟消云散。你不得不从头开始解释,或者更糟——AI开始沿着一个略有偏差的方向继续,之前的经验教训完全白费。

这就是传统AI编程工作流的根本缺陷:它把一切都塞进那个有限的、易失的上下文窗口里,就像试图用RAM来运行整个操作系统。2025年底,Meta以20亿美元收购Manus AI,这家公司在8个月内从零做到超1亿美元营收,其核心秘诀被概括为“上下文工程”。而“Planning with Files”这个开源项目,正是将Manus这套价值20亿美元的工作流模式,封装成了一个可以即插即用的Claude Code技能(Skill)。

简单来说,它强制你和AI助手养成一个习惯:任何重要的思考、规划、发现和进展,都必须立即写入到磁盘的Markdown文件中,而不是停留在对话的上下文里。这听起来简单,但实践起来,它彻底改变了AI辅助编程的协作模式。从“AI作为一次性的问答机”变成了“AI作为与你共享持久化工作记忆的结对编程伙伴”。

1.1 核心痛点:我们到底在对抗什么?

在没有这套模式之前,我们的工作流存在几个结构性弱点:

1. 易失性记忆(Volatile Memory)Claude Code的TodoWrite工具很好用,能帮你列出步骤。但问题是,这个“待办列表”只存在于当前对话的上下文中。一旦你执行了/clear,或者对话轮数过多导致早期信息被“挤出”上下文,这个列表就消失了。你失去了项目的“路线图”。

2. 目标漂移(Goal Drift)一个中等复杂的任务,比如“为现有REST API添加GraphQL层并确保向后兼容”,可能需要AI执行超过50次工具调用(查看文件、运行测试、修改代码)。在这个过程中,最初的、最核心的目标(例如“必须保证现有所有API调用不受影响”)很容易在一次次具体的代码修改中被AI遗忘或淡化。没有持久化的记录来反复锚定目标。

3. 错误黑洞(Hidden Errors)AI在尝试一个方案时失败了(比如某个依赖安装不了,或某个API调用方式不对),这个失败经验如果没有被记录,那么下次遇到类似情况时,AI很可能会重蹈覆辙,因为它不记得“上次在这里踩过坑”。人类的程序员会从错误中学习,但失忆的AI不会。

4. 上下文垃圾场(Context Stuffing)为了不让AI忘记,我们倾向于把越来越多的信息塞进提示词或早期的对话中:项目背景、架构图、注意事项、API密钥格式……最终上下文窗口被这些“背景板”占满,留给当前实际思考和操作的空间所剩无几。

“Planning with Files”提供的,正是一套对抗这些弱点的系统性方法。它不是某个炫酷的功能,而是一种工作纪律的工程化实现。

1.2 解决方案的精髓:三文件模式

项目的核心方法论极其简洁,就是为每个复杂任务创建三个Markdown文件:

  1. task_plan.md作战地图。这里定义任务的宏观阶段、具体步骤和验收标准。每一步都是可勾选的复选框- [ ]。它的核心作用是对抗目标漂移。AI在每个关键决策点前,都会被钩子(Hook)脚本强制重新读取这个文件,确保自己的行动始终对齐最终目标。
  2. findings.md侦察笔记。所有调研结果、探索性代码的输出、尝试过的命令及其结果、查阅的文档摘要,都记录在这里。它的核心作用是对抗上下文垃圾场。所有“可能需要以后参考”的信息,从上下文移入这个文件,释放宝贵的上下文窗口给当前的逻辑推理。
  3. progress.md工程日志。按时间顺序记录每个会话(Session)中实际执行的操作、生成的代码、测试结果和遇到的错误。它的核心作用是对抗错误黑洞和记忆易失。即使你清空了对话,或第二天打开项目,通过这份日志也能立刻知道“昨天做到哪一步了,哪里出了问题”。

这个模式将AI的“脑”(上下文/RAM)和“笔记本”(文件系统/磁盘)清晰分离。上下文只用于处理当前的、高密度的思考;文件系统用于存储所有需要持久化的知识、计划和历史。这正是Manus价值20亿美元洞察的平民化实现。

2. 深度解析:钩子(Hooks)如何实现“纪律”自动化

“Planning with Files”的强大,不仅仅在于它建议你创建三个文件。更在于它通过一套钩子(Hooks)系统,将这种工作纪律变成了几乎自动化的流程,无缝集成到各大主流AI IDE中。这是项目工程化的精髓所在。

钩子,简单理解,就是AI助手在特定生命周期节点(如“使用工具前”、“使用工具后”、“会话开始”、“会话结束”)会自动触发的脚本。这个项目为支持的IDE预置了这些钩子配置。

2.1 核心钩子工作流剖析

让我们看看一次典型的任务执行中,钩子是如何介入并重塑工作流的:

第1步:会话开始(SessionStart Hook)当你输入/plan启动任务时,钩子脚本init-session.sh(或Windows下的.ps1)被触发。它会做几件事:

  • 检查当前目录下是否已存在task_plan.md。如果不存在,它会引导AI助手(也就是Claude)向你提问,共同创建这个规划文件。这强制了“规划先行”的纪律。
  • 如果存在,它会读取文件,并将最新状态注入到AI的初始上下文中,实现会话恢复。即使你刚执行过/clear,AI也能立刻知道之前的进度。

第2步:工具使用前(PreToolUse / BeforeTool Hook)这是对抗目标漂移的关键防线。每当AI准备执行一个可能改变项目状态的重要操作(如写入文件、运行命令)前,这个钩子会被触发。

  • 钩子脚本会强制AI重新读取task_plan.md文件
  • AI需要基于最新的计划,判断即将执行的操作是否仍然符合当前阶段的目标。这相当于在每次行动前,都让AI“复习一遍任务书”。
  • 在我实际使用中,这个机制无数次地阻止了AI跑偏。例如,当AI正准备优化一个与当前阶段无关的模块时,重读计划会让它意识到:“哦,我还在‘阶段一:搭建基础框架’,优化是‘阶段三:性能调优’的事情,现在做这个为时过早。”

第3步:工具使用后(PostToolUse / AfterTool Hook)这是对抗上下文垃圾场和错误黑洞的关键。在AI执行完一个工具操作(尤其是browser查看网页或view查看长文件)后,钩子被触发。

  • 它会提醒AI:“你刚刚获得了新的信息,是否应该将其总结并保存到findings.md中?”这就是**“2-Action规则”**的自动化体现——每两次浏览/查看操作后,必须保存发现。
  • 如果操作中遇到了错误(比如命令执行失败),钩子会强烈建议AI将完整的错误信息和排查思路记录到progress.md中。这确保了失败经验被固化。

第4步:会话结束前(Stop / SessionEnd Hook)这是完成度验证的守门员。当你或AI试图结束会话时,钩子脚本check-complete.sh会被触发。

  • 它会扫描task_plan.md中所有的复选框- [ ]
  • 如果还有未勾选的项目,钩子会向AI发出警告:“任务尚未完成!还有X个步骤待进行。你是确定要结束,还是继续?”
  • 这个机制有效防止了因中途打断而导致的“烂尾”任务。

2.2 多平台支持的实现智慧

项目支持超过16种IDE和AI代理平台,从Claude Code、Cursor到GitHub Copilot、Codex、Gemini CLI等。它实现跨平台兼容性的方式非常巧妙:

  1. 遵循开放规范:对于支持Agent Skills开放规范的平台(如Continue, Pi Agent, OpenClaw等),它直接提供符合规范的SKILL.md文件,通过npx skills add命令即可安装,安装器会自动将技能文件放置到各IDE约定的发现路径(如~/.continue/skills/)。
  2. 适配私有钩子系统:对于有自己钩子实现的大平台(如Cursor的hooks.json、GitHub Copilot的Hooks配置、Codex的Skills系统),项目为每个平台单独提供了配置文件(位于项目根目录对应的隐藏文件夹,如.cursor/,.github/)。这些配置文件精确映射了平台特定的钩子事件名和脚本路径。
  3. 运行时环境检测:脚本(如init-session.sh)内部会检测操作系统(Windows通过%OS%或PowerShell的$IsWindows,Unix-like系统通过#!/bin/bash)和当前工作目录,从而调用正确的路径和命令,确保在Windows PowerShell和Unix Bash下都能正常工作。

这种架构使得项目的核心逻辑(三个文件的工作流)保持统一,而集成层则针对不同平台做适配,最大化了可用性。

3. 从安装到实战:手把手构建你的第一个“文件规划”项目

理论说得再多,不如亲手实践。下面我将以最常用的Claude Code为例,带你完整走一遍安装、配置和执行一个真实任务的流程。我会穿插大量我自己踩过的坑和总结的技巧。

3.1 安装与配置:一步到位与高级玩法

基础安装(推荐绝大多数用户)打开你的Claude Code终端,执行:

npx skills add OthmanAdi/planning-with-files --skill planning-with-files -g

这个命令会:

  1. 通过npx调用skills命令行工具。
  2. 从GitHub仓库OthmanAdi/planning-with-files添加名为planning-with-files的技能。
  3. -g参数表示全局安装,技能会被安装到Claude Code的全局技能目录(通常是~/.claude/skills/)。

安装完成后,在Claude Code的聊天框中输入/plan,你应该能看到planning-with-files:plan这个命令出现在自动补全列表中。这就成功了。

踩坑提示1:如果安装后没有出现命令,可能是Claude Code的技能缓存没有刷新。尝试完全退出Claude Code再重新打开,或者执行/skills reload命令(如果Claude Code支持)。更彻底的方法是直接去~/.claude/skills/目录下查看是否出现了planning-with-files文件夹。

高级安装:使用插件模式获取完整功能如果你想要更紧密的集成,比如使用更短的命令别名,可以使用Claude Code的插件系统安装:

/plugin marketplace add OthmanAdi/planning-with-files /plugin install planning-with-files@planning-with-files

插件安装方式会将技能作为插件的一部分管理,并且有时能获得更深度的UI集成(取决于Claude Code的插件API)。安装后,你可以直接使用/planning-with-files:plan命令。

手动安装(用于调试或自定义)有时你可能想修改技能文件,或者安装到特定项目。你可以手动克隆仓库并复制文件:

# 克隆仓库 git clone https://github.com/OthmanAdi/planning-with-files.git # 进入仓库目录 cd planning-with-files # 将技能文件夹复制到Claude Code的全局技能目录(macOS/Linux) cp -r skills/planning-with-files ~/.claude/skills/ # Windows (PowerShell) # Copy-Item -Recurse -Path "skills\planning-with-files" -Destination "$env:USERPROFILE\.claude\skills\"

手动安装的好处是,你可以直接查看和修改SKILL.md、钩子脚本等文件,进行自定义。

3.2 实战演练:为一个Express.js API添加用户认证

假设我们有一个简单的Express.js项目,现在需要为其添加JWT(JSON Web Token)用户认证功能。这是一个典型的多步骤任务,非常适合用“Planning with Files”来管理。

第1步:启动规划在项目根目录打开Claude Code,输入命令:

/plan

AI(Claude)会响应,并因为触发了SessionStart钩子,它开始引导你创建计划。它可能会问:“请描述你想要完成的任务。”你回答:

“为当前这个Express.js API添加基于JWT的用户认证功能。需要包含用户注册、登录、签发Token、保护路由的中间件。数据库使用现有的MongoDB。要求代码结构清晰,有基本的错误处理。”

紧接着,AI会开始创建task_plan.md文件。这里有一个关键技巧:不要完全让AI自由发挥。你应该主动介入规划的制定。当AI生成第一个版本的计划草案后,仔细阅读,并提出修改意见。例如:

初始AI草案可能的问题:

  • 步骤过于笼统:“实现用户模型”。
  • 缺少关键验证:“如何测试保护后的路由?”
  • 顺序可能不合理:先实现“登录逻辑”再“生成Token”?实际上Token生成是登录逻辑的一部分。

你应该这样引导AI修改计划:

“这个计划不错,但我们需要更具体。请将阶段一‘项目初始化’细分为:1. 安装必要的npm包(jsonwebtoken, bcryptjs)。2. 创建用户模型(User schema),包含email(唯一)、hashedPassword字段。3. 创建认证相关的工具函数文件(authUtils.js),用于密码哈希和验证。另外,在阶段三‘测试与验证’中,增加一个子步骤:使用Postman或curl编写并执行测试用例,验证注册、登录、受保护路由访问的全流程。”

通过这样具体的引导,你们共同产出的task_plan.md才会是一份真正可执行、无歧义的“合同”。这份文件将成为后续所有工作的唯一准绳。

第2步:执行与动态更新规划完成后,AI开始工作。你会观察到钩子在默默起作用:

  • AI准备安装jsonwebtoken包前,会停顿一下(PreToolUse钩子触发),重读计划,确认这是在“阶段一”该做的事。
  • AI查看完Mongoose的文档后,准备写用户模型代码时,会主动提示你(PostToolUse钩子触发):“我刚查阅了Mongoose模式定义的文档,要点已保存至findings.md。现在开始编写User模型代码。”
  • progress.md中,AI会记录:“尝试使用bcrypt.hash同步方法失败,该库推荐异步bcrypt.hash。已调整代码。”这个错误记录至关重要,下次如果其他部分需要哈希密码,AI或你本人就不会再犯同样的错误。

在这个过程中,你的角色是“监督者”和“需求澄清者”。当AI对某个业务逻辑不确定时(比如“登录成功返回的Token应该放在HTTP响应头还是Body里?”),它应该去更新findings.md,记录下不同的方案和权衡,然后向你提问,由你做出决策。决策后,这个结论也应记录在案。

第3步:验收与迭代当AI勾选了task_plan.md中“实现登录路由”的复选框后,它可能会尝试运行服务器并进行一个简单的curl测试。测试结果(成功或失败)会记录在progress.md

假设测试失败,返回“500内部错误”。AI会去查看日志,发现是数据库连接字符串错误。它会:

  1. progress.md中详细记录错误信息、排查过程和根本原因。
  2. 修正错误。
  3. 回到task_plan.md,在“阶段三:测试与验证”部分,增加一个子任务:“- [ ] 确保环境变量MONGODB_URI在测试环境中正确加载。”
  4. 然后继续执行这个新添加的子任务。

这就是“文件即规划”模式的动态性和强大之处:计划不是一成不变的圣旨,而是一个随着项目推进不断演化的活文档。所有的新发现、新决策、新产生的子任务,都实时反映在三个文件中,构成项目的完整记忆。

3.3 跨会话与恢复:永不丢失的上下文

最精彩的时刻出现在你需要/clear的时候。假设上述任务进行到一半,上下文窗口满了。

在传统模式下,你会陷入绝望。但现在,你只需淡定地输入/clear

清空后,开启一个新对话。你甚至不需要主动提及之前的任务。因为SessionStart钩子会自动运行。它会检测到项目目录下存在task_plan.mdfindings.mdprogress.md文件。

AI在初始化时会说:“检测到存在进行中的任务规划。正在加载上次会话状态...” 然后,它会将task_plan.md的最新进度和progress.md的最后几条记录作为系统提示加载进来。AI瞬间“恢复记忆”,它知道:

  • 我们正在做一个Express.js JWT认证项目。
  • 目前处于“阶段二:实现核心路由”的中期。
  • 刚刚完成了用户注册路由,但登录路由的测试失败了,原因是环境变量问题。
  • 下一步应该是解决环境变量问题,然后继续测试登录路由。

你可以直接命令:“继续我们之前的工作。” AI就能无缝衔接。这种体验上的提升是颠覆性的。它意味着你可以将复杂的、耗时的任务拆分成多个工作会话,而不必担心状态丢失。项目进度被固化在文件里,而非脆弱的对话记忆中。

4. 高级技巧与疑难排查

经过大量项目的实战,我总结出了一套让“Planning with Files”发挥最大效能的技巧,以及常见问题的解决方法。

4.1 高效使用技巧

1. 规划文件的颗粒度艺术task_plan.md中的任务颗粒度是关键。太粗(如“完成后端开发”)则无法跟踪;太细(如“在app.js第23行添加require(‘dotenv’)”)则会让计划冗长不堪,维护成本高。

  • 黄金法则:一个任务项应该是AI在一个连贯的上下文窗口内(不进行/clear)可以独立完成并验证的工作单元。例如:“实现POST /api/auth/login路由,包括请求体验证、密码核对、JWT生成和返回”,这就是一个很好的任务项。
  • 使用嵌套列表:用- [ ]表示主任务,用缩进的-*表示子步骤或说明。这能保持主计划简洁,同时细节可查。

2. Findings.md 的组织策略findings.md很容易变成杂乱无章的垃圾场。我建议采用时间线+主题标签的方式组织。

  • 每个发现条目都以## [YYYY-MM-DD HH:MM]开头,记录时间。
  • 在内容中,用关键词:的方式标记主题,例如#技术选型 #JWT库对比
  • 定期(比如完成一个大阶段后)对findings.md进行一次“归档整理”,将相关条目合并,提炼出最终决策和原因,放入一个名为决策记录.md的文件。这样findings.md始终保持为“正在进行的研究笔记”,而凝固的知识则被归档。

3. 与版本控制系统(Git)的协同这三个文件本身就是极佳的提交信息(Commit Message)素材

  • 在完成task_plan.md中的一个主要阶段(比如所有复选框都打勾)后,将相关的代码变更连同更新后的三个Markdown文件一起提交。
  • 提交信息可以直接引用task_plan.md中的阶段标题和progress.md中的关键摘要。例如:git commit -m “feat(auth): 完成用户注册与登录路由 (阶段一) - 详见progress.md @2024-01-01”
  • 重要:可以将SessionStart钩子脚本稍作修改,在会话恢复时自动执行git diff,让AI快速了解自上次会话以来代码库发生了什么变化,这能极大提升恢复后的上下文准确性。

4. 应对复杂项目:多规划文件对于非常庞大的项目(比如重构一个单体应用为微服务),单个task_plan.md可能仍然会变得臃肿。此时,可以采用分层规划

  • 在项目根目录保留一个master_plan.md,只描述最高层的阶段和子模块。
  • 为每个子模块(如/service-auth,/service-user)创建自己的子目录,并在其中运行独立的/plan会话,生成各自的task_plan.md,findings.md,progress.md
  • 这样,每个子任务都有自己独立的、专注的“记忆空间”,互不干扰。主规划只跟踪子模块的完成状态。

4.2 常见问题与解决方案

下面是一个我遇到过的典型问题速查表:

问题现象可能原因解决方案
输入/plan后无反应,或提示“命令未找到”。1. 技能未正确安装。
2. Claude Code技能缓存未更新。
3. 在错误的目录(如非项目根目录)执行。
1. 检查~/.claude/skills/下是否存在planning-with-files文件夹及其SKILL.md文件。
2. 重启Claude Code,或尝试在聊天框输入/skills reload(如果支持)。
3. 确保在项目根目录下操作。
钩子脚本没有执行(AI不主动重读计划或提醒保存发现)。1. 使用的IDE不支持或未正确配置钩子。
2. 钩子脚本没有执行权限(Unix系统)。
3. 技能是以“基础技能”模式安装,而非“插件+钩子”模式。
1. 确认你的IDE在项目的“增强支持”列表中(如Claude Code, Cursor)。对于仅支持标准技能的平台,钩子功能可能受限。
2. 在终端执行chmod +x ~/.claude/skills/planning-with-files/scripts/*.sh(如果使用手动安装)。
3. 对于Claude Code,尝试用插件模式(/plugin install)重新安装,以获得完整的钩子功能。
会话恢复(Session Recovery)失败,/clear后AI不记得之前的事。1. AI的会话存储路径可能非默认。
2.progress.md文件格式异常,导致钩子脚本解析失败。
3. 项目路径中包含特殊字符或空格,导致脚本路径错误。
1. 检查钩子脚本(如init-session.sh)中关于会话存储路径的查找逻辑,看是否与你的Claude Code实际路径匹配。可能需要手动调整脚本。
2. 检查progress.md文件,确保其是有效的Markdown格式,时间戳等解析锚点清晰。
3. 尽量避免在项目路径中使用空格和中文。如果必须使用,可能需要修改钩子脚本,对路径进行引号包裹处理。
AI在PreToolUse钩子后变得“迟钝”,每次操作前都要停顿很久。钩子脚本(尤其是重读task_plan.md)可能涉及复杂的文件I/O或网络操作,在较慢的机器上会造成感知延迟。1. 这是一个权衡。短暂的停顿(1-3秒)对于确保方向正确是值得的。
2. 如果延迟无法忍受,可以考虑修改钩子脚本,让其只在检测到“重要工具”(如write_file,run_command)时触发,而不是每次工具调用都触发。但这会降低“纪律”的严格性。
在Windows PowerShell下脚本执行报错。项目提供的.ps1脚本可能与环境不兼容,或者执行策略限制。1. 以管理员身份打开PowerShell,执行Set-ExecutionPolicy RemoteSigned以允许本地脚本运行。
2. 仔细检查.ps1脚本中的路径分隔符(应使用\[System.IO.Path]::Combine)、环境变量引用方式($env:USERPROFILE)。可能需要根据你的具体环境进行微调。

4.3 性能调优与自定义

对于追求极致效率的用户,可以对项目进行深度自定义:

1. 调整钩子触发频率编辑对应IDE的钩子配置文件(如Cursor的.cursor/hooks.json)。你可以精确控制哪些“工具类型”会触发PreToolUsePostToolUse。例如,只对write_file,run_command,browser这类“高影响力”工具启用钩子,而对view,search等只读工具禁用,可以减少干扰。

2. 扩展文件模板默认的三个文件模板可能不符合你的团队规范。你可以在技能目录的templates/子文件夹下找到初始模板。你可以修改它们,加入你们公司特定的文档头、代码规范链接、检查清单等。这样,每次/plan创建的文件都符合你的内部标准。

3. 集成外部工具在钩子脚本中,你可以加入调用外部工具的逻辑。例如:

  • PostToolUse钩子中,如果AI写入了代码文件,自动触发一个简单的代码风格检查(如prettier --check)。
  • Stop钩子中,不仅检查任务完成度,还可以自动运行项目的测试套件,并将结果摘要追加到progress.md中。
  • SessionStart钩子中,自动从Jira或Linear拉取当前任务单的描述,并预填充到task_plan.md的初始草稿中。

这些自定义将“Planning with Files”从一个通用技能,转变为你个人或团队专属的、高度自动化的AI辅助开发流水线。

5. 生态、演进与未来展望

“Planning with Files”不仅仅是一个工具,它正在成为一个围绕“AI上下文工程”的微型生态系统的核心。观察它的GitHub仓库,你能看到这种生命力的迸发。

社区衍生项目在项目的README中,有一个“社区构建了什么”的板块,列出了几个非常有启发性的分支:

  • devis: 引入了“面试优先”的工作流,AI会先像面试官一样问你一系列问题来澄清需求(/devis:intv),然后再进入执行模式(/devis:impl)。这解决了AI在需求模糊时容易跑偏的问题。
  • multi-manus-planning: 支持多项目管理。这对于同时处理多个小需求或Bug修复的开发者来说非常实用,可以为每个项目或分支维护独立的规划文件集。
  • plan-cascade: 实现了多级任务编排和并行执行。想象一下,AI可以将一个大任务分解后,同时进行代码编写、文档撰写和测试用例生成(如果平台支持多代理协作)。
  • agentfund-skill: 一个脑洞大开的想法,将规划与基于里程碑的链上托管支付结合。为AI代理的工作设定里程碑,客户将资金托管,AI完成一个阶段,自动触发支付。这为AI驱动的自由职业或外包提供了可信的执行框架。

这些衍生项目表明,“文件即规划”这个核心模式具有很强的可扩展性。它定义了一个清晰的接口(三个Markdown文件),上层可以构建各种复杂的工作流和业务逻辑。

多语言与多平台支持从v2.25.0开始,项目陆续加入了简体中文、繁体中文、阿拉伯语、德语、西班牙语等技能变体。这不仅仅是简单的翻译,而是根据不同语言社区开发者的习惯,调整了提示词(Prompt)的语气和文件模板的结构。这种国际化努力降低了非英语母语开发者的使用门槛。

同时,其对超过16个平台的支持,使其几乎成为了AI辅助编程领域的“事实标准”工作流。无论你偏好哪个AI编程工具,这套方法论都能适用。

对我个人工作流的根本性改变在使用“Planning with Files”几个月后,我发现自己对AI编程的依赖模式发生了根本转变:

  1. 从“问答”到“协作”:我不再是把AI当作一个更聪明的搜索引擎,问完即走。而是将其视为一个拥有持久化工作记忆的初级程序员伙伴。我会向它同步项目背景(通过文件),它会向我汇报进度和阻塞(通过文件)。
  2. 规划能力的内化:即使在不使用AI的时候,我也开始习惯为复杂任务先写一个task_plan.md。这种结构化的思考方式本身就能极大提升效率。
  3. 知识资产的沉淀:每个项目留下的findings.mdprogress.md,成为了我个人的技术知识库。下次遇到类似问题,我首先翻看的是自己过去的“侦察笔记”和“工程日志”,而不是去谷歌搜索。这些文件记录的是我最贴切上下文的一手经验。

未来的想象这个项目的方向也暗示了AI编程工具未来的演进路径:

  • 规划即代码(Plan as Code)task_plan.md可能进化成一种更结构化的领域特定语言(DSL),可以被AI和构建工具共同解析和执行,实现真正的自动化任务编排。
  • 跨会话、跨模型的状态同步:三个文件构成的项目状态,是否可以抽象成一个标准化的“项目上下文包”?这个包可以在Claude、GPT、Gemini等不同模型间传递,实现真正的“模型无关”的项目延续。
  • 与项目管理工具深度集成task_plan.md中的复选框状态,是否可以自动同步到GitHub Projects、Linear或Jira的任务看板上?让AI的工作进度直接可视化到团队的工作流中。

“Planning with Files”的成功,本质上是因为它精准地击中了当前AI编程的痛点:状态管理。它用最简单、最通用(文件系统)、最符合程序员直觉(Markdown)的方式,给出了一个优雅的解决方案。它没有试图去改变AI模型本身,而是巧妙地改变了我们与AI协作的界面协议。这或许就是所有伟大工具的共同特质:它们不创造新事物,而是为新事物扫清障碍。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/27 2:33:57

2026年人力资源数据分析的技术价值与应用前景

一、人力资源数据分析的核心作用数据分析在人力资源领域的应用已从基础报表转向预测性分析。2026年,算法将更精准地预测员工流失率、招聘效率及培训需求,通过历史数据建模优化决策流程。例如,机器学习可分析员工行为模式,识别高潜…

作者头像 李华
网站建设 2026/4/27 2:33:36

xss-labs靶场通关

本文将介绍xss-labs1-20关的解题思路和通关答案level-1第一关开始的URL为http://localhost/xss-labs/level1.php?nametest观察页面源代码可以发现&#xff0c;test被放在h2标题上&#xff0c;直接被显示出来的&#xff0c;所以直接在URL上修改name<script>alert(1)</…

作者头像 李华
网站建设 2026/4/27 2:31:40

基于Node.js与Vue 3的轻量级服务器监控仪表盘实战

1. 项目概述&#xff1a;从“斗鱼”到“贝塔鱼”的代码仓库之旅最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的仓库&#xff0c;名字叫“BettaFish”&#xff0c;作者是“666ghj”。第一眼看到这个名字&#xff0c;我下意识地联想到了那种色彩斑斓、尾鳍飘逸的观赏鱼——…

作者头像 李华
网站建设 2026/4/27 2:29:21

基于Django设计—— 用户认证功能实现(流浪动物救助平台)

一、项目背景 在流浪动物救助平台中&#xff0c;用户需要注册、登录后才能提交领养申请。Django 提供了强大的内置认证系统 django.contrib.auth&#xff0c;可以快速实现&#xff1a; 用户注册 用户登录 用户注销 登录保护&#xff08;login_required 装饰器&#xff09; …

作者头像 李华