## 배경 이전 커밋 433290f의 "throttle 30초 단축" 안은 PD님이 직접 반려: "30초 polling은 네트워크 부하 유발 + 근본 해결 아님. 대신 공유할 사항 발생 시 플래그 데이터 갱신 → 수신 측이 플래그만 체크" ## 채택 구조 (PD님 제안 그대로 반영) - 주 동기화: 로컬 IPC 시그널 파일 (~/.claude/.nerdnavis_bus/signal_<repo>) - push 측: sync_signal.sh update 로 HEAD·timestamp 기록 - 수신 측: UserPromptSubmit hook에서 sync_signal.sh check - 플래그 미변경 시 → 네트워크 호출 0 (즉시 종료) - 플래그 변경 시 → fetch + stash/pop + ff→non-ff merge fallback ## 신설 스크립트 - scripts/sync_signal.sh (update/check 모드) - scripts/sync_push.sh (push + 시그널 갱신 묶음) ## 조정 - scripts/git_fetch_throttle.sh 역할 변경: 주 방식 실패·다른 PC push 대비 fallback - throttle 30s → 300s 복원 (네트워크 부하 제거) ## Hook 편입 - UserPromptSubmit hook 순서: (1) sync_signal.sh check → (2) git_fetch_throttle.sh (fallback) ## 네트워크 비용 - 이전(polling): 매 30초 강제 fetch - 현재(이벤트): 플래그 변경 시에만 fetch (변화 없으면 비용 0) ## 노하우 - memory/feedback_realtime_sync_gap.md 갱신 (이벤트 방식 최종 채택) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .claude | ||
| .live | ||
| memory | ||
| scripts | ||
| setup | ||
| 공유 | ||
| 코어코드/NerdNavis.Framework | ||
| 프로젝트 | ||
| .gitattributes | ||
| .gitignore | ||
| CLAUDE.md | ||
| README.md | ||
| paths.local.json.template | ||
README.md
너드나비스 조직 레포 (NerdNavisAi)
너드나비스 게임 개발 스튜디오의 Claude 에이전트 자산 + 조직 프로세스·노하우 동기화 저장소.
구성
| 디렉토리 | 내용 |
|---|---|
CLAUDE.md |
조직 최상위 지침. PD·총괄PM·개발팀장·기획팀장 구조 정의 |
공유/ |
PD 지시 트래킹·일일보고·조직공지·부서간 소통 허브 |
코어코드/ |
개발팀 코어 코드 프레임워크 자산 |
프로젝트/ |
프로젝트별 자산 (에이전트 정의·기획·개발 산출물) |
memory/org/ |
Claude 사용자 메모리 (외부 ~/.claude/projects/*/memory/ 에서 복사·심볼링크 대상) |
setup/ |
다중 PC 셋업 스크립트 (Windows·macOS) |
첫 사용자 셋업
1. Clone
git clone https://burning.i234.me/NerdNavis/NerdNavisAi.git "C:/Users/PC/Documents/너드나비스"
또는 SSH:
git clone ssh://git@burning.i234.me:30030/NerdNavis/NerdNavisAi.git "C:/Users/PC/Documents/너드나비스"
2. paths.local.json 작성
paths.local.json.template을 복사하여 본인 PC 환경에 맞게 수정.
cp paths.local.json.template paths.local.json
이 파일은 .gitignore에 등록되어 있어 커밋되지 않습니다.
3. Claude 사용자 메모리 연결 (권장)
# Windows
.\setup\setup_windows.ps1
# macOS / Linux
bash setup/setup_macos.sh
이 스크립트는 ~/.claude/projects/<해시>/memory/ 를 memory/org/ 로 junction/symlink 연결합니다.
제외 대상 (.gitignore 요약)
- Unity 프로젝트 산출물 (
Library/·Temp/·Build/) - 로컬 환경 파일 (
paths.local.json·settings.local.json·.env) - 시크릿 (
*.key·*.pem·secrets/·*.token) - 기획팀 대용량 (
*.xlsm·*.xlsx) - DB 실물 (
*.sqlite) - 코어코드 스켈레톤 (
코어코드/_skeleton/) — 별도 UPM 레포로 분리 예정
규칙
본 레포에서 일하는 모든 에이전트·작업자는 .claude/skills/너드나비스-코어룰/SKILL.md(단일 SOT)를 반드시 준수합니다. 부서 서브에이전트는 frontmatter skills: [너드나비스-코어룰] 로 자동 주입받고, 메인 세션은 CLAUDE.md @.claude/skills/너드나비스-코어룰/SKILL.md 로 로드합니다.
- C1~Cn: 핵심 규칙 (PD님만 수정)
- P1~P20: 프로젝트 규칙 (팀장급 재량)
라이선스·비공개
본 레포는 Private. 외부 공유·복제 금지.