cucumber-openspec
cucumber-openspec converts OpenSpec spec.md files into deterministic Cucumber / Gherkin .feature files.
It uses zero-AI, deterministic TypeScript scripts — a state-machine parser + generator — to produce correct .feature files in any of the 80 Gherkin languages. No runtime dependencies beyond Node.js.
Quick Start
# Install the skill for your AI agent
npx skills add neurono-ml/cucumber-openspec
# Convert a project's specs to Gherkin
npx tsx scripts/index.ts -i ./openspec -o ./features
Features
- Deterministic parser — state machine, 0 dependencies
- 80 Gherkin languages — English, Portuguese, Chinese, Arabic, Japanese, and 76 more
- Tags —
@smoke,@regression,@criticalat Feature, Rule, and Scenario level - Background — shared steps via
## Backgroundsection - Scenario Outline + Examples — data-driven parameterized scenarios
- DataTables — pipe tables as step arguments
- Doc Strings — sub-bullets converted to
"""blocks - Delta specs — ADDED / MODIFIED / REMOVED sections for change management
- Gherkin grammar validation — all output validated via
@cucumber/gherkin - Localization — keywords in 80 languages via official Gherkin translations
- Agent Skill — installable via
skills.sh, works with Claude Code, Cursor, OpenCode, Codex
How It Works
OpenSpec spec.md → Gherkin .feature
───────────────────── ─────────────────
# [@tag] Domain [@tag]
## Purpose Feature: Domain
## Background Background:
- **GIVEN** step Given step
### [@tag] Requirement: Name [@tag]
#### [@tag] Scenario: Name Rule: Name
- **GIVEN** text [@tag]
| col | col | Scenario: Name
- **WHEN** text Given text
- **THEN** text | col | col |
When text
Then text