Get the FREE Ultimate OpenClaw Setup Guide →

pactkit-scaffold

npx machina-cli add skill pactkit/claude-code-plugin/pactkit-scaffold --openclaw
Files (1)
SKILL.md
2.9 KB

PactKit Scaffold

Project file scaffolding tool for quickly creating standardized project files.

Script location: Use the base directory from the skill invocation header to resolve script paths. Classic deployment: ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py

Prerequisites

  • docs/specs/ directory must exist (required by create_spec)
  • tests/unit/ and tests/e2e/ directories must exist (required by test scaffolding)
  • Git repository must be initialized (required by git_start)

Command Reference

create_spec -- Create a Spec file

python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_spec ITEM-ID "Title"
  • ITEM-ID: Work item identifier, e.g. STORY-001, HOTFIX-001, BUG-001
  • Title: Spec title
  • Output: docs/specs/{ITEM-ID}.md (with template structure)

create_test_file -- Create a unit test

python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_test_file src/module.py
  • Automatically generates the corresponding test file based on the source file path
  • Output: tests/unit/test_module.py

create_e2e_test -- Create an E2E test

python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_e2e_test ITEM-ID "scenario_name"
  • Output: tests/e2e/test_{ITEM-ID}_{scenario}.py

git_start -- Create a Git branch

python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py git_start ITEM-ID
  • Branch prefix is inferred from the item type:
    • STORY-*feature/STORY-*
    • HOTFIX-*fix/HOTFIX-*
    • BUG-*fix/BUG-*

create_skill -- Create a Skill directory scaffold

python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_skill skill-name "Description of the skill"
  • skill-name: Skill identifier (must start with lowercase letter: ^[a-z][a-z0-9]*(-[a-z0-9]+)*$)
  • Description: Brief description for SKILL.md frontmatter
  • Output: ${CLAUDE_PLUGIN_ROOT}/skills/{skill-name}/ with SKILL.md, scripts/{clean_name}.py, references/.gitkeep
  • Refuses to overwrite if the skill directory already exists

create_board -- Create Sprint Board

python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_board
  • Creates docs/product/sprint_board.md with standard section headers
  • Output: Standard board with ## 📋 Backlog, ## 🔄 In Progress, ## ✅ Done sections
  • Refuses to overwrite if the board already exists

Usage Scenarios

  • /project-init: Use create_board to create Sprint Board (Phase 4)
  • /project-plan: Use create_spec to create a Spec template
  • /project-act: Use create_test_file to create test scaffolding
  • /project-check: Use create_e2e_test to create E2E tests
  • Ad-hoc: Use create_skill to scaffold a new reusable skill

Source

git clone https://github.com/pactkit/claude-code-plugin/blob/main/pactkit-plugin/skills/pactkit-scaffold/SKILL.mdView on GitHub

Overview

PactKit Scaffold is a project scaffolding tool to quickly generate standardized project files. It can create Spec templates, unit and E2E tests, Git branches, and ready-to-use Skill layouts. It relies on a predictable folder structure (docs/specs, tests/unit, tests/e2e) and a initialized Git repo.

How This Skill Works

The tool exposes commands like create_spec, create_test_file, create_e2e_test, git_start, create_skill, and create_board, each invoking the scaffold.py script from the CLAUDE_PLUGIN_ROOT. It writes outputs to standard locations such as docs/specs, tests/unit, tests/e2e, and skill directories, and can create new sprint boards or skill scaffolds as needed.

When to Use It

  • /project-init: Use create_board to create Sprint Board
  • /project-plan: Use create_spec to create a Spec template
  • /project-act: Use create_test_file to create test scaffolding
  • /project-check: Use create_e2e_test to create E2E tests
  • Ad-hoc: Use create_skill to scaffold a new reusable skill

Quick Start

  1. Step 1: Identify the item-id and task type (spec, test, e2e, git, board).
  2. Step 2: Run the corresponding scaffold command from your project root (e.g., create_spec STORY-001 'Title').
  3. Step 3: Verify generated outputs in docs/specs, tests/unit, tests/e2e, or the sprint board file.

Best Practices

  • Ensure prerequisites exist before running scaffold (docs/specs, tests/unit, tests/e2e, Git repo).
  • Use consistent IDs and titles for specs (e.g. STORY-001, HOTFIX-001, BUG-001).
  • Run commands from the project root to resolve script paths correctly.
  • Prefer non-destructive operations; the tool will refuse overwriting existing files or boards.
  • Keep outputs synchronized with your repo: commit generated files and boards after creation.

Example Use Cases

  • python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_spec STORY-001 'User login feature'
  • python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_test_file src/module.py
  • python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_e2e_test STORY-001 'login-flow'
  • python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py git_start STORY-001
  • python3 ${CLAUDE_PLUGIN_ROOT}/skills/pactkit-scaffold/scripts/scaffold.py create_board

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers