mcpField
L
ln-100-documents-pipeline

ln-100-documents-pipeline

github.com/levnikolaevich文档处理584479 次安装2 天前更新
代码仓库

关于 ln-100-documents-pipeline

ln-100-documents-pipeline 是编排技能,通过协调专门的文档工作者来建立项目文档体系。它先检查现有文件并征求确认,再验证生成内容、清理重复项并检查交叉链接。

主要功能

  1. 01按顺序协调文档技能
  2. 02创建前检查现有文档
  3. 03生成项目、参考、任务和测试文档
  4. 04执行最终文档质量检查
  5. 05清理重复项并验证交叉链接

适用场景

  1. 01为新 IT 项目建立文档体系
  2. 02保留现有文件并补齐缺失文档
  3. 03通过单一编排工作流生成文档
  4. 04生成后查找孤立文件和失效交叉链接

安装

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

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-100-documents-pipeline

安装后在 Claude Code 中输入/ln-100-documents-pipeline确认已加载。

包含的文件

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

references/
coordinator_runtime_contract.md
coordinator_summary_contract.md
docs_generation_summary_contract.md
docs_pipeline_runtime_contract.md
docs_quality_contract.md
documentation_creation.md
legacy_detection_patterns.md
meta_analysis_protocol.md
references/scripts/docs-quality/
cli.mjs
references/scripts/docs-quality/lib/
manifest.mjs
rules.mjs
verify.mjs
references/templates/
adr_template.md
guide_template.md
manual_template.md
research_template.md

详细介绍

路径: 文件路径(references/、../ln-*)均相对于此技能目录。

类型: L1 顶层编排器 类别: 1XX 文档流水线

文档流水线(编排器)

此技能通过调用 1 个 L2 协调器和 3 个 L2 工作器,编排完整文档系统的创建。协调器(ln-110)会委派 5 个 L3 工作器处理项目文档;其他 L2 工作器负责参考资料、任务和测试领域。每个组件都会验证自己的输出,最终的文档质量验收关卡由编排器负责。

用途

顶层编排器,可通过一次调用创建完整的项目文档系统。依次串联 ln-110 协调器和 ln-120/130/140 工作器,然后执行全局清理(去重、孤立文件报告、交叉链接验证)。

运行时契约

必须读取: 加载 references/coordinator_runtime_contract.md、references/docs_pipeline_runtime_contract.md、references/docs_generation_summary_contract.md

运行时系列:docs-pipeline-runtime

标识符:

  • docs-pipeline

阶段:

  1. PHASE_0_CONFIG
  2. PHASE_1_LEGACY_SCAN
  3. PHASE_2_CONFIRMATION
  4. PHASE_3_DELEGATE
  5. PHASE_4_QUALITY_GATE
  6. PHASE_5_CLEANUP
  7. PHASE_6_SELF_CHECK

组件摘要契约:

  • ln-110、ln-120、ln-130、ln-140 会写入或返回 docs-generation 封装
  • ln-100 将这些摘要和文档质量检查点作为编排的 SSOT

架构

ln-100-documents-pipeline (L1 Top Orchestrator - this skill)
|- ln-110-project-docs-coordinator (L2 Coordinator)
|  |- ln-111-root-docs-creator (L3 Worker) -> 5 docs
|  |- ln-112-project-core-creator (L3 Worker) -> 3 docs
|  |- ln-113-backend-docs-creator (L3 Worker) -> 2 conditional
|  |- ln-114-frontend-docs-creator (L3 Worker) -> 1 conditional
|  `- ln-115-devops-docs-creator (L3 Worker) -> 1 always + 1 conditional
|- ln-120-reference-docs-creator (L2 Worker)
|- ln-130-tasks-docs-creator (L2 Worker)
`- ln-140-test-docs-creator (L2 Worker - optional)

何时使用此技能

以下情况应使用此技能:

  • 启动新的 IT 项目,并需要一次性创建完整的文档系统
  • 使用自动化工作流,而不是手动调用多个工作器
  • 一次性创建完整的文档结构(AGENTS.md 为规范文件,CLAUDE.md 为导入存根 -> docs/)
  • 优先使用编排式 CREATE 路径,而不是手动串联技能
  • 需要自动全局清理(去重、孤立文件、整合)

替代方案:如果希望进行精细控制,可手动调用工作器:

  1. ln-110-project-docs-coordinator - 根目录和项目文档(协调 5 个 L3 工作器)
  2. ln-120-reference-docs-creator - reference/ 结构
  3. ln-130-tasks-docs-creator - tasks/README.md + 看板
  4. ln-140-test-docs-creator - tests/README.md(可选)

