openclawclaude-codev1.0.0

specflow

@Hulupeep25 stars· last commit 1mo ago· 26 open issues

Specs that enforce themselves. Turn requirements into contracts that break the build when violated.

8.1/10
Verified
Mar 9, 2026

// RATINGS

GitHub Stars
⭐⭐ 25GitHub ↗

Growing

🟢ProSkills ScoreAI Verified
8.1/10
📍

Not yet listed on ClawHub or SkillsMP

// README

# Specflow **Specs that enforce themselves.** LLMs drift. You write a rule; three iterations later the model "helpfully" ignores it. Specflow turns your specs into contract tests that break the build when violated — so drift can't ship. --- ## The Problem ```typescript // Your spec: "Service workers MUST NOT use localStorage" // LLM adds this anyway after iteration 3: const token = localStorage.getItem('auth') // No crash. Just drift. ``` **LLMs don't read. They attend.** Your carefully worded spec competes with millions of training examples. Three hours into a session, the model drifts while presenting itself as knowing exactly what you're working on. You can't fix this with better prompts. You need a gate. --- ## The Solution Contract tests scan your source code for forbidden patterns. Break a rule → CI fails before build. Journey tests run Playwright against your critical flows. If a journey doesn't pass, the feature isn't done. > *Do what you like — explore, generate, surprise me — but I'm going to type-check you at the end.* --- ## Get Started **One command installs everything:** ```bash bash /path/to/Specflow/setup-project.sh /path/to/your/project ``` This creates contracts, agents, hooks, tests, and verifies everything passes. **Then update CLAUDE.md** with your project context and tell Claude Code: ``` Execute waves ``` For all setup paths (manual, SKILL.md, Claude-assisted), see [Getting Started](docs/getting-started.md). ### Already have Specflow? Update it. Paste this into Claude Code: ``` Pull the latest Specflow from /path/to/Specflow (or git pull it first). Run bash /path/to/Specflow/setup-project.sh . to update my setup. Then run bash /path/to/Specflow/verify-setup.sh and fix every failure. I want 0 failures before we start any tickets. ``` The setup script is safe to re-run — it skips existing files and backs up settings before merging. See [Updating an Existing Setup](docs/getting-started.md#updating-an-existing-setup) for more options. --- ## What "Specflow-Compliant" Actually Means An issue or spec is not Specflow-compliant just because it has `REQS` and `JOURNEYS`. Minimum required sections: - `REQS` - `INVARIANTS` - `Persona Simulation` - `JOURNEYS` - `TESTS` - `DEFINITION OF DONE` Minimum required traceability: - every `MUST` requirement maps to at least one test - each ticket/spec declares whether it has a direct UI surface - direct UI surfaces must have Playwright coverage or an explicit `N/A` justification - docs/discoverability work must either expose a real discovery surface or declare itself repo-only - persona simulation must feed structured pre-flight findings (`simulation_status`, `CRITICAL`, `P1`, `P2`) Test categories can include: - feature - contract - security - Playwright / e2e - unit / integration when appropriate If `INVARIANTS` or `TESTS` are missing, the issue/spec is not compliant. If a workflow, UI, permissions, or automation ticket is missing `Persona Simulation`, it is not compliant. --- ## FAQ **Isn't this just more testing?** No. Tests verify behaviour. Contracts verify architecture. "No localStorage for tokens" survives any refactor. "login() returns a token" doesn't. **What if I don't have a perfect spec?** Start with "document what works today." Your first contract can be: whatever we're doing now, don't break it. **Can LLMs actually follow contracts?** Yes — and even if they don't, tests catch it in CI. You don't need the LLM to behave. You need it to be checkable. **How is this different from linting?** Linting: syntax and style. Contracts: architecture and business rules. Both valuable, different problems. --- ## Built on Real Projects Delivered 280+ GitHub issues on a production project using Specflow. 0 critical E2E anti-patterns (down from 117). Autonomous wave execution across 30 waves. [Full story →](docs/team-workflows.md#production-track-record) --- ## Where Do You Want to Go? | I want to... | Go here | |---|---| | Decide if Specflow is right for my project | [Should I use Specflow?](docs/should-i-use-specflow.md) | | Install and configure Specflow | [Getting Started](docs/getting-started.md) | | Understand how it works | [How It Works](docs/how-it-works.md) | | Use Specflow with a team | [Team Workflows](docs/team-workflows.md) | | Set up CI enforcement | [CI Integration](CI-INTEGRATION.md) | | Browse all 23+ agents | [Agent Library](agents/README.md) | | Commands and config reference | [Reference](docs/reference.md) | --- *Made for developers who want specs that actually matter.* [Colm Byrne](https://www.linkedin.com/in/colmbyrne/) · [GitHub](https://github.com/Hulupeep) · [MIT License](https://opensource.org/licenses/MIT) · [Issues / Ideas](https://github.com/Hulupeep/Specflow/issues) --- ## Try It (2 minutes) ```bash cd demo && npm install && npm run demo ``` A working app. An LLM "optimisation" that breaks it. Contract tests catching what unit tests missed.

// HOW IT'S BUILT

TECHNOLOGY STACK

TypeScript
Node.js
JavaScript

This skill is built with TypeScript, Node.js, JavaScript..

KEY FILES

CONTRACTS-README.mdREADME.mdREADME_FRONTIER.mdSKILL.md

// REPO STATS

25 stars
26 open issues
Last commit: 1mo ago

// PROSKILLS SCORE

8.1/10

Excellent

BREAKDOWN

Code Quality7/10
Documentation9/10
Functionality8/10
Maintenance8/10
Security8/10
Uniqueness9/10
Usefulness8/10

// DETAILS

Categorycoding
Author@Hulupeep
Versionv1.0.0
PriceFree
Securitypending