Spec-Kit_AI는 어떻게 기억하는가?

하이솝·5일 전

소프트웨어공학

목록 보기
12/13

오늘의 핵심 질문

세션이 중단되고 다시 시작할 때,
매 단계마다 모든 문서를 다시 읽어야 하나?

정답은 필요한 것만 선택적으로 읽기

단, 새로 읽는 파일은 선택적이지만, 이미 읽은 내용은 컨텍스트에 누적됨

AI는 정말 "기억"하는가?

AI는 기억하지 않는다

정답은 파일을 AI의 메모리처럼 쓴다

문서 계층과 참조 방향

각 단계에서 읽어야 할 문서가 자동으로 결정됨
모든 것을 다 읽을 필요가 없음

단계별 읽기 패턴

4가지 핵심 원칙

1) 피라미드 위→아래 참조

  • 아래 단계는 위 문서를 읽음
  • 위 단계는 아래를 무시

2) Constitution은 항상 읽힘

  • 7단계 중 6단계가 참조
  • 공통 context의 닻 (anchor)

3) 템플릿 vs 인스턴스 분리

  • 템플릿: 한번 읽으면 끝
  • 인스턴스: 단계별로 필요한 것만

4) Tasks.md가 체크포인트

  • [X] 마커로 진행 상황 기록
  • 재개 시 복구 포인트

재개 시나리오

A) constitution 작성 후, /speckit.specify 실행

AI가 읽는 파일

  • .specify/memory/constitution.md
  • .specify/templates.spec-template.md // spec을 작성할 때의 형식을 명시

읽지 않아도 되는 것

  • 과거 세션1의 대화 기록
  • 헌법 작성 시의 토론 내용
  • 이전 명령어 히스토리

결국 이전 대화 내용은 읽지 않아도 됨

B) T001 ~ T008 완료, T009 중 실행 중단

읽는 것

  • tasks.md(체크포인트)
  • constitution.md (T009만 참조)

읽지 않는 것

  • research.md(기술 결정 끝)
  • 완료된 소스 파일
  • 이전 세션 대화 기록

tasks.md[x]마커가 세션 복구 포인트
(T009부터 재개, T009가 참조하는 문서만 선택적 로딩)

파일 시스템 = 외부 메모리

  • 세션 간 상태 유지
  • 병렬 작업 가능
  • 도구 간 이식성

한계

코드-문서 불일치

  • 직접 코드 수정 시, tasks.md 상태와 어긋남 → 수동 동기화 필요

뉘앙스 손실

  • 미묘한 맥락은 대화에서만 → Clarification에 명시 필수

기능 간 얽힘

  • 여러 기능이 같은 data-model 수정 시 복잡도 ↑ → /speckit.analyze 필수

디버깅 부적합

  • 해당 에러에 대한 질문은 대화형이 빠름 → spec-kit 외부에서 디버깅 후 반영

마무리

AI는 기억하지 않고, 문서가 기억한다.

한번에 다 밀어넣지 말고, 필요한 것만 읽혀라

세션이 끊겨도 괜찮다, 파일이 남아있다.

0개의 댓글