Skip to content

OpenSpec comparison: spec-sync docs

Comparisons

SpecSync and OpenSpec share a useful brownfield model: current truth is separate from proposed changes, deltas evolve that truth, and completed work can be archived. The biggest difference is what the core can prove without asking an agent to interpret the repository.

Shared shape

Both tools provide:

  • canonical specifications separate from active changes;
  • proposal or interview-driven change workspaces;
  • ADDED, MODIFIED, and REMOVED requirement deltas;
  • design and task artifacts;
  • validation before archival; and
  • an archived history of completed changes.

Enforcement boundary

QuestionSpecSync 5.0OpenSpec core
Canonical current behaviorModule requirements.md + *.spec.mdopenspec/specs/<domain>/spec.md
Proposed intentchange.md, interview answers, companionsproposal.md
Semantic changesModule-scoped deltasChange-local delta specs
Technical designOptional design.md, durable context.mddesign.md
Work trackingtasks.mdtasks.md
Definition approvalMandatory digest-bound human gateReview/agent workflow convention
VerificationConfigured commands plus requirement evidenceValidation and agent-led verification
Real export/schema parsingBuilt into the deterministic coreNot built into the core artifact workflow
Canonical mergeAtomic during acceptanceApplied during sync/archive workflow
Post-change historyAccepted workspace, then immutable archiveArchived change folder

OpenSpec is lighter when the team wants a proposal-oriented agent workflow and semantic requirements without language-specific enforcement. SpecSync carries more machinery because it also acts as a CI contract checker: a documented export that disappeared, an undocumented public export, a missing source file, or database-schema drift becomes a deterministic finding.

Choosing

Choose OpenSpec when a lightweight, agent-friendly proposal/delta/archive workflow is the main goal. Choose SpecSync when that lifecycle must also bind approvals and tests to current inputs and parse the implementation itself. If adopting an existing OpenSpec project, specsync change adopt --dry-run previews the import before any files change.

Official references: OpenSpec repository, getting started and artifact model, commands, and workflows. Verified 2026-07-11.