jevgrep 编码代理任务中的未知之未知扫雷:explore-unknowns Stage 4 系统性排查代码雷区实战指南

发布时间:2026/9/30 7:15:22
jevgrep 编码代理任务中的未知之未知扫雷:explore-unknowns Stage 4 系统性排查代码雷区实战指南
【免费下载链接】jevgrepFind code by asking what it does. A CLI for coding agents that uses Jev to discover relevant files and source context.项目地址https://gitcode.com/gh_mirrors/je/jevgrep点击查看免费下载导读在编码代理coding agent开工之前任务涉及的代码里往往埋着双方都不知道该问什么的陷阱——错误默认值、过期冗余、过滤坏行、转义毁输出。本文基于当前仓库 explore-unknowns 技能的第四阶段参考文档stage-4-unknown-unknowns.md完整讲解未知之未知Unknown Unknowns扫雷流程如何全覆盖清扫任务触及的每个文件、如何把每条发现做成带证据的地雷卡片、以及如何用盲点通行证Blindspot Pass把发现装配成一条更优的实现提示词。读完你即可在 jevgrep 检索得到的源码上下文上独立执行一次系统性的任务前排雷并把结果落进四象限地图。背景Stage 4 在象限走查中的位置explore-unknowns 技能把一次任务的未知面拆成四象限按顺序逐个走查共五个阶段见 SKILL.mdKnown knowns—— 先扫描领域以既定事实开场Known unknowns—— 你能命名的疑问逐个解决Unknown knowns—— 提取从未被说出口的直觉与隐性上下文Unknown unknowns本阶段—— 清扫领域猎杀地雷Hand over the map—— 交出完整的四象限地图这是本次走查唯一的完成条件。正如 SKILL.md 开篇所强调地图不是领域本身。提示词、计划与上下文窗口是地图代码库、领域与用户的真实意图才是领域。未知之未知正是地图与领域之间那条最危险的缝隙——写在代码前发现的未知代价是几分钟三个 PR 之后才发现同一个未知代价就是那三个 PR。Stage 4 解决的正是双方都不知道该问什么的那一类问题你无法直接提问因为问题本身还没有成型——领域代码往往替你们提问。这一阶段的职责就是把任务将要触及的代码清扫一遍把静默的陷阱转化为地图条目。完整流程从全覆盖清扫到地图落账第一步清扫任务触及的每一个文件进入 Stage 4 后首要动作是清扫任务将触及的每个文件并且在开场时明确陈述覆盖范围例如本次清扫覆盖了本任务触及的 N 个文件the sweep covered the N files this task touches。覆盖声明是硬要求它让用户以及接手的人清楚知道这次排雷到底扫过多大的地未扫到的区域本身就是一条风险记录。清扫时要主动猎杀四类目标1. 地雷Landmines——会静默咬人的东西文档中列出的典型形态包括错误默认值wrong-by-default data某个数据结构或参数以错误的取值作为默认代码正常运行但结果从一开始就是错的过期冗余stale denormalizations本应保持一致的冗余数据在多次更新后漂移读到的已经不是最新事实过滤掉坏行filters that pass bad rows本意是过滤脏数据的条件反而把坏行放行或把好行误杀转义损坏输出escaping that corrupts output字符串转义不完整或被双重转义导致输出的内容在下一环被错误解析。2. 未成文的约定Unwritten conventions——代码在强制执行、但没有任何文档记载的规则。这类约定一旦被任务改动无意破坏往往表现为为什么别的模块不这么写也能跑式的诡异回归。清扫时的任务是把它们显式化变成地图上的一行条目。3. 半成品或被回退的先前尝试Half-built or reverted prior attempts——同一个目标过去已经有人动过手留下半截实现、或整体回退。清扫不仅要找到它们更要查明它们为什么死掉——那个死因通常就是你的地雷。如果先前尝试死于某个数据假设、某个性能瓶颈或某个集成点而新任务没有意识到几乎必然会在同一处再次引爆。4. 超出本功能的发现Findings beyond the feature——任务代码路径会继承的潜伏缺陷。它们不在任务范围内但会顺着本次改动被触发或放大。文档给出的处理原则很明确把它们升级到地图上而不是静默吸收escalate them to the map rather than silently absorbing them。宁可多一条地图条目也不要让一个已知的潜伏 bug 假装不存在。第二步把每条发现上报为卡片每条发现都要上报为一张卡片卡片必须包含三个要素证据evidence具体的文件与行号让任何接手者可以独立复验为什么它会咬人why it bites在什么触发条件下会产生什么错误行为它改变了任务的什么what it changes这条发现对当前任务计划、方案或预期结果的影响。上报顺序有硬性要求最严重的排最前worst first。这样即便对话被截断、或用户只能读完前几条最致命的风险也一定已被看到。第三步按性质分流处理发现按是否需要用户决策分为两类处理路径不同需要用户拍板的发现按 Stage 2 的问题关闭方式处理——给出带字母编号的选项lettered options并附上你的推荐recommendation让用户用几个字符就能回答。相关机制可参考 stage-2-known-unknowns.md 中的采访式提问法一次一个问题、按架构爆炸半径排序、每个都带推荐答案。只需要知情即可的发现直接作为锐边sharp edge记录到地图上无需打断用户决策流。全局规则发现即披露不为阶段留档SKILL.md 有一条贯穿所有阶段的铁律阶段为走查排序但绝不禁止信息发布Stages order the walk; they never embargo information。任何实质影响在途决策decision in flight的发现必须在发现的那一刻就披露然后归档到地图对应象限下——绝不能扣住不放留到本阶段轮值时才讲。SKILL.md 还规定了配套规则任何地图记录为 closed 的问题/判断都必须先展示给用户——包括领域已经给出答案的那些nothing closes off-screen。因此本阶段的意义是系统性、全覆盖的清扫而不是披露的起点。完成条件Done When本阶段结束必须同时满足两个条件清扫已覆盖任务将触及的代码每一条发现都已落到地图上——以三种状态之一存在已决策decided、挂起OPEN、或已标注为锐边sharp edge。没有任何清扫完成但发现还躺在聊天记录里的中间态。开放性内容OPEN必须写明什么能解锁它what unblocks it例如缺一个用户选择、缺一次实验验证、或需要等某个外部输入。核心技术盲点通行证Blindspot Pass本阶段唯一的专属技术是为反应而打包的清扫产物the sweep packaged for reaction。盲点通行证由三部分组成地雷卡片集每条卡片都带证据文件与行号、咬人原因以及一条可直接复制的提示词修复a copyable prompt fix——即如果采纳这条修复提示词里应该怎么写的现成文本一条更优的实现提示词把全部地雷卡片的修复整合成一条更好的实现提示词one better implementation prompt作为本阶段产出的总结与交付物反应式交互延续 SKILL.md 的两条通用心法——反应优于想象Reacting beats imagining与每个工件都装配用户的回复Every artifact assembles the reply。盲点通行证让用户的下一步动作变成复制、粘贴、微调而不是从零组织语言。这套设计的目的很明确地雷发现本身不是终点把它们转译成用户可以直接使用的更优提示词才算完成闭环。用户对盲点通行证的反应应当成为他们的下一条消息——近乎零打字成本。地图落地Stage 5 与走查之后的延续Stage 4 的产出最终会汇入 Stage 5 的四象限地图工件见 stage-5-hand-over-the-map.md未知之未知象限中陈列的就是本阶段的地雷卡片每张标注 decided / OPEN / sharp-edge 三态之一需要用户在编码前确认的小事实单独成列表作为地图条目而不是脚注。走查结束不等于排雷结束。规划之后的三个动作在 after-the-walk.md 中有完整定义实现期笔记构建过程中每当代码迫使你偏离计划记录计划说了什么、代码揭示了什么、做了什么保守决定每次偏离都是一个逃过走查的未知之未知要折回地图供第二次尝试使用合并前买断文档buy-in doc把原型、规格与笔记打包成一份可速读的陈述用演示开场、用证据预答每位评审者的异议合并前测验quiz before merge产出合并就绪报告——心智模型、引入的非显然行为、部署后要观察什么——以用户必须通过的测验收尾答错指向他们跳过的章节。在本仓库中的实际应用场景本仓库的核心产品是 jevgrepjg一个面向编码代理的 CLI输入自然语言问题jg返回相关文件、阅读线索与逐字源码摘录供代理实现与测试改动见 README.md。其配套的 jevgrep 技能 给出了代理侧的标准用法jg How are telemetry events recorded and sent? .Stage 4 扫雷在这个工作流中的价值正是文档开头那句地图不是领域的直接落地jg检索结果只是地图相关文件清单与摘录真正的领域是这些文件内部的实现细节。代理拿着检索到的源码上下文开工前先按本文流程清扫一遍任务触及的文件——核对默认值、冗余、过滤与转义四处高发雷区查明是否有半成品或回退的先前尝试把超出功能的潜伏缺陷升级为地图条目——就能把三个 PR 之后才引爆的成本压缩到写代码前的几分钟。一个值得注意的边界仓库源码、测试与配置都能支撑技术结论但本阶段参考文档本身是一条流程方法论而非代码实现——它没有对应的可执行脚本其事实依据在于 explore-unknowns 技能的完整框架SKILL.md 中的规则段、其余阶段文档的相互印证以及 jevgrep 技能描述的代理工作流。在使用时也应遵循该技能文档自身的约束关于领域的论断必须引用真正读过的真实文件虚构的数据必须如实标注claims about the territory cite real files actually read。小结一张可执行的 Stage 4 检查清单动作产出完成标准全覆盖清扫任务触及文件覆盖声明 四类猎杀目标扫描结果明确陈述N 个文件已覆盖猎杀地雷地雷清单错误默认值 / 过期冗余 / 过滤坏行 / 转义毁输出逐条给出文件与行号证据追查先前尝试的死因半成品/回退实现及其死亡原因死因与本次任务的关联已写明上报发现卡片证据 / 咬人原因 / 对任务的改变最严重在前每条都可独立复验分流处理需拍板的给字母选项推荐仅需知情的标为锐边无 off-screen 关闭装配盲点通行证地雷卡片集 可复制修复 一条更优实现提示词用户的下一步回复近乎零打字落账地图每条发现标记 decided / OPEN / sharp-edge满足文档定义的 Done When延续到构建期实现期笔记、buy-in doc、合并前测验逃过走查的偏离折回地图供第二次尝试把这份清单与四象限地图一并交给实现者正是 Stage 4 文档与 explore-unknowns 技能框架留给代理工作流最实用的遗产排雷不是靠运气而是靠一次有证据、有顺序、有产物的系统性清扫。赞分享【免费下载链接】jevgrepFind code by asking what it does. A CLI for coding agents that uses Jev to discover relevant files and source context.项目地址https://gitcode.com/gh_mirrors/je/jevgrep点击查看免费下载相关推荐jevgrep explore-unknowns 技能第三阶段实战提取未知的已知Unknown Knowns挖出从未被言说的隐性需求jevgrep explore unknowns 技能第三阶段实战提取未知的已知Unknown Knowns挖出从未被言说的隐性需求 output探索未知的代码之旅Voyager - 基于大语言模型的开放世界智能体终极指南探索未知的代码之旅Voyager 基于大语言模型的开放世界智能体终极指南 想要了解AI如何在复杂环境中自主学习并执行任务吗Voyager作为首个基于大语言模人工智能大模型AI Agent自主智能体具身智能RAG上一篇终极指南OpenWebRX SDR接收器完全配置与实战下一篇FFCreator终极指南5分钟掌握Node.js视频自动化制作创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考