mcpField
A
agents-introspection

agents-introspection

github.com/paulrbergAgent 工作流102119 次安装今天更新
代码仓库

关于 agents-introspection

agents-introspection 是面向 Claude Code 和 Codex CLI 的技能,用于检查相关项目对话记录中的重复风险。它区分直接观察与推断,并据证据建议最小的长期干预措施。

主要功能

  1. 01检索相关 Codex 和 Claude Code 对话记录
  2. 02在限定范围内检查会话历史
  3. 03区分观察事实与推断
  4. 04依据证据建议预防性改动

适用场景

  1. 01评估任务是否存在重复失败风险
  2. 02修改项目指南前审查相关证据
  3. 03识别对话记录覆盖范围的缺口

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/paulrberg/agent-skills --skill agents-introspection

安装后在 Claude Code 中输入/agents-introspection确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
transcript-sources.md
scripts/
transcript_common.py
transcript-inspect.py
transcript-miner.py

详细介绍

Agent 反思

此技能不受协调机制约束:对于其声明的工作,跳过 ai-coord 检查。

支持的聊天宿主

执行任何工作之前,先识别当前聊天宿主。如果不是 Claude Code 或 Codex CLI,则停止并显示此错误: This skill only works in Claude Code or Codex CLI.

如果通过斜杠命令或美元符号调用已将这些说明加入对话,则直接遵循这些说明。在这种情况下,不要再通过技能工具调用此技能。

判断当前项目中此前由 Codex 和 Claude Code 完成的工作是否表明用户的任务存在复发风险。然后根据证据,建议最小且持久有效的干预措施。

成功标准:报告指出了所覆盖的会话记录范围,并区分观察到的行为与推断。报告采用一致的证据标准,并且要么提出具体的预防措施,要么说明为何没有充分理由进行持久性更改。

输入

  • <task>(必需):要评估的任务、决策、事件或工作流。如果未提供,但当前对话已清楚说明,则使用该任务。否则,请询问缺失的任务。

范围与权限

  • 检查元数据或 cwd 指向当前项目以及与用户任务存在实质关联的其他本地项目的 Codex 和 Claude Code 会话记录。你获准在无需询问用户的情况下读取其他相关项目的会话记录。根据任务上下文、明确提及的项目或路径、共同的更改或工作流,或会话元数据来确认关联性。不要仅因另一个项目有相同的基本名称或关键词,就扫描其历史记录。
  • 将当前项目的会话记录视为内部工作证据。若直接引文能显著提升报告质量,则应纳入报告。不要仅仅因为模型提供商可以看到这些内容,就对其进行概述或删节。切勿泄露凭据、安全机密或个人钱包地址。
  • 默认仅检查并报告。只有用户明确要求应用或实施修复时,才编辑 AGENTS.md 或技能。此时,应进行范围内最小的本地更改,并验证结果。
  • 切勿修改会话记录存储。在将会话记录证据放入公开或第三方内容之前,先进行外部披露审查,并移除无关的个人或客户数据、不适合公开的私有路径或代码库名称,以及无关的会话记录内容。仅在获得授权后才执行外部写入。

有界检索

阅读 references/transcript-sources.md。使用 pwd -P 确定当前项目。识别其他与任务相关的本地项目。从相关文件名、命令、工具、错误、包名、问题 ID 和技能名称中,选择 3–6 个简短且有区分度的关键词。

在 Codex 只读沙箱中,或 uv 无法写入其缓存时,跳过辅助工具。无论哪种情况,都直接使用参考文档中的 Manual Fallback,不要重试 uv run。

当用户或调用的技能设定了历史范围时,使用该范围替代下文默认的 --since、--max-sessions、归档范围和五条正文限制。历史范围可以指定时间窗口、会话数量、具体会话、归档会话或其他相关项目。不要扩大用户指定的范围。在 🗂 历史覆盖范围 中报告所应用的范围。

  1. 使用所选关键词,对当前项目及每个与任务相关的本地项目运行捆绑的挖掘工具;仅检索未归档会话,并指定 --since 60d、--excerpts 和 --max-sessions 8。将同义词编码为一个 OR 组关键词(--keyword 'a|b'),不要使用多个 --keyword 标志。--max-excerpt-bytes(默认值为 8192)限制摘录总大小。当 excerpts_truncated 为 true 时,对未提供摘录的候选项使用检查器。
  2. 将来源归属视为挖掘工具的不变量。挖掘工具仅根据来源原生的 cwd、目录和历史元数据为每个候选项分配一次归属,绝不根据转录内容分配。检查 ownership。只有当任务的回退归属(例如 turn_context.cwd)仍存在实质性歧义时,才拒绝候选项。挖掘工具默认排除归属证据冲突的候选项和当前会话,也会在相关性排序前排除已知的 guardian 审批会话。将候选项视为独立会话前,先检查 session_kind 和 parent_session_id。明确指定的 guardian 路径仍可通过检查器访问。
  3. 将挖掘工具的分数、主题、纠正、失败、验证、工具或 privacy_gaps 计数、已编辑的 excerpts 以及 started 或 modified 时间戳,仅作为候选项排序和初步筛查信号。这些都是启发式信息,绝不能单独作为证据。先通过捆绑的检查器摘要(scripts/transcript-inspect.py)查看相关性最高的最多五份转录正文。只有摘要不足时才打开原始正文。证据达到标准后即可提前停止。条件允许时,纳入一个结果相当且成功的会话。
  4. 如果缺少某个具体报告的事件,请先使用参考文档中的 Exact-Incident Fallback,再扩大时间窗口。两种辅助工具都可能遗漏长会话的中间部分。否则,使用更宽泛或 OR 组合的关键词重试一次。如果证据仍然薄弱,则移除 --since 再重试一次。如果未归档历史中仍无相关信号,则使用 --include-archived 再重试一次。
  5. 只有为解决相互矛盾的证据,或满足明确要求的穷尽式检索,才可超出这些限制。如果辅助工具失败,请使用参考文档中一个限定于项目范围的手动回退方案。

