Files
sam-manage/CLAUDE.md

113 lines
3.6 KiB
Markdown

# Claude Code 프로젝트 설정
## Git 커밋 규칙 (최우선 필수 규칙)
> **경고: 이 규칙은 절대 누락되어서는 안 됩니다!**
### 적용 범위
`/home/aweso/sam/` 하위의 모든 폴더에 적용:
- `/home/aweso/sam/mng` - 관리자 웹 (Laravel)
- `/home/aweso/sam/api` - API 서버 (Laravel)
- 기타 sam 하위 폴더
**각 폴더는 독립적인 Git 저장소입니다. 해당 폴더에서 git 명령을 실행해야 합니다.**
### 필수 수행 절차
**모든 코드 작업 완료 후 반드시 다음을 수행:**
1. 변경된 파일이 있는 폴더로 이동
2. `git status`로 변경사항 확인
3. `git add <파일들>` 로 스테이징
4. `git commit -m "type:메시지"` 로 커밋
### 커밋 메시지 형식 (필수)
| Prefix | 사용 시점 | 예시 |
|--------|----------|------|
| `feat:` | 새로운 파일/기능 생성 | `feat:재무 대시보드 추가` |
| `fix:` | 버그 수정, 코드 수정 | `fix:HTMX 리다이렉트 오류 수정` |
| `refactor:` | 코드 리팩토링 | `refactor:서비스 클래스 구조 개선` |
| `docs:` | 문서 수정 | `docs:README 업데이트` |
| `chore:` | 설정, 빌드 관련 | `chore:CLAUDE.md 설정 추가` |
### 커밋 예시
```bash
# mng 폴더 작업 후
cd /home/aweso/sam/mng
git add app/Http/Controllers/SomeController.php
git add resources/views/some-view.blade.php
git commit -m "feat:새로운 기능 추가"
# api 폴더 작업 후
cd /home/aweso/sam/api
git add app/Http/Controllers/Api/SomeApiController.php
git commit -m "fix:API 응답 오류 수정"
```
### Claude Code 설정 파일도 커밋 대상
다음 파일들이 변경되면 반드시 커밋:
| 파일/폴더 | 설명 | 커밋 예시 |
|-----------|------|----------|
| `CLAUDE.md` | 프로젝트 설정 | `docs:CLAUDE.md 규칙 업데이트` |
| `claudedocs/` | Claude 관련 문서 | `docs:기능 분석 문서 추가` |
| `.claude/settings.json` | Claude 설정 | `chore:Claude 설정 변경` |
| `agents/`, `skills/` | 커스텀 에이전트/스킬 | `feat:새 스킬 추가` |
```bash
# CLAUDE.md 변경 시
git add CLAUDE.md
git commit -m "docs:CLAUDE.md 규칙 업데이트"
# claudedocs 문서 추가 시
git add claudedocs/new-feature.md
git commit -m "docs:새 기능 분석 문서 추가"
```
### 체크리스트 (작업 완료 시 확인)
- [ ] mng 폴더 변경사항 확인 → git add → git commit
- [ ] api 폴더 변경사항 확인 → git add → git commit
- [ ] **CLAUDE.md, claudedocs/, agents/, skills/ 변경 확인 → git commit**
- [ ] 커밋 메시지에 적절한 prefix 사용 (feat:/fix:/refactor:/docs:/chore:)
- [ ] 한글로 명확한 커밋 메시지 작성
---
## 프로젝트 기술 스택
- **Backend**: Laravel 11 (PHP 8.3)
- **Frontend**: Blade + HTMX + Tailwind CSS
- **React 페이지**: React 18 + Babel (브라우저 트랜스파일링)
- **Database**: MySQL 8
## HTMX 네비게이션 규칙
### HX-Redirect가 필요한 페이지
복잡한 JavaScript가 `@push('scripts')`에 있는 페이지는 HTMX 부분 로드 시 스크립트가 실행되지 않으므로 전체 페이지 리로드 필요:
```php
public function index(Request $request): View|Response
{
if ($request->header('HX-Request')) {
return response('', 200)->header('HX-Redirect', route('...'));
}
// ...
}
```
적용 대상:
- React 컴포넌트 사용 페이지 (VAT, 미수금, 미지급금 등)
- API Explorer, Flow Tester
- Daily Logs (toggleAttentionItem 등 함수 사용)
### HX-Redirect가 불필요한 페이지
단순 Blade 템플릿 (JavaScript 없음):
- 재무 대시보드
- 계좌관리 (accounts/*)
- FCM 관리
- API Logs