openspec-sync-specs

Merge delta spec changes into main OpenSpec capability specifications.

1|Updated Oct 27, 2025
One-click install
npx skills add https://github.com/WndDnz/modelo-relatorio-unifei-ict --skill openspec-sync-specs-wnddnz
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: openspec-sync-specs
Source: https://github.com/WndDnz/modelo-relatorio-unifei-ict/tree/main/.opencode/skills/openspec-sync-specs
Command: npx skills add https://github.com/WndDnz/modelo-relatorio-unifei-ict --skill openspec-sync-specs-wnddnz

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 the ADDED, MODIFIED, REMOVED, and RENAMED requirement sections from a change's delta specs directly into the main specs, without archiving the change. ## Core Features & Use Cases - Intelligent Merging: Reads each delta spec and merges requirements into the corresponding main spec, preserving existing scenarios and content the delta does not mention. - Change Selection & Validation: Resolves the target change via the openspec CLI, validates updated specs with openspec validate --specs, and reports exactly what was added, modified, removed, or renamed. - Capability Lifecycle Handling: Creates new main specs for brand-new capabilities and safely retires capabilities by deleting emptied spec files only when strict conditions are met. - Use Case: After finishing a change that adds scenarios to the user-auth spec, ask the agent to sync the delta specs so the main specs reflect the new behavior while the change stays active for implementation. ## Quick Start Ask the agent to sync the delta specs from your current change into the main specs, for example by saying "sync the specs for change add-oauth-login".

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 delta specs to main specs in OpenSpec?

Invoke the sync workflow with a change name, or let it infer the change from context. It reads the delta specs listed in the status JSON, merges each requirement into the matching main spec, then runs openspec validate to confirm the result.

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

Syncing updates the main specs while keeping the change active for continued implementation. Archiving also applies the deltas but then closes and moves the change out of the active list, so sync is used earlier in the workflow.

Does syncing overwrite existing scenarios in main specs?

No. The merge is intelligent: scenarios and content not mentioned in the delta are preserved in their existing order. MODIFIED blocks carry the full requirement, and validation rejects deltas that silently drop scenarios.

Can I sync only some delta specs from a change?

Yes. A caller can narrow the sync to an explicit subset of paths from artifactPaths.specs.existingOutputPaths. The workflow syncs only those named paths and never widens the selection back to the full list.

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, the change declares retire_capabilities: true, and the file resolves inside the real specs root. Otherwise the sync stops and reports the blocking condition.