必须读取: 加载 references/docs_quality_contract.md。

注意:每个工作器都会在第 2/3 阶段验证自己的本地输出。编排器仍负责最终的文档质量清单、验证和修复循环,完成后才能继续清理。

工作流

此技能遵循一个包含 5 个阶段的编排工作流:旧版迁移(可选) -> 用户确认 -> 依次调用协调器和工作器 -> 全局清理 -> 摘要。


阶段 0:源文档清理(可选)

目标:检测非规范文档,规范化有用信息,并在生成前移除重复的文档路径。

触发条件:当仓库中已有规范目录结构之外的文档时,在流水线启动时运行。

流程:

0a. 检测非规范源文件:

  • 使用 references/legacy_detection_patterns.md 中的模式扫描项目,查找非标准文档:
    • 根目录下的 .md 文件:ARCHITECTURE.md、REQUIREMENTS.md、STACK.md、API.md、DATABASE.md、DEPLOYMENT.md
    • 非规范文件夹:documentation/、doc/、wiki/,或结构不正确的 docs/
    • README.md 章节:## Architecture、## Tech Stack、## Requirements 等
    • CONTRIBUTING.md 章节:## Development、## Code Style、## Coding Standards
  • 构建 source_manifest:包含 { path, detected_type, target_doc, confidence } 的列表
  • 如果未找到非规范文档 -> 跳至阶段 1

0b. 提取信息:

  • 对每个检测到的源文件:
    • 解析 Markdown 结构(标题、列表、代码块)
    • 应用特定类型的提取器(**必须阅读:**加载 references/legacy_detection_patterns.md):
      • architecture_extractor -> { layers[], components[], diagrams[] }
      • requirements_extractor -> { functional[], non_functional[] }
      • tech_stack_extractor -> { frontend, backend, database, versions }
      • principles_extractor -> { principles[], anti_patterns[] }
      • api_spec_extractor -> { endpoints[], authentication }
      • database_schema_extractor -> { tables[], relationships[] }
      • runbook_extractor -> { prerequisites[], install_steps[], env_vars[] }
      • infrastructure_extractor -> { servers[], domains[], ports[], services[], artifacts{}, cicd{} }
    • 评估内容质量(0.0-1.0)
  • 将结果存储在 source_notes 中

