
OmX analyze 技能深度解析基于证据纪律与排序综合的只读仓库分析方法论【免费下载链接】oh-my-codexOmX - Oh My codeX: Your codex is not alone. Add hooks, agent teams, HUDs, and so much more.项目地址: https://gitcode.com/GitHub_Trending/oh/oh-my-codex在 oh-my-codexOmX这套为 Codex CLI 打造的编排层中analyze是一个专门用于只读深度仓库分析的工作流技能skill面对为什么会这样是什么导致了这个问题这段代码到底做了什么这类需要跨文件追踪、权衡多种解释的问题它以$analyze显式调用或investigate等关键词触发最终产出一份带有明确置信度、具体文件引用、清晰的证据-推断边界的排序综合结论。本文以 skills/analyze/SKILL.md 为骨架结合 OmX 的源码与测试完整讲解该技能的适用场景、五步调查方法、三分类证据纪律、结构化输出契约与停止条件帮助你在任何 Codex 会话中把分析与动手改代码严格分开获得可复核、可引用、不夸大确定性的分析结果。一、技能定位只读分析绝不越界analyze技能的元信息frontmatter声明了它的精确边界name: analyze description: Run read-only deep repository analysis and return a ranked synthesis with explicit confidence, concrete file references, and clear evidence-vs-inference boundaries. Use when a user says analyze, investigate, why does, whats causing, or needs grounded cross-file explanation before any changes are proposed.核心定位可以概括为三句话用有依据的、只读的证据回答仓库问题解释代码最可能说明了什么而不是把分析变成实现或泛泛的修复规划在提出任何改动建议之前为用户提供置信度和具体证据。在 catalog/manifest.json 的技能注册表中analyze被归类为shortcut快捷技能状态为active{ name: analyze, category: shortcut, status: active }也就是说它不是一个重型编排流程如autopilot、team而是一个随时可用的单轮深度分析入口。二、适用场景与禁用边界什么时候使用根据 SKILL.md 的 Use when 清单当满足以下任一条件时应使用$analyze用户需要因果、架构、行为、影响或权衡层面的解释回答需要追踪多个文件或边界或需要对多种可能的解释进行排序用户在改动任何东西之前需要置信度和具体证据。典型触发话语包括 analyze、investigate、why does、whats causing——即用户要的是先搞清楚再说而不是直接改。什么时候绝不使用SKILL.md 明确列出四类禁止场景这是一条硬边界编辑/实现edits, implementation新产品的规划a new product plan单文件的简单查找a simple one-file lookupOmX 团队运行时操作OMX team-runtime operation。这条边界的含义是单文件查询用explore这类轻量路由即可真正需要动团队运行时状态的操作则属于team技能的地盘analyze只负责把问题看清不负责把问题解决。三、输入与方法五步有界调查法SKILL.md 定义了五步调查流程每一步都在收敛证据范围避免无限搜索重述问题并定义有证据支撑的范围Restate the question and define the evidence-backed scope——先确认要回答什么边界在哪找出最可能回答问题的最小文件集Identify the smallest files, tests, configs, and docs likely to answer it——包括源码、测试、配置和文档优先读取直接代码路径与契约边界只追踪到必要程度Read direct code paths and contracts first; trace boundaries only as far as needed——先读主干实现和接口契约不要顺着调用链无限蔓延比较相互竞争的解释按证据支撑度排序并标出未决点Compare competing explanations, rank them by support, and mark unresolved points证据充分时停止否则指出能消除剩余不确定性的最小只读探测Stop when the question is answered with sufficient evidence, or name the smallest read-only probe that would resolve the remaining uncertainty。这套方法的精髓是**最小充分原则**范围由证据决定搜索在答案和置信度边界确立后立刻停止而不是搜到满意为止。它与此仓库 templates/AGENTS.md 中仅当检索、检查、诊断、测试或工具使用确实能改善正确性、所需引用、验证或安全执行时才持续使用核心请求能以充分证据回答后立即停止的指导原则一脉相承。四、证据纪律三分类标签体系这是analyze技能最核心的方法论。SKILL.md 要求对每一个实质性的论断打上三类标签之一标签含义判定标准Evidence证据代码、测试、生成产物、配置或文档直接展示的事实有直接可见的出处Inference推断从已引用的证据中推理得出的结论有引用的证据作为前提Unknown未知仓库证据无法判定的内容仓库内没有可依赖的证据并附三条硬性纪律偏好直接路径与独立佐证而非上下文线索Prefer direct paths and independent corroboration over contextual clues绝不要把猜测包装成证据或推断Never present guesses as evidence or inference绝不过度声称确定性never overclaim certainty。这一纪律在仓库测试中被逐字锁定src/hooks/tests/analyze-skill-contract.test.ts 断言了## Evidence discipline标题、三类标签的完整定义文本以及Never present guesses as evidence or inference、never overclaim certainty、Prefer direct paths and independent corroboration等句子的存在——也就是说只要有人删改这些纪律条款CI 会立刻失败。为什么需要三分类在分析型 AI 会话中最大的风险是自信的猜测。三分类强制把我看到了什么Evidence、我从看到的东西里推断出什么Inference和我还没搞清楚什么Unknown分开让下游的规划者、执行者和审阅者能够准确评估结论的可信度而不是把推断当作事实继续叠加。这与 OmX 整体的 Prefer evidence over assumption; verify before claiming completion见 templates/AGENTS.md原则完全一致。五、输出契约固定结构与排序综合SKILL.md 要求先回答被问的问题然后使用如下固定结构输出Question问题简要重述被问的问题。这一小节确保输出与用户提问严格对齐防止答非所问。Ranked synthesis排序综合以表格形式给出按证据支撑度排序的候选解释通常 13 行RankExplanationConfidenceBasis1...High / Medium / Lowstrongest supporting evidence2...High / Medium / Lowwhy it trails3...High / Medium / Lowwhy it remains possible这张表是分析的结论页第一行是证据最强、置信度最高的解释后续行说明为什么它们靠后或仍有可能。Basis列必须落到最强证据上而不是泛泛而谈。Evidence证据以path/to/file:line-line格式列出直接观察与佐证观察- path/to/file:line-line — direct observation. - path/to/file:line-line — corroborating observation.这里要求给出精确的文件与行号范围便于任何人复核。Inference推断证据最强烈地暗示了什么为什么较弱的替代解释被降级。这一节展示从证据到结论的推理链路以及排序决策的理由。Unknowns / limits未知与限制仓库没有确立的内容在有用时指出下一个最具区分度的只读探测the next discriminating read-only probe。最后这一节是诚实的边界声明没有证据支撑的部分明确标注为未知并给出下一步最小探测方案为后续轮次或人工介入留下清晰的入口。同样仓库测试 src/hooks/tests/analyze-skill-contract.test.ts 逐一断言了### Question、### Ranked synthesis、表格表头| Rank | Explanation | Confidence | Basis |、### Evidence、### Inference、### Unknowns / limits以及path/to/file:line-line格式的存在把输出契约变成了可测试的不可变约定。六、停止条件证据足够即止SKILL.md 的停止条件Stop conditions给出了三条收尾规则不编辑文件、不跑实现通道、不做证据支撑不了的推荐Do not edit files, run an implementation lane, or make recommendations the evidence cannot support答案与置信度边界确立后不再继续搜索Do not continue searching after the answer and confidence boundary are grounded证据不足时明确报告限制而不是制造确定性If evidence is insufficient, report the limit explicitly rather than manufacturing certainty。这三条把分析锁死为只读动作analyze轮次结束时工作区状态与开始时完全一致如果证据不足以给出结论那么诚实的未知 下一步探测就是合格交付物绝不硬凑答案。七、触发机制显式调用与关键词路由在 OmX 中analyze既可以通过显式技能调用$analyze触发也可以通过自然语言关键词自动路由。路由表位于 src/hooks/keyword-registry.ts{ keyword: $analyze, skill: analyze, priority: 7, guidance: Activate deep analysis workflow }, { keyword: investigate, skill: analyze, priority: 7, guidance: Activate deep analysis workflow },关键词触发定义KeywordTriggerDefinition包含keyword、skill、priority、guidance四个字段$analyze与investigate均以优先级 7 映射到analyze技能。getExplicitSkillDefinition(token)会从这些定义构建规范化的显式技能查找表compareKeywordMatches则按优先级 → 关键词长度 → 字典序的顺序决定多关键词命中时的路由优先级。上层契约在 templates/AGENTS.md 的关键词检测keyword detection章节中说明自然语言路由短语可能映射到某个工作流例如analyze/investigate→$analyze用于带排序综合、明确置信度和具体文件引用的只读深度分析同时强调裸技能名本身不会激活技能技能名激活需要显式$skill调用并规定详细关键词清单保留在 src/hooks/keyword-registry.ts不要在其他地方重复。路由契约测试路由行为由 src/hooks/tests/analyze-routing-contract.test.ts 锁定它验证了三点analyze通过模板 AGENTS 表面中的$analyze路由且描述包含 read-only deep analysis with ranked synthesis, explicit confidence, and concrete file references若仓库根存在 AGENTS 表面其分析路由必须与模板保持一致analyze不得再路由到prompts/debugger.md或兼容性别名——这意味着analyze是一个独立的分析入口而不是 debugger 的别名或历史兼容层。八、从文档到实践一次典型的$analyze会话把以上要素串起来一次标准的$analyze调用流程如下触发用户说investigate why X is happening或直接$analyze ...关键词检测或显式调用将路由到 analyze 技能加载 skills/analyze/SKILL.md定义范围重述问题圈定证据边界并明确不做修改最小取证找出最可能回答问题的源码、测试、配置与文档先读直接代码路径和契约边界只追到必要处排序综合比较多种可能解释按证据支撑度排序标注未决点结构化输出按Question → Ranked synthesis表格→ Evidence文件:行号→ Inference → Unknowns / limits组织回答收尾证据足够即停止不足则报告限制并给出最小的只读探测建议全程不触碰工作区文件。实际操作提示安装后技能会随omx setup同步到运行时技能目录/skills可浏览可用技能清单若钩子上下文不可用例如未注入路由上下文显式$analyze调用按从左到右顺序执行并覆盖隐式关键词见 templates/AGENTS.md与explore仓库内文件/符号查找、researcher外部文档/参考收集等角色的分工是analyze负责跨文件的因果与权衡解释单文件查询应走更轻量的路径插件镜像版本的同一技能位于 plugins/oh-my-codex/skills/analyze/SKILL.md两者内容一致供发布与安装校验使用。九、为什么这套契约值得借鉴analyze技能的价值不在于多了一个命令而在于它把分析这个最容易失真的 AI 行为用三层机制硬化了行为边界只读、不实现、不规划从入口处杜绝分析着分析着就开始改代码的漂移证据纪律Evidence / Inference / Unknown 三分类 禁止猜测 禁止过度声称让每个结论都可复核、可审计输出与测试契约固定结构与file:line引用格式被写进测试断言任何退化都会在 CI 中被捕获。对于任何希望在 AI 工作流中获得可信分析的组织这套只读范围 证据分类 排序输出 诚实停止的模式都是一个可以直接复用的范本。输出文章【免费下载链接】oh-my-codexOmX - Oh My codeX: Your codex is not alone. Add hooks, agent teams, HUDs, and so much more.项目地址: https://gitcode.com/GitHub_Trending/oh/oh-my-codex创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考