Step 1: Check changes
Automatically identify files changed in this session.
git status와git diff --statCheck the list of changed files with- If there are no changed files, output "No files were changed today" and exit
- If there are changed files, organize the file names and change summaries and pass them to Phase 1
Step 2: Phase 1 — Parallel analysis (run 4 agents simultaneously)
Based on the changes identified in Step 1, run the following 4 agents simultaneously . Each agent is independent of the others, so run them in parallel to save time.
Agent 1: doc-updater
- Role: Look at the changed files and find documents that need updating
- Targets to check: CLAUDE.md, README.md, context files in the agent/ folder
- Update current task checkboxes (required):
CLAUDE.md의## 3. 현재 진행 상태>당면 과제Read the section- Compare the work completed in this session with the checkbox items
- Change completed items to
[ ]→[x]change to - If there are newly identified tasks in this session, add them as
[ ]add as 마지막 업데이트Update the date to today's date
- Output: "List of documents that need updating + suggested update content + checkbox change details"
Agent 2: automation-scout
- Role: Find recurring patterns in today's work and suggest automation
- Targets to check: repeatedly executed commands, tasks done manually, similar code patterns
- Output: "List of tasks that can be automated + skill/script suggestions"
Agent 3: learning-extractor
- Role: Organize what was learned in this session, problems solved, and new discoveries
- Targets to check: error resolution process, newly created features, applied patterns
- Output: "Today's learning summary (3–5 bullets)"
Agent 4: followup-suggester
- Role: Suggest what to continue in the next session
- Targets to check: unfinished work, areas that can be improved, TODO comments
- Output: "Prioritized list of next tasks"
Step 3: Phase 2 — Verification (sequential execution)
Receive the results of the 4 agents from Phase 1 and have duplicate-checker verify them.
Agent 5: duplicate-checker
- Role: Find and organize duplicates or contradictions in the Phase 1 results
- Complete duplicates: If the same content appears more than once, keep only one
- Partial duplicates: Merge similar content into one
- Output: "Final analysis results with duplicates removed"
Step 4: Integrate results + user selection
Organize the Phase 1 + Phase 2 results into a single summary and show it.
Output format
📋 세션 정리 결과 (2026-XX-XX)
📁 변경된 파일: X개
[파일 목록]
📝 문서 업데이트 제안 (doc-updater)
- [제안 목록]
⚡ 자동화 기회 (automation-scout)
- [제안 목록]
💡 오늘의 학습 (learning-extractor)
- [학습 요약]
➡️ 다음 할 일 (followup-suggester)
- [우선순위 목록]
Then use AskUserQuestion to have the user select the task to execute:
AskUserQuestion({
"questions": [{
"question": "어떤 작업을 실행할까요?",
"header": "실행 선택",
"options": [
{"label": "커밋만", "description": "git add + commit만 실행"},
{"label": "문서 업데이트 + 커밋", "description": "doc-updater 제안 적용 후 커밋"},
{"label": "전체 실행", "description": "문서 업데이트 + 커밋 + 자동화 생성"},
{"label": "건너뛰기", "description": "오늘은 정리 없이 종료"}
],
"multiSelect": false
}]
})
Step 5: Execute the selected task
Execute only the task corresponding to the option selected by the user.
- Commit only:
git add -A && git commit -m "세션 정리: [날짜]" - Document update + commit: apply doc-updater suggestions (including CLAUDE.md pending-task checkboxes) → commit
- Run all: document update → commit → generate automation script/skill draft
- Skip: output only the summary and exit
When "document update + commit" or "Run all" is selected, always execute:
CLAUDE.mdupdate pending-task checkboxes according to doc-updater analysis results마지막 업데이트update the date to today's date- include the changed CLAUDE.md in the commit
Step 6: Rocky sync (automatic)
After running all options (except Skip), automatically sync the session learnings to Rocky.
-
Extract the actual content from the learning-extractor and followup-suggester results:
SYNC_DECISION— Key decisions from this session (1–2 sentences)SYNC_WHY— Why that method/order was chosenSYNC_LEARNING— What Rocky should learn (using learning-extractor results)SYNC_NEXT— Follow-up tasks (using followup-suggester results)
If extraction is not possible (short session, no learning points, etc.): skip all of Step 6 — do not run the commands below
-
On successful extraction,
sync_to_rocky.shcall (Slack notification in the order webhook → bot token):export SYNC_DECISION="<핵심 판단>" export SYNC_WHY="<이유>" export SYNC_LEARNING="<Rocky가 배울 점>" export SYNC_NEXT="<다음 할 일>" bash scripts/sync_to_rocky.sh "세션 요약 한 줄"- If exit 2 is returned: content incomplete → output an error message and skip (session wrap continues)
- Other failures such as SSH errors: output only the error message, wrap completes normally
Rocky sync failure/skip does not prevent session wrap-up.
Quick Reference
When it is good to use
- When wrapping up after a long work session (1 hour+)
- Right before switching projects (organizing the current state)
- Organizing before a weekly/monthly retrospective
When it is okay to skip
- When only short questions or lookups were made
- When only reading code without changing it
- When commits have already been completed cleanly
Execution Flow
┌─────────────────────────────────────────────┐
│ Step 1. Git 상태 확인 (오늘 뭘 했나?) │
└──────────────────────┬──────────────────────┘
│
┌──────────────────────▼──────────────────────┐
│ Step 2. Phase 1: 병렬 분석 (동시 실행) │
│ ┌────────────┬────────────┐ │
│ │doc-updater │automation- │ │
│ │ │scout │ │
│ ├────────────┼────────────┤ │
│ │learning- │followup- │ │
│ │extractor │suggester │ │
│ └────────────┴────────────┘ │
└──────────────────────┬──────────────────────┘
│
┌──────────────────────▼──────────────────────┐
│ Step 3. Phase 2: 검증 (순차 실행) │
│ duplicate-checker → 중복 제거 │
└──────────────────────┬──────────────────────┘
│
┌──────────────────────▼──────────────────────┐
│ Step 4. 결과 통합 + 사용자 선택 │
└──────────────────────┬──────────────────────┘
│
┌──────────────────────▼──────────────────────┐
│ Step 5. 선택된 작업 실행 │
└──────────────────────┬──────────────────────┘
│
┌──────────────────────▼──────────────────────┐
│ Step 6. Rocky 동기화 (SSH → macbook_sync.md) │
│ + Slack #project-hailmary 알림 │
└─────────────────────────────────────────────┘