mcpField
R
recon

recon

github.com/prathamdby开发6508 次安装3 天前更新
代码仓库

关于 recon

Recon 是用于绘制 Git 仓库结构并维护仓库外精简报告的 Skill,报告中的结论附有证据。它可读取、修补或重建地图,并核验仓库身份及提交变化。

主要功能

  1. 01读取、修补或重建仓库地图
  2. 02跨 worktree 核验仓库身份
  3. 03跟踪提交变化与未提交路径
  4. 04保存带证据的章节
  5. 05恢复中断的映射任务

适用场景

  1. 01查看已保存的仓库地图
  2. 02记录陌生代码库结构
  3. 03在提交变更后更新地图
  4. 04继续中断的映射任务

安装

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

$npx skills add https://github.com/prathamdby/skills --skill recon

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

附带文件references/mapping.md

详细介绍

Recon

路由与记忆

默认:修补现有记忆,否则冷启动绘制地图。“读取现有报告” 或“显示已保存的地图”会选择读取,绝不刷新或重建。“刷新”、 “重建”或“从头开始”会选择重建。指定的区域是重点。 读取/重建或重建/修补的措辞相互冲突时,状态为 BLOCKED。

将 <anchor> 解析为此技能的绝对目录;记忆保存在 <anchor>/memory/ 中,位于目标仓库之外。解析仓库根目录、HEAD、脏路径和真实的绝对 Git 公共目录。共享检出键为 <label>-<hash8>.md:对公共目录计算 SHA-256;取八位数字。 对于 .git,标签是其父目录的基本名称,否则是其自身的基本名称。

先尝试该键,再尝试对当前根目录和 git worktree list --porcelain 中主检出根目录进行哈希计算得到的旧版键。对每个候选项,验证其 frontmatter 中的 repo 是否解析到同一公共目录。仅 SHA 匹配不能证明仓库身份。无法验证身份时,状态为 BLOCKED。 优先使用共享键;多个旧版候选项的 head 不同时,必须明确指定路径。 提供的报告路径也必须通过相同的身份检查。

Frontmatter:repo(主检出根目录)、完整提交 head、ISO 格式的 updated。 章节:布局、入口点、模块、数据流、命令、约定、 注意事项、证据。每项声明都要引用证据;每个章节最多十个项目,总计最多 200 行。验证后,写入同级 .tmp 文件,再通过重命名原子替换。

1. 定位

记录 route | memory | stored head | HEAD | dirty | current | pending | terminal。 对于读取,仅打开现有记忆:不创建目录、台账或快照。 对于绘制地图/重建,在 <memory>.ledger 中持久化台账;每处理一项后都通过原子重命名写入;成功后删除台账。路由和候选项确定后即完成。

2. 读取或绘制地图

**读取:**返回已保存的地图,并附上快照路径/日期/head、覆盖范围和脏状态叠加信息。比较存储的 head 与 HEAD;披露过时或无法解析的元数据,但不要修复元数据,也不要检查源代码来刷新声明。没有报告时,返回 NO_REPORT,并列出搜索过的路径。已展示已保存的地图及其局限,且未更改任何文件时,以 READ 完成。

**绘制地图:**冷启动/重建探索或已提交的热漂移情况,使用 references/mapping.md。head 缺失或无法解析时,采用冷启动流程。复用已验证的旧版记忆,但将新快照写入共享键;保留旧版文件不变。每个章节都有证据或标注 None found,且符合限制,并且存储的 head 等于当前 HEAD 时,即完成。

3. 恢复并报告

中断后,重新计算 HEAD 和更改路径;如果台账不同,则重新开始受影响的工作。从第一个待处理项目继续。在对话中展示地图,标明重建、修补或仅具代表性的章节;引用其路径、重点、漂移、未验证区域和脏状态叠加信息。热地图以 Drift since last recon 结尾。披露每项声明的覆盖范围后即完成。

终态:READ、NO_REPORT、SUCCESS、BLOCKED。写入时,存储的 head 始终指向一个真实提交。记忆是地图,不是清单或历史记录。

评论

支持 Markdown