Install
$ agentstack add skill-wyattowalsh-agents-openspec-workflow ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
OpenSpec Workflow
Use OpenSpec as the spec/change control plane for non-trivial changes to this repository's portable agent assets, downstream tooling, docs generation, hooks, bundle metadata, or validation behavior.
Dispatch
| $ARGUMENTS | Action | | ---------------------------------- | ---------------------------------------------------------------------- | | Empty | Show the repo OpenSpec quick path | | doctor | Diagnose OpenSpec toolchain and project state | | init [tools] | Materialize downstream OpenSpec skills/commands locally | | status | Read change artifact status as JSON | | instructions | Get AI-readable next-step instructions | | validate | Validate all OpenSpec specs and changes | | archive | Validate and archive a completed change | | Natural language change request | Decide whether OpenSpec is warranted, then create or continue a change |
Quick Path
- Diagnose setup before OpenSpec work:
uv run python skills/openspec-workflow/scripts/openspec_cli.py doctor
- For non-trivial repo changes, create or continue an OpenSpec change using the generated upstream OpenSpec skills/commands when available.
- When generated upstream OpenSpec skills are not available, use repo wrappers for structured state:
uv run python skills/openspec-workflow/scripts/openspec_cli.py status --change --format json
uv run python skills/openspec-workflow/scripts/openspec_cli.py instructions --change --format json
- Validate before implementation completion or archive:
uv run python skills/openspec-workflow/scripts/openspec_cli.py validate
When To Use OpenSpec
Use OpenSpec when the change affects any of these surfaces:
skills/,agents/,mcp/,mcp.json, or first-party MCP conventionsAGENTS.md,instructions/, or platform bridge filesagent-bundle.json, plugin manifests, sync manifests, or downstream harness setup- portable skill CLI behavior, generated README/docs output, or docs navigation
- OpenSpec specs, schemas, or generated downstream tool setup
Skip OpenSpec for small, isolated typo fixes or single-file local changes where the user's request and repo conventions fully determine the outcome.
When a non-trivial change has user-pivotal scope or approach forks, apply instructions/global.md Depth routing and invoke /grill-me before creating or continuing change artifacts.
Downstream Tooling
OpenSpec-generated upstream skills and commands are local/generated by default. Materialize them when a downstream tool should expose native OpenSpec workflows:
uv run python skills/openspec-workflow/scripts/openspec_cli.py init --apply
uv run python skills/openspec-workflow/scripts/openspec_cli.py update --apply
The default repo mapping is:
| Repo agent | OpenSpec tool | | ---------------- | ---------------- | | antigravity | antigravity | | claude-code | claude | | codex | codex | | crush | crush | | cursor | cursor | | gemini-cli | gemini | | github-copilot | github-copilot | | opencode | opencode |
Do not commit generated .claude, .cursor, .opencode, .github, .agent, .crush, .codex, or .gemini OpenSpec artifacts unless the user explicitly promotes a specific artifact to repo-owned source.
Artifact Order
Agent Asset Changes
For this repo's custom agent-asset-change schema, create artifacts in this order:
proposalaffected-surfacesdesignvalidation-matrixtasks
Use openspec status --json to confirm which artifact is ready before asking the AI to create it.
Archive Readiness
Archive only after implementation and validation are complete. Keep proposal, affected surfaces, design, validation matrix, and tasks aligned with the final shipped state.
Canonical Vocabulary
Use these canonical terms exactly:
| Term | Meaning | | --------------------- | ------------------------------------------------------------------------------ | | OpenSpec change | A proposed repo behavior or asset change tracked under openspec/changes/ | | Artifact | A proposal, design, task list, spec delta, or AI-readable instruction document | | Downstream tool setup | Generated local skills, commands, or config for external agent harnesses | | Archive | Finalize and move a completed change into the durable spec history | | Validation matrix | The artifact that maps affected surfaces to required proof commands |
Validation Contract
Run from this skill directory before declaring changes complete:
python scripts/check.py
uv run python skills/openspec-workflow/scripts/openspec_cli.py doctor --format json
uv run python skills/openspec-workflow/scripts/openspec_cli.py validate --format json
If a command is blocked by missing Node/OpenSpec tooling, report the blocker and the exact command that should be run after installing Node >=20.19.0.
Completion criteria:
scripts/check.pyexits 0.openspec_cli.py doctorandvalidatepass, or blockers include exact follow-up commands.- Skill directory stays free of repo control-plane CLI references.
- The OpenSpec decision is grounded in repo policy and the actual affected files.
- Required artifacts exist or are explicitly skipped with a reason.
- Generated downstream artifacts are not committed unless explicitly promoted.
Critical Rules
- Use OpenSpec for non-trivial changes to public asset formats, downstream tooling, docs generation, hooks, bundle metadata, or validation behavior.
- Do not use OpenSpec for isolated typo fixes or single-file local edits where repo conventions fully determine the outcome.
- Prefer
uv run python scripts/openspec_cli.py ... --format jsonwhen another AI tool needs machine-readable state or instructions. - Do not commit generated
.claude,.cursor,.opencode,.github,.agent,.crush,.codex, or.geminiOpenSpec artifacts unless explicitly promoted. - Validate before archive; never archive a change that has unresolved task, spec, or validation gaps.
- Keep downstream generated skills and commands local by default.
- Report missing OpenSpec or Node tooling as blockers with the exact command to retry after setup.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: wyattowalsh
- Source: wyattowalsh/agents
- License: MIT
- Homepage: https://agents.w4w.dev
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.