mirror of
https://github.com/github/spec-kit.git
synced 2026-07-03 12:28:06 +08:00
* Remove Template Version and Released from version output Templates are now bundled with the CLI, so showing them as separate artifacts with their own version and release date is no longer accurate. This also removes the GitHub API call that fetched the latest release, making the version command faster and eliminating a network dependency. * Remove unused datetime import * fix: inject user-invocable: true into Claude skill frontmatter The SkillsIntegration.setup() builds frontmatter manually without user-invocable. Add post-processing injection in ClaudeIntegration.setup(), matching the existing pattern for disable-model-invocation. * refactor: address review feedback - Factor _inject_user_invocable and _inject_disable_model_invocation into a shared _inject_frontmatter_flag(key, value) helper - Remove unused httpx, ssl, truststore imports and globals - Remove unused _github_token and _github_auth_headers helpers - Update setup() docstring to mention user-invocable * chore: remove httpx and truststore from dependencies Both are no longer used after removing the GitHub API call from the version command. Removes from PEP 723 script header and pyproject.toml. * fix: match EOL detection style in _inject_frontmatter_flag Handle \r\n, \n, and no-newline cases consistently with inject_argument_hint's pattern.
69 lines
2.0 KiB
TOML
69 lines
2.0 KiB
TOML
[project]
|
|
name = "specify-cli"
|
|
version = "0.5.1.dev0"
|
|
description = "Specify CLI, part of GitHub Spec Kit. A tool to bootstrap your projects for Spec-Driven Development (SDD)."
|
|
requires-python = ">=3.11"
|
|
dependencies = [
|
|
"typer",
|
|
"click>=8.1",
|
|
"rich",
|
|
"platformdirs",
|
|
"readchar",
|
|
"pyyaml>=6.0",
|
|
"packaging>=23.0",
|
|
"pathspec>=0.12.0",
|
|
"json5>=0.13.0",
|
|
]
|
|
|
|
[project.scripts]
|
|
specify = "specify_cli:main"
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/specify_cli"]
|
|
|
|
[tool.hatch.build.targets.wheel.force-include]
|
|
# Bundle core assets so `specify init` works without network access (air-gapped / enterprise)
|
|
# Page templates (exclude commands/ — bundled separately below to avoid duplication)
|
|
"templates/agent-file-template.md" = "specify_cli/core_pack/templates/agent-file-template.md"
|
|
"templates/checklist-template.md" = "specify_cli/core_pack/templates/checklist-template.md"
|
|
"templates/constitution-template.md" = "specify_cli/core_pack/templates/constitution-template.md"
|
|
"templates/plan-template.md" = "specify_cli/core_pack/templates/plan-template.md"
|
|
"templates/spec-template.md" = "specify_cli/core_pack/templates/spec-template.md"
|
|
"templates/tasks-template.md" = "specify_cli/core_pack/templates/tasks-template.md"
|
|
"templates/vscode-settings.json" = "specify_cli/core_pack/templates/vscode-settings.json"
|
|
# Command templates
|
|
"templates/commands" = "specify_cli/core_pack/commands"
|
|
"scripts/bash" = "specify_cli/core_pack/scripts/bash"
|
|
"scripts/powershell" = "specify_cli/core_pack/scripts/powershell"
|
|
|
|
[project.optional-dependencies]
|
|
test = [
|
|
"pytest>=7.0",
|
|
"pytest-cov>=4.0",
|
|
]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
python_files = ["test_*.py"]
|
|
python_classes = ["Test*"]
|
|
python_functions = ["test_*"]
|
|
addopts = [
|
|
"-v",
|
|
"--strict-markers",
|
|
"--tb=short",
|
|
]
|
|
|
|
[tool.coverage.run]
|
|
source = ["src"]
|
|
omit = ["*/tests/*", "*/__pycache__/*"]
|
|
|
|
[tool.coverage.report]
|
|
precision = 2
|
|
show_missing = true
|
|
skip_covered = false
|
|
|