agentsclimarketplace

Doc compact

Skill x0c/doc-skills/doc-compact

文档整理与压缩。核心职责是在不丢行为信息的前提下压缩冗余文档——删复述、删死链、删历史沿革、收敛重复提醒;配套完成结构整理(纠正文档放置、重建根 AGENTS.md 索引、补 inline 指针、规范 CLAUDE.md 为单行 @*.md、判定并拆分过大项目的二级索引)和全局文档管理规范的检查/安装。当文档冗余膨胀、索引失效、AGENTS.md 膨胀、CLAUDE.md 混入杂质,或需要确认全局规范是否写清文档管理模式时使用。From its SKILL.md

Install
npx -y skills add x0c/doc-skills --skill doc-compact

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 5 commands, including `for f in ~/.claude/CLAUDE.md ~/.codex/AGENTS.md ~/.codex/instructions.md ~/.config/opencode/AGENTS.md; do [ -f "$f" ] && readlink -f "$f" 2>/dev/null || echo "$f" done | sort -u` and 4 more.

SKILL.md

7.3 KB, ~2.7k tokens by cl100k_base, as published. Nobody here has run it

doc-compact

执行前先探测实际生效的文件,不硬编码路径。 <DOC_INIT_DIR> 默认与本 skill 同级:<本 SKILL.md 所在目录>/../doc-init

流程

Step 1 校验全局规范 → Step 2 只读审计 → Step 3 判定二级索引 → Step 4 修复结构 → Step 5 压缩(核心,不可跳过)→ Step 6 验证


Step 1 — 全局规范

目标文件仅限全局 AI 指令文件,绝不能传项目 AGENTS.md

# 探测全局 AI 指令文件真身(软链则跟到真身)
for f in ~/.claude/CLAUDE.md ~/.codex/AGENTS.md ~/.codex/instructions.md ~/.config/opencode/AGENTS.md; do
  [ -f "$f" ] && readlink -f "$f" 2>/dev/null || echo "$f"
done | sort -u

对每个存在的全局文件运行:python3 <DOC_INIT_DIR>/scripts/insert_doc_governance.py <全局文件路径>[跳过] = 已最新;[新增/升级] = 已写入,扫一遍其余章节删旧约定。 <DOC_INIT_DIR> 不存在时:逐条对照 references/standard.md 手工比对,报告中注明「未自动校验」。

禁止把当前项目的 AGENTS.md 传给 insert_doc_governance.py——项目 AGENTS.md 存放项目规范,不是全局 AI 指令文件,写入会污染项目文档。

Step 2 — 只读审计

