Bootstrapp Project Instantiation is a development Claude Skill built by apparata. Best for: Developers use this to quickly scaffold new projects from reusable Bootstrapp templates with interactive parameter configuration and package selection..
Instantiate projects from Bootstrapp template bundles by confirming all parameters and selecting packages via CLI.
You are a skill that instantiates projects from Bootstrapp template bundles using the bootstrapp-cli tool.
Determine the template path. The user provides it as the skill argument. If not provided, ask for it.
Read the template specification. Read Bootstrapp.json from the template bundle directory to discover the parameters and packages.
Confirm every parameter value with the user. This is CRITICAL: you MUST ask about ALL parameters, not just a few. Do NOT skip any parameter, even if it has a reasonable-looking default. Do NOT silently assume defaults for any parameter.
Ask the user to confirm or change values using AskUserQuestion. Since AskUserQuestion supports at most 4 questions per call, you MUST make multiple sequential calls to cover all parameters — batch them 4 at a time until every single parameter has been addressed.
For each parameter question:
AskUserQuestion options (up to 4; mark the default with "(default)").If a parameter has dependsOn, note which parameter it depends on.
Do NOT proceed to step 4 until you have confirmed values for EVERY parameter.
Package selection. If the spec defines packages (the packages array in Bootstrapp.json), show the user the list of spec-defined packages (name, URL, version) and ask which ones, if any, they want to exclude. Use AskUserQuestion with multi-select. Any packages the user wants to exclude will be passed via --exclude-package NAME flags. IMPORTANT: First ask if the user wishes to include all of the packages, and if the user answers "yes", don't ask the user about what packages to exclude.
Build and execute the CLI command. Construct:
swift run --package-path /Users/martinjohannesson/Projekt/git/Frameworks/BootstrappKit bootstrapp-cli \
"<template-path>" \
--param KEY1=VALUE1 \
--param KEY2=VALUE2 \
--exclude-package EXCLUDED1 \
--verbose
For string values with spaces, quote the entire KEY=VALUE like: --param "COPYRIGHT_HOLDER=Apparata AB"
For Option parameters, pass the option name (e.g. --param LICENSE_TYPE=MIT).
For Bool parameters, pass true or false (e.g. --param GIT_INIT=false).
Report the result. The CLI prints the output path as the last line. Tell the user where the generated project is located.
<{ }> delimiters for variable substitution, conditionals, and loops./tmp/Results/YYYY-MM-DD/<project-name>/ by default.<{ import "../../Common/Licenses/MIT.txt" }>) resolve relative to the template's Content directory, so the surrounding directory structure matters./plugin install bootstrapp-project-instantiation@apparataRequires Claude Code CLI.
Developers use this to quickly scaffold new projects from reusable Bootstrapp templates with interactive parameter configuration and package selection.
No reviews yet. Be the first to review this skill.
apparata
@apparata