0c. 用户确认:

  • 显示检测到的非规范文件:
    Non-Canonical Documentation Detected:
    
    | File | Type | Confidence | Target |
    |------|------|------------|--------|
    | README.md (## Architecture) | architecture | HIGH | docs/project/architecture.md |
    | docs/ARCHITECTURE.md | architecture | HIGH | docs/project/architecture.md |
    | CONTRIBUTING.md (## Development) | principles | MEDIUM | docs/principles.md |
    
    Cleanup Options:
    1. NORMALIZE (recommended): Extract facts -> Archive -> Remove duplicate sources
    2. ARCHIVE ONLY: Backup without extraction
    3. SKIP: Leave non-canonical docs as-is (may cause duplication)
    
    Choose option (1/2/3): _
    
  • 如果用户选择 "1"(规范化):
    • 可选:"在将提取的信息并入规范上下文之前,是否先检查?(是/否)"
    • 确认:"是否继续清理并归档非规范文件?"
  • 如果用户选择 "2"(仅归档):
    • 确认:"是否将非规范文件归档到 .archive/?内容将不会被规范化。"
  • 如果用户选择 "3"(跳过):
    • 警告:"非规范文件将保留。这可能导致重复问题。"
    • 继续执行阶段 1

0d. 备份和归档:

  • 创建 .archive/source-docs-{timestamp}/ 目录
  • 结构:
    .archive/
    `- source-docs-YYYY-MM-DD-HHMMSS/
        |- README_cleanup.md          # Rollback instructions
        |- original/                  # Exact copies of non-canonical files
        |  |- README.md
        |  |- ARCHITECTURE.md
        |  `- documentation/
        `- extracted/                 # Extracted facts (for reference)
            |- architecture_content.md
            `- principles_content.md
    
  • 将所有检测到的源文件复制到 original/
  • 将提取的信息保存到 extracted/
  • 生成包含回滚说明的 README_cleanup.md

0e. 上下文规范化:

  • 根据提取的信息构建 SOURCE_DOC_NOTES:
    {
      "SOURCE_DOC_NOTES": {
        "architecture_notes": { "sections": [...], "diagrams": [...] },
        "requirements_notes": { "functional": [...] },
        "principles_notes": { "principles": [...] },
        "tech_stack_notes": { "frontend": "...", "backend": "..." },
        "api_notes": { "endpoints": [...] },
        "database_notes": { "tables": [...] },
        "runbook_notes": { "install_steps": [...] },
        "infrastructure_notes": { "servers": [...], "domains": [...], "ports": {} }
      }
    }
    
  • 仅将提取的信息作为辅助证据合并到协调器输入中
  • Worker 直接使用规范化的上下文字段和当前源信息;不存在仅适用于旧文档的分支
  • 优先级顺序:当前源信息 + 规范化的项目文档 > 模板默认值

0f. 清理(非规范文件):

  • 对于根目录级文件(README.md、CONTRIBUTING.md):
    • 不要删除
    • 使用 Edit 工具移除重复章节
    • 添加指向新位置的链接:
      • ## Architecture -> 替换为链接:[Architecture](docs/project/architecture.md)
      • ## Tech Stack -> 替换为链接:[Tech Stack](docs/project/tech_stack.md)
  • 对于独立的非规范文件(ARCHITECTURE.md、documentation/):
    • 删除文件(已备份)
    • 记录:"Deleted: ARCHITECTURE.md (migrated to docs/project/architecture.md)"
  • 清理空的非规范目录

输出:cleanup_summary { normalized_count, archived_count, skipped_count, source_doc_notes }

阶段 1:用户确认

目标:检查现有文件、说明工作流程并获得用户批准。

流程:

  1. 清理摘要(如果运行了阶段 0):

    • 显示:“已规范化 {N} 个非规范文档”
    • 显示:“已归档至 .archive/source-docs-{date}/”
    • 显示:“已使用规范化的源文档备注补充协调器输入”
  2. 预检(扫描现有文档):

    • 使用 Glob 工具检查所有可能的文件:
    • 根目录文档:AGENTS.md、CLAUDE.md、docs/README.md、docs/documentation_standards.md、docs/principles.md
    • 参考资料结构(5 项):docs/reference/README.md、docs/reference/adrs/、docs/reference/guides/、docs/reference/manuals/、docs/reference/research/
    • 任务文档(2 个文件):docs/tasks/README.md、docs/tasks/kanban_board.md
    • 项目文档(最多 8 个文件):docs/project/requirements.md、architecture.md、tech_stack.md、api_spec.md、database_schema.md、design_guidelines.md、infrastructure.md、runbook.md
    • 测试文档(2 个文件):docs/reference/guides/testing-strategy.md、tests/README.md
    • 统计现有文件与缺失文件
    • 向用户显示摘要:
      文档状态:
      已找到:X 个现有文件
      缺失:Y 个文件
      
      流程只会创建缺失的文件。
      现有文件将予以保留(不会覆盖)。
      
  3. 向用户说明将创建的内容:

    • 根目录 + 项目文档(AGENTS.md 规范文件 + CLAUDE.md 导入存根 + docs/README.md + documentation_standards.md + principles.md + 通过 ln-110-project-docs-coordinator 创建的 docs/project/)
    • 参考资料结构(通过 ln-120-reference-docs-creator 创建的 docs/reference/)
    • 任务管理文档(通过 ln-130-tasks-docs-creator 创建的 docs/tasks/)
    • 测试文档(通过 ln-140-test-docs-creator 创建的 tests/,可选)
    • 预计耗时:交互式对话需 15-20 分钟
  4. 询问:“是否继续创建缺失文件?(是/否)”

  5. 询问:“是否包含测试文档(tests/README.md)?(是/否)”

输出:文件扫描摘要 + 用户批准 + 测试文档偏好


阶段 2:依次调用协调器和工作者

目标:按顺序调用 L2 协调器和 4 个 L2 工作者,创建完整的文档系统。

流程(使用 Skill 工具自动调用):

2a. 创建根目录和项目文档:

  • 调用:Skill(skill: "ln-110-project-docs-coordinator") -> 自动
  • 输入:如果阶段 0 执行了清理,则传入规范化后的源笔记
  • 行为:协调器仅收集一次上下文,然后委派给 5 个 L3 工作者:
    • ln-111-root-docs-creator -> 根目录文档(AGENTS.md 为规范文档 + CLAUDE.md 存根 + docs/README.md + documentation_standards.md + principles.md)
    • ln-112-project-core-creator -> 3 份核心文档
    • ln-113-backend-docs-creator -> 2 份条件文档
    • ln-114-frontend-docs-creator -> 1 份条件文档(如果 hasFrontend)
    • ln-115-devops-docs-creator -> 2 份文档:1 份始终创建 + 1 份条件创建
  • 输出:根目录文档(AGENTS.md 规范文档 + CLAUDE.md @AGENTS.md 导入存根 + docs/README.md + docs/documentation_standards.md + docs/principles.md)+ 项目文档(docs/project/requirements.md、architecture.md、tech_stack.md、infrastructure.md + 条件文档:api_spec.md、database_schema.md、design_guidelines.md、runbook.md)
  • 存储:保存 ln-110 结果中的 context_store(包含供 ln-120 使用的 TECH_STACK)
  • 验证:每个 L3 工作者都会验证输出(SCOPE、元数据标记、顶部章节、维护情况)
  • 确认:继续之前,确认所有文档均已存在

2b. 创建参考结构和智能文档:

  • 调用:Skill(skill: "ln-120-reference-docs-creator") -> 自动
  • 输入:传入 ln-110 中的 context_store(TECH_STACK 支持智能文档创建)
  • 输出:docs/reference/README.md + adrs/、guides/、manuals/、research/ 目录 + 有充分依据的 ADR、指南和手册
  • 智能创建:仅为非平凡的技术选择创建文档(参见 ln-120 的依据规则)
  • 验证:ln-120 在阶段 2/3 中验证输出
  • 确认:继续之前,确认参考文档中心已存在

2c. 创建任务管理文档:

  • 调用:Skill(skill: "ln-130-tasks-docs-creator") -> 自动
  • 输出:docs/tasks/README.md + 可选的 kanban_board.md(如果用户提供 Linear 配置)
  • 验证:ln-130 在阶段 2/3 中验证输出
  • 确认:继续之前,确认任务 README 已存在

2d. 创建测试文档(可选):

  • 条件:如果用户在阶段 1 批准了测试文档
  • 调用:Skill(skill: "ln-140-test-docs-creator") -> 自动
  • 输出:tests/README.md(包含 Story-Level Test Task Pattern 的测试文档)
  • 跳过:如果答案为“否” -> 之后可手动运行 ln-140-test-docs-creator

2e. 从文档中提取技能(可选):

  • 条件:用户在阶段 1 批准了技能提取,或之后手动调用
  • 调用:Skill(skill: "ln-160-docs-skill-extractor") -> 自动
  • 输入:ln-110 到 ln-140 创建的所有文档
  • 输出:从过程性文档章节中提取的 .claude/commands/*.md 文件
  • 跳过:如果未获批准 -> 之后可手动运行 ln-160-docs-skill-extractor

输出:完成并验证由协调器和 4 个工作者创建的完整文档系统

工作者调用(必须)

**宿主技能调用:**必须委派调用 Skill(skill: "...", args: "...")。

  • Claude:严格按照所示调用 Skill 工具。
  • Codex:如果没有 Skill 工具,请在可用技能中找到指定技能,阅读其 SKILL.md,将 args 视为 $ARGUMENTS,执行该技能工作流,然后携带结果/产物返回此处。
  • 不要内联工作者逻辑,也不要在未执行目标技能的情况下将工作者标记为已完成。

TodoWrite 格式(必须)

开始之前,将所有调用添加到待办事项中:

- Invoke ln-110-project-docs-coordinator (pending)
- Invoke ln-120-reference-docs-creator (pending)
- Invoke ln-130-tasks-docs-creator (pending)
- Invoke ln-140-test-docs-creator (pending)
- Run Global Cleanup (Phase 3) (pending)
- Show Summary (Phase 4) (pending)

每项开始时标记为 in_progress;工作者成功返回后标记为 completed。


阶段 3:全局清理与整合

目标:删除重复内容和孤立文件,整合所有文档中的知识。

触发条件:仅在所有 worker 完成第 2/3 阶段验证后。

流程:

3a. 构建文档质量清单

在进行任何清理前,根据 worker 的输出创建一份规范化清单:

  1. 收集 ln-110、ln-120、ln-130 和 ln-140 的 created_files、skipped_files 和 quality_inputs
  2. 合并 quality_inputs.doc_paths 和 quality_inputs.owners,去重路径;如果任何 worker 未提供规范化返回契约,则立即失败
  3. 使用共享验证器写入明确的清单:
    node {skills_repo_root}/references/scripts/docs-quality/cli.mjs manifest \
      --project-root . \
     --files "AGENTS.md,CLAUDE.md,docs/README.md,docs/project/requirements.md" \
      --output docs/project/.audit/ln-100/docs-quality-manifest.json
    
  4. 将该清单作为所有第 3 阶段质量决策的唯一事实来源

3b. 运行集中式文档质量验证器

针对该清单运行共享验证器:

node {skills_repo_root}/references/scripts/docs-quality/cli.mjs verify \
  --project-root . \
  --manifest docs/project/.audit/ln-100/docs-quality-manifest.json \
  --output docs/project/.audit/ln-100/docs-quality-report.json

验证器检查项来自共享的文档质量契约/规则,包括:

  • 必需文档中的 SCOPE 标签
  • Maintenance 章节和标记
  • 禁止使用的占位符和泄露的模板元数据
  • 失效的内部链接
  • 不允许使用的代码围栏
  • 过时的行内日期
  • 非官方技术栈文档链接

关卡:继续第 3 阶段清理前,不得有任何 HIGH/CRITICAL 级别的问题。

3c. 有限次数的修复循环

如果验证器报告了 HIGH/CRITICAL 级别的问题:

  1. 第 1 轮——确定性的行内修复:
    • 添加缺失的 SCOPE 标签
    • 添加或补全 ## Maintenance
    • 在目标明确时规范化失效的内部链接
    • 更新过时的生成日期
    • 删除泄露的模板元数据和未解析的标记
    • 将非法的代码围栏替换为表格、命令或链接
  2. 第 2 轮——按负责人范围进行语义修复:
    • 按 quality_inputs.owners[path] 对剩余问题分组
    • 仅针对其文件中的限定范围问题,重新调用对应的 worker
    • 不要重新运行无关的 worker
  3. 每轮修复后重新运行验证器
  4. 总共最多进行 2 轮修复
  5. 如果仍有任何 HIGH/CRITICAL 级别的问题,则让流水线失败,不要输出低质量文档

在第 5 阶段的最终输出中记录验证器摘要和文档注册表输出。

3d. 扫描重复内容

  1. 读取 docs/ 中的所有 .md 文件

    • 使用 Glob 工具:pattern: "docs/**/*.md"
    • 保存所有文档文件的列表
  2. 识别重复章节:

    • 对每个文件:
      • 读取文件内容
      • 提取章节标题(##、###)
      • 提取章节内容(标题之间的文本)
    • 跨文件比较章节:
      • 如果 2 个或更多章节具有:
        • 相同标题(不区分大小写)
        • 内容相似度 >80%(简单的词语重叠检查)
      • 标记为重复内容
  3. 确定规范版本:

    • 规范位置规则:
      • “Development Principles” -> principles.md(始终为规范版本)
      • “Testing Strategy” -> testing-strategy.md(始终为规范版本)
      • “Linear Configuration” -> tasks/kanban_board.md(始终为规范版本)
      • 对于其他重复内容:保留在首先遇到的文件中(按字母顺序)
  4. 删除重复内容:

    • 对于每个重复章节:
      • 使用 Edit 工具从非规范文件中删除
      • 使用 Edit 工具添加指向规范位置的链接:
        规范来源:[Development Principles](../principles.md#development-principles)
        
    • 统计删除的重复内容数量
  5. 记录结果:

    • “已删除 {count} 个重复章节”
    • 列出:“{section_name} 已从 {file} 中删除(规范版本:{canonical_file})”

3e. 报告意外文件(仅供参考)

  1. 列出 docs/ 中的所有 .md 文件

    • 使用 Glob 工具:pattern: "docs/**/*.md"
  2. 根据预期结构检查(worker 创建的文件 + 用户创建的参考文档)

  3. 报告结果(不要移动/删除/归档):

    • 列出意外文件并附上提示信息
    • 由用户决定如何处理
    • 记录:“发现 {count} 个意外文件(不在预期结构中)-> 列出供用户审查”

3f. 整合知识

  1. 识别分散的信息:

    • 已知模式:
      • Linear 配置分散在:kanban_board.md + tasks/README.md
      • 开发原则分散在:AGENTS.md + principles.md + architecture.md
      • 测试信息分散在:testing-strategy.md + tests/README.md + architecture.md
  2. 针对每个分散的概念:

    • 确定唯一可信来源(SSoT):
      • Linear 配置 -> kanban_board.md
      • 开发原则 -> principles.md
      • 测试策略 -> testing-strategy.md
  3. 更新非 SSoT 文件:

    • 使用 Edit 工具,将重复内容替换为链接:
      Canonical source: [Linear Configuration](../tasks/kanban_board.md#linear-configuration)
      
    • 记录整合数量
  4. 记录结果:

    • “已整合 {count} 项分散的概念”
    • 列出:“{concept} 已整合至 {SSoT_file}”

3g. 交叉链接验证

  1. 扫描所有 .md 文件中的内部链接:

    • 对每个文件:
      • 读取内容
      • 提取所有 Markdown 链接:[text](path)
      • 筛选内部链接(相对路径,不含 http://)
  2. 验证链接目标是否存在:

    • 对每个链接:
      • 解析相对路径
      • 检查目标文件是否存在(Glob 工具)
      • 如果缺失:标记为失效
  3. 修复失效链接:

    • 对每个失效链接:
      • 如果目标已归档:将链接更新为归档路径
      • 如果目标从未存在:移除链接(转换为纯文本)
    • 记录修复数量
  4. 添加缺失的关键链接:

    • AGENTS.md -> docs/README.md:
      • 读取 AGENTS.md
      • 检查是否链接到 docs/README.md
      • 如果缺失:在“文档中心”部分添加
    • docs/README.md -> 各部分 README:
      • 检查是否链接到 project/、reference/、tasks/、tests/ 的 README
      • 如果缺失:添加
    • 记录新增链接数量
  5. 记录结果:

    • “已修复 {count} 个失效链接”
    • “已添加 {count} 个缺失的关键链接”
    • 列出更改

3h. 最终报告

Global Cleanup Complete:

Structure:
- Removed {N} duplicate sections (canonical: principles.md)
- Found {N} unexpected files (listed for user review)
- Consolidated {N} scattered concepts

Links:
- Fixed {N} broken links
- Added {N} missing critical links:
  - list of added links

输出:清理所有文档、移除重复内容、报告意外文件、整合知识并验证交叉链接


阶段 4:总结与后续步骤

目标:全面概述所创建的系统。

流程:

  1. 列出所有已创建文件及其大小:

    • AGENTS.md(项目的规范入口)
    • CLAUDE.md(供 Claude Code 使用的 @AGENTS.md 导入存根)
    • docs/README.md(根文档中心)
    • docs/documentation_standards.md(60 项通用要求)
    • docs/principles.md(11 项开发原则)
    • docs/project/requirements.md、architecture.md、tech_stack.md + 条件性文档(共 3-7 个)
    • docs/reference/README.md(参考资料中心,包含空的 adrs/、guides/、manuals/、research/ 目录)
    • docs/tasks/README.md + 可选的 kanban_board.md
    • tests/README.md(如果已创建)
  2. 展示文档系统的特性:

    • SCOPE 标签(已定义文档边界)
    • 维护章节(更新触发条件 + 验证)
    • README 中心(集中导航)
    • DAG 结构(有向无环图导航)
    • 已为持续维护的文档做好准备
    • 内容已去重(仅保留规范来源)
    • 交叉链接已验证(无失效链接)
  3. 推荐后续步骤:

    • “审阅生成的文档(AGENTS.md 为规范入口 + CLAUDE.md 存根 -> docs/)”
    • “运行 ln-210-epic-coordinator,将范围拆解为 Epic”
    • “与技术利益相关者分享文档”
  4. 总结文档质量门禁:

    • Verifier score: X/10
    • Repair passes used: 0-2
    • Remaining warnings: list LOW/MEDIUM only

输出:包含文件列表、验证器状态和建议的总结消息


完整输出结构

project_root/
|- AGENTS.md                         # Canonical project entry point (map-first root)
|- CLAUDE.md                         # Derived Anthropic entrypoint
|- docs/
|  |- README.md                     # Root documentation hub (general standards)
|  |- documentation_standards.md    # 60 universal requirements (Claude Code + industry standards)
|  |- principles.md                 # 11 development principles (Standards First, YAGNI, KISS, DRY, etc.)
|  |- project/
|  |  |- requirements.md           # Functional Requirements (NO NFR per project policy)
|  |  |- architecture.md           # arc42-based architecture with C4 Model
|  |  |- tech_stack.md             # Technology versions, Docker config
|  |  |- api_spec.md               # API endpoints (conditional)
|  |  |- database_schema.md        # Database schema (conditional)
|  |  |- design_guidelines.md      # UI/UX system (conditional)
|  |  |- infrastructure.md         # Infrastructure inventory (always)
|  |  `- runbook.md                # Operations guide (conditional)
|  |- reference/
|  |  |- README.md                 # Reference documentation hub (registries)
|  |  |- adrs/                     # Empty, ready for ADRs
|  |  |- guides/                   # Empty, ready for guides
|  |  |- manuals/                  # Empty, ready for manuals
|  |  `- research/                 # Empty, ready for research
|  |- tasks/
|  |  |- README.md                 # Task management system rules
|  |  `- kanban_board.md           # Linear integration (optional)
`- tests/
   `- README.md                    # Test documentation (optional)

与项目工作流集成

新项目的推荐工作流:

  1. ln-100-documents-pipeline(此技能)- 创建完整的文档系统
  2. ln-210-epic-coordinator - 将范围拆分为 Epic(Linear 项目)
  3. ln-220-story-coordinator - 为每个 Epic 创建用户故事(自动拆分 + 重新规划)
  4. ln-300-task-coordinator - 将故事拆分为实施任务(自动拆分 + 重新规划)
  5. ln-310-multi-agent-validator - 在开发前验证故事
  6. ln-400-story-executor - 协调故事实施
  7. 故事质量门禁 - 审查已完成的故事

权衡

权衡:

  • 控制粒度较低(无法跳过协调器阶段)
  • 执行时间较长(15-20 分钟)
  • 即使只创建了一个文件,也会执行全局清理

适合改用手动方式的情况:

  • 只需要一份特定的 ADR/指南/手册 -> 使用 references/templates/ + references/documentation_creation.md

文档标准

此流水线创建的所有文档都必须遵循以下规则:

规则描述执行方式
NO_CODE 规则文档描述契约,而非实现代码块不超过 5 行;使用表格/ASCII/链接
技术栈适配链接必须与项目的 TECH_STACK 匹配.NET -> Microsoft 文档,JS -> MDN
格式优先级表格/ASCII > 列表(仅用于枚举)> 文本参数、配置、备选方案使用表格

这些标准由 L3 workers(ln-111-115)、ln-120/130/140 以及共享的 docs-quality 门禁执行。


错误处理

如果任何被调用的技能失败:

  1. 告知用户哪个技能失败
  2. 显示失败技能的错误消息
  3. 建议手动调用以进行调试
  4. 列出已完成的步骤(部分进度)

技术实现说明

技能调用:

  • 使用带 command 参数的 Skill 工具
  • 等待每个技能完成后再继续
  • 进入下一阶段前,验证输出文件是否存在

文件验证:

  • 使用 Glob 工具检查 docs/project/ 结构
  • 列出文件大小供用户确认
  • 如果缺少预期文件,则发出警告

全局清理:

  • 使用 Glob 工具查找所有 .md 文件
  • 使用 Read 工具分析内容
  • 使用 Edit 工具删除重复内容并添加链接
  • 报告意外文件(仅供参考,不会自动归档)

Docs-Quality 门禁:

  • 使用 references/scripts/docs-quality/cli.mjs 根据 worker 输出构建清单
  • 清理前以及修复后,再次使用共享验证器
  • 对未解决的 HIGH/CRITICAL 发现快速失败,而非输出低质量文档

标准合规性:

  • 所有输出均遵循底层技能采用的相同标准
  • ISO/IEC/IEEE 29148:2018(需求)
  • ISO/IEC/IEEE 42010:2022(架构)
  • arc42 + C4 Model + Michael Nygard 的 ADR 格式

关键规则

  • **幂等:**仅创建缺失文件;保留现有文件,不覆盖
  • **按顺序调用:**必须按顺序调用 workers(ln-110 -> ln-120 -> ln-130 -> ln-140);每个 worker 都必须在调用下一个之前通过验证
  • **Docs-Quality 门禁为强制要求:**第 3 阶段必须构建清单 -> 运行验证器 -> 执行有界修复循环,然后才能继续清理
  • **全局清理为强制要求:**只有通过 docs-quality 门禁后,才运行第 3 阶段(去重、孤立项报告、SSoT 整合、交叉链接验证)
  • **必须获得用户确认:**在创建任何文件之前,执行预检并获得明确批准
  • **NO_CODE 规则:**所有生成的文档均使用表格/ASCII/链接;代码块不超过 5 行

第 5 阶段:元分析

可选参考:仅当用户要求运行后元分析或按协议格式进行运行反思时,才加载 references/meta_analysis_protocol.md。

技能类型:planning-coordinator。收到请求后,在所有阶段完成后运行。使用 planning-coordinator 格式在聊天中输出。

参考文件

  • 非规范的源模式:references/legacy_detection_patterns.md
  • Worker 技能:ln-110-project-docs-coordinator、ln-120-reference-docs-creator、ln-130-tasks-docs-creator、ln-140-test-docs-creator
  • 共享的文档质量约定:references/docs_quality_contract.md
  • 共享的验证器 CLI:references/scripts/docs-quality/cli.mjs

完成定义

完成工作前,请核验所有检查项:

源文档清理(阶段 0——如适用):

  • 应用非规范文档模式(Glob + Grep)
  • 已构建源清单:{ path, type, confidence, target }
  • 用户已选择清理选项(NORMALIZE / ARCHIVE / SKIP)
  • 如果选择 NORMALIZE:已使用特定类型的提取器提取事实
  • 已创建备份:.archive/source-docs-{timestamp}/original/
  • 已保存提取的事实:.archive/source-docs-{timestamp}/extracted/
  • 已生成 README_cleanup.md,包含回滚说明
  • 已准备好供协调器输入的 SOURCE_DOC_NOTES
  • 已清理非规范文件(从 README.md 中移除章节,删除独立文件)

用户确认(阶段 1):

  • 已显示迁移摘要(如果运行了阶段 0)
  • 已向用户说明工作流(协调器 + 4 个工作器:ln-110 -> ln-120 -> ln-130 -> ln-140)
  • 用户已批准:“是否继续创建完整文档系统?(是/否)”
  • 已记录测试文档偏好:“是否包含测试文档?(是/否)”

依次调用协调器和工作器(阶段 2):

  • 已调用 ln-110-project-docs-coordinator -> 已验证输出:根文档(AGENTS.md + CLAUDE.md + docs/README.md + docs/documentation_standards.md + docs/principles.md)+ 项目文档(docs/project/requirements.md、architecture.md、tech_stack.md + 条件文件)
  • 已调用 ln-120-reference-docs-creator -> 已验证输出:docs/reference/README.md + 目录(adrs/、guides/、manuals/、research/)+ 基于 TECH_STACK 且理由充分的 ADR、指南和手册
  • 已调用 ln-130-tasks-docs-creator -> 已验证输出:docs/tasks/README.md + 可选的 kanban_board.md
  • 已调用 ln-140-test-docs-creator(如果已启用)-> 已验证输出:tests/README.md
  • 每个组件均已验证自身输出(SCOPE、元数据标记、顶部章节、维护、POSIX 合规性)
  • 每个工作器均已返回规范化的 created_files、skipped_files、quality_inputs 和 validation_status

文件验证完成:

  • 所有预期文件均已存在(使用 Glob 工具验证结构)
  • 已列出文件大小,供用户确认
  • 如果缺少预期文件,已显示警告

全局清理完成(阶段 3):

  • 3a:已根据规范化的工作器输出构建清单
  • 3b:已根据清单运行共享验证器
  • 3c:已完成有界修复循环;不再存在 HIGH/CRITICAL 级别的问题
  • 3d:已识别并移除重复章节(相似度 >80%)
  • 3d:已将链接添加到规范位置(principles.md、testing-strategy.md、kanban_board.md)
  • 3e:已报告意外文件(仅供参考,不自动归档)
  • 3f:已将分散的概念整合到单一事实来源(SSoT)
  • 3g:已验证内部链接(修复失效链接,补充关键链接)
  • 3h:已生成最终报告(质量门禁摘要、计数、列表、操作)

已显示摘要(阶段 4):

  • 已列出所有创建的文件及其大小
  • 已突出显示文档系统功能(SCOPE、元数据标记、快速导航、Agent 入口、维护、README 导航页、DAG 结构、去重内容、已验证的链接)
  • 已显示 docs-quality 验证器摘要(评分、修复轮次、剩余的 LOW/MEDIUM 级警告)
  • 已建议后续步骤(ln-210-epic-coordinator)

错误处理(如适用):

  • 如果任何工作器失败:已告知用户失败的工作器、显示错误消息、建议手动调用,并列出已完成的部分工作

输出: 完整文档系统(AGENTS.md 为规范文件 + CLAUDE.md @AGENTS.md 导入存根 + docs/,其中包含 README.md、documentation_standards.md、principles.md + 可选的 tests/),并完成全局清理(无重复项、已报告孤立文件、已整合知识、已验证交叉链接)


版本: 8.1.0
最后更新: 2025-01-12

评论

支持 Markdown