Session handoff workflow — status check, test, commit, memory store, summary output
git status + git diff --stat 상태 확인detect-language.sh의 detect_test_runner() + get_test_cmd()로 테스트 실행commit 스킬 활용 커밋 + git pushmd-store-memory.sh로 session-handoff 메모리 저장현재 작업 상태를 확인합니다.
git status
git diff --stat
판단 기준:
scripts/detect-language.sh의 함수를 활용하여 언어 비종속적으로 테스트를 실행합니다.
source scripts/detect-language.sh
RUNNER=$(detect_test_runner)
PKG=$(detect_pkg_manager)
TEST_CMD=$(get_test_cmd "$RUNNER" "$PKG")
테스트 결과 분기:
RUNNER=unknown) → 스킵, Step 3으로 진행중요: 핸드오프 시점에서 실패한 테스트를 수정하지 않는다. 실패 사실만 기록하여 다음 세션에 전달.
commit 스킬을 활용하여 커밋합니다.
commit 스킬 워크플로우 실행
git push 실행
git push -u origin <branch> 사용md-store-memory.sh로 세션 인수인계 정보를 저장합니다.
scripts/md-store-memory.sh \
"Session Handoff: <session-goal>" \
"<content>" \
"handoff,session,<scope-tags>" \
"session-handoff" \
"<keywords>" \
"<contextual_description>" \
"<related-memory-slugs>"
<content> 필드는 아래 구조를 따릅니다:
## Completed
- [task/feature 완료 목록]
## In Progress
- [진행 중이던 작업 + 현재 상태]
## Blocked / Failed
- [블로커 또는 실패한 테스트 목록]
## Next Steps
- [다음 세션에서 이어할 작업 목록, 우선순위 순]
## Key Decisions
- [이번 세션에서 내린 주요 결정사항]
## Commit History
- <commit-hash>: <description>
아래 형식으로 요약을 출력합니다:
---
SESSION HANDOFF
Branch: <branch-name>
Last Commit: <hash> — <message>
Test Status: PASS | FAIL (N failures) | SKIPPED
---
Completed: <bullet list>
In Progress: <bullet list>
Next Steps: <bullet list>
---
executor 스킬 실행 중 세션이 종료되어야 하는 경우:
executor의 Phase Checkpoint Commit 절차 실행| Anti-Pattern | 올바른 방법 |
|---|---|
| 핸드오프 시 실패 테스트 수정 시도 | 실패 사실만 기록, 수정은 다음 세션 |
| 메모리 저장 없이 커밋만 | 반드시 session-handoff 메모리 저장 |
| "다 끝났다"만 기록 | Completed/In Progress/Next Steps 구조 준수 |
| push 없이 종료 | 반드시 remote에 push |
| PLAN.md 상태 업데이트 누락 | executor 연동 시 PRD/PLAN 상태도 반영 |