运行 python3 scripts/audit.py [项目根],一次跑完机器可判的检查:

  • A CLAUDE.md 全单行 @*.md
  • B 无悬空 @AGENTS.md
  • C 无裸 OVERVIEW.md/INDEX.md;具名 <DOMAIN>_INDEX.md 合法
  • D AGENTS.md 行数(> 500 行 → Step 3)
  • E 无孤儿文档(docs/specs 下未被根 AGENTS.md ∪ README ∪ *_INDEX.md 引用)
  • F 文件命名合规(排查 YYYY-MM-DD-*,review *-review.md
  • G 预置折叠建议(排查 / Review 台账 ≥3 篇,建议性)
  • H doc-init 联动:反向全局引用、领域地图段存在性 → 影响 Step 4/5 保护边界
  • I §2.5 路径存活性:对含 §2.5 物理路径速查 的 KB,ls 验证每行路径是否仍存在;STALE 路径纳入 Step 5 清理(详见 compression-guide.md §2.5 路径存活性验证)

人工补充检查:文档放置是否错位、是否冗余膨胀、是否存在易变事实跨文档复述(grep -rn "具体数字" docs/,命中 >2 处即疑似)。

受保护段

H 显示 domain_map_present=True 时,根 AGENTS.md 里的 ## 领域地图(doc-init)## 待补充知识库(doc-init backlog) 两段原样保留,不压缩、不折叠、不删除。

Step 3 — 判定二级索引

默认单层平铺。能不做就不做——多一跳,漏读概率累加。

两条独立触发(满足其一即应折叠):

① 规模驱动:导航占 AGENTS.md ≳ 1/2,或规则被挤到文件后半(主判据);兜底:> 500 行且导航占相当篇幅。 拆法:根只保留「任务域索引入口」(每域一行),明细下沉到具名 <DOMAIN>_INDEX.md

② 类型驱动

  • 排查记录 ≥3 篇 → 折叠到 docs/troubleshooting/TROUBLESHOOTING_INDEX.md
  • Review 台账 ≥3 篇 → 折叠到 docs/reviews/REVIEW_INDEX.md
  • 强路由须含「何时跳过 / 是否权威源」,不能只是干瘪文件名

Step 4 — 修复结构

  • CLAUDE.md:非单行 → 改回 @AGENTS.md;只剩注入块无内容 → 连同悬空 CLAUDE.md 一并删
  • 文档命名/放置:对齐规范(知识库/指南 SCREAMING_SNAKE_CASE,设计/review kebab-case,排查 YYYY-MM-DD-*);移位/改名先列清单确认,再搜全仓引用同步
  • 导航描述:逐条检查是「何时该读」还是「它讲了什么」,后者路由效果差,改写为前者;触发条件覆盖全部任务类型(改/新建/评审/排查/优化)
  • 索引重建:只列真实文档,按领域聚类、高频在前;删死链/空占位;受保护段跳过
  • 注入块/裸索引:① 读块内容识别规则;② 对照 AGENTS.md 逐条判断是否已覆盖;③ 未覆盖的提炼后并入;④ 删整个注入块

Step 5 — 压缩(核心交付,不可跳过)

完整压缩判据和操作指南见 references/compression-guide.md,执行前必读。

不可静默跳过:每篇 docs/specs 文档都必须逐篇过一遍判据。收工汇报必须给出逐篇账目(前 N 行 → 后 M 行,或「已审无可压,原因:xxx」)。

执行分级

  • 低风险,直接做:复述 / 死链 / 历史沿革 / 空占位 / 重复提醒 / 行号引用(「第 N 行」「Line N」→ 先 Read 确认方法名,再替换为 类名.方法名() 锚定)/ 形式转化(叙述段→调用链/表格/决策表,信息不减只是换形式)(汇报列出即可)
  • 高风险,先列清单确认:删整篇、成段重写、拆并索引结构、删改含数字/边界条件正文、删 §0/§1.5/§2.5 章节

漂移检查(文档已有压缩标识时):若文档已有 <!-- 该文档整理/压缩于 YYYY-MM-DD --> 且距今 < 30 天,默认跳过(报告中标"近期已压")。若仍需压缩(代码变动导致新增内容),执行后额外检查:标识符是否被泛化、数字是否被抹除、因果链是否断裂、验证命令是否还能执行(详见 compression-guide.md 漂移风险章节)。

压缩标识:每篇处理完后,在文件真正末尾追加(或更新日期): <!-- 该文档整理/压缩于 YYYY-MM-DD --> 用脚本批量写入,见 compression-guide.md。

Step 6 — 验证

python3 scripts/audit.py <项目根> --compact-date <今日 YYYY-MM-DD>

检查 I(压缩标识硬闸门)必须 压缩缺标识=0 才能收尾。任何缺标识文档 = 本轮漏审,补完重跑。 H 的 domain_map_present / backlog_present 不应因本次审计由 True 变 False。 审计项 I 的 STALE 路径若已在 Step 5 中清理,验证时应为 0;否则说明遗漏。

§0 目录索引完整性:含 KB 模板的文档(*_KNOWLEDGE_BASE.md)应有 §0 目录索引。缺失的在收尾报告中标注为"建议下次 doc-update 补充",不阻塞本次收工。


安全边界

  • 不裁定内容真相:两份文档结论矛盾时,不自行判定谁对,报告里记录并请用户裁定
  • 不碰:第三方/vendored 项目、构建产物、备份目录、git worktree

参考文件

文件何时读
references/compression-guide.mdStep 5 执行前:压缩判据、文档类型压缩力度表、高频陷阱与修复脚本
references/standard.mdStep 2 拿不准判定基准时:十一条标准完整说明、易变事实处理细则
scripts/audit.pyStep 2 / Step 6 自动审计脚本(Python 跨平台,兼容 Windows,替换原 audit.sh)

What ships with it: 3 files

24.9 KB alongside SKILL.md, 1 of them executable

references/

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.