CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

narrative-baseline-mapper

Use when the user asks to "map what our surfaces say today", "inventory our current messaging", or "find the gap between what we say and what we mean"; produces the narrative baseline — a surface-by-surface inventory of what every owned touchpoint (homepage, pricing, docs, decks, social bios, email footers) claims RIGHT NOW, each line labeled Measured / User-provided / Estimated, plus a per-surface gap read vs the intended message and the drift-baseline snapshot the Evaluate phase measures future drift against. Not for authoring the canon — use message-system-architect; not for scoring the surfaces or running the vetoes — use narrative-quality-auditor. 现状叙事盘点/各触点口径/意图差距/漂移基线

Quality

80%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./narrative/trace/narrative-baseline-mapper/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is well structured with a clear seven-step workflow, explicit evidence and gating rules, and strong boundary discipline, but it is undermined by systematic repetition of the same handoff/claims-registry instructions and by total dependence on reference files (skill-contract.md, CONNECTORS.md, SECURITY.md, connector scripts) that are not included in the bundle. Tightening the duplication and shipping or inlining the essential referenced content would raise both conciseness and actionability.

Suggestions

State the claims-handoff rule ('[needs source] → memory/events/claims.ndjson via an authorized operation: propose request') once — in step 5 — and reference it elsewhere with a short pointer; the full phrase currently appears five times.

Collapse the category-narrative-mapper handoff, currently repeated in Scope guard, Skill Contract, Reference Materials, and Next Best Skill, into the Next Best Skill section plus a single link.

Ship the referenced bundle files (skill-contract.md templates, CONNECTORS.md recipes, scripts/connectors/firecrawl.py and wayback.py) or inline the minimal versions needed to run the workflow, and include a short example of the expected baseline table.

DimensionReasoningScore

Conciseness

The body is dense and domain-specific (no explanations of concepts Claude already knows), but repeats the same instructions several times: 'via an authorized `operation: propose` request to `registry-events.py`' appears five times (Scope guard, Writes, step 5, Save Results), 'only narrative-registry writes canon' three times, and the category-narrative-mapper handoff is stated four times (Scope guard, Primary next skill, Reference Materials, Next Best Skill). This matches 'mostly efficient but includes some unnecessary explanation or could be tightened'; not 4 because the duplication is systematic rather than minor.

3 / 5

Actionability

Concrete, executable instruction guidance: exact memory paths (memory/narrative/narrative-baseline-mapper/YYYY-MM-DD-<topic>.md), specific tools (scripts/connectors/firecrawl.py, wayback.py), defined classification labels (aligned / drifted / contradictory / silent), an evidence rule, and copy-ready Quick Start prompts. Not 5: no example of the output baseline table, and the connector scripts and contract templates the steps depend on are not present in the bundle, so the guidance cannot be executed end-to-end as shipped.

4 / 5

Workflow Clarity

The seven numbered steps are clearly sequenced with checkpoints: establish the yardstick before reading gaps (step 3), 'a gap read without the quote is an assertion, not evidence' (step 4), ask-before-writing gates ('ask before writing', 'Do not write memory without asking'), and an explicit Done-when contract. Not 5: there is no error-recovery feedback loop (e.g., what to do when a scrape or robots pre-flight fails or a surface is unreachable) and no re-validation of the assembled baseline before handoff.

4 / 5

Progressive Disclosure

Sections are well organized and references are clearly signaled one level deep in a dedicated Reference Materials list, but the bundle ships no reference, script, or asset files — every link (../../../references/skill-contract.md, ../category-narrative-mapper/SKILL.md, ../../../CONNECTORS.md, ../../../SECURITY.md, scripts/connectors/firecrawl.py, etc.) points outside the skill directory and none resolve within the bundle. Core operating detail (handoff format, save-results template, connector recipes, security handling) lives in those unshipped files, so navigation breaks at runtime; this fits 'references present but' effectively unusable / could be better organized rather than the good-structure anchor at 4.

3 / 5

Total

14

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete actions, explicit 'Use when' triggers with quoted user phrasings, third-person voice, and explicit not-for boundaries that route adjacent intents to sibling skills. The only gap is a few missing natural-language synonyms ('messaging audit', 'copy inventory') that would make trigger coverage fully comprehensive.

Suggestions

Add one or two more natural trigger phrasings users might say, e.g. 'messaging audit' or 'copy inventory', to broaden trigger-term coverage.

Trim the duplicated summary fragment at the end ('现状叙事盘点/各触点口径/意图差距/漂移基线' repeats the summary field verbatim) — it adds tokens without adding new trigger or capability information.

DimensionReasoningScore

Specificity

Lists multiple concrete actions with comprehensive coverage: 'a surface-by-surface inventory of what every owned touchpoint (homepage, pricing, docs, decks, social bios, email footers) claims RIGHT NOW, each line labeled Measured / User-provided / Estimated, plus a per-surface gap read vs the intended message and the drift-baseline snapshot'. The actions (inventory, per-surface gap read, drift-baseline snapshot) and the labeling scheme are all explicit; not below 5 because no concrete action is missing for this skill's scope.

5 / 5

Completeness

Explicitly answers both: what ('produces the narrative baseline — a surface-by-surface inventory... plus a per-surface gap read... and the drift-baseline snapshot') and when ('Use when the user asks to...') with three concrete trigger phrases. Matches the score-5 anchor exactly; a missing or weak 'when' clause would cap it at 3, which is not the case.

5 / 5

Trigger Term Quality

Good natural-phrase coverage with three quoted user utterances ('map what our surfaces say today', 'inventory our current messaging', 'find the gap between what we say and what we mean') plus concrete surface names (homepage, pricing, docs, decks, social bios, email footers) and Chinese synonyms. Not 5: misses common English variations users might say such as 'messaging audit', 'message inventory', or 'copy audit', so a few natural terms are absent.

4 / 5

Distinctiveness Conflict Risk

Clear niche (current-state surface inventory / drift baseline) with explicit negative boundaries — 'Not for authoring the canon — use message-system-architect; not for scoring the surfaces or running the vetoes — use narrative-quality-auditor' — that route adjacent intents to sibling skills, minimizing wrong-skill triggering. Matches the score-5 anchor; distinct triggers and routing are both explicit.

5 / 5

Total

19

/

20

Passed

Validation

75%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 12 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 27 suspicious

Warning

referenced_paths_exist

Referenced path issues: 4 missing, 4 deeper-than-1-level

Warning

Total

12

/

16

Passed

Repository

aaron-he-zhu/aaron-marketing-skills

Path

narrative/trace/narrative-baseline-mapper/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.