<p align="center" <a href="https://github.com/Fission-AI/OpenSpec" <picture <source srcset="assets/openspecbg.png" <img src="assets/openspecbg.png" alt="OpenSpec logo" </picture </a </p
<p align="center" <a href="https://github.com/Fission-AI/OpenSpec/actions/workflows/ci.yml"<img alt="CI" src="https://github.com/Fission-AI/OpenSpec/actions/workflows/ci.yml/badge.svg" /</a <a href="https://www.npmjs.com/package/@fission-ai/openspec"<img alt="npm version" src="https://img.shields.io/npm/v/@fission-ai/openspec?style=flat-square" /</a <a href="./LICENSE"<img alt="License: MIT" src="https://img.shields.io/badge/License-MIT-blue.svg?style=flat-square" /</a <a href="https://discord.gg/YctCnvvshC"<img alt="Discord" src="https://img.shields.io/discord/1411657095639601154?style=flat-square&logo=discord&logoColor=white&label=Discord&suffix=%20online" /</a </p
<details <summary<strongThe most loved spec framework.</strong</summary
</details <p</p Our philosophy:
→ fluid not rigid
→ iterative not waterfall
→ easy not complex
→ built for brownfield not just greenfield
→ scalable from personal projects to enterprises[!TIP] New workflow now available! We've rebuilt OpenSpec with a new artifact-guided workflow. Run /opsx:propose "your idea" to get started. → Learn more here
<p align="center" Follow <a href="https://x.com/0xTab"@0xTab on X</a for updates · Join the <a href="https://discord.gg/YctCnvvshC"OpenSpec Discord</a for help and questions. </p
See it in action
You: /opsx:explore
AI: What would you like to explore?
You: I want dark mode but I'm not sure how to do it cleanly.
AI: Let me look at your styling setup...
Cleanest path here: CSS variables + a small theme context,
with system-preference detection. No new dependencies. Scope it?
You: Yes, let's do it.
You: /opsx:propose add-dark-mode
AI: Created openspec/changes/add-dark-mode/
✓ proposal.md — why we're doing this, what's changing
✓ specs/ — requirements and scenarios✓ tasks.md — implementation checklist Ready for implementation!
You: /opsx:apply AI: Implementing tasks... ✓ 1.1 Add theme context provider ✓ 1.2 Create toggle component ✓ 2.1 Add CSS variables ✓ 2.2 Wire up localStorage All tasks complete!
You: /opsx:archive AI: Archived to openspec/changes/archive/2025-01-23-add-dark-mode/ Specs updated. Ready for the next feature.
<details>
<summary><strong>What do the specs actually look like?</strong></summary>
Plain Markdown — requirements with concrete scenarios, no special syntax to learn. Here's what goes in the `specs/` folder created above:
ADDED Requirements
Requirement: Theme selection
The app SHALL let users switch between light and dark themes, defaulting to the system preference.
#### Scenario: User toggles dark mode
- WHEN the user clicks the theme toggle
- THEN the app switches to dark mode and persists the choice