init-bdd-project

Initialize a BDD-based CLI project with Click, Typer, or argparse.

Updated Aug 27, 2026
One-click install
npx skills add https://github.com/lilliangreenberg/gherkin-expansion --skill init-bdd-project
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: init-bdd-project
Source: https://github.com/lilliangreenberg/gherkin-expansion/tree/main/skills/init-bdd-project
Command: npx skills add https://github.com/lilliangreenberg/gherkin-expansion --skill init-bdd-project

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill automates the complete initialization of a BDD-based CLI project following best practices outlined in the Universal BDD Guide. It creates a production-ready project structure with:

  • Complete directory layout (src/, tests/, features/)
  • Configured pyproject.toml with all necessary dependencies
  • Behave environment setup with domain-specific hooks
  • Template feature files based on the BDD workflow
  • Pre-configured tooling (ruff, mypy, pytest, behave)
  • .gitignore with standard exclusions

Core Features & Use Cases

  • Complete project scaffolding for a BDD-based CLI tool, including source, tests, and features
  • Pre-configured development tooling and CI-friendly structure
  • Supports Click, Typer, and argparse with optional API, database, or file integrations
  • Use case: Kick off a new CLI project that uses BDD/Gherkin specifications with Behave for testing

Quick Start

To initialize a new project, run the skill with required inputs:

  • Project name (e.g., "my-cli-project")
  • Framework: click, typer, or argparse
  • Optional domain description and integrations Example: initialize a new project named my-cli with the click framework and no integrations.

Frequently Asked Questions about init-bdd-project

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scaffold a Python CLI project with BDD features and Behave?

To scaffold a Python CLI project with BDD features, this tool initializes a complete directory structure with src/, tests/, and features/ folders, configures pyproject.toml dependencies, and sets up Behave with domain-specific hooks and templated Gherkin feature files.

What's the best way to set up a BDD-ready CLI project using Click or Typer?

The best way to set up a BDD-ready CLI project is using this scaffolding tool, which supports Click, Typer, and argparse frameworks while automatically configuring pre-configured tooling like ruff, mypy, pytest, and behave.

Can I include database or API integrations when initializing a BDD CLI project?

Yes, you can include API, database, or file integrations when initializing your BDD CLI project. You provide a domain description and select optional integrations during setup to tailor the scaffolded structure to your specific requirements.

Do I need Python 3.11 and uv to initialize a BDD project with this tool?

Yes, you need Python 3.11+ and a uv-based workflow. The tool checks these prerequisites prior to setup to ensure compatibility and verify the environment meets the required development standards.

What is included in a BDD CLI project scaffold for production readiness?

A production-ready BDD CLI project scaffold includes a complete directory layout, configured pyproject.toml, Behave environment setup with hooks, template feature files, pre-configured tooling for ruff, mypy, and pytest, and a standard .gitignore.