spec-kit

AI Coding ToolsCLIPython

★ 136,066주당 +1,381조회 12

무엇인가

Spec Kit은 AI 코딩 에이전트에 스펙 우선 개발(Spec-Driven Development) 절차를 설치하는 CLI다. 코드를 먼저 작성하는 대신 명세를 실행 가능한 산출물로 만들어 구현을 그 위에 세우는 개발 방식에 속한다. 에이전트별 명령·프롬프트 파일을 프로젝트 안에 배치하는 구조이므로 특정 에이전트에 종속되지 않는다.

어떻게 동작하나

`specify init`이 프로젝트 디렉터리에 선택한 에이전트 통합용 슬래시 명령 파일을 생성한다. 에이전트를 프로젝트에서 실행한 뒤 `/speckit-constitution`으로 프로젝트 원칙을 한 번 정하고, `/speckit-specify`, `/speckit-plan`, `/speckit-tasks`, `/speckit-implement` 순으로 명세·계획·작업·구현을 만든다. `/speckit-converge`가 구현을 명세·계획·작업과 대조해 수렴 여부를 보고하며, Converged가 나올 때까지 implement와 converge를 반복한다. 확장(extension)은 별도 워크플로를 덧붙인다. 버그 확장은 assess→fix→test, 아이디어 평가 확장은 intake→research→define→shape→decide 순으로 진행한다.

무엇과 다른가

전통적 개발에서 명세는 코딩이 시작되면 버려지는 발판이었다. Spec Kit은 명세를 프로젝트에 남는 산출물로 두고 구현이 그것을 따라가게 한다. 에이전트에 즉석 프롬프트를 던지는 방식과 달리 문서 상태가 저장소 안에 축적되고, converge 단계가 명세와 구현의 차이를 검사한다. 프리셋과 번들로 절차 자체를 조직 단위로 교체할 수 있다.

어떻게 쓰나

uv로 specify-cli를 설치한 뒤 프로젝트 디렉터리에서 `specify init`을 실행한다. 키 입력을 보낼 수 없는 CI나 에이전트 하네스에서는 `--non-interactive`를 붙이고, 비어 있지 않은 디렉터리에 초기화할 때는 `--force`를 함께 쓴다. 이후 에이전트에서 슬래시 명령을 순서대로 호출한다. CLI 갱신은 `specify self upgrade`로 수행하며, uv tool 설치에서는 `uv tool install specify-cli --force --from <소스>`를 내부적으로 실행한다.

전제와 한계

uv 설치가 선행되어야 하고, 슬래시 명령을 해석하는 AI 코딩 에이전트 통합이 필요하다. 설치 시에는 앞의 v를 포함한 vX.Y.Z 형태의 릴리스 태그를 지정한다. 버그 수정과 아이디어 평가 워크플로는 기본 활성화가 아니라 선택적으로 켜는 확장이다. 아이디어 평가는 독립 실행되며, go 판정을 받은 경우에만 `/speckit-specify`로 넘길 수 있다.

유사 도구