openspec-sync-specs

Merge delta spec changes into main OpenSpec capability specifications.

1|Updated Aug 13, 2026
One-click install
npx skills add https://github.com/Miftah-Fentaw/GymPulse --skill openspec-sync-specs-miftah-fentaw
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: openspec-sync-specs
Source: https://github.com/Miftah-Fentaw/GymPulse/tree/main/.qwen/skills/openspec-sync-specs
Command: npx skills add https://github.com/Miftah-Fentaw/GymPulse --skill openspec-sync-specs-miftah-fentaw

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Keeping main capability 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, without archiving the change. ## Core Features & Use Cases - Intelligent Merging: Reads each delta spec and merges requirements into main specs while preserving existing scenarios and content the delta does not mention. - Change Selection & Validation: Resolves the target change via openspec status, discovers delta specs from artifactPaths.specs.existingOutputPaths, and validates results with openspec validate --specs. - Capability Retirement: Safely deletes a main spec only when all retirement conditions hold, including the retire_capabilities: true marker in .openspec.yaml. - Use Case: After drafting a change that adds two requirements and modifies one in the billing capability, run this Skill to update openspec/specs/billing/spec.md while keeping the change active for implementation. ## Quick Start Ask the assistant to sync the delta specs from your current OpenSpec change into the main specs without archiving the 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 Skill reads each delta spec listed in artifactPaths.specs.existingOutputPaths and merges its requirements into the corresponding main spec. It finishes by running openspec validate --specs to confirm the result.

What is the difference between syncing specs and archiving a change in OpenSpec?▼

Syncing updates the main specs while keeping the change active for continued implementation. Archiving also applies the deltas but then closes and archives the change, so sync is used when work on the change is not yet complete.

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. The Skill never widens the selection back to the full list and reports any named path that is not found.

When does OpenSpec delete a main spec during sync?▼

A main spec is deleted only when removing requirements leaves no requirement blocks, the spec remains well-formed with a Purpose section, the spec was not already empty, and the change's .openspec.yaml declares retire_capabilities: true. Otherwise the sync stops for that capability and reports the blocking condition.

Does openspec-sync-specs require the openspec CLI?▼

Yes, the Skill requires the openspec CLI to be installed. It uses commands such as openspec status, openspec instructions specs, and openspec validate --specs to resolve changes, fetch artifact rules, and verify the merged specs.