From scaffold
Runs scaffold CLI to discover, inspect, and generate projects/files from templates interactively or non-interactively. Includes dry-run, snapshot testing, and typed variable passing.
How this skill is triggered — by the user, by Claude, or both
Slash command
/scaffold:scaffold-runThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
User-invocable: true
User-invocable: true Auto-triggerable: true
Triggers when: User wants to run a scaffold, generate a project, create files from a template, or use the scaffold CLI.
scaffold list --json
Lists all scaffolds: aliases (from scaffoldrc), local (in .scaffold/), and system (cached remote repos). Use --json for programmatic output.
scaffold inspect <name-or-path>
Outputs JSON with questions (name, type, default, options), presets, computed values, features, and messages. Use this to understand what variables a scaffold expects.
scaffold new <scaffold>
Launches an interactive prompt for project name and all questions. The scaffold argument can be:
gh:org/repo)https://github.com/org/repo)--scaffold-dir directories, default .scaffold/)scaffold new --no-prompt --preset <preset-name> <scaffold> [key=value ...]
Use --no-prompt to skip all interactive prompts. Provide variables via:
--preset <name> — loads a named preset from the scaffold's configkey[:type]=value arguments — override or supplement preset valuesCLI arguments take precedence over preset values.
If no Project variable is set in non-interactive mode, a random name scaffold-test-NNNN is auto-generated.
scaffold new --dry-run --no-prompt --preset default <scaffold>
Renders the scaffold fully but writes nothing to disk. Outputs JSON:
{
"files": [{ "path": "path/to/file", "action": "create" }],
"errors": [],
"warnings": []
}
scaffold new --output-dir :memory: --no-prompt --preset default --snapshot stdout <scaffold>
Renders entirely in memory and outputs a full AST with file contents to stdout. Ideal for CI/CD validation and diffing.
Variables use key[:type]=value syntax. See variable-syntax.md for the full type reference.
Common examples:
scaffold new --no-prompt my-scaffold \
Project=MyApp \
description="A web service" \
port:int=8080 \
debug:bool=true \
features:[]string=auth,api
scaffold new| Flag | Default | Description |
|---|---|---|
--no-prompt | false | Disable interactive prompts |
--preset | — | Preset name for variable values |
--output-dir | . | Output directory (:memory: for in-memory) |
--dry-run | false | Show what would be created (JSON) |
--snapshot | — | Output AST to path or stdout |
--overwrite | false | Overwrite existing files |
--force | true | Allow dirty git working tree |
scaffold inspect first to understand a scaffold's variables and presets--dry-run before real runs to verify output paths--output-dir :memory: with --snapshot stdout for zero-disk testing--no-prompt is active, hooks with run_hooks=prompt are skipped--no-prompt modenpx claudepluginhub hay-kot/scaffold --plugin scaffoldCreate, edit, and test scaffold templates for projects or current-dir file generation, configuring scaffold.yaml with questions, presets, rewrites, injects, and bootstrapping via scaffold init.
Autonomously generates complete production-ready projects from descriptions: structure, code, tests, docs, config, git. Orchestrates pipeline with verification to ensure builds and tests pass.
Create project, component, or boilerplate scaffolds. Use when starting a new project, module, or component, generating boilerplate, or stamping a repeatable file structure.