AI와 스펙 주도 개발
요즘 코딩하는데 있어서 흐름이 AI 스펙 주도 개발로 자리가 잡혀가는 것 같다.
실제로도 유용하게 사용하고있고, 컨텍스트랑 spec만 작성해놓으면 AI가 엄청 일을 잘하여서 아주 편리하게 코딩작업을 하고있다.
CLAUDE.md / AGENT.md
Claude Code를 쓰다 보면 CLAUDE.md라는 파일을 프로젝트 루트에 두게 된다.
cursor는 .cursorrules, 그 외 에이전트들은 AGENT.md 등 이름은 달라도 개념은 같다.
AI가 프로젝트를 처음 보더라도 이 파일을 읽으면 전체적인 맥락을 파악할 수 있게 해주는 일종의 프로젝트 설명서다.
예를 들면 이런 것들을 적어둔다.
- 이 프로젝트가 뭘 하는 건지
- 기술 스택이나 폴더 구조
- 자주 쓰는 명령어
- 코드 컨벤션, 주의사항
처음엔 귀찮은 작업처럼 느껴지지만, 이걸 잘 작성해두면 AI가 매번 같은 실수를 반복하지 않는다.
그리고 새 대화를 시작할 때마다 "이 프로젝트는 이런 구조인데..." 하고 설명하는 수고도 줄어든다.
사실 이 파일은 AI한테 시켜서 만들게 해도 된다. 프로젝트 구조 보여주고 "CLAUDE.md 작성해줘" 하면 알아서 잘 뽑아준다.
Skills
스킬은 뭐 유명하니 설명은 여차하고,
fullstack-dev-skills@jeffallan를 설치 해놓고 사용하는데 아주 만족스럽다.
사용하는 방식
먼저 요즘 AI 개발 추세를 파악해보면은,
토큰을 절약하고 효율적으로 컨텍스트를 전달하는 방향으로 진행되고 있다.
여기서 spec 및 스킬은 어떻게 사용이 되냐면,
CLAUDE.md 같이 에이전트가 읽는 파일에 키워드별로 묵차를 만들어 주는 것이다.
예시를 들자면 아래와 같다.
// CLAUDE.md
# Architecture
[Feature-Sliced Design](https://feature-sliced.design/) 방법론을 따릅니다.
자세한 내용은 [`docs/architecture-fsd.md`](./docs/architecture-fsd.md)를 참조하세요.
위 예시처럼 docs/*.md 에 스펙들을 명시해두고, 컨텍스트에서 참조를 걸어둔다.
이렇게 하면AI가 판단하여 필요할때만 문서에 접근하게 된다.
마무리 & 후기
AI를 사용하면서 스펙만 명시하면 아주 잘 만들어주니 개발하는 재미가 쏠쏠하다.
다시 개발에 대한 투지가 불타오르고 있다.