make claude 명령 체계
Claude Code를 실행하는 4개 명령이 ops/makefile/claude.mk에 정의되어 있습니다. 모든 명령은 공통 함수 run_claude를 호출하며, 시스템 프롬프트 자동 주입이 포함됩니다.
명령 비교
| 명령 | 세션 | Auto 모드 | 세션 없을 때 |
|---|---|---|---|
make claude | 새 세션 | ✗ | 정상 시작 |
make claude-auto | 새 세션 | ✓ | 정상 시작 |
make claude-resume | 기존 재개 | ✗ | 에러 → make claude 안내 |
make claude-resume-auto | 기존 재개 | ✓ | 에러 → make claude-auto 안내 |
추가: make claude-continue — 마지막 세션 이어가기 (--continue)
공통 옵션
# 프로젝트 지정
make claude PROJECT=workspace/quant.how
# 프로필 프롬프트 추가 (예: 특허 작업)
make claude PROFILE=patent
# 추가 옵션
make claude OPTS="--verbose"
# 조합
make claude-auto PROJECT=workspace/apis.how PROFILE=patent
실행 흐름 (run_claude 함수)
1. 프로젝트 결정
├── PROJECT= 인자 → 세션명 변환
├── tmux 세션명 → 폴더 경로 역변환
└── alias 매핑 (.claude/config/project-aliases.json)
2. 시스템 프롬프트 수집
├── /AGENTS.SYSTEM.md (Global)
├── {중간경로}/AGENTS.SYSTEM.md (Ancestor, 있으면)
├── {project}/AGENTS.SYSTEM.md (Project)
└── profiles/{name}.md (PROFILE= 지정 시)
3. 실행 디렉토리 결정
├── run_in_dir=true → 프로젝트 폴더에서 실행
└── run_in_dir=false → 루트에서 실행 (기본)
4. Claude Code 실행
claude {OPTS} --append-system-prompt "{수집된 프롬프트}"
세션 재개 메커니즘
claude-resume / claude-resume-auto 실행 시:
- 프로젝트 결정 (PROJECT= 또는 tmux 세션명)
.ai-core/data/context/tmux-sessions/{세션명}.json조회session_id추출make claude OPTS="--resume {session_id}"호출
세션 매핑은 user-prompt-submit.sh Hook이 매 턴 자동 저장합니다.
Auto 모드
--enable-auto-mode는 Claude Code의 auto 권한 모드를 활성화합니다.
| 구분 | 일반 모드 | Auto 모드 |
|---|---|---|
| 파일 편집 | 수동 승인 | AI classifier 자동 판단 |
| 명령 실행 | 수동 승인 | 안전한 것만 자동 |
| 위험 명령 | 수동 승인 | classifier가 차단 |
warning
Auto 모드에서도 AGENTS.SYSTEM.md의 금지사항(DB 삭제, Git force 등)은 여전히 적용됩니다.
프로젝트 Alias
.claude/config/project-aliases.json으로 짧은 이름을 등 록합니다:
{
"patent-suite": {
"path": "workspace/patent.how/tools/patent-suite",
"run_in_dir": true
}
}
run_in_dir: true일 때 해당 폴더에서 Claude Code를 실행하고, .claude/ 하위 폴더들을 자동으로 심링크합니다.
프롬프트 상태 확인
# 주입될 프롬프트 미리 확인
make prompt-status
실행 시 터미널에 주입 상태가 표시됩니다:
┌─────────────────────────────────────────────────────────────┐
│ 📋 Prompt Injection Status │
├─────────────────────────────────────────────────────────────┤
│ ✓ GS Global System : AGENTS.SYSTEM.md (~868 tok) │
│ ✓ GU Global User : AGENTS.USER.md (~53 tok) │
│ 📁 Project: workspace--quant__how │
│ ✓ PS Project System : AGENTS.SYSTEM.md (~200 tok) │
├─────────────────────────────────────────────────────────────┤
│ 📊 Total System Prompt: ~1121 tokens │
└─────────────────────────────────────────────────────────────┘
tmux와의 연동
- tmux 세션명이 프로젝트 식별자로 사용됨
- 세션명 변환:
/→--,.→__ - 각 tmux 세션에서
make claude를 실행하면 해당 프로젝트 컨텍스트가 자동 적용