specfact init
Bootstrap SpecFact CLI in a repository. Use init ide for IDE-specific setup; module lifecycle is under specfact module.
Usage
specfact init [OPTIONS]
specfact init ide [OPTIONS]
Options
| Option | Type | Description |
|---|---|---|
--repo |
DIRECTORY | Repository path (default: current directory) |
--profile |
TEXT | First-run profile preset (see below) |
--install |
TEXT | Comma-separated bundle names or all to install without prompting |
--install-deps |
Install required packages for contract enhancement |
Profiles
Profiles select a default set of bundles appropriate for your team setup:
| Profile | Description |
|---|---|
solo-developer |
Minimal bundle set for individual projects |
backlog-team |
Backlog sync and ceremony bundles for agile teams |
api-first-team |
Spec validation and contract testing bundles |
enterprise-full-stack |
All official bundles including governance and adapters |
# Bootstrap with the solo-developer preset
specfact init --profile solo-developer
# Install specific bundles during init
specfact init --install backlog,code-review
IDE Setup
The init ide subcommand discovers prompt templates from core (bundled specfact_cli resources or your repo checkout) and from installed modules under the effective module roots (builtin, project .specfact/modules, user ~/.specfact/modules, marketplace, and SPECFACT_MODULES_ROOTS). It is a re-sync command: it only copies what is already installed; it does not download or extract modules. If prompts are missing, install or seed modules first (for example specfact module init --scope project or specfact module install --scope user).
# Initialize Cursor IDE integration (interactive: pick IDE, then prompt sources)
specfact init ide --ide cursor
# Non-interactive: export all discovered sources (default)
specfact init ide --ide cursor --repo .
# Non-interactive: only core, or a comma-separated list of module ids
specfact init ide --ide cursor --prompts core
specfact init ide --ide cursor --prompts all
specfact init ide --ide cursor --prompts "core,nold-ai/specfact-backlog"
# Initialize with dependency installation
specfact init ide --install-deps
Exported IDE files are placed under per-source subfolders (for example .cursor/commands/core/, .cursor/commands/nold-ai__specfact-backlog/) so names collide deterministically and provenance stays visible.
This creates or refreshes:
.specfact/directory structure.specfact/templates/backlog/field_mappings/with default field mapping templates when available- IDE-specific command files under the IDE export directory, namespaced by prompt source
Dependency Installation
Use --install-deps to install optional packages required for contract enhancement (CrossHair, beartype, icontract):
specfact init --install-deps
Prefer specfact init ide --install-deps when setting up IDE integration at the same time.
Typical First-Run Sequence
# 1. Install SpecFact CLI
pip install specfact-cli
# 2. Bootstrap with a profile
specfact init --profile solo-developer
# 3. Set up IDE integration
specfact init ide --ide cursor
# 4. Verify modules are installed
specfact module list