토큰 소모 개선 - 프로젝트 구조 맵 자동생성 시스템 개발.

[배경]
현재 팀 봇(1팀/2팀)이 새 코딩 작업을 시작할 때마다 프로젝트 구조를 처음부터 탐색(파일 목록, 타입 정의, 기존 코드 읽기)하여 토큰을 대량 소모한다. 반복적인 구조 파악에 토큰을 낭비하는 문제를 해결해야 한다.

[목표]
프로젝트별 구조 요약 파일을 자동으로 생성/갱신하는 시스템을 만들어, 팀 봇이 작업 시작 시 구조 파악에 소비하는 토큰을 대폭 줄인다.

[구현 내용]

작업1: project-map 생성 스크립트 (scripts/project-map.py)
- 프로젝트 경로를 입력받아 구조 요약 파일을 생성하는 CLI 스크립트
- 출력 형식: memory/project-maps/<project-id>.md
- 포함 내용:
  a. 디렉토리 트리 (depth 3, 중요 파일만 / node_modules, .next 등 제외)
  b. 주요 타입/인터페이스 목록 (*.ts에서 export interface/type 추출)
  c. API 라우트 목록 (app/api/ 하위 route.ts 경로 + HTTP 메서드)
  d. 주요 컴포넌트 목록 (components/ 하위 .tsx 파일 + export default 컴포넌트명)
  e. 핵심 설정 파일 내용 요약 (package.json 의존성, tsconfig 주요 설정)
  f. 최근 수정된 파일 Top 20 (git log 기반)
- 사용법: python3 scripts/project-map.py /home/jay/projects/insuwiki --output memory/project-maps/insuwiki.md
- 옵션: --depth (트리 깊이), --include-tests (테스트 파일 포함 여부)

작업2: 팀 프롬프트 연동 (prompts/team_prompts.py 수정)
- dispatch.py에서 --project 옵션 사용 시, 해당 프로젝트의 project-map이 있으면 팀 프롬프트에 참조 경로 자동 삽입
- 프롬프트에 추가할 내용: 프로젝트 구조 맵을 먼저 읽고 작업을 시작하세요: memory/project-maps/<project-id>.md
- project-map 파일이 없으면 기존 동작 유지 (참조 미삽입)

작업3: 자동 갱신 훅
- dispatch.py에 --refresh-map 플래그 추가 (기본값: 자동 판단)
- project-map이 24시간 이상 오래된 경우 위임 전 자동으로 project-map.py 재실행
- project-map이 최신이면 스킵 (불필요한 실행 방지)

작업4: insuwiki 프로젝트 맵 초회 생성
- 위 스크립트 완성 후 /home/jay/projects/insuwiki/ 대상으로 실행
- 생성된 맵 파일 검증 (내용 정확성 spot check)

[수정 가능 파일]
- scripts/project-map.py (신규)
- prompts/team_prompts.py (참조 경로 삽입 로직 추가)
- dispatch.py (--refresh-map 플래그 + 자동갱신 로직)
- memory/project-maps/ (출력 디렉토리)

[수정 금지 파일]
- chain.py
- memory/task-timer.py
- CLAUDE.md
- 1팀 담당 파일 전체

[테스트]
- project-map.py 단위 테스트: 빈 디렉토리, 일반 Next.js 프로젝트, 대규모 프로젝트
- team_prompts.py: project-map 존재/미존재 시 프롬프트 차이 검증
- dispatch.py: --refresh-map 동작 + 24시간 기준 자동갱신 검증
- insuwiki 맵 생성 결과 검증

[기대 효과]
- 팀 봇의 초기 구조 파악 토큰 약 50-70% 절감 예상
- 파일 탐색 시행착오 감소 -> 작업 속도 향상
- 일관된 프로젝트 이해 -> 코드 품질 향상