如果有界回退检索仍找不到有用证据,请停止并报告覆盖缺口。缺少证据并不能证明失败从未发生。

对于异常冗长的搜索,仅在开始检索回退、发现改变了可能采取的干预措施,或搜索达到明确上限时,发送简短进度更新。使用以结果为先的句式,例如 🔎 正在扩大转录搜索范围 — <已核实的原因和上限> 或 ⏳ 正在检查归档会话 — <已核实的未归档/归档覆盖范围>。数量和覆盖范围的陈述必须依据挖掘工具或工具输出。不要叙述常规的转录阅读过程。

证据约定

在可恢复的情况下,根据该会话当时可用的 AGENTS.md 和技能说明评估历史行为。不要仅仅因为当前源代码树或 ~/.agents/skills、~/.claude/skills 下已安装的副本中包含某项规则,就推断 Agent 忽略或误用了该规则。如果对话记录无法确认当时的版本或可用性,请将其标记为未知,并对归因加以限定。

对于每个相关会话,只记录简洁、可审计的观察,内容包括:

  • 忽略或误读 AGENTS.md 或技能说明。
  • 工作目录、项目根目录、源路径或路径编码错误。
  • 编辑范围过广、无关改动、覆盖用户工作或破坏性命令。
  • 工具、Shell、解析、重试或验证错误。
  • 臆造的说法、含糊的报告,或缺少测试与检查。
  • 成功避免错误的做法。

将每项观察与当前任务关联,并将任何因果关系或重复性判断标为推断。指出冲突和证据覆盖不足之处,不要将其平均处理。

使用以下置信度等级:

  • 高:至少两个相互独立且相关的会话直接支持相同模式,且能证明该模式与当前任务相关。
  • 中:一个明确无歧义的相关会话支持该发现,或多个会话提供了不一致的支持。
  • 低:只有间接、含糊或启发式信号。不要根据低置信度证据建议持久性更改。

只有在至少两个相互独立的会话中出现相同故障,或一次明确无歧义的重大故障暴露了缺失的稳定不变量时,才进行持久性更改。将影响较低的个别情况作为人工防护措施。

父会话及其子会话合并计为一个重复性证据来源。守护者审批会话可能包含复制的父会话历史。不得将复制的历史计为另一次独立事件。缺少 lineage 元数据时,标记为 session_kind: unknown。类型未知或缺少父会话 ID,并不能证明会话彼此独立。将这些会话分别计数前,须通过其他证据验证其独立性。

选择最小干预

  • 如果经验教训稳定、适用于整个项目,并且对该范围内的 Agent 有帮助,则更新 AGENTS.md。
  • 如果故障明确属于现有技能的工作流,则更新相应技能。
  • 只有当某项可复用流程在多个项目或仓库中反复出现时,才提出新技能。
  • 只有在其他情况下必须重复实现确定性发现、解析或验证逻辑时,才添加脚本。
  • 对于一次性错误、证据薄弱或已明确写出的规则,不建议进行持久性更改。应报告风险和人工防护措施。

报告并停止

只读工作以 ### 🔎 Introspection complete — <intervention or coverage-gap outcome> 开头;如果明确要求的修复已写入,则以 ### ✅ Introspection fixes applied — <outcome> 开头。之后只报告以下内容:

  1. 🗂 Historical coverage:项目路径、检查过的来源、使用的回退方式,以及检查过的会话。
  2. 🔎 Findings:包含置信度、观察到的证据、推断、相关性和干预措施的精简表格。置信度必须与严重程度或影响明确区分。
  3. 🛡 Durable recommendations:标明立即执行、后续考虑或不作更改,并说明目标及预防机制。
  4. 🧪 Validation and gaps:运行的命令、执行的检查、外部披露限制,以及缺失的证据。

如果明确要求了修复,请列出确切的变更文件和验证结果。当前任务有了证据支持的建议或明确的覆盖缺口后,就停止。不要为了增加示例或充实表述而继续挖掘历史。对话记录引用、路径、计数器、删节内容和 miner JSON 必须保持原样,不得修饰。

评论

支持 Markdown