| name | openspec-sync-specs |
| description | Use when working with OpenSpec in Hermes: merge delta specs from a change into main specs without archiving. |
| version | 1.0.0 |
| author | TheSmuks + Hermes Agent |
| license | MIT |
| platforms | ["windows","macos","linux"] |
| metadata | {"hermes":{"category":"software-development","tags":["openspec","sdd","spec-driven-development","hermes"],"homepage":"https://github.com/Fission-AI/openspec"}} |
openspec-sync-specs
Use this for OpenSpec's /opsx:sync workflow.
Hermes operating rules for OpenSpec
- Work from the user's project root. If unknown, inspect the current directory first.
- Ensure the OpenSpec CLI exists before using it:
openspec --version. If missing, install with npm install -g @fission-ai/openspec@latest.
- Initialize projects with
openspec init --tools none unless the user also wants other AI-tool integrations. Hermes uses these skills, not OpenSpec-generated slash commands.
- Prefer agent-compatible OpenSpec CLI calls with
--json where available: openspec list --json, openspec status --change <id> --json, openspec instructions <artifact> --change <id> --json, openspec validate --all --json.
- Read generated artifacts before editing or implementing. Do not invent OpenSpec state.
- Run validation after changing OpenSpec artifacts:
openspec validate <change> or openspec validate --all.
- Keep changes focused. If user scope diverges, update the existing change only when intent is the same; otherwise create a new change.
Procedure
- Identify the change.
- Read delta specs under
openspec/changes/<name>/specs/.
- Parse section types exactly: ADDED, MODIFIED, REMOVED, RENAMED.
- Merge into corresponding main specs under
openspec/specs/.
- Preserve unrelated existing requirements and scenarios.
- Avoid duplicate requirements. Add new scenarios to existing requirements where appropriate.
- Run
openspec validate --specs and openspec validate <name>.
- Leave the change active. Do not move it to archive.