ospec status [path]
ospec init [path]
ospec docs status [path]
ospec docs generate [path]
ospec changes status [path]
ospec new <change-name> [path]
ospec progress [changes/active/<change>]
ospec verify [changes/active/<change>]
ospec archive [changes/active/<change>]
ospec finalize [changes/active/<change>]
ospec skill status
ospec skill install
ospec skill status-claude
ospec skill install-claude
ospec update [path]
ospec plugins status [path]
ospec plugins enable stitch [path]For a fresh directory:
ospec init [path]
ospec new <change-name> [path]
ospec verify [changes/active/<change>]
ospec finalize [changes/active/<change>]Recommended user-facing sequence:
- initialize the repository
- execute one requirement in a change
- deploy and validate with your project-specific flow, then run
ospec verify - archive the validated change with
ospec finalize
ospec init now aims to leave the repository in a change-ready state:
- create the protocol shell
- generate baseline project knowledge docs
- reuse existing project docs when available
- ask one concise follow-up for project summary or tech stack in AI-assisted flows when context is missing
- fall back to placeholder docs when context is still missing
- do not create the first change automatically
- do not apply business scaffold automatically
If you want to pass project context during init, you can do it directly:
ospec init [path] --summary "Internal admin portal" --tech-stack node,react,postgres
ospec init [path] --architecture "Single web app with API and shared auth" --document-language en-US
ospec init [path] --architecture "Support workspace" --document-language ja-JP
ospec init [path] --architecture "Customer operations portal" --document-language arLanguage resolution priority during init:
- in AI-assisted flows: explicit language request in the conversation -> current conversation language -> persisted project language in
.skillrc - in CLI flows: explicit
--document-language-> persisted project language in.skillrc-> inferred from existing project docs /for-ai/*/ asset manifest - fallback
en-US
Project language persistence:
- OSpec stores the selected project document language in
.skillrc - later
for-aiguidance refreshes,ospec new, andospec updatereuse that persisted project language by default - change the project language explicitly if you want future generated docs to switch languages
Direct CLI init stays non-interactive. If the repository has no usable project description and you do not pass flags, OSpec should still generate placeholder docs and leave the repository ready for ospec new.
If you want an explicit project snapshot for troubleshooting, ospec status [path] is still available, but it is no longer the default first step in the recommended flow.
Use docs generate when the repository is already initialized and you want to refresh, repair, or backfill project knowledge docs:
ospec docs generate [path]Use cases:
- an older repository was initialized before the new
change-readyinit flow - project docs were deleted or drifted out of date
- you added new modules or APIs and want the knowledge layer refreshed
docs generate:
- refreshes project knowledge docs
- keeps scaffold explicit
- does not create the first change automatically
- does not create
docs/project/bootstrap-summary.md
If you explicitly want to manage multiple changes as a queue:
ospec queue add <change-name> [path]
ospec queue status [path]
ospec run start [path] --profile manual-safe
ospec run step [path]Queue mode stays explicit:
- the default workflow is still one active change
- if one active change already exists, use
ospec progressto continue it and useospec queue addfor additional work instead of creating another active change - queue mode starts only when you explicitly use
queueorrun manual-safekeeps execution manual and only tracks or advances the queue explicitlyarchive-chainonly finalizes and advances on an explicitrun step
For a project that is already initialized:
npm install -g @clawplays/ospec-cli@0.3.10
ospec update [path]This upgrades the official OSpec CLI package @clawplays/ospec-cli and keeps the ospec command in sync.
If you installed from this repository locally:
npm install -g .
ospec update [path]ospec update [path] will:
- refresh protocol docs
- refresh project tooling and Git hooks
- migrate legacy root-level
build-index-auto.cjs/build-index-auto.jsinto.ospec/tools/build-index-auto.cjs - sync managed
ospecandospec-changeskills - refresh managed workspace assets for already-enabled plugins
- backfill
.skillrc.documentLanguagefor older projects when the language can be recovered from existing project assets
ospec update [path] will not:
- enable or disable plugins automatically
- migrate existing active changes into a new plugin workflow automatically
- complete Stitch approval or create plugin review artifacts for you
If an older project is still missing project knowledge docs, rerun:
ospec init [path]or, if you only want docs maintenance:
ospec docs generate [path]During execution, the main commands are:
ospec changes status [path]
ospec progress [changes/active/<change>]
ospec verify [changes/active/<change>]
ospec archive [changes/active/<change>]
ospec finalize [changes/active/<change>]ospec finalize is the standard closeout path. It verifies the change, refreshes the index, archives the change, and leaves Git commit as a separate manual step.