CtrlK
BlogDocsLog inGet started
Tessl Logo

narrative-resonance-monitor

Use when the user asks to "measure how our narrative is landing", "track echo rate against our canon lexicon", or "check how AI answer engines describe our brand"; produces a resonance report — echo rate (overlap of market language with the narrative-registry canon lexicon, method declared), AI-answer perception via tavily.py --answer (proxy-labeled), share-of-voice on a locked competitor panel (reusing share-of-voice-tracker), and resonance signals from bluesky.py / gdelt.py / pageviews.py — every number labeled Measured / proxy / User-provided, feeding the TALE E dimension and the upstream of the E1 evidence-integrity veto. Not for rebuilding share-of-voice machinery — use share-of-voice-tracker; not for own-site GA4/GSC analytics — use performance-monitor; not for scoring TALE profile result — use narrative-quality-auditor; not for adjudicating claims — use offer-claims-registry. 回声率/AI回答感知/份额之声/共鸣信号

69

Quality

86%

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

SKILL.md
Quality
Evals
Security

Quality

Content

73%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 a well-sequenced, highly actionable measurement workflow with strong checkpoints and clear handoffs. Its main weakness is repetition — the proxy-labeling discipline and the 'not for... use X' boundaries are restated multiple times, inflating token cost without adding clarity.

Suggestions

State the 'every number labeled Measured / proxy / User-provided' rule once in the Skill Contract and reference it from the Instructions and Save Results steps instead of repeating the full phrasing each time.

Consolidate the 'not for... use X' boundary list into the Scope Guard paragraph and drop its near-duplicate restatement in Reference Materials, keeping the reference list to pure pointers.

Show concrete invocation examples for gdelt.py, bluesky.py, and pageviews.py (not just tavily.py --answer) so each connector step is copy-paste ready rather than named-only.

DimensionReasoningScore

Conciseness

Mostly efficient project-specific protocol rather than general-knowledge padding, but the 'every number labeled Measured / proxy / User-provided' discipline is restated ~6 times and the 'not for... use X' boundary list is duplicated in both the scope guard and reference materials, which could be tightened.

3 / 5

Actionability

Each of the 7 numbered steps names a concrete script path (tavily.py --answer, gdelt.py, bluesky.py, pageviews.py) or file path with a defined echo-rate formula, but only tavily shows an actual flag and the other connector invocations lack full argument signatures.

4 / 5

Workflow Clarity

A clearly sequenced 7-step workflow with an explicit 'Done when' checklist, a NEEDS_INPUT stop-condition feedback loop in step 1, and a trend-restart checkpoint in step 5 for panel/canon switches.

5 / 5

Progressive Disclosure

Well-organized sections (Quick Start, Skill Contract, Data Sources, Instructions, Save Results, Reference Materials, Next Best Skill) with a clean one-level-deep, well-signaled reference list; no bundle files are present in this package so references cannot be verified in-bundle, and some detail that could live in references is inlined.

4 / 5

Total

16

/

20

Passed

Description

100%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.

The description is a strong, comprehensive trigger: it states what the skill produces, when to invoke it via natural user phrases, and where it hands off via explicit negative boundaries. It is dense but every clause earns its place.

DimensionReasoningScore

Specificity

Lists multiple concrete measurement actions — echo rate with declared method, AI-answer perception via tavily.py --answer, share-of-voice on a locked panel, and resonance signals from three named connectors — giving comprehensive coverage rather than a minimal set.

5 / 5

Completeness

Explicitly answers both 'what' (produces a resonance report with four named components) and 'when' (a 'Use when...' clause with concrete trigger phrases), matching the top anchor's structure.

5 / 5

Trigger Term Quality

Embeds literal natural-language user quotes ("measure how our narrative is landing", "track echo rate against our canon lexicon", "check how AI answer engines describe our brand") alongside domain terms a user would actually say.

5 / 5

Distinctiveness Conflict Risk

Four explicit 'Not for... — use X' negative-boundary clauses name the sister skills to use instead, carving a clear niche with minimal overlap risk.

5 / 5

Total

20

/

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.

Validation12 / 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: 29 suspicious

Warning

referenced_paths_exist

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

Warning

Total

12

/

16

Passed

Repository
aaron-he-zhu/aaron-marketing-skills
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.