CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

story-bank-builder

Use when the user asks to "build a story bank", "collect our origin and customer stories", or "assemble reusable proof stories for the message"; assembles reusable narrative units — origin, founder, customer, transformation, and proof stories — each tagged to a claims-ledger ID and a message-house pillar, with every proof labeled Measured / User-provided / [needs source]. Not for authoring the message house or pillars — use message-system-architect; not for brand voice or naming rules — use brand-language-codifier; not for finished long-form prose — use content-writer; not for adjudicating whether a proof is true — use offer-claims-registry. 品牌故事库/起源客户转化/证据故事单元

Quality

87%

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

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

A well-constructed instruction skill: the workflow is explicitly gated and checklisted, and the guidance is specific enough to execute without invention. Its weaknesses are redundancy — governance boilerplate and cross-skill routing repeated many times — and references that all live outside the bundle with no local supporting files.

Suggestions

State the propose-request protocol ('memory/events/claims.ndjson via an authorized operation: propose request to registry-events.py — never adjudicates') once in the Skill Contract and refer back to it elsewhere; it currently appears nearly verbatim five times.

Trim the Scope guard, which repeats the description's four 'not for X' exclusions almost word-for-word; a one-line summary plus the Reference Materials links would carry the same routing information at a fraction of the tokens.

Consolidate the inline cross-skill links scattered through the intro, Skill Contract, Instructions, and Next Best Skill into the annotated Reference Materials section to remove duplicated routing text and reduce the risk of link drift.

DimensionReasoningScore

Conciseness

The body is dense and assumes Claude's competence (no explanations of known concepts), but the governance phrase 'via an authorized operation: propose request to registry-events.py' and the 'this skill never adjudicates' caveat are repeated roughly five times across the intro, Skill Contract, Instructions, and Save Results, and the Scope guard re-states the description's full exclusion list. This matches the 3 anchor (mostly efficient but could be tightened) rather than 2, since the padding is repetition of sentences, not whole padded sections.

3 / 5

Actionability

For an instruction-only skill the guidance is fully executable: exact read/write paths (memory/narrative/story-bank-builder/, memory/claims/claims-ledger.md), concrete story-type definitions, an explicit arc-beat pattern (situation → tension → change → outcome), decision rules ('a story that fits no pillar is either orphaned (drop it) or a signal the pillar set is incomplete'), and a hard stop condition (NEEDS_INPUT). This matches the 5 anchor under the code-vs-instruction scoring note — no code is required, and the specific guidance covers the common cases.

5 / 5

Workflow Clarity

The seven numbered steps are clearly sequenced with explicit validation checkpoints: step 1 gates on pillar existence with a NEEDS_INPUT stop, step 6 flags pillars lacking Measured or ledger-approved proof as an E-dimension risk, the 'Done when' section is a completion checklist, and conditional Next Best Skill routing handles the error-recovery paths. This matches the 5 anchor (clear sequence, explicit validation, feedback routing) rather than 4, where checkpoints would only be mostly present.

5 / 5

Progressive Disclosure

The body has good section structure and a dedicated, annotated Reference Materials section with one-level-deep references, but no bundle files exist alongside SKILL.md (no references/, scripts/, or assets/ directories) — every link points outside the skill directory via fragile ../../../ relative paths that cannot be verified from the bundle — and the same cross-skill links are duplicated inline throughout the prose. This matches the 4 anchor (good structure, minor organization gaps) rather than 5.

4 / 5

Total

17

/

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.

A strong description: concrete capabilities, explicit trigger phrases, and unusually thorough negative-scope disambiguation against four neighboring skills. The only weakness is slightly narrow trigger vocabulary — it covers 'story bank', 'origin stories', and 'proof stories' but omits synonyms like case studies or testimonials that a user might naturally say.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'assembles reusable narrative units — origin, founder, customer, transformation, and proof stories — each tagged to a claims-ledger ID and a message-house pillar, with every proof labeled Measured / User-provided / [needs source]' — which matches the 5 anchor (multiple specific concrete actions, comprehensive coverage); it is not a 4 because no meaningful capability within the niche is left out.

5 / 5

Completeness

Both questions are explicitly answered: 'when' via the opening 'Use when the user asks to...' with three concrete trigger phrases, and 'what' via the assemble/tag/label statement. This clearly matches the 5 anchor and exceeds 4 because the 'when' clause is explicit with quoted trigger phrases rather than merely present.

5 / 5

Trigger Term Quality

The quoted triggers ('build a story bank', 'collect our origin and customer stories', 'assemble reusable proof stories for the message') are natural phrases a user would say, but common variations such as 'case studies', 'testimonials', or 'customer success stories' are missing, matching the 4 anchor (good coverage, a few natural terms missing) rather than 5 (comprehensive synonyms).

4 / 5

Distinctiveness Conflict Risk

Four explicit negative boundaries ('Not for authoring the message house... use message-system-architect', 'not for brand voice... use brand-language-codifier', 'not for finished long-form prose... use content-writer', 'not for adjudicating whether a proof is true... use offer-claims-registry') give it a clear niche with distinct triggers and minimal conflict risk, matching the 5 anchor.

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: 32 suspicious

Warning

referenced_paths_exist

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

Warning

Total

12

/

16

Passed

Repository

aaron-he-zhu/aaron-marketing-skills

Path

narrative/architect/story-bank-builder/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.