Token导航 LogoToken导航TokenDH.com
开发只读github未标认证来源可访问许可证需确认审计通过

doc-ears-reviewer耳朵医生审稿人

Agent Skill

用于辅助文档、README、Markdown、说明文和内容稿件的整理与改写。它适合让 Agent 提炼结构、补齐章节、统一术语、检查链接或把零散材料整理成可读文档。使用时应保留项目已有事实、命令和路径,不要把未确认的信息写成确定结论;涉及对外文案时,还需要控制语气,避免过度营销或夸大能力。

总安装

665

周安装

28

GitHub Stars

14

下载量

233
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:doc-ears-reviewer(耳朵医生审稿人)
来源仓库:https://github.com/vladm3105/aidoc-flow-framework
仓库路径:skills/doc-ears-reviewer
安装命令:
npx skills add https://github.com/vladm3105/aidoc-flow-framework --skill doc-ears-reviewer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/vladm3105/aidoc-flow-framework --skill doc-ears-reviewer

简介

用于深度审查EARS文档的语法正确性和PRD对齐度。

  • 适合检查可测试性、量化阈值和手动审查需求识别。
  • 在doc-ears-autopilot完成后立即运行,作为BDD生成前的最后关卡。
  • 需确保所有requirement都具备明确的可验证条件,避免模糊表述。
  • doc-ears-reviewer 属于开发类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

doc-ears-reviewer

Purpose

Comprehensive content review and quality assurance for EARS (Easy Approach to Requirements Syntax) documents. This skill performs deep content analysis beyond structural validation, checking requirement syntax correctness, PRD alignment, testability, quantifiable thresholds, and identifying issues that require manual review.

Layer: 3 (EARS Quality Assurance)

Upstream: EARS (from doc-ears-autopilot or doc-ears)

Downstream: None (final QA gate before BDD generation)


When to Use This Skill

Use doc-ears-reviewer when:

  • After EARS Generation: Run immediately after doc-ears-autopilot completes
  • Manual EARS Edits: After making manual changes to EARS
  • Pre-BDD Check: Before running doc-bdd-autopilot
  • Periodic Review: Regular quality checks on existing EARS
  • CI/CD Integration: Automated review gate in documentation pipelines

Do NOT use when:

  • EARS does not exist yet (use doc-ears or doc-ears-autopilot first)
  • Need structural/schema validation only (use doc-ears-validator)
  • Generating new EARS content (use doc-ears)

Skill vs Validator: Key Differences

Aspectdoc-ears-validatordoc-ears-reviewer
FocusSchema compliance, BDD-Ready scoreContent quality, testability
ChecksRequired sections, EARS syntaxThreshold quantification, PRD traceability
Auto-FixStructural issues onlyContent issues (syntax, thresholds)
OutputBDD-Ready score (numeric)Review score + issue list
PhasePhase 4 (Validation)Phase 5 (Final Review)
BlockingBDD-Ready < threshold blocksReview score < threshold flags

Review Workflow

flowchart TD
    A[Input: EARS Path] --> B[Load EARS Files]
    B --> C{Sectioned or Monolithic?}

    C -->|Sectioned| D[Load All Section Files]
    C -->|Monolithic| E[Load Single File]

    D --> F[Run Review Checks]
    E --> F

    subgraph Review["Review Checks"]
        F --> F0[0. Structure Compliance]
        F0 --> G[1. EARS Syntax Compliance]
        G --> H[2. Threshold Quantification]
        H --> I[3. PRD Alignment]
        I --> J[4. Testability Assessment]
        J --> K[5. Placeholder Detection]
        K --> L[6. Section Completeness]
        L --> M[7. Naming Compliance]
        M --> M2[8. Upstream Drift Detection]
    end

    M2 --> N{Issues Found?}
    N -->|Yes| O[Categorize Issues]
    O --> P{Auto-Fixable?}
    P -->|Yes| Q[Apply Auto-Fixes]
    Q --> R[Re-run Affected Checks]
    P -->|No| S[Flag for Manual Review]
    R --> N
    S --> T[Generate Report]
    N -->|No| T
    T --> U[Calculate Review Score]
    U --> V{Score >= Threshold?}
    V -->|Yes| W[PASS]
    V -->|No| X[FAIL with Details]

Review Checks

0. Structure Compliance (12/12) - BLOCKING

