Repository navigation
[Bug]: Can't initialize project #4994
Copy link
Copy link
Open
Labels
bugbug-assessseverity-hightriage-must-haveVerdict: high-value, important work for Spec Kit — do firstVerdict: high-value, important work for Spec Kit — do first
Description
Bug Description
Can't initialize a new project after fresh install of specify-cli
Steps to Reproduce
Followed install instructions (https://github.com/github/spec-kit#get-started and https://github.github.com/spec-kit/installation.html) to install specify-cli. Tried to initialize first project:
$ specify init my-project --integration claude
Usage: specify init [OPTIONS] [PROJECT_NAME]
Try 'specify init --help' for help.
╭─ Error ───────────────────────────────────────────────────────────────────────────╮
│ No such option: --integration │
╰───────────────────────────────────────────────────────────────────────────────────╯
I check specify help and see the parameter changed to --ai
--ai TEXT AI assistant to use: claude, gemini ...
I retried using the --ai parameter:
$ specify init my-project --ai claude
███████╗██████╗ ███████╗ ██████╗██╗███████╗██╗ ██╗
██╔════╝██╔══██╗██╔════╝██╔════╝██║██╔════╝╚██╗ ██╔╝
███████╗██████╔╝█████╗ ██║ ██║█████╗ ╚████╔╝
╚════██║██╔═══╝ ██╔══╝ ██║ ██║██╔══╝ ╚██╔╝
███████║██║ ███████╗╚██████╗██║██║ ██║
╚══════╝╚═╝ ╚══════╝ ╚═════╝╚═╝╚═╝ ╚═╝
GitHub Spec Kit - Spec-Driven Development Toolkit
╭────────────────────────────────────────────────────────────────────────────╮
│ │
│ Specify Project Setup │
│ │
│ Project my-project │
│ Working Path /home/jeffstoner/Development/DevOps │
│ Target Path /home/jeffstoner/Development/DevOps/my-project │
│ │
╰────────────────────────────────────────────────────────────────────────────╯
Selected AI assistant: claude
Selected script type: sh
No matching release asset found for claude (expected pattern: spec-kit-template-claude-sh)
╭───────────────────── Available Assets ─────────────────────────────────────╮
│ (no assets) │
╰────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────── Failure ───────────────────────────────────────────╮
│ Initialization failed: 1 │
╰────────────────────────────────────────────────────────────────────────────╯
If I just use specify init my-project I walk through the prompts and select claude as my AI agent and sh for my shell option (I am never given the option for Python) and get the same results.
Running on:
CLI Version 0.1.6
Template Version 1.2.0
Released 2026-10-13
Python 3.12.3
Platform Linux
Architecture x86_64
OS Version #1 SMP PREEMPT_DYNAMIC Mon Apr 21 17:08:54 UTC 2025
Expected Behavior
I expect a new project directory to be created.
Actual Behavior
Error message, no project created.
Specify CLI Version
CLI 0.1.6, Template 1.2.0
AI Agent
Claude Code
Operating System
Ubuntu 24.04.5 LTS
Python Version
3.12.3
Error Logs
Additional Context
No response
AI Disclosure
N/A
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugbug-assessseverity-hightriage-must-haveVerdict: high-value, important work for Spec Kit — do firstVerdict: high-value, important work for Spec Kit — do first
Activity
github-actions commentedon Oct 17, 2026
Bug assessment — init-cli-template-mismatch: Valid · severity high
Bug Assessment: Can't initialize project
Report (summarized)
The reporter installed
specify-cliand followed the published getting-started instructions. With CLI 0.1.6 and Template 1.2.0 on Ubuntu 24.04.5 / Python 3.12.3, the documentedspecify init my-project --integration claudeoption is rejected as unknown. The CLI help instead exposes--ai. Retrying withspecify init my-project --ai claudereaches initialization but fails withNo matching release asset found for claude (expected pattern: spec-kit-template-claude-sh)and reports no available assets. Interactive selection of Claude andshfails the same way. No comments supplied additional context.Symptom
A fresh installation cannot create a project for Claude Code: the documented option is not recognized, and the legacy option cannot find the template asset required to scaffold the project. The expected behavior is creation of a new project directory with the selected integration.
Reproduction
specify-clirelease and follow the getting-started/installation documentation.specify init my-project --integration claude.No such option: --integration.specify init my-project --ai claude, or select Claude andshthrough the prompts.No matching release asset found for claude (expected pattern: spec-kit-template-claude-sh)and no project directory.[NEEDS CLARIFICATION: Confirm the exact package index/source and installer command used, because the report identifies CLI and template versions but not the distribution URL or install command.]
Suspected Code Paths
v0.1.6:src/specify_cli/__init__.py:703-712— the released CLI constructs the asset namespec-kit-template-{ai_assistant}-{script_type}and fails when no matching release asset is returned. This directly matches the reported error text and expected asset name.v0.1.6:src/specify_cli/__init__.py:1217-1218— the released command registers--aiand--ai-commands-dir, explaining why--integrationis rejected by CLI 0.1.6.v0.1.6:src/specify_cli/__init__.py:1242-1254— released help/examples document the--aiinterface, while the report followed documentation using the newer--integrationspelling.src/specify_cli/command_init.py:335-363— the current checkout uses--integrationand documents bundled, offline scaffolding, rather than the old release-asset lookup.src/specify_cli/command_init.py:711-732— the current checkout creates anIntegrationManifestand invokes the registered integration setup after preparing the project, consistent with the newer initialization flow.pyproject.toml:30-59— the current package explicitly force-includes templates, scripts, extensions, workflows, presets, and catalogs underspecify_cli/core_pack, removing the old dependency on per-agent release assets.src/specify_cli/_assets.py:13-25— current asset resolution expects a package-bundledcore_packin wheel installs, with source-tree fallback for editable/source installations.src/specify_cli/integrations/claude/__init__.py:43-52— Claude is a registeredclaudeintegration with its own skills setup, so Claude support exists in the current architecture.Root Cause Hypothesis
High confidence: this is a release/documentation and asset-contract mismatch. CLI 0.1.6 predates the
--integrationcommand interface and still downloads an agent/script-specific release asset. The reported Template 1.2.0 release does not expose the expectedspec-kit-template-claude-shasset, so both the legacy command and the documented command fail for different reasons. The current checkout shows the likely post-migration design—--integration, package-bundled core assets, and registered integrations—but that does not repair an already published 0.1.6 installation.Proposed Remediation
Preferred: Publish a compatible Specify CLI release and update the installation/getting-started documentation atomically. The release should use the same initialization contract as the docs (
--integration) and include the bundledcore_packassets required byspecify init; Claude should be resolved through the registered integration rather than aspec-kit-template-claude-shrelease asset. Ensure the published wheel/sdist contains the force-included assets and that the release metadata/template version is internally consistent. Add a release smoke test that installs the built artifact in a clean environment and runsspecify init <dir> --integration claude --script sh(including the non-interactive path).If 0.1.6 must remain supported, alternatively publish the exact legacy assets for every advertised AI/script combination and either restore a compatibility alias for
--integrationor correct the documentation to target--aifor that release. This is a temporary compatibility measure and risks continuing two divergent initialization contracts.Files likely to change:
pyproject.toml— verify wheel/sdist inclusion of initialization assets and release packaging.src/specify_cli/command_init.py— only if compatibility aliases or release-specific migration handling are required.src/specify_cli/_assets.py— only if packaged-asset resolution fails in the built artifact.src/specify_cli/integrations/claude/__init__.py— only if Claude setup needs release smoke-test fixes.README.mdand installation/reference documentation — keep the documented option and supported release aligned.tests/— add clean-artifact initialization coverage and legacy/modern option compatibility coverage if an alias is retained.Tests to add or update:
specify inithelp exposes the documented option.--integration claude --script sh; assert the project directory, bundled templates/scripts, and Claude skills are created.--ai claudeeither remains a supported alias or produces a clear migration message.Risks & Considerations
--ai.Open Questions
spec-kit-template-*assets, or was the release artifact incomplete?]