multithink 是一个 AI 技能,用于将已经收集到的、针对同一 artifact 或同一问题的多份独立阅读意见进行裁决,形成按引用证据分类的发现记录,而不是按有多少阅读者意见一致来分类。其核心理念是:证据支持程度决定分类,投票、多数、模型分布或意见数量均不参与分类决策。
用途与目标
该技能接收独立的 round-0 阅读及其来源信息,检查其中的证据,并保留每个发现背后的审计轨迹。目标是返回一组扁平的最终发现记录,以及一份完整的可审计报告,报告中逐字包含所有 round-0 原始阅读。分类描述的是证据支持情况,绝不代表投票结果或对真实性的保证。
工作流程
首先,界定 artifact 或问题,接收带有来源信息的独立 round-0 阅读。不要自行启动评审者;如果缺少输入,应请求补充,而不是编造独立阅读。记录目标版本、可用覆盖范围和可选交换的支出限制。
其次,在解释之前,逐字节保留每个 round-0 原始阅读。从该技能所在文件夹运行 node scripts/segments.mjs pack <report> <round0-file>... 命令,将每个原始阅读的原始字节复制到报告中各自带分隔符的段中,标签放在段外,不改变编码、空白或行尾,并生成 <report>.index.json,列出每个原始阅读的来源路径、标签、字节偏移、字节长度和 sha256。退出码:0 表示打包成功,2 表示用法错误或原始文件不可读。不得对段进行摘要或在交换后覆盖段,报告的其余部分应在段之后写入,以保持记录的偏移量有效。如果原始字节不可用,应请求原始文件,并将保留状态标记为未验证。
然后,将每个不同的断言或弃权提取为一条记录,使用五个字段:source、location、reproduction、counterevidence、independence。在记录旁注明发现及其类别。保持对立立场分别可见,合并重复项时保留每个来源。缺失信息应明确标注,绝不编造;不完整的记录保持为候选,不能提升为 supported。
接着,在引用材料的位置检查该材料,并在安全且只读的情况下遵循复现步骤。识别哪些引用支持仍然成立,哪些引用反支持仍然成立。拒绝不支持所述立场的引用,并记录原因。对每个立场(包括无来源断言和弃权)应用“先断言后证据”规则。
可选地,在声明的支出限制内,为有争议的证据准备一轮交换。只传播有争议的引用、位置和复现步骤。绝不传播其他评审者的文字、信心、立场、立场计数或完整输出。调用者返回独立获得的响应;不要启动评审者。在报告中保留精确的交换载荷和响应。按相同规则重新分类,并记录每个变更发现的先前类别、最终类别以及导致变更的具体证据。仅文字修订不能改变类别。
当某一轮没有提供新的独立证据时停止;意见一致不是停止条件。重复的断言或对同一支持的重复引用不是新的独立证据。最多只有一轮交换:交换之后即使有新证据到达也应停止,说明已达到上限,并将未解决的发现保持为未解决。如果没有进行交换,报告 round-0 分类并说明未发生交换。
最后,输出扁平的最终记录和完整的可审计报告。报告包括候选发现、每个类别的证据理由、面板分裂来源信息、证据拒绝原因、交换载荷和修订(如有)、停止原因,以及所有 round-0 原始阅读的逐字内容。标记未解决的问题以及解决它们所需的证据,但不修复目标。
发现记录字段
每个发现都携带五个字段;发现陈述、类别和来源注释是元数据,不能替代任何字段。
source:提供支持的外部文档标识符或目标 artifact,附带可检查的引用。某个思维体的断言不是证据。当没有引用支持幸存时,应明确说明。
location:发现所涉及的确切文件与行号、段落或具体声明。
reproduction:另一个读者可以重复以检查证据的命令、段落查找或查询。将不可用或不安全的复现记录为缺失,而不是成功。
counterevidence:可能推翻该发现的内容、已检查的内容以及找到的引用反支持;区分“已查找但未找到”与“未查找”。
independence:支持是如何到达的:外部材料、从目标重新推导,或仅断言。记录共享来源和未知依赖。将模型、角色和视角分布记录为覆盖事实,绝不作为权重或数字独立性评分;调用者按失败模式拆分的阅读与其他阅读一样裁决。
先断言后证据规则
按顺序对每个立场应用以下四个步骤,仅使用幸存的引用证据:
未断言任何立场或仅回答“无法确定” = insufficient(不足)
有引用支持且有引用反支持的断言 = contested(有争议)
有引用支持且无引用反支持的断言 = supported(受支持)
没有幸存引用支持的断言 = unsupported(不受支持)
明确的“无法确定”回答是弃权,不是断言。已断言但无来源的立场是 unsupported,绝不是 insufficient。contested 保留其支持成分:它是由引用证据支持和反对的,而不仅仅是因为读者意见不一致而未解决。
规则
只读:检查目标和引用证据;不要编辑 artifact、执行有变更的复现或实施修复。生成请求的记录和报告是输出操作。
用户调用控制广泛评审的费用。接收已完成的阅读;不要独立委托更广泛的运行。
聚合现有阅读,最多进行一轮受限的证据交换。不要执行全新的盲冷阅读,不要按不同失败模式将 artifact 拆分为多个视角,也不要选择使用多少个视角。无需安装其他技能。
panel-split 仅作为来源信息记录谁持有哪个立场。它绝不进入类别。将其保留在报告中,并与基于证据的类别理由分开。
任何原始计数、不同来源计数或多数都不是类别输入、信心、权重、排名或决胜因素。模型分布描述覆盖范围,而不是独立正确性;不同来源可能共享错误。将单模型运行标记为仅覆盖。
有来源的少数派在无来源的反对下保持 supported,并标注 panel-split。将反对的无来源断言报告为基于其自身证据的 unsupported。如果双方立场都有幸存的引用支持,则保留双方并将争议声明分类为 contested。
报告绝不因为面板同意而说某个发现是真实的。同意既不验证证据,也不提供缺失的支持。仅填写记录并不能确立来源的有效性。
验证
每个最终发现都有 source、location、reproduction、counterevidence 和 independence;缺失必需信息的保持为明确候选,而不是受支持的发现。
仅对每个发现的断言和幸存引用重新应用四步规则。确认无来源断言为 unsupported,弃权为 insufficient,双方引用证据为 contested 并保留其支持。
检查每个类别理由和修订:没有计数、多数、来源分布或 panel-split 进入类别决策、信心、权重、排名或决胜因素。确认有来源的少数派支持在无来源反对下幸存。
从该技能所在文件夹运行 node scripts/segments.mjs verify <report> <report>.index.json <round0-file>...,按打包顺序传入收到的 round-0 原始文件。它按记录的字节偏移和长度重新提取每个段,并将 sha256 与索引核对,将字节与原始文件核对。退出码:0 表示每个段字节完全相同,1 表示不匹配(按段命名),2 表示用法错误或输入不可读。要求退出码为 0,而不是视觉相似。没有原始文件时,仅检查摘要;将任何不可用的比较报告为未验证。
检查记录的外发交换载荷:只传播了有争议的引用、位置和复现步骤,且最多一次。每个类别变更都指明导致变更的证据。如果没有发生交换,应说明,而不是声称交换检查通过。
确认两个输出都存在,停止原因遵循证据规则或交换上限,未解决的发现保持可见,且目标未被修改。