presetify
vextensify-v1.0.0Create and validate presets and preset catalogs.
Presetify Extension
A Spec Kit extension that converts project-local template and command overrides into a shareable preset.
Overview
When developing a preset you often start by experimenting with project-local overrides — files in .specify/templates/overrides/ that sit at the top of the template resolution stack. Once you're happy with the result, Presetify packages those overrides into a proper preset with a preset.yml manifest, ready to be shared, version-controlled, and installed in other projects.
Installation
specify extension add presetify
Commands
| Command | Purpose |
|---|---|
/speckit.presetify.create-preset | Package project-local overrides into a preset |
/speckit.presetify.create-catalog | Create a catalog.json for a self-hosted preset catalog |
/speckit.presetify.validate-catalog | Validate a catalog.json for schema correctness |
/speckit.presetify.validate-preset | Validate a preset directory before publishing |
Usage
1. Experiment with Overrides
Place your customized templates in .specify/templates/overrides/:
.specify/
└── templates/
└── overrides/
├── spec-template.md
└── plan-template.md
2. Create a Preset
Once the overrides are working as expected:
/speckit.presetify.create-preset my-team-preset
The command will:
- Discover all override files
- Ask for preset metadata (name, description, author, etc.)
- Generate a preset directory with
preset.yml,README.md, and the template/command files - Optionally remove the original overrides to avoid shadowing
3. Test the Preset
specify preset add --dev ./my-team-preset
specify preset resolve spec-template
4. Share
Version-control the generated preset directory and publish it to the preset catalog if desired.
Creating a Self-Hosted Catalog
If you maintain multiple presets and want to make them discoverable via specify preset search:
/speckit.presetify.create-catalog
The command will:
- Ask for the URL where you'll host the catalog
- Optionally scan preset directories to auto-populate entries from their
preset.ymlmanifests - Generate a valid
catalog.json - Show how to register the catalog with
specify preset catalog add
To validate an existing or edited catalog:
/speckit.presetify.validate-catalog ./catalog.json
Checks JSON syntax, schema conformance, semver format, alphabetical ordering, and required fields.
Validating a Preset
Before publishing, validate the preset directory:
/speckit.presetify.validate-preset ./my-preset
Checks preset.yml schema, referenced files exist, unreferenced files, ID format, semver, and recommended supporting files.
What Gets Packaged
| Source | Destination |
|---|---|
.specify/templates/overrides/*.md | <preset>/templates/ |
.specify/commands/overrides/*.md | <preset>/commands/ |
Stats
Version
Install
Using the Specify CLI
specify extension add --from https://github.com/mnriem/spec-kit-extensions/releases/download/presetify-v1.0.0/presetify.zip