Validates EARS follows the mandatory nested folder rule.

Nested Folder Rule: ALL EARS documents MUST be in nested folders.

Required Structure:

EARS TypeRequired Location
Monolithicdocs/03_EARS/EARS-NN_{slug}/EARS-NN_{slug}.md

Detection:

Validating folder structure...
├── EARS Location: docs/03_EARS/EARS-01_f1_iam/EARS-01_f1_iam.md
├── Expected Folder: EARS-01_f1_iam ✓
├── Parent Path: docs/03_EARS/ ✓
├── Nested Structure: Valid ✓
└── Result: PASS

Error Codes:

CodeSeverityDescription
REV-STR001ErrorEARS not in nested folder (BLOCKING)
REV-STR002ErrorFolder name doesn't match EARS ID
REV-STR003WarningFile name doesn't match folder name

This check is BLOCKING - EARS must pass structure validation before other checks proceed.


1. EARS Syntax Compliance

Validates all requirements follow correct EARS patterns.

EARS Patterns:

  • Ubiquitous: THE {system} SHALL {action}
  • Event-Driven: WHEN {event} THE {system} SHALL {action}
  • State-Driven: WHILE {state} THE {system} SHALL {action}
  • Optional: WHERE {feature} THE {system} SHALL {action}
  • Complex: WHEN {event} WHILE {state} THE {system} SHALL {action}
  • Unwanted: IF {condition} THEN THE {system} SHALL {action} WITHIN {time}

Error Codes:

CodeSeverityDescription
REV-ES001ErrorRequirement missing SHALL keyword
REV-ES002ErrorWHEN clause without condition
REV-ES003WarningAmbiguous subject (system not specified)
REV-ES004WarningAction verb not quantifiable
REV-ES005InfoComplex pattern may be split

2. Threshold Quantification

Validates all timing/performance thresholds are specific.

Scope:

  • WITHIN clauses have numeric values
  • Units specified (ms, s, min)
  • Consistent with PRD thresholds
  • No vague terms ("quickly", "fast", "responsive")

Error Codes:

CodeSeverityDescription
REV-TQ001ErrorMissing WITHIN clause for time-bound requirement
REV-TQ002ErrorThreshold uses vague term
REV-TQ003WarningThreshold inconsistent with PRD
REV-TQ004InfoConsider adding failure threshold

3. PRD Alignment

Validates EARS requirements trace to PRD source.

Scope:

  • Every EARS requirement maps to PRD requirement
  • No orphaned requirements
  • No missing requirements (PRD without EARS)
  • Feature IDs consistent

Error Codes:

CodeSeverityDescription
REV-PA001ErrorEARS requirement without PRD source
REV-PA002WarningPRD requirement without EARS mapping
REV-PA003WarningFeature ID mismatch
REV-PA004InfoRequirement correctly marked as deferred

4. Testability Assessment

Evaluates if requirements can be tested.

Scope:

  • Measurable outcomes defined
  • Pass/fail criteria clear
  • Edge cases identified
  • Negative cases covered

Error Codes:

CodeSeverityDescription
REV-TA001ErrorNo measurable outcome
REV-TA002WarningPass/fail criteria unclear
REV-TA003InfoEdge case not covered
REV-TA004InfoConsider negative test case

5. Placeholder Detection

Identifies incomplete content requiring replacement.

Error Codes:

CodeSeverityDescription
REV-P001Error[TODO] placeholder found
REV-P002Error[TBD] placeholder found
REV-P003WarningTemplate value not replaced

6. Section Completeness

Verifies all required sections have substantive content.

Error Codes:

CodeSeverityDescription
REV-S001ErrorRequired section missing
REV-S002WarningSection below minimum content
REV-S003WarningTable has no data rows

7. Naming Compliance

Validates element IDs follow doc-naming standards.

Scope:

  • Element IDs use EARS.NN.xxxx format
  • Element type codes valid for EARS (25, 26)
  • No legacy patterns (REQ-NNN, R-NNN)

Error Codes:

CodeSeverityDescription
REV-N001ErrorInvalid element ID format
REV-N002ErrorElement type code not valid for EARS
REV-N003ErrorLegacy pattern detected

8. Upstream Drift Detection (Mandatory Cache)

Detects when upstream source documents have been modified after the EARS was created or last updated.

The drift cache is mandatory - the reviewer MUST create/update it after every review.

Purpose: Identifies stale EARS content that may not reflect current PRD documentation.

Scope:

  • @ref: tag targets
  • @prd: tag references
  • Traceability section upstream artifact links

8.1 Drift Cache File (MANDATORY)

Location: docs/03_EARS/.drift_cache.json

Schema:

{
  "cache_version": "1.0",
  "artifact_type": "EARS",
  "upstream_type": "PRD",
  "last_updated": "2026-02-10T17:00:00Z",
  "entries": {
    "EARS-01": {
      "ears_file": "docs/03_EARS/EARS-01_f1_iam.md",
      "ears_hash": "sha256:abc123...",
      "ears_mtime": "2026-02-10T15:00:00Z",
      "upstream_refs": [
        {
          "prd_id": "PRD-01",
          "prd_file": "docs/02_PRD/PRD-01_f1_iam.md",
          "prd_hash": "sha256:def456...",
          "prd_mtime": "2026-02-10T14:00:00Z",
          "prd_version": "1.2"
        }
      ],
      "last_review": "2026-02-10T16:00:00Z",
      "drift_status": "clean"
    }
  }
}

8.2 Detection Algorithm (Three-Phase)

Phase 1: Load Cache

IF cache file exists:
    Load existing cache
    Validate cache schema
ELSE:
    Initialize empty cache
    Mark as first review (REV-D006)

Phase 2: Detect Drift

FOR each EARS document:
    Calculate current EARS hash
    FOR each upstream PRD reference:
        Calculate current PRD hash
        IF cache entry exists:
            Compare PRD hash with cached hash
            IF hashes differ:
                Flag drift (REV-D001/D002/D005)
            Compare PRD mtime with cached mtime
            IF mtime newer:
                Flag potential drift (REV-D003)
        ELSE:
            New reference - no drift comparison possible

Phase 3: Update Cache (MANDATORY)

FOR each reviewed EARS document:
    Update EARS hash and mtime
    FOR each upstream PRD reference:
        Update PRD hash, mtime, and version
    Set drift_status based on review results
    Set last_review to current timestamp
Write updated cache to disk

8.3 Hash Calculation (MANDATORY BASH EXECUTION)

CRITICAL: You MUST execute actual bash commands to compute hashes. DO NOT write placeholder values.

Compute File Hash:

sha256sum <file_path> | cut -d' ' -f1

Store result as: "hash": "sha256:<64_hex_characters>"

REJECTED VALUES (re-compute immediately):

  • sha256:verified_no_drift
  • sha256:pending_verification
  • Any value where hex portion!= 64 characters

Verification:

grep -oP '"hash":\s*"sha256:[0-9a-f]{64}"' .drift_cache.json

Error Codes:

CodeSeverityDescription
REV-D001WarningUpstream document modified after EARS creation
REV-D002WarningReferenced section content changed
REV-D003InfoUpstream document version incremented
REV-D004InfoNew content added to upstream
REV-D005ErrorCritical upstream modification (>20% change)
REV-D006InfoCache created - first review
REV-D009ErrorInvalid hash placeholder detected (verified_no_drift, pending_verification)

8.5 Report Output

The review report MUST include cache status:

## Upstream Drift Detection

**Cache Status**: Updated | Created | Error
**Cache Location**: `docs/03_EARS/.drift_cache.json`

| EARS | Upstream PRD | Drift Status | Last Verified |
|------|--------------|--------------|---------------|
| EARS-01 | PRD-01 | Clean | 2026-02-10T17:00:00Z |
| EARS-02 | PRD-02 | Drift Detected (REV-D002) | 2026-02-10T17:00:00Z |

Configuration:

SettingDefaultDescription
cache_enabledtrueMandatory - cannot be disabled
drift_threshold_days7Days before drift becomes Warning
critical_threshold_days30Days before drift becomes Error
enable_hash_checktrueSHA-256 content hashing enabled

Review Score Calculation

Scoring Formula:

CategoryWeightCalculation
Structure Compliance12%BLOCKING - must pass before other checks
EARS Syntax Compliance20%(valid_syntax / total_reqs) × 20
Threshold Quantification17%(quantified / requiring_threshold) × 17
PRD Alignment17%(aligned_reqs / total_reqs) × 17
Testability Assessment12%(testable_reqs / total_reqs) × 12
Placeholder Detection5%(no_placeholders? 5: 5 - count)
Section Completeness8%(complete / total_sections) × 8
Naming Compliance4%(valid_ids / total_ids) × 4
Upstream Drift5%(fresh_refs / total_refs) × 5

