Fission-AI/OpenSpec

▲ 1,415 stars today★ 69,672⑂ 4,772

Spec-driven development (SDD) for AI coding assistants.

About Fission-AI/OpenSpec

Fission-AI/OpenSpec is an open-source project on GitHub, mainly written in TypeScript. Spec-driven development (SDD) for AI coding assistants. It currently holds 69,672 stars and 4,772 forks with 241 open issues, and was last pushed on 2026-09-18 (repository created 2025-08-05).

Project Overview

Git Homed tracks it on the Today's Trending board.

GitHub Repository Details

Repository Fission-AI/OpenSpec · default branch main · size 9549 KB · watchers 286 · source: GitHub REST API and repository README

README

https://github.com/Fission-AI/OpenSpec/blob/HEAD/OpenSpec logo

https://github.com/Fission-AI/OpenSpec/blob/HEAD/CI https://github.com/Fission-AI/OpenSpec/blob/HEAD/npm version https://github.com/Fission-AI/OpenSpec/blob/HEAD/License: MIT https://github.com/Fission-AI/OpenSpec/blob/HEAD/Discord

The most loved spec framework.

Stars Downloads Contributors

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

Follow @0xTab on X for updates · Join the OpenSpec Discord for help and questions.

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 ✓ design.md — technical approach ✓ 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.

What do the specs actually look like?

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

Your AI writes these; you review the plan before any code is written.

OpenSpec is built with OpenSpec — browse this repo's live specs and in-flight changes for real examples at scale.

OpenSpec Dashboard

https://github.com/Fission-AI/OpenSpec/blob/HEAD/OpenSpec dashboard preview

Why teams adopt OpenSpec

Solo, OpenSpec keeps you and your AI honest on a single repo. On a team, the hard part moves: a feature spans the API server, the web app, and a shared library; requirements are owned by one team and consumed by others; planning starts before any code exists.

Stores are the answer — planning in a repo of its own. The same openspec/ shape you already know (specs and changes), shared by git push like anything else. One source of truth your whole team and every coding agent can read, across every repo.

Stores are in beta. Start with the Stores User Guide.

Quick Start

Requires Node.js 20.19.0 or higher.

Install OpenSpec globally:

npm install -g @fission-ai/openspec@latest

Then navigate to your project directory and initialize:

cd your-project
openspec init
Want your AI to do it? Paste the setup prompt into your coding assistant — it installs the CLI, runs openspec init, and verifies the result.

Now talk to your AI:

Both are in the default profile. If you want the expanded workflow (/opsx:new, /opsx:continue, /opsx:ff, /opsx:verify, /opsx:bulk-archive, /opsx:onboard), select it with openspec config profile and apply with openspec update.

/opsx:propose is the canonical name; your tool may spell it /opsx-propose (Cursor, GitHub Copilot), @opsx-propose (Amazon Q) or $openspec-propose (Codex). openspec init prints the right form for the tools you picked — see How To Invoke.

[!NOTE]
Not sure if your tool is supported? View the full list – we support 30+ tools and growing.
> Also works with pnpm, yarn, bun, and nix. See installation options.

Docs

Start here: the Documentation Home maps everything. New to OpenSpec? Read Getting Started, then How Commands Work (where you actually type /opsx:propose).

→ Getting Started: first steps
→ Explore First: think it through with /opsx:explore before you commit
→ How Commands Work: where slash commands run vs the CLI
→ Core Concepts at a Glance: the whole mental model, one page
→ Examples & Recipes: real changes, start to finish
→ Workflows: combos and patterns
→ Existing Projects: adopt OpenSpec on a brownfield codebase
→ Editing a Change: update artifacts, go back, reconcile manual edits
→ Commands: slash commands & skills
→ CLI: terminal reference
→ Stores: plan in a separate repo, shared across your team (beta)
→ Supported Tools: tool integrations & install paths
→ Concepts: how it all fits
→ Multi-Language: multi-language support
→ Customization: make it yours
→ Community Showcase: projects and resources built with and for OpenSpec
→ FAQ · Troubleshooting · Glossary: quick help

Community schemas

Third-party schema bundles distributed via standalone repositories — these provide opinionated workflows that integrate OpenSpec with other tools, similar to how github/spec-kit's community extension catalog handles tool integrations.

→ Browse the catalog in the customization docs.

Why OpenSpec?

AI coding assistants are powerful but unpredictable when requirements live only in chat history. OpenSpec adds a lightweight spec layer so you agree on what to build before any code is written.

How we compare

vs. Spec Kit (GitHub) — Thorough but heavyweight. Rigid phase gates, lots of Markdown, Python setup. OpenSpec is lighter and lets you iterate freely.

vs. Kiro (AWS) — Powerful but you're locked into their IDE and limited to Claude models. OpenSpec works with the tools you already use.

vs. nothing — AI coding without specs means vague prompts and unpredictable results. OpenSpec brings predictability without the ceremony.

Updating OpenSpec

Upgrade the package

npm install -g @fission-ai/openspec@latest

Refresh agent instructions

Run this inside each project to regenerate AI guidance and ensure the latest slash commands are active:

openspec update

Usage Notes

Model selection: OpenSpec works best with high-reasoning models. We recommend Codex 5.5 and Opus 4.7 for both planning and implementation.

Context hygiene: OpenSpec benefits from a clean context window. Clear your context before starting implementation and maintain good context hygiene throughout your session.

Contributing

Open a discussion (for core design changes) or an issue before you open a PR, and link the issue or discussion from the PR. New features, significant refactors, and architectural changes need an OpenSpec change proposal first.

→ CONTRIBUTING.md: the full process, from first issue to merged PR

Other

Telemetry

OpenSpec collects anonymous usage stats.

We collect only command names and version to understand usage patterns. No arguments, paths, content, or PII. Automatically disabled in CI.

Opt-out (any one is enough):

  • openspec config set telemetry.enabled false (global config; unset means on)
  • export OPENSPEC_TELEMETRY=0 or export DO_NOT_TRACK=1 (env overrides config)

Maintainers & Advisors

See MAINTAINERS.md for the list of core maintainers and advisors who help guide the project.

License

MIT

GitHub Stars & Activity

69,672Stars
4,772Forks
241Open issues
TypeScriptLanguage

GitHub Popularity

GitHub stars69,672
Forks4,772
Open issues241
Primary languageTypeScript
LicenseMIT
Stars gained today1,415
Created2025-08-05
Last pushed2026-09-18

Trending History

Weekly boardrank #34 · ▲ 1,415 stars

Related GitHub Projects

1

openclaw / openclaw

TypeScript★ 390,503⑂ 82,156▲ 158 stars
→
2

anomalyco / opencode

TypeScript★ 210,042⑂ 27,765▲ 198 stars
→
3

paperclipai / paperclip

TypeScript★ 84,553⑂ 15,203▲ 1,853 stars
→
4

stablyai / orca

TypeScript★ 78,209⑂ 5,118▲ 827 stars
→
5

ChromeDevTools / chrome-devtools-mcp

TypeScript★ 52,602⑂ 4,725▲ 35 stars
→
6

payloadcms / payload

TypeScript★ 44,954⑂ 4,216▲ 28 stars
→
7

every-app / open-seo

TypeScript★ 21,045⑂ 2,697▲ 219 stars
→
8

dream-num / univer

TypeScript★ 18,342⑂ 1,560▲ 1,048 stars
→

More Trending Repositories