openspec-sync-specs

Merge delta spec changes into main OpenSpec specifications.

4|Updated May 13, 2026
One-click install
npx skills add https://github.com/RuixeWolf/modbus-simulator --skill openspec-sync-specs-ruixewolf
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: openspec-sync-specs
Source: https://github.com/RuixeWolf/modbus-simulator/tree/main/.opencode/skills/openspec-sync-specs
Command: npx skills add https://github.com/RuixeWolf/modbus-simulator --skill openspec-sync-specs-ruixewolf

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Keeping main specifications in sync with change proposals is tedious and error-prone when done by hand. This Skill applies delta specs (ADDED, MODIFIED, REMOVED, RENAMED requirements) from an OpenSpec change directly into the main specs with intelligent merging, without archiving the change. ## Core Features & Use Cases - Intelligent Requirement Merging: Applies ADDED, MODIFIED, REMOVED, and RENAMED requirement sections from delta specs while preserving untouched content in main specs. - Store-Aware Operation: Discovers registered OpenSpec stores via openspec store list and targets the correct specs root for every read and write. - Safe Capability Retirement: Deletes a main spec only when strict conditions hold (empty requirements, valid Purpose, retire_capabilities: true marker), and validates results with openspec validate --specs. - Use Case: After finishing a change proposal that adds two requirements and modifies one in the billing/invoices capability, run the sync to update the main spec files while keeping the change active for continued work. ## Quick Start Ask the assistant to sync the delta specs from a named OpenSpec change into the main specs, for example by saying "sync the specs from the add-invoice-export change".

Frequently Asked Questions about openspec-sync-specs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I sync OpenSpec delta specs into main specs?▼

Select the change by name or let it be inferred from context, then the delta specs listed in artifactPaths.specs.existingOutputPaths are merged into the main specs under the planning root. The change stays active afterward and can be archived later.

What is the difference between openspec sync-specs and openspec archive?▼

Syncing updates the main specs while keeping the change active for continued work, whereas archive finalizes the change and moves it out of the active set. Sync is useful when implementation is still in progress.

Does openspec sync-specs require the openspec CLI?▼

Yes, the openspec CLI must be installed because the workflow runs commands like openspec status, openspec list, openspec instructions specs, and openspec validate. Without the CLI the sync cannot resolve spec roots or validate output.

Can I sync only some delta specs from a change?▼

Yes, a caller can narrow the sync to an explicit subset of paths from existingOutputPaths, and only those delta specs are applied. Named paths not present in existingOutputPaths are reported and skipped rather than silently dropped.

When does syncing delete a main spec file?▼

A main spec is deleted only when removing requirements leaves no requirement blocks, the spec is otherwise well-formed with a Purpose, the change declares retire_capabilities: true, and the file resolves inside the real specs root. Otherwise the sync stops and reports the blocking condition.