openspec-sync

Sync delta specs from a change into main specs using `/opsx:sync`, without archiving the change. Use when the user says "sync specs", "merge specs to main", "/opsx:sync", or needs to update main specs mid-change.

261 stars

Best use case

openspec-sync is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. Sync delta specs from a change into main specs using `/opsx:sync`, without archiving the change. Use when the user says "sync specs", "merge specs to main", "/opsx:sync", or needs to update main specs mid-change.

Sync delta specs from a change into main specs using `/opsx:sync`, without archiving the change. Use when the user says "sync specs", "merge specs to main", "/opsx:sync", or needs to update main specs mid-change.

Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.

Practical example

Example input

Use the "openspec-sync" skill to help with this workflow task. Context: Sync delta specs from a change into main specs using `/opsx:sync`, without archiving the change. Use when the user says "sync specs", "merge specs to main", "/opsx:sync", or needs to update main specs mid-change.

Example output

A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.

When to use this skill

  • Use this skill when you want a reusable workflow rather than writing the same prompt again and again.

When not to use this skill

  • Do not use this when you only need a one-off answer and do not need a reusable workflow.
  • Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/openspec-sync/SKILL.md --create-dirs "https://raw.githubusercontent.com/partme-ai/full-stack-skills/main/skills/openspec-skills/openspec-sync/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/openspec-sync/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How openspec-sync Compares

Feature / Agentopenspec-syncStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Sync delta specs from a change into main specs using `/opsx:sync`, without archiving the change. Use when the user says "sync specs", "merge specs to main", "/opsx:sync", or needs to update main specs mid-change.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# OpenSpec Sync Skill

Use **`/opsx:sync`** to merge delta specs from a change into the main `openspec/specs/` directory without archiving the change. The change remains active after sync. This is optional — **openspec-archive** handles syncing automatically when archiving.

## When to Use

- Long-running change where the user wants specs in main before archiving.
- Multiple parallel changes need updated base specs.
- The user wants to review/preview the merge separately before archiving.

## Prerequisites

- **An active change** with delta specs in `specs/`.

## Workflow

1. **Run sync**
   - `/opsx:sync` — sync the current/inferred change.
   - `/opsx:sync add-dark-mode` — sync a specific change by name.

2. **What happens**
   - Reads delta specs from the change folder.
   - Parses ADDED / MODIFIED / REMOVED sections.
   - Merges changes into `openspec/specs/`.
   - Preserves existing content not mentioned in the delta.
   - The change remains active (not archived).

3. **Verify**
   - Review the updated specs in `openspec/specs/`.

## Outputs

- Updated `openspec/specs/` with delta changes merged.
- Change remains active in `openspec/changes/<name>/`.

## Next Steps

- Continue working on the change, or use **openspec-archive** when done.

## Troubleshooting

- **"No delta specs"**: The change has no `specs/` directory; create specs via **openspec-continue** or **openspec-ff** first.
- **Conflicts with other changes**: Sync handles merging at the requirement level; if two changes modify the same requirement, the latest sync wins.

## References

- [OpenSpec Commands: /opsx:sync](https://github.com/Fission-AI/OpenSpec/blob/main/docs/commands.md)
- [OpenSpec Concepts: Delta Specs](https://github.com/Fission-AI/OpenSpec/blob/main/docs/concepts.md)

Related Skills

openspec-verify

261
from partme-ai/full-stack-skills

Validate that implementation matches change artifacts using `/opsx:verify`, checking completeness, correctness, and coherence. Use when the user says "verify implementation", "check my work", "/opsx:verify", or wants quality validation before archiving.

openspec-update

261
from partme-ai/full-stack-skills

Run `openspec update` to regenerate AI tool instruction files after upgrading the OpenSpec CLI. Use when the user says "update OpenSpec", "openspec update", or "refresh OpenSpec skills/commands".

openspec-schema

261
from partme-ai/full-stack-skills

Create and manage custom workflow schemas using `openspec schema init/fork/validate/which`. Use when the user says "create a custom workflow", "custom schema", "fork a schema", or wants to define their own artifact types and dependencies.

openspec-onboard

261
from partme-ai/full-stack-skills

Guided onboarding through the complete OpenSpec workflow using `/opsx:onboard`, walking the user through a real change in their codebase. Use when the user says "onboard me", "tutorial", "/opsx:onboard", "how does OpenSpec work", or is new to OpenSpec.

openspec-new

261
from partme-ai/full-stack-skills

Start a new OpenSpec change with `/opsx:new`, creating a change folder with metadata and scaffolding. Use when the user says "start a new change", "new feature", "/opsx:new", or "create an OpenSpec change".

openspec-install

261
from partme-ai/full-stack-skills

Install the OpenSpec CLI globally via npm, pnpm, yarn, bun, or nix. Use when the user says "install OpenSpec", "set up OpenSpec", or "openspec command not found".

openspec-initial

261
from partme-ai/full-stack-skills

Run `openspec init` to initialize OpenSpec in a project directory, creating the openspec/ folder structure and configuring AI tool integrations. Use when the user says "initialize OpenSpec", "openspec init", or "set up OpenSpec in this project".

openspec-ff

261
from partme-ai/full-stack-skills

Fast-forward through artifact creation with `/opsx:ff`, generating all planning artifacts (proposal, specs, design, tasks) at once. Use when the user says "fast forward", "create all artifacts", "/opsx:ff", or has a clear picture of what to build.

openspec-explore

261
from partme-ai/full-stack-skills

Think through ideas, investigate problems, and clarify requirements before committing to a change using `/opsx:explore`. Use when the user says "explore an idea", "think through this", "investigate options", or wants to brainstorm before creating a formal change.

openspec-continue

261
from partme-ai/full-stack-skills

Create the next artifact in the dependency chain with `/opsx:continue`, building up a change incrementally. Use when the user says "continue the change", "create next artifact", "/opsx:continue", or wants step-by-step artifact creation.

openspec-config

261
from partme-ai/full-stack-skills

Configure OpenSpec project settings and global CLI configuration using `openspec/config.yaml` and `openspec config` commands. Use when the user says "configure OpenSpec", "project config", "add project context", or wants to set per-artifact rules.

openspec-bulk-archive

261
from partme-ai/full-stack-skills

Archive multiple completed changes at once with `/opsx:bulk-archive`, handling spec conflicts between changes. Use when the user says "archive all changes", "bulk archive", "/opsx:bulk-archive", or has multiple completed changes.