Skip to content

CLAUDE.md 통합 관리

17개+ 프로젝트의 CLAUDE.md 를 ainote 한 곳에서.

문제

~/CLAUDE.md                          ← 전역 설정
~/launchcrew/CLAUDE.md               ← 프로젝트별
~/tennis_bracket/CLAUDE.md
~/keeps/CLAUDE.md
... (17개 프로젝트)

여러 노트북에서 작업 → 어디서 수정했는지 모름 → drift 발생.

해결

ainote 가 source of truth.

ainote vault
└── dev/claude/
    ├── global-claude-guidelines.md  → ~/CLAUDE.md
    ├── launchcrew-claude.md          → ~/launchcrew/CLAUDE.md
    ├── tennis-bracket-claude.md      → ~/tennis_bracket/CLAUDE.md
    └── ...

각 문서에 local_path 메타데이터 → pull_dev_docs 가 그 경로로 복원.

1회 등록

각 CLAUDE.md 마다:

ainote 에 ~/launchcrew/CLAUDE.md 등록해줘
- title: launchcrew-claude.md
- category: claude-md
- local_path: /Users/seunghan/launchcrew/CLAUDE.md

Claude 가 create_dev_doc 호출:

json
{
  "title": "launchcrew-claude.md",
  "category": "claude",
  "local_path": "/Users/seunghan/launchcrew/CLAUDE.md",
  "content": "<file content>"
}

일괄 등록 스크립트

bash
#!/bin/bash
# ~/scripts/ainote-claude-md-init.sh

ainote-push() {
  local file="$1"
  local title="$2"
  local content
  content=$(python3 -c "import sys,json; print(json.dumps(open('$file').read()))")
  local local_path
  local_path=$(realpath "$file")
  ainote create_dev_doc "{
    \"title\":\"$title\",
    \"content\":$content,
    \"subcategory\":\"claude-md\",
    \"local_path\":\"$local_path\"
  }"
}

# 전역
ainote-push ~/CLAUDE.md global-claude-guidelines.md

# 모든 프로젝트
for proj in ~/launchcrew ~/tennis_bracket ~/keeps ~/triphelper ~/realpick ~/talkk; do
  if [ -f "$proj/CLAUDE.md" ]; then
    name=$(basename "$proj" | tr '_' '-')
    ainote-push "$proj/CLAUDE.md" "${name}-claude.md"
  fi
done

echo "✅ CLAUDE.md 일괄 등록 완료"

수정 후 push

CLAUDE.md 편집 후:

bash
ainote-push ~/launchcrew/CLAUDE.md launchcrew-claude.md
# 이미 존재 → update_dev_doc (replace mode)

또는 Claude 에서:

launchcrew CLAUDE.md 수정한 거 ainote 에 동기화해줘

새 기기 일괄 복원

bash
ainote pull_dev_docs '{"category":"claude"}'

응답:

✓ /Users/seunghan/CLAUDE.md (created)
✓ /Users/seunghan/launchcrew/CLAUDE.md (updated)
✓ /Users/seunghan/tennis_bracket/CLAUDE.md (updated)
... (17 files)

충돌 처리

두 기기에서 동시 편집 → 마지막 push 가 이김 (LWW).

복구:

bash
# git history 에서 손실된 버전 찾기
cd ~/.ainote-vault
git log -p dev/claude/launchcrew-claude.md

# 손실 버전 export
git show <SHA>:dev/claude/launchcrew-claude.md > /tmp/lost.md

자세히: sync 충돌.

명명 컨벤션

{project_name}-claude.md
  • project_name: snake_case → kebab-case (tennis_brackettennis-bracket)
  • 전역: global-claude-guidelines.md
  • SuperClaude 설정: personas-enhanced-activation.md

자세히: 네임 규칙.

다음

MIT License · ainote.dev