mcpbeat

Scenario Writer

sveltejs/scenario-writer

Picks a new scenario to create based on the description of the user, delegates the writing of it to the ai-scenario-writer subagent and verify the correctness.

5k tokens
context cost
the whole folder, loaded on every use
2
files
instructions only
0
copies elsewhere
how many repositories repackaged it
38
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/sveltejs/ai --skill scenario-writer

What comes with it

18 248 bytes besides the instruction
references/scenario.md

What it tells the agent to use

found in the instruction text
Task spawns other agents

The instruction itself

2 sections, as written by the author

Implement the scenario proposed by the user if that has not been implemented yet. Then invoke the ai-scenario-writer subagent to actually write the test in a separate context. When it finishes please validate its work and launch a new subagent with a new task if the user proposed multiple scenarios (or to correct the work of the last one).

Test Structure

Each test in the tests/ directory should have:

tests/
  {test-name}/
    Reference.svelte  - Reference implementation (known-good solution)
    test.ts          - Vitest test file (imports "./Component.svelte")
    prompt.md        - Prompt for the AI agent
    validator.ts     - Extra validation to verify with static analysis that the code written adhere to Svelte best practices

The benchmark:

  • Reads the prompt from prompt.md
  • Asks the agent to generate a component
  • Writes the generated component to a temporary location
  • Runs the tests against the generated component
  • Reports pass/fail status

Verifying Reference Implementations

To verify that all reference implementations pass their tests:

bun run verify-tests

This copies each Reference.svelte to Component.svelte temporarily and runs the tests.

How to use it

Copy the folder

Take sveltejs/scenario-writer from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.