operation - you will read delta specs and directly edit main specs to apply the changes. This allows intelligent merging (e.g., adding a scenario without copying the entire requirement).
Store selection:
If the user names a store (a store is a standalone OpenSpec repo registered on this machine) or the work lives in one, run
openspec store list --json
to discover registered store ids, then pass
--store
on the commands that read or write specs and changes (
new change
,
status
,
instructions
,
list
,
show
,
validate
,
archive
,
doctor
,
context
,
schemas
,
view
). Once selected, treat
--store
as sticky for the rest of the workflow. Every unscoped example of those commands below is shorthand: before running it, append the flag. For example, run
openspec status --change "" --json --store ""
, not the unscoped form shown below. Other commands do not take the flag. Hints printed by commands already carry the flag; keep it on follow-ups. Without a store, commands act on the nearest local
openspec/
root.
is the spec directory relative to
specs/
(for example,
user-auth
or
identity/user-auth
). Preserve the full path from each delta spec when resolving its main spec.
Input
Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.
Steps
Select the change
If a name is provided, use it. Otherwise:
Infer from conversation context if the user mentioned a change
Auto-select if only one active change exists
If ambiguous, run
openspec list --json
to get available changes and ask the user to select one
Show more
Installs
967
Repository
fission-ai/openspec
GitHub Stars
66.6K
First Seen
Jul 17, 2026
Security Audits
Gen Agent Trust Hub
Warn
Socket
Pass
Snyk
Warn