Narrative quality auditor skill
Use when the user asks to "audit our brand narrative" or "is this message on-canon".
by aaron-he-zhu·Apache-2.0 license·★ 2,858 Stars on the repo·GitHub ↗
npx degit aaron-he-zhu/aaron-marketing-skills/narrative/evaluate/narrative-quality-auditor#main ~/.claude/skills/narrative-quality-auditorChecked ·commit main
Files of Narrative quality auditor
Show the full text131 lines
Narrative Quality Auditor
Audit narrative truth, message-system coherence, or measured effectiveness as separate TALE profiles. There is no v18 overall composite: truth cannot be averaged away by coherence, and coherence cannot stand in for effectiveness evidence.
When This Must Trigger
- The user asks whether positioning/differentiation is defensible.
- A flagship surface needs a pre-publish canon/message-match gate.
- A message experiment or resonance claim needs evidence-integrity review.
- A full narrative review is requested; run linked profiles rather than one blended score.
Quick Start
Run TALE truth on canon v7 against named alternatives and approved claims.
Run TALE system on homepage/pricing/deck against canon v7 before release.
Run a full review as three linked profile results; do not compute an overall score.
Skill Contract
Reads: one canon/surface set or message experiment plus current narrative/claims truth. Writes: only permissioned v3 artifacts. Done when: each requested profile is independently complete or its Unknowns are explicit, with no canon, claims, or surface mutation.
narrative-registry owns canon/version state and offer-claims-registry owns claims. This skill judges; authoring/fixing belongs to Trace/Architect/Land skills.
Data Sources
| Need | Preferred evidence |
|---|---|
| Truth | Named alternatives, interviews/win-loss, product reality, claims projection |
| Architecture | Exact canon/version, message hierarchy, voice/naming/version history |
| Landing | Declared rendered flagship surfaces linked to canon version |
| Effectiveness | Preregistered comprehension/recall/behavior evidence and locked panels |
| Public resonance | Dated own/public signals with explicit measured/proxy provenance |
Instructions
Runtime Reads
../../../references/auditor-runbook.md../../../references/scoring-semantics.md../../../references/tale-benchmark.md../../../references/runtime-invocation.mdreferences/auditor-runtime.md
Runtime and Setup
Read ../../../references/auditor-runbook.md, scoring-semantics.md, tale-benchmark.md, and the TALE catalog entry. Standalone installs use bundled immutable references/auditor-runtime.md; never fetch mutable main. Before deterministic calls, follow runtime-invocation.md, resolve AARON_SKILLS_ROOT="${CLAUDE_PLUGIN_ROOT:-$(git rev-parse --show-toplevel 2>/dev/null || true)}", and require the scorer, validator, and typed catalogs. If unavailable, still collect the selected profile's typed observations and Unknowns, but return score_state: NOT_SCORED / score_confidence: not_scored with no gate verdict or persistent artifact; runtime absence blocks deterministic scoring, not the observation pass.
Declare target, profile/mode, brand scope, market, audience, canon version, observation date, and evidence window.
Profile Procedure
truth: score T1–T10 for material differentiation and factual grounding.system: score A1–A10 and L1–L10 for canon coherence and landing consistency.effectiveness: score E1–E10 for one experiment/locked panel/date.full: run the three profiles independently and keep three artifacts/results. Aggregate release language conservatively: any BLOCK → block; otherwise any UNDECIDED → undecided; otherwise any FIX → fix; all SHIP → ship. Never average scores.
For a flagship pre-publish gate, always execute the system profile procedure and require a compatible current truth result. If no compatible truth result exists, run truth separately when its evidence is available; otherwise record the truth prerequisite as Unknown while still rendering the requested system-profile result. A missing scorer/runtime changes that result to NOT_SCORED/UNDECIDED; it does not justify skipping the profile. Run effectiveness separately only when the user requests it or the surface makes an effectiveness claim.
Every observed state needs source/date/type/confidence. A missing canon is Unknown, not N/A. A2/A4/A8 are conditional: three pillars, a change arc, and fixed boilerplate lengths are patterns only when deliberately chosen. Run the typed scorer per profile.
Verify profile-relevant vetoes: TALE-T1 false/contradictory/unsubstantiated material differentiation, TALE-A1 demonstrated canon contradiction, TALE-L1 material flagship/canon contradiction, and TALE-E1 unsupported effectiveness claim or proxy-as-measured.
§2 TALE Worked Examples
- Complete truth profile, raw 86, no veto/fail:
DONE/SHIP, final 86. - Complete system profile, raw 80, one verified L1 failure:
DONE_WITH_CONCERNS/FIX, final 59. - Complete system profile with A1 and L1 failures:
DONE/BLOCK, no final score. - Effectiveness profile before test results exist:
NEEDS_INPUT/UNDECIDED, no score.
§3 TALE Guardrails
- A literal “onlyness” sentence is not required; judge the material differentiation actually asserted.
- Three pillars, a Raskin/change arc, and 25/50/100-word boilerplates are conditional patterns.
- A governed draft can be audited as a draft; missing access is Unknown, not an A1 failure.
- Share of voice, sentiment, answer-engine descriptions, comprehension, and behavior are distinct constructs.
- Narrative change frequency is a drift signal, not an automatic veto.
§5 TALE Translation
Always name truth/system/effectiveness. On trace request, qualify TALE-T1/A1/L1/E1, especially TALE-E1 versus ECHO-E1 and TALE-A1 versus ROAS/RAMP.
Report and Verdict
Begin with the auditor-runbook's exact typed conversation header. Never replace status, verdict, or score_state with prose; list each explicitly missing qualified item as ``ID: `unknown``` before findings.
For each profile show verdict, target/canon/context/date, score or coverage/interval, confidence, evidence, Unknowns, and fixes. A full report shows three side-by-side results and no overall number. Do not claim market effectiveness from system coherence.
Validation Checkpoints
- One profile/unit per score; full mode preserves three results.
- Canon/surface/experiment versions and audience/market are explicit.
- Conditional templates use N/A only with reason; missing evidence stays Unknown.
- Current truth/claims projections are read, not candidate files.
- No canon/claim/surface write or publish action occurred.
Persistence
Persist only after explicit authorization to memory/audits/narrative/YYYY-MM-DD-<topic>-<profile>.md. Preserve the scorer's orthogonal status and verdict; validate the complete v3 draft with validate-audit-artifact.py against the intended relative path, persist only through one full-content Write, and revalidate the target per the auditor runbook. Edit/shell/MCP mutations of the reserved sink are unsupported. Never overwrite another profile or update canon/claims/hot cache autonomously.
Reference Materials
Next Best Skill
- Truth repair: positioning-truth-tracer
- Architecture repair: message-system-architect
- Landing repair: narrative-cascade-planner
- Effectiveness evidence: message-test-designer
| 1 | |
| 2 | name narrative-quality-auditor |
| 3 | slug aaron-narrative-quality-auditor |
| 4 | displayName "Narrative Quality Auditor · 品牌叙事质量门" |
| 5 | summary "叙事真实性/系统一致性/效果证据分层审计" |
| 6 | description 'Use when the user asks to "audit our brand narrative" or "is this message on-canon"; runs separate typed TALE truth, system, or effectiveness profiles and never averages them into one composite. Checks differentiation, canon, landing consistency, and evidence integrity. Not for launch readiness — use launch-readiness-auditor; not for social operations — use social-quality-auditor. 品牌叙事分层审计/发布前一致性放行' |
| 7 | version "20.1.0" |
| 8 | license Apache-2.0 |
| 9 | compatibility "Claude Code and compatible agent-skill hosts" |
| 10 | homepage "https://github.com/aaron-he-zhu/aaron-marketing-skills" |
| 11 | when_to_use "Use for narrative truth, message-system consistency, flagship pre-publish alignment, or measured message-effectiveness review. A full review runs linked profiles separately." |
| 12 | argument-hint "<canon/surfaces/experiment> [truth|system|effectiveness|full]" |
| 13 | class auditor |
| 14 | metadata {"author": "aaron-he-zhu", "version": "20.1.0", "discipline": "narrative", "phase": "evaluate", "geo-relevance": "low", "hermes": {"tags": ["marketing", "narrative", "evaluate"], "category": "narrative"}, "openclaw": {"emoji": "📖", "homepage": "https://github.com/aaron-he-zhu/aaron-marketing-skills"}} |
| 15 | |
| 16 | |
| 17 | # Narrative Quality Auditor |
| 18 | |
| 19 | Audit narrative truth, message-system coherence, or measured effectiveness as separate TALE profiles. There is no v18 overall composite: truth cannot be averaged away by coherence, and coherence cannot stand in for effectiveness evidence. |
| 20 | |
| 21 | ## When This Must Trigger |
| 22 | |
| 23 | The user asks whether positioning/differentiation is defensible. |
| 24 | A flagship surface needs a pre-publish canon/message-match gate. |
| 25 | A message experiment or resonance claim needs evidence-integrity review. |
| 26 | A full narrative review is requested; run linked profiles rather than one blended score. |
| 27 | |
| 28 | ## Quick Start |
| 29 | |
| 30 | |
| 31 | Run TALE truth on canon v7 against named alternatives and approved claims. |
| 32 | Run TALE system on homepage/pricing/deck against canon v7 before release. |
| 33 | Run a full review as three linked profile results; do not compute an overall score. |
| 34 | |
| 35 | |
| 36 | ## Skill Contract |
| 37 | |
| 38 | **Reads:** one canon/surface set or message experiment plus current narrative/claims truth. **Writes:** only permissioned v3 artifacts. **Done when:** each requested profile is independently complete or its Unknowns are explicit, with no canon, claims, or surface mutation. |
| 39 | |
| 40 | `narrative-registry` owns canon/version state and `offer-claims-registry` owns claims. This skill judges; authoring/fixing belongs to Trace/Architect/Land skills. |
| 41 | |
| 42 | ## Data Sources |
| 43 | |
| 44 | | Need | Preferred evidence | |
| 45 | |---|---| |
| 46 | | Truth | Named alternatives, interviews/win-loss, product reality, claims projection | |
| 47 | | Architecture | Exact canon/version, message hierarchy, voice/naming/version history | |
| 48 | | Landing | Declared rendered flagship surfaces linked to canon version | |
| 49 | | Effectiveness | Preregistered comprehension/recall/behavior evidence and locked panels | |
| 50 | | Public resonance | Dated own/public signals with explicit measured/proxy provenance | |
| 51 | |
| 52 | ## Instructions |
| 53 | |
| 54 | ### Runtime Reads |
| 55 | |
| 56 | `../../../references/auditor-runbook.md` |
| 57 | `../../../references/scoring-semantics.md` |
| 58 | `../../../references/tale-benchmark.md` |
| 59 | `../../../references/runtime-invocation.md` |
| 60 | `references/auditor-runtime.md` |
| 61 | |
| 62 | ### Runtime and Setup |
| 63 | |
| 64 | Read `../../../references/auditor-runbook.md`, `scoring-semantics.md`, `tale-benchmark.md`, and the TALE catalog entry. Standalone installs use bundled immutable `references/auditor-runtime.md`; never fetch mutable `main`. Before deterministic calls, follow [`runtime-invocation.md`], resolve `AARON_SKILLS_ROOT="${CLAUDE_PLUGIN_ROOT:-$(git rev-parse --show-toplevel 2>/dev/null || true)}"`, and require the scorer, validator, and typed catalogs. If unavailable, still collect the selected profile's typed observations and Unknowns, but return `score_state: NOT_SCORED` / `score_confidence: not_scored` with no gate verdict or persistent artifact; runtime absence blocks deterministic scoring, not the observation pass. |
| 65 | |
| 66 | Declare target, profile/mode, brand scope, market, audience, canon version, observation date, and evidence window. |
| 67 | |
| 68 | ### Profile Procedure |
| 69 | |
| 70 | **`truth`:** score T1–T10 for material differentiation and factual grounding. |
| 71 | **`system`:** score A1–A10 and L1–L10 for canon coherence and landing consistency. |
| 72 | **`effectiveness`:** score E1–E10 for one experiment/locked panel/date. |
| 73 | **`full`:** run the three profiles independently and keep three artifacts/results. Aggregate release language conservatively: any BLOCK → block; otherwise any UNDECIDED → undecided; otherwise any FIX → fix; all SHIP → ship. Never average scores. |
| 74 | |
| 75 | For a flagship pre-publish gate, always execute the `system` profile procedure and require a compatible current `truth` result. If no compatible truth result exists, run `truth` separately when its evidence is available; otherwise record the truth prerequisite as Unknown while still rendering the requested system-profile result. A missing scorer/runtime changes that result to `NOT_SCORED/UNDECIDED`; it does not justify skipping the profile. Run `effectiveness` separately only when the user requests it or the surface makes an effectiveness claim. |
| 76 | |
| 77 | Every observed state needs source/date/type/confidence. A missing canon is Unknown, not N/A. A2/A4/A8 are conditional: three pillars, a change arc, and fixed boilerplate lengths are patterns only when deliberately chosen. Run the typed scorer per profile. |
| 78 | |
| 79 | Verify profile-relevant vetoes: `TALE-T1` false/contradictory/unsubstantiated material differentiation, `TALE-A1` demonstrated canon contradiction, `TALE-L1` material flagship/canon contradiction, and `TALE-E1` unsupported effectiveness claim or proxy-as-measured. |
| 80 | |
| 81 | ## §2 TALE Worked Examples |
| 82 | |
| 83 | Complete truth profile, raw 86, no veto/fail: `DONE/SHIP`, final 86. |
| 84 | Complete system profile, raw 80, one verified L1 failure: `DONE_WITH_CONCERNS/FIX`, final 59. |
| 85 | Complete system profile with A1 and L1 failures: `DONE/BLOCK`, no final score. |
| 86 | Effectiveness profile before test results exist: `NEEDS_INPUT/UNDECIDED`, no score. |
| 87 | |
| 88 | ## §3 TALE Guardrails |
| 89 | |
| 90 | A literal “onlyness” sentence is not required; judge the material differentiation actually asserted. |
| 91 | Three pillars, a Raskin/change arc, and 25/50/100-word boilerplates are conditional patterns. |
| 92 | A governed draft can be audited as a draft; missing access is Unknown, not an A1 failure. |
| 93 | Share of voice, sentiment, answer-engine descriptions, comprehension, and behavior are distinct constructs. |
| 94 | Narrative change frequency is a drift signal, not an automatic veto. |
| 95 | |
| 96 | ## §5 TALE Translation |
| 97 | |
| 98 | Always name truth/system/effectiveness. On trace request, qualify `TALE-T1/A1/L1/E1`, especially `TALE-E1` versus `ECHO-E1` and `TALE-A1` versus ROAS/RAMP. |
| 99 | |
| 100 | ## Report and Verdict |
| 101 | |
| 102 | Begin with the auditor-runbook's exact typed conversation header. Never replace `status`, `verdict`, or `score_state` with prose; list each explicitly missing qualified item as ``ID: `unknown``` before findings. |
| 103 | |
| 104 | For each profile show verdict, target/canon/context/date, score or coverage/interval, confidence, evidence, Unknowns, and fixes. A full report shows three side-by-side results and no overall number. Do not claim market effectiveness from system coherence. |
| 105 | |
| 106 | ## Validation Checkpoints |
| 107 | |
| 108 | One profile/unit per score; full mode preserves three results. |
| 109 | Canon/surface/experiment versions and audience/market are explicit. |
| 110 | Conditional templates use N/A only with reason; missing evidence stays Unknown. |
| 111 | Current truth/claims projections are read, not candidate files. |
| 112 | No canon/claim/surface write or publish action occurred. |
| 113 | |
| 114 | ## Persistence |
| 115 | |
| 116 | Persist only after explicit authorization to `memory/audits/narrative/YYYY-MM-DD-<topic>-<profile>.md`. Preserve the scorer's orthogonal `status` and `verdict`; validate the complete v3 draft with `validate-audit-artifact.py` against the intended relative path, persist only through one full-content Write, and revalidate the target per the auditor runbook. Edit/shell/MCP mutations of the reserved sink are unsupported. Never overwrite another profile or update canon/claims/hot cache autonomously. |
| 117 | |
| 118 | ## Reference Materials |
| 119 | |
| 120 | [TALE benchmark] |
| 121 | [Auditor runbook] |
| 122 | [Scoring semantics] |
| 123 | [Measurement protocol] |
| 124 | |
| 125 | ## Next Best Skill |
| 126 | |
| 127 | **Truth repair:** [positioning-truth-tracer] |
| 128 | **Architecture repair:** [message-system-architect] |
| 129 | **Landing repair:** [narrative-cascade-planner] |
| 130 | **Effectiveness evidence:** [message-test-designer] |
| 131 |
Discussion
Alternatives
Browse more free Claude skills or everything in Content creator.