diff --git a/.agents/workflows/check-gitea.md b/.agents/workflows/check-gitea.md new file mode 100644 index 0000000..4170ec0 --- /dev/null +++ b/.agents/workflows/check-gitea.md @@ -0,0 +1,40 @@ +--- +description: Gitea API로 gravity_web 저장소 커밋/이슈/PR 현황을 조회하는 워크플로우 +--- + +# Gitea 저장소 현황 조회 + +서비스 정보는 `.agents/workflows/services.md` 참조. + +// turbo-all + +## 절차 + +1. 최근 커밋 조회 (최신 10개): +```powershell +$h = @{Authorization="token 3a01b4b15a39921572e64c413353e870d4d2161b"} +$commits = Invoke-RestMethod -Uri "https://git.variet.net/api/v1/repos/Variet/gravity_web/commits?limit=10&sha=main" -Headers $h +$commits | ForEach-Object { Write-Host "$($_.sha.Substring(0,7)) $($_.commit.message.Split("`n")[0])" } +``` + +2. 열린 이슈 조회: +```powershell +$h = @{Authorization="token 3a01b4b15a39921572e64c413353e870d4d2161b"} +$issues = Invoke-RestMethod -Uri "https://git.variet.net/api/v1/repos/Variet/gravity_web/issues?state=open&type=issues" -Headers $h +$issues | ForEach-Object { Write-Host "#$($_.number) $($_.title)" } +``` + +3. Wiki 페이지 목록: +```powershell +python .agents\workflows\wiki_helper.py list +``` + +4. Wiki 페이지 읽기: +```powershell +python .agents\workflows\wiki_helper.py read "Architecture" +``` + +5. Wiki 페이지 업데이트: +```powershell +python .agents\workflows\wiki_helper.py update "페이지-제목" /tmp/wiki_content.md +``` diff --git a/.agents/workflows/check-vikunja.md b/.agents/workflows/check-vikunja.md new file mode 100644 index 0000000..d2be482 --- /dev/null +++ b/.agents/workflows/check-vikunja.md @@ -0,0 +1,41 @@ +--- +description: Vikunja API로 gravity_web 프로젝트 태스크 현황을 조회하는 워크플로우 +--- + +# Vikunja 태스크 현황 조회 + +서비스 정보는 `.agents/workflows/services.md` 참조. + +// turbo-all + +## 절차 + +1. 전체 목록: +```powershell +python .agents\workflows\vikunja_helper.py list +``` + +2. TODO만: +```powershell +python .agents\workflows\vikunja_helper.py list todo +``` + +3. DONE만: +```powershell +python .agents\workflows\vikunja_helper.py list done +``` + +4. 태스크 완료 처리 (**⚠️ 반드시 이 방법 사용 — 직접 API 호출 금지**): +```powershell +python .agents\workflows\vikunja_helper.py done {TASK_ID} +``` + +5. 새 태스크 생성: +```powershell +python .agents\workflows\vikunja_helper.py create "제목" "설명" --labels Backend,Priority:High +``` + +> [!CAUTION] +> **절대로** `Invoke-RestMethod -Method Post -Body '{"done": true}'` 같은 직접 API 호출을 사용하지 마세요. +> Vikunja API는 POST 시 body에 포함되지 않은 필드를 빈값으로 덮어씁니다. +> `vikunja_helper.py`는 항상 GET → 기존 필드 보존 → POST 패턴을 사용합니다. diff --git a/.agents/workflows/end.md b/.agents/workflows/end.md new file mode 100644 index 0000000..842871d --- /dev/null +++ b/.agents/workflows/end.md @@ -0,0 +1,68 @@ +--- +description: 세션 종료 시 git commit + Vikunja 동기화 +--- + +# 세션 종료 프로토콜 + +작업 완료, "끝", "마무리", "커밋해" 등 요청 시 이 워크플로우를 실행합니다. + +// turbo-all + +## 1. Vikunja 동기화 + +> [!CAUTION] +> **반드시 `vikunja_helper.py` 사용.** 직접 API 호출 금지. + +### 1-1. 커밋 전수 검사 + +이번 세션의 모든 커밋을 확인하고 Vikunja에 매핑: + +```powershell +git log --oneline -20 +``` + +| 커밋 유형 | Vikunja 액션 | +|-----------|-------------| +| 기존 태스크 해당 작업 완료 | `python .agents\workflows\vikunja_helper.py done {ID}` | +| 신규 작업 완료 (기존 태스크 없음) | `python .agents\workflows\vikunja_helper.py create "제목" "설명" --done --labels Backend,Priority:High` | +| 작업 중 발견된 미완료 TODO | `python .agents\workflows\vikunja_helper.py create "제목" "설명" --labels Backend,Priority:Mid` | + +### 1-2. Wiki 동기화 (해당 시에만) + +| 코드 변경 | 대상 Wiki | +|-----------|----------| +| 서버 변경 | Architecture | +| CDP 관련 | Architecture | +| 프론트엔드 변경 | Architecture | + +```powershell +python .agents\workflows\wiki_helper.py update "Architecture" /tmp/wiki_content.md +``` + +## 2. Git Commit & Push + +```powershell +git add -A +git status --short +``` +```powershell +git commit -m "커밋 메시지" +``` +```powershell +git push origin main +``` + +**커밋 메시지 컨벤션:** +``` +(): + +type: feat|fix|refactor|test|docs|chore|ci|infra +scope: server|frontend|cdp|infra (선택) +``` + +## 3. 최종 체크리스트 + +- [ ] Vikunja 태스크 생성/완료 처리됨 +- [ ] Wiki 동기화됨 (해당 시) +- [ ] git push 완료 +- [ ] 사용자에게 완료 보고 diff --git a/.agents/workflows/services.md b/.agents/workflows/services.md index e04356c..c7b23e1 100644 --- a/.agents/workflows/services.md +++ b/.agents/workflows/services.md @@ -43,7 +43,7 @@ description: Gravity Web 프로젝트 연동 서비스 URL, API 키, 프로젝 > 태스크 목록은 항상 라이브 조회를 사용합니다. 하드코딩된 매핑은 유지하지 않습니다. ```powershell -C:\ProgramData\miniforge3\envs\deriva\python.exe .agents\workflows\vikunja_helper.py list todo +python .agents\workflows\vikunja_helper.py list todo ``` ## 기타 서비스 diff --git a/.agents/workflows/start.md b/.agents/workflows/start.md new file mode 100644 index 0000000..587df55 --- /dev/null +++ b/.agents/workflows/start.md @@ -0,0 +1,45 @@ +--- +description: 세션 시작 시 프로젝트 맥락을 빠르게 복구하는 워크플로우 +--- + +# 세션 시작 프로토콜 + +새 대화 시작, "continue", "이어서", "작업 시작" 등 요청 시 이 워크플로우를 실행합니다. + +// turbo-all + +## 절차 + +### 1. Git 상태 확인 + +```powershell +git status --short +``` +```powershell +git log --oneline -5 +``` + +### 2. Vikunja TODO 태스크 + +```powershell +python .agents\workflows\vikunja_helper.py list todo +``` + +### 3. Wiki 아키텍처 확인 (필요 시) + +```powershell +python .agents\workflows\wiki_helper.py read "Architecture" +``` + +### 4. 종합 보고 + +결과를 종합하여 사용자에게 보고: +- 마지막 커밋 + 미완료 태스크 +- TODO 태스크 목록 (라벨 + 우선순위) +- 다음 작업 제안 + +**우선순위 판단 기준:** +- P0: CDP 연결 관련 (Antigravity 연결이 안되면 전체 기능 불가) +- P1: 서버/WebSocket 통신 장애 +- P2: 기능 미완성/UX 개선 +- P3: 문서, 코드 정리 diff --git a/README.md b/README.md index d8739f8..9e726f3 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ Antigravity는 Electron 기반 앱이므로 `--remote-debugging-port` 플래그 ```powershell # 방법 1: 직접 실행 (권장) -"C:\Users\Certes\AppData\Local\Programs\Antigravity\Antigravity.exe" --remote-debugging-port=9000 +"%LOCALAPPDATA%\Programs\Antigravity\Antigravity.exe" --remote-debugging-port=9000 # 방법 2: 배치 파일 사용 launch-antigravity-debug.bat diff --git a/launch-antigravity-debug.bat b/launch-antigravity-debug.bat index dfb706e..67c5f09 100644 --- a/launch-antigravity-debug.bat +++ b/launch-antigravity-debug.bat @@ -1,5 +1,32 @@ @echo off echo Starting Antigravity with CDP on port 9000... -start "" "C:\Users\Certes\AppData\Local\Programs\Antigravity\Antigravity.exe" --remote-debugging-port=9000 -echo Done. Antigravity should be starting. +echo. + +REM 일반적인 설치 경로들을 순서대로 시도 +set "AG_PATH=" + +if exist "%LOCALAPPDATA%\Programs\Antigravity\Antigravity.exe" ( + set "AG_PATH=%LOCALAPPDATA%\Programs\Antigravity\Antigravity.exe" +) +if "%AG_PATH%"=="" if exist "%ProgramFiles%\Antigravity\Antigravity.exe" ( + set "AG_PATH=%ProgramFiles%\Antigravity\Antigravity.exe" +) +if "%AG_PATH%"=="" if exist "%ProgramFiles(x86)%\Antigravity\Antigravity.exe" ( + set "AG_PATH=%ProgramFiles(x86)%\Antigravity\Antigravity.exe" +) + +if "%AG_PATH%"=="" ( + echo [ERROR] Antigravity.exe 를 찾을 수 없습니다. + echo 아래 경로를 확인해주세요: + echo - %LOCALAPPDATA%\Programs\Antigravity\ + echo - %ProgramFiles%\Antigravity\ + echo. + echo 수동 실행: "경로\Antigravity.exe" --remote-debugging-port=9000 + pause + exit /b 1 +) + +echo Found: %AG_PATH% +start "" "%AG_PATH%" --remote-debugging-port=9000 +echo Done. Antigravity should be starting with CDP on port 9000. pause