specscore-cli

module
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 29, 2026 License: Apache-2.0

README

specscore-cli

CI Dogfood lint Coverage

CLI for SpecScore — lint, query, and scaffold SpecScore specifications.

Install

macOS / Linux — curl
curl -fsSL https://specscore.md/install/get-cli | sh
Windows — PowerShell
powershell -c "irm https://specscore.md/install/get-cli.ps1 | iex"
macOS — Homebrew
brew install specscore/tap/specscore
Windows — Scoop / WinGet
scoop bucket add specscore https://github.com/specscore/scoop-bucket
scoop install specscore
# or
winget install SpecScore.CLI

See installation docs for options (version pinning, custom install dir).

Usage

specscore spec lint              # lint the current spec tree
specscore feature list           # list features
specscore feature show <slug>    # inspect a feature
specscore task list              # show the task board
specscore version                # full build identity
specscore --version              # bare semver

Full command reference: see spec/features/cli/.

AI skills

If you drive specscore from inside Claude Code (or any agent host that loads Claude Code plugins), install the ai-plugin-specscore plugin. It ships agent skills that wrap each CLI resource group — they teach the agent when to call which command, which flags to pass, and how to interpret exit codes, all grounded in the feature specs in this repo.

/plugin marketplace add specscore/ai-marketplace
/plugin install specscore@specscore

Then bootstrap the CLI itself with /specscore:install, or install manually with the one-liner above.

Test coverage

specscore-cli maintains 100% statement coverage across all packages. This is enforced automatically — the CI pipeline and the local pre-push hook both reject any change that drops below 100%.

All contributions are required to maintain 100% coverage. If your change adds or modifies code, include tests that cover every new branch.

License

Apache License 2.0 — see LICENSE.

Directories

Path Synopsis
cmd
specscore command
internal
cli
telemetry
Package telemetry is the single audit surface for all telemetry transmission from the specscore CLI.
Package telemetry is the single audit surface for all telemetry transmission from the specscore CLI.
pkg
entity
Package entity parses and represents SpecScore entity artifacts (`*.entity.md` files under `spec/features/**`).
Package entity parses and represents SpecScore entity artifacts (`*.entity.md` files under `spec/features/**`).
event
Package event owns the shared event-dispatch plumbing for the `specscore` CLI: the Subscriber extension point, the Event envelope type, the envelope validator, the fan-out dispatcher, the built-in subscriber implementations (JsonlWriter, NoOp, Exec), and the events: config block loader.
Package event owns the shared event-dispatch plumbing for the `specscore` CLI: the Subscriber extension point, the Event envelope type, the envelope validator, the fan-out dispatcher, the built-in subscriber implementations (JsonlWriter, NoOp, Exec), and the events: config block loader.
exitcode
Package exitcode defines the shared exit code constants and error type used by all SpecScore CLI commands and library consumers.
Package exitcode defines the shared exit code constants and error type used by all SpecScore CLI commands and library consumers.
feature
Package feature provides feature discovery, traversal, metadata, dependency resolution, and scaffolding.
Package feature provides feature discovery, traversal, metadata, dependency resolution, and scaffolding.
gitremote
Package gitremote parses git remote URLs into their owner / repo / host components.
Package gitremote parses git remote URLs into their owner / repo / host components.
idea
Package idea parses and represents SpecScore Idea artifacts.
Package idea parses and represents SpecScore Idea artifacts.
idearelocate
Package idearelocate implements cross-repo relocation of Idea and sidekick-seed artifacts per spec/features/cli/idea/relocate/README.md.
Package idearelocate implements cross-repo relocation of Idea and sidekick-seed artifacts per spec/features/cli/idea/relocate/README.md.
issue
Package issue — lifecycle transition orchestration for the Issue kind.
Package issue — lifecycle transition orchestration for the Issue kind.
lifecycle
Package lifecycle hosts a kind-parameterized state machine for SpecScore artifact Status transitions.
Package lifecycle hosts a kind-parameterized state machine for SpecScore artifact Status transitions.
lint
specscore:feature/cli/spec/lint
specscore:feature/cli/spec/lint
plan
Package plan parses single-file Plan artifacts at spec/plans/<slug>.md per the SpecStudio plan-Feature contract (https://github.com/synchestra-io/specstudio-skills/blob/main/spec/features/skills/plan/README.md).
Package plan parses single-file Plan artifacts at spec/plans/<slug>.md per the SpecStudio plan-Feature contract (https://github.com/synchestra-io/specstudio-skills/blob/main/spec/features/skills/plan/README.md).
projectdef
Package projectdef provides the specscore.yaml schema and read/write operations defined by the SpecScore Repo Config feature (https://specscore.md/repo-config).
Package projectdef provides the specscore.yaml schema and read/write operations defined by the SpecScore Repo Config feature (https://specscore.md/repo-config).
property
Package property parses and represents SpecScore Property artifacts.
Package property parses and represents SpecScore Property artifacts.
slug
Package slug provides shared slug-derivation helpers used across the SpecScore CLI.
Package slug provides shared slug-derivation helpers used across the SpecScore CLI.
task
Package task defines the canonical task types, status enum, and related structures used by all SpecScore-based coordination tools.
Package task defines the canonical task types, status enum, and related structures used by all SpecScore-based coordination tools.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL