-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
specgen is a CLI tool for transforming steering documents into target-specific outputs.
Use the latest published package (including previews):
dotnet tool install --global aabs.steergen --prereleaseVerify installation:
steergen --versionCreate a new working folder, move into it, and initialize baseline structure:
mkdir -p ~/tmp/specgen-demo
cd ~/tmp/specgen-demo
steergen init . --target speckit --target kiroThis creates:
- steering/global
- steering/project
- speckit
- kiro
- steergen.config.yaml
The generated steergen.config.yaml is pre-populated with the bootstrapped globalRoot, projectRoot, and registeredTargets values.
Create these files in your text editor.
File: steering/global/security-baseline.md
---
id: global-security-baseline
---
:::rule id="SEC-001" severity="error" domain="security"
All production APIs must enforce authentication and authorization.
:::
:::rule id="SEC-002" severity="warning" domain="security"
Sensitive values must not be committed in source control.
:::File: steering/project/release-policy.md
---
id: project-release-policy
---
:::rule id="REL-001" severity="info" domain="delivery"
Every release candidate must pass CI, validation, and deterministic generation checks.
:::
:::rule id="REL-002" severity="warning" domain="delivery" profile="preview"
Preview builds should be clearly labeled and announced as non-stable.
:::Validate the documents:
steergen validateThe initialized config already registers the targets supplied to steergen init.
Add another target:
steergen target add copilot-agentUse --config <path> only if the config file has a different name or is not in the current directory.
Generate outputs for all registered targets from config:
steergen run --output .steergen/outInspect generated outputs:
ls -1 .steergen/out
ls -1 .steergen/out/speckit
ls -1 .steergen/out/kiro
ls -1 .steergen/out/copilot-agentOptionally inspect the resolved model as JSON:
steergen inspect | head -n 20dotnet tool uninstall --global aabs.steergenTop-level help:
steergen --helpCommand-specific help:
steergen run --help
steergen target --help
steergen validate --help