프로젝트 소개

OpenSpec은 AI 코딩 어시스턴트를 위한 명세 기반 개발(SDD) 프레임워크입니다. 코드 작성 전에 인간 개발자와 AI 어시스턴트가 구축할 내용을 맞추기 위해 가벼운 명세 계층을 추가합니다. 이 프로젝트는 npm 패키지 @fission-ai/openspec로 배포되며 MIT 라이선스를 따르고 Node.js 20.19.0 이상이 필요합니다. 워크플로우는 지원되는 AI 코딩 도구 내에서 작동하는 슬래시 명령어를 중심으로 구성됩니다. 프로젝트에서 `openspec init`을 실행한 후, 사용자는 AI와 아이디어를 논의하기 위한 `/opsx:explore`, 변경 제안서를 생성하는 `/opsx:propose <name>`, 계획된 작업을 구현하는 `/opsx:apply`, 변경 사항을 최종화하고 보관하는 `/opsx:archive`와 같은 명령어를 호출할 수 있습니다. 각 제안된 변경 사항은 `openspec/changes/` 하위에 자체 폴더를 가지며, 여기에는 `proposal.md`, 요구사항과 시나리오가 포함된 `specs/` 폴더, `design.md`, `tasks.md`가 포함됩니다. 명세는 특별한 구문 없이 간단한 요구사항-시나리오 형식의 일반 마크다운으로 작성됩니다. OpenSpec은 `/opsx-propose`, `@opsx-propose`, `$openspec-propose`와 같이 도구에 따라 표준 명령어의 철자가 다른 30개 이상의 AI 코딩 어시스턴트 및 도구를 지원합니다. `/opsx:new`, `/opsx:continue`, `/opsx:ff`, `/opsx:verify`, `/opsx:onboard`와 같은 추가 명령어를 포함하는 확장된 워크플로우 프로필도 제공됩니다. 이 프로젝트는 또한 Stores라는 베타 기능을 도입하여 git push를 통해 팀 간에 공유되는 별도의 저장소에서 계획을 수립할 수 있습니다. Stores는 명세와 변경 사항에 동일한 `openspec/` 구조를 사용하며, 코드 저장소가 나중에 따라잡는 plan-before-code 워크플로우, 한 팀이 소유한 공유 요구사항, 크로스-저장소 기능을 지원하는 것을 목표로 합니다. OpenSpec은 인수, 경로, 콘텐츠, 개인 식별 정보 없이 명령어 이름과 버전만으로 제한된 익명 사용 통계를 수집합니다. 원격 측정은 CI에서 자동으로 비활성화되며, 구성 또는 환경 변수를 통해 선택적으로 비활성화할 수 있습니다. 문서에는 시작하기, 명령어 작동 방식, 기존 프로젝트 채택, 변경 사항 편집, CLI 참조, 다국어 지원, 사용자 정의, 커뮤니티 스키마가 포함됩니다. 이 프로젝트는 OpenSpec 자체로 구축되었으며, 저장소에는 명세와 진행 중인 변경 사항의 실시간 예제가 포함되어 있습니다.