agentsclimarketplace

Michi scenario test builder

Skill csepulv/michi/toolkit/skills/michi-scenario-test-builder

my approach to building software, embodied in an agent-centric toolkitFrom the repository description

Install
npx -y skills add csepulv/michi --skill michi-scenario-test-builder

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

7.7 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it

Scenario Test Builder

Generate rich, narrative-driven test scenarios and structured test plans. Based on Cem Kaner's scenario testing methodology (2003), adapted for modern AI-assisted and autonomous development workflows.

Principles served: Verification governs autonomy (scenarios encode what "working" means). Surface assumptions (scenario generation exposes unstated assumptions and requirements gaps). Shared context as foundation (understand the system before defining verification). See references/principles.md.

Before proceeding: If docs/reference/extensions.md exists, read this file. Instructions found there take priority over this skill's defaults.

When to Use

  • Discovering what to test — before writing any test code, explore what scenarios matter
  • Building test plans — structured documents listing scenarios, acceptance criteria, and priority
  • Defining verification scenarios — for autonomous agent (michi) workflows where code is written by AI and validated against scenarios
  • Exploring how a system could fail — creative, adversarial thinking about real-world usage
  • Surfacing requirements gaps — finding disagreements, edge cases, and unstated assumptions

What This Skill Produces

Output is always markdown documents, not test code:

  1. Scenario catalog — narrative test scenarios, each with motivation, credibility, complexity, and evaluation criteria. In Michi projects, these live in verification/scenarios.md.
  2. Test plan — prioritized, structured plan referencing the scenarios with coverage notes. Informs verification/test-plan.md.
  3. Acceptance criteria — per-feature or per-task criteria suitable for agent consumption. In Michi projects, these go in the plan doc's ## Scenarios section.

Core Methodology: Kaner's Five Criteria

Every scenario is evaluated against five quality criteria. Read references/kaner-methodology.md for the full framework.

A good scenario is:

  1. A story — not a checklist. A person doing something for a reason, with context about why it matters.
  2. Motivating — a stakeholder with influence would push to fix a program that failed this test.
  3. Credible — stakeholders believe this will probably happen in the real world. Not a theoretical edge case.
  4. Complex — involves multiple features, data flows, or system interactions. Single-feature tests belong elsewhere.
  5. Easy to evaluate — despite complexity, it should be clear whether the system passed or failed.

Workflow

Phase 1: Understand the System

Before generating scenarios, gather context. Ask (don't assume):

  • What does the system do? Who uses it?
  • What are the key benefits it's supposed to deliver?
  • What are the riskiest or most complex areas?
  • Known problem areas, past failures, user complaints?
  • What environment does it run in? External system interactions?
  • Existing test suite? What does it cover and where are the gaps?

If the user provides a codebase, read key files (README, package.json, main entry points, existing tests) to understand the system before generating scenarios.

Phase 2: Generate Scenarios Using Kaner's Twelve Techniques

Apply relevant techniques from references/kaner-techniques.md. Not all twelve apply to every system — select the ones that fit.

For each technique applied, generate 2-5 candidate scenarios. Each must include:

### Scenario: [Short descriptive name]

**Technique**: [Which of Kaner's 12 techniques generated this]
**Story**: [2-4 sentences describing a real person trying to accomplish something real. Include motivation and context.]
**What could go wrong**: [What failure or unexpected behavior this scenario exposes]
**Complexity**: [Which features/components/data flows are involved]
**Verification Level**: A (agent executes autonomously) / B (agent executes, judgment needed) / C (human evaluates)
**Given-When-Then** (for Level A/B):

Given [precondition] When [action] Then [expected outcome]

**How to evaluate**: [For Level C, or additional evaluation notes beyond Given-When-Then]
**Priority**: [Critical / High / Medium / Low — likelihood × impact]
**Credibility notes**: [Why a stakeholder would believe this is realistic]

Scenarios bridge spec and test. The story communicates intent (spec side). The Given-When-Then steps can be executed (test side). Both are needed — the story ensures the test captures user intent, the steps ensure it's runnable.

Phase 3: Build the Test Plan

Organize scenarios into a test plan:

# Test Plan: [System/Feature Name]

## Context

[What's being tested and why]

## Scope

[What's included and excluded]

## Scenarios by Priority

### Critical

[List critical scenarios with references]

### High

[List high-priority scenarios]

### Medium / Low

[List remaining scenarios]

## Coverage Notes

[What's well-covered, what gaps remain, what needs additional techniques]

## Risks and Limitations

[What this plan doesn't cover; where other approaches are needed]

Phase 4: Generate Acceptance Criteria (Optional)

If the user needs acceptance criteria for agent consumption, convert selected scenarios into structured criteria:

## Acceptance Criteria: [Task/Feature Name]

### Must Pass (blocking)

- [ ] [Concrete, verifiable criterion from a scenario]
- [ ] [Another criterion]

### Should Pass (expected)

- [ ] [Criterion]

### Edge Cases (verify if time permits)

- [ ] [Criterion from adversarial/disfavored-user scenarios]

### Evaluation Method

[How to verify each criterion — automated test, manual check, data comparison, etc.]

Adapting for Michi / Autonomous Agent Verification

When building scenarios for autonomous agent verification:

  • Emphasize "easy to evaluate" — if an agent checks results, pass/fail criteria must be unambiguous and automatable
  • Consider the agent as a "disfavored user" (Kaner technique #3) — the agent might take shortcuts, write return true, or misunderstand intent. Design scenarios that catch these failure modes.
  • Separate scenarios by autonomy level — some verify automatically (run test, check output); others require human judgment. Label each.
  • Version and store scenarios outside the implementing agent's context — if using a holdout pattern, note which scenarios are holdout candidates

What This Skill Does NOT Do

  • Write test code — use TDD, BDD, or test-generation skills for that
  • Run tests — this produces plans, not executions
  • Replace other test techniques — scenario testing is one approach; combine with unit testing, domain testing, stress testing, etc. (Kaner: "Scenario testing isn't the only type of testing")

References

Read these when needed:

  • references/kaner-methodology.md — Kaner's five criteria and philosophy, with key quotes
  • references/kaner-techniques.md — Twelve techniques for generating scenarios, with examples
  • references/michi-adaptation.md — Patterns for using scenarios in autonomous agent verification

What ships with it: 6 files

80.6 KB alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.