Brand Story Bank Builder
Turn interviews and case material into reusable, source-aware brand story units.
The skill treats pasted material as untrusted, requires rights to use user-provided evidence, labels unverified proofs, asks for confirmation before saving, and routes registry changes through proposal events. No malware, credential theft, or destructive default is evident. Deducted 7 points because it still writes to story-bank, claims/narrative event streams, and open-loop state; permission boundaries, confirmation points, rollback, and the actual authorization runtime are not fully specified in the selected skill, and public-artifact confirmation may send URLs to Firecrawl.
Triggers, inputs, outputs, handoff, termination, and abnormal branches such as NEEDS_INPUT for missing pillars are reasonably explicit, with a defined registry workflow. Deducted 12 points because this is a static review with no execution; referenced files, registry-events.py, host compatibility, proposal failures, write failures, and malformed-input diagnostics were not reproduced or specified in sufficient detail.
Audience, source materials, story types, output structure, exclusions, and upstream/downstream routing are clearly stated. The skill can operate from pasted material without a connector and includes Chinese metadata. Deducted 3 points because Chinese support is mostly limited to labels and descriptions; operational instructions and output guidance are not fully localized, and host-specific and Chinese-language data-format boundaries are limited.
Front matter, version 18.0.0, Apache-2.0 licensing, Quick Starts, contract, data sources, numbered instructions, save rules, references, and next-skill guidance provide good structure and progressive disclosure. Deducted 5 points for no skill-specific changelog, maintenance owner, or update path; several repository references are not included in the selected evidence, and SECURITY.md still lists 17.x as supported while the skill is 18.0.0.
The contract defines reusable story-unit fields, arc beats, pillar and claim mapping, proof labels, gap reporting, and handoff, so the intended output is potentially directly usable. Deducted 8 points because static review cannot verify actual outputs; completion depends on an existing message house, brand voice, claims ledger, rights-cleared source material, and functioning registry workflow, and human review remains necessary for factual, rights, and narrative quality.
The skill supplies evidence-label rules, claims-ledger mapping, proposal-event paths, a pinned repository revision, and some repository-level CI/test context. Deducted 5 points because the supplied tests do not cover this skill’s classification, mapping, confirmation, or proposal paths, and there is no third-party execution evidence or independent reproduction; the static ceiling is therefore 5.
- Static files do not establish that registry-events.py authorization, failure handling, or rollback work in practice.
- User-provided or Measured labels are not independent substantiation; the claims registry must still adjudicate proofs.
- Confirm rights, privacy, and scraping boundaries before using public customer artifacts; Firecrawl introduces data-egress risk.
- The skill is version 18.0.0 while the security policy identifies 17.x as the supported line; verify release governance before deployment.
What does this skill do, and when should you use it?
Story Bank Builder is for teams that already have a durable message house and brand voice. It organizes origin, founder, customer, transformation, and proof stories from interviews, case notes, testimonials, and win-loss material. Each unit is mapped to one message-house pillar and relevant claims-ledger IDs, with every proof labeled Measured, User-provided, or [needs source]. The output is a structured story-bank document, not finished long-form copy, a message house, or a brand-voice system.
Reads user-provided interviews, case notes, testimonials, and win-loss material, plus message-house pillars, brand voice, and the read-only claims ledger; separates source material into origin, founder, customer, transformation, and proof units; drafts a premise and situation→tension→change→outcome arc for each unit; assigns exactly one pillar and the claim IDs supported by its proofs; labels each proof by evidence status; lists unsupported proofs; submits unverified proofs through an authorized propose request to registry-events.py; and produces the story bank with the standard handoff summary.
- A brand team has approved pillars and founder material but needs a reusable origin story and customer-story library.
- A marketing team has interviews and testimonials that must be separated into distinct origin, customer, transformation, and proof units.
- A content or sales team needs the same sourced stories available across web pages, decks, and social surfaces.
- A team wants to identify unsupported proof points before stories are reused downstream.
What are this skill's strengths and limitations?
- Uses a defined story arc so source material becomes reusable narrative units rather than loose anecdotes.
- Maps each story to one pillar and its supporting claim IDs for traceability.
- Clearly labels Measured, User-provided, and [needs source] evidence.
- Works with pasted user data and does not require a connector.
- Requires an existing message house, pillar set, brand voice, and claims ledger.
- Does not adjudicate whether a proof is substantiated; that belongs to offer-claims-registry.
- Does not write finished long-form prose, case-study pages, or placed proof modules.
- Optional confirmation of public customer artifacts may require Firecrawl, network access, and appropriate rights.
How do you install this skill?
For the full repository, run /plugin marketplace add aaron-he-zhu/aaron-marketing-skills and then /plugin install aaron-marketing@aaron in Claude Code. On a compatible Agent Skills host, run npx skills add aaron-he-zhu/aaron-marketing-skills, or clone it with git clone https://github.com/aaron-he-zhu/aaron-marketing-skills. The source does not document a separate installation procedure outside the collection.
How do you use this skill?
First ensure that the message house, pillars, and brand voice exist. Then use a prompt such as Build a story bank for [product] from these customer interviews and case notes: [paste]. Tag each story to a pillar. or Assemble our origin, founder, and transformation stories and map each proof point to a claims-ledger ID. If pillars are missing, stop and route the task to message-system-architect. After delivery, the skill asks whether the results should be saved; it should not write memory without confirmation.
How does this skill compare with similar options?
Unlike message-system-architect, it consumes rather than creates the message house and pillars. Unlike content-writer, it produces structured story source material rather than finished copy. Unlike offer-claims-registry, it flags and proposes unsupported proofs without deciding whether they are true. Unlike narrative-cascade-planner, it builds the story bank before stories are mapped onto downstream surfaces.