Total: Sum of all categories (max 100)

Thresholds:

  • PASS: ≥ 90
  • WARNING: 80-89
  • FAIL: < 80

Command Usage

# Review specific EARS
/doc-ears-reviewer EARS-01

# Review EARS by path
/doc-ears-reviewer docs/03_EARS/EARS-01_f1_iam.md

# Review all EARS
/doc-ears-reviewer all

Output Report

Review reports are stored alongside the reviewed document per project standards.

Nested Folder Rule: ALL EARS use nested folders (EARS-NN_{slug}/) regardless of size. This ensures review reports, fix reports, and drift cache files are organized with their parent document.

Audit Wrapper Note: doc-ears-audit combines this reviewer output with validator findings and writes EARS-NN.A_audit_report_vNNN.md (preferred for fixer). Reviewer-native report naming remains EARS-NN.R_review_report_vNNN.md.

File Naming: EARS-NN.R_review_report_vNNN.md

Location: Inside the EARS nested folder: docs/03_EARS/EARS-NN_{slug}/

Versioning Rules

  1. First Review: Creates EARS-NN.R_review_report_v001.md
  2. Subsequent Reviews: Auto-increments version (v002, v003, etc.)
  3. Same-Day Reviews: Each review gets unique version number

Version Detection: Scans folder for existing EARS-NN.R_review_report_v*.md files and increments.

Example:

docs/03_EARS/EARS-01_f1_iam/
├── EARS-01_f1_iam.md
├── EARS-01.R_review_report_v001.md    # First review
├── EARS-01.R_review_report_v002.md    # After fixes
└── .drift_cache.json

Delta Reporting

When previous reviews exist, include score comparison in the report.

See REVIEW_DOCUMENT_STANDARDS.md for complete versioning requirements.


Integration with doc-ears-autopilot

This skill is invoked during Phase 5 of doc-ears-autopilot:

flowchart LR
    A[Phase 4: Validation] --> B[Phase 5: Final Review]
    B --> C{doc-ears-reviewer}
    C --> D[Phase 6: Continue]

Related Skills

SkillRelationship
doc-namingNaming standards for Check #7
doc-ears-autopilotInvokes this skill in Phase 5
doc-ears-auditWrapper that combines reviewer findings with validator output
doc-ears-validatorStructural validation (Phase 4)
doc-ears-fixerApplies fixes based on review findings
doc-earsEARS creation rules
doc-prd-reviewerUpstream QA
doc-bdd-autopilotDownstream consumer

Version History

VersionDateChanges
1.52026-02-26Migrated frontmatter to metadata schema; documented audit-wrapper relationship and preferred .A_audit_report fixer handoff
1.42026-02-11Structure Compliance: Added Check #0 for nested folder rule enforcement (REV-STR001-STR003); Updated workflow diagram; Structure check is BLOCKING
1.32026-02-10Made drift cache mandatory; Added cache schema and location (docs/03_EARS/.drift_cache.json); Three-phase detection algorithm; SHA-256 hash calculation; REV-D006 error code for cache creation; Cache status in report output
1.22026-02-10Added Check #8: Upstream Drift Detection - detects when PRD documents modified after EARS creation; REV-D001-D005 error codes; drift configuration; Added doc-ears-fixer to related skills
1.12026-02-10Added review versioning support (_vNNN pattern); Delta reporting for score comparison
1.02026-02-10Initial skill creation with 7 review checks; EARS syntax compliance; Threshold quantification; Testability assessment

Implementation Plan Consistency (IPLAN-004)

  • Treat plan-derived outputs as valid source mode and verify intent preservation from implementation plan scope/objectives.
  • Validate upstream autopilot precedence assumption: --iplan > --ref > --prompt.
  • Flag objective/scope conflicts between plan context and artifact output as blocking issues requiring clarification.
  • Do not introduce legacy fallback paths such as docs-v2.0/00_REF.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.75%
按下载量换算81

Claude

27.9%
按下载量换算65

Cursor

19.18%
按下载量换算45

Gemini CLI

8.22%
按下载量换算19

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills