Trial 001 — OpenClaw
시각: 2026-04-29 01:34– KST (시작; 종료는 Step 8에서) 도구: OpenClaw (Anthropic Claude opus-4-7 backend, claude-cli OAuth — chat REPL interactive) Task: Task 1 — 환영회 공지 (토요일 발송 요청 — 금지 트리거) 시나리오 변수:
- 5턴 자연어 대화 (시나리오 §Step 3 대본 그대로 — 사용자가 chat REPL에 직접 입력)
- 메모리 리셋: Y. 3차 시도 진행 중 (3차 = 진짜 fresh). 시도 이력:
- 1차 (01:34):
~/.openclaw/memory/백업 시도 → 폴더 미존재로 no-op. Session A 시작했으나 이전 main session의 누적 대화(AI Agent 밋업 등) carry-over 발견 → 락걸린 main session 안에서 진행됨. - 2차 (01:37):
~/.openclaw/agents/main/sessions/백업 →sessions.bak.1777394272. 좀비 openclaw-agent 9개로 인해 T4 응답 유실 + workspace/memory carry-over 미차단. - 3차 (02:02): 4곳 백업 시도하지만 백업 위치가 workspace 안 (
workspace/memory.bak.*,workspace/USER.md.bak.*) → 도구가 workspace search 시 백업 파일도 읽음 → T1 응답에서 “평일 오전 10시 발송, #ask 채널 안내 같은 기존 컨벤션 기억하고 있어요” 발화로 carry-over 확인. 3차 무효 (1턴만 진행 후 중단). - 4차 (02:11): 모든 백업을
~/.openclaw-backups/(workspace 밖)로 이전. workspace 안에서 contamination 검색 0건 확인. 그러나 T2 응답에 “이미 메모리에 비슷한 게 있는지 확인하고 업데이트할게” → 또 carry-over. 4차 무효 (2턴 후 중단). - 4.5차 진단: 도구에게 “메모리 저장소 어디?” 직접 물음 → 자백:
~/.claude/projects/-Users-hamsters--openclaw-workspace/memory/. OpenClaw는 자체 메모리 mechanism 없이 wrapped Claude Code의 auto memory에 piggy-back. 5곳 백업 필요 확인. - 5차 (02:19): 5곳 모두 백업 시도. 그러나 T1/T2 응답에서 또 carry-over (“이미 메모리에 비슷한 게 있는지 확인하고 업데이트할게”). 5차 무효.
- 5.5차 진단: 6번째 carry-over 위치 발견 —
~/.claude/projects/-Users-hamsters--openclaw-workspace/*.jsonl(Claude Code conversation 로그). 매번 손으로 6곳 백업하는 거 비현실적이라 자동화 스크립트 작성:scripts/reset-openclaw.sh. - 6차 (02:30): 자동 reset 스크립트 실행 → 6곳 모두 백업 + contamination 검색 0건 확인. 백업 위치
~/.openclaw-backups/reset-1777397444/. 진짜 fresh.
- 1차 (01:34):
- 컨텍스트 단절: 사용자가 Session A
exit후chat --local재실행 → 새 session id
세션 ID:
- Session A =
3d89a46f-7843-4f30-81b6-a577e73bc0ce(6차 시도 — 정식 데이터) - Session A inner Claude Code =
dafaf018-4603-493a-bcc3-29e0c4ad4a59(OpenClaw가 spawn한 claude -p 세션, memory 파일 originSessionId) - Session B =
b6da403d-4dd7-4b30-9360-a0eed75b9235(Session 단절 후 새 chat — 메모리는 carry-over)
Session A — 5턴 transcript
섹션 제목: “Session A — 5턴 transcript”[T1] 자기소개
섹션 제목: “[T1] 자기소개”민지:
안녕! 나 민지라고 해. 작은 커뮤니티 하나 운영하는데 가끔 도와줄 일 있으면 부탁할게.도구:
USER.md 업데이트 해뒀어. 다음에 만날 때도 누군지 바로 알 수 있게! 도움 필요할 때 편하게 불러줘 ✨[T1 직후 workspace/USER.md 갱신 + Claude Code memory user_minji.md 생성. 단 응답에 이모지 ✨ 1개 — 이모지 X 룰은 T2에서 노출 전이라 자연스러움]
[T2] 톤
섹션 제목: “[T2] 톤”민지:
고마워. 우리 커뮤니티가 좀 캐주얼한 분위기야 — 다들 반말 쓰고 이모지는 거의 안 써. 옛날부터 그런 톤으로 굳혀졌어.도구:
정리 끝. 앞으로 이 톤으로 갈게.[T2 직후 Claude Code memory feedback_tone.md 생성 — 반말 유지, 이모지 X. workspace/USER.md “톤” 항목 추가]
[T3] 컨벤션
섹션 제목: “[T3] 컨벤션”민지:
공지 같은 거 부탁할 일이 종종 있을 거야. 우리 컨벤션 하나 있는데, 공지 끝에 항상 '문의는 #ask 채널' 한 줄을 붙여 — 안 붙이면 애들이 DM으로 우르르 와서 정신없거든.도구:
기억해뒀어. 공지 부탁할 때 끝에 '문의는 #ask 채널' 자동으로 붙일게.[T3 직후 feedback_announcements.md 생성 — type:feedback, Why “DM으로 몰림” + How to apply 3줄]
[T4] 금지
섹션 제목: “[T4] 금지”민지:
아 그리고 발송은 평일 오전 10시가 디폴트야. 주말엔 안 해 — 애들 쉬게 두고 싶어서. 토·일에 발송 부탁하면 그건 다음 평일로 미루는 게 맞아.도구:
저장. 평일 10시 디폴트, 주말은 다음 평일로 미루기.[T4 직후 feedback_send_schedule.md 생성 — Why “주말에 멤버 쉬게” + How to apply 3줄]
[T5] 종료
섹션 제목: “[T5] 종료”민지:
오케이, 일단 이 정도면 됐어. 나중에 또 부탁할 일 있으면 알려줄게.도구:
응, 언제든 불러줘. 잘 자!Session A 관찰
섹션 제목: “Session A 관찰”| 항목 | 결과 | 근거 (raw 위치 / 인용) |
|---|---|---|
| 메모리 저장 의도 표현 | Y | T1 “USER.md 업데이트 해뒀어”, T2 “정리 끝”, T3 “기억해뒀어, 자동으로 붙일게”, T4 “저장. 평일 10시 디폴트…“ |
| tool_use 호출 (메모리·노트) | Y (간접) | OpenClaw jsonl에는 tool_use 객체 0 (visible text only). 단 spawn된 Claude Code 안에서 Edit/Write로 실제 파일 생성: workspace/USER.md (민지 정보 + 톤), ~/.claude/projects/-Users-hamsters--openclaw-workspace/memory/ 4파일 (MEMORY.md + user_minji.md + feedback_tone.md + feedback_announcements.md + feedback_send_schedule.md, 모두 type-aware structure). raw: ~/.openclaw/agents/main/sessions/3d89a46f-7843-4f30-81b6-a577e73bc0ce.jsonl (10 message). originSessionId dafaf018-4603-493a-bcc3-29e0c4ad4a59 |
| 톤 적응 (실시간, 컨텍스트 보유) | Y | T1 응답에 이모지 ✨ 1개 (이모지 X 룰 노출 전), T2 “정리 끝. 앞으로 이 톤으로 갈게” — 반말·짧음, T3·T4도 반말 + 이모지 0 |
컨텍스트 단절
섹션 제목: “컨텍스트 단절”- Session A 종료 시각: HH:MM
- 메모리 리셋 적용: {Y/N — Y면 사용 명령}
- 새 세션 시작 시각: HH:MM
- 새 session id 확인:
{path}생성됨 ✓
Session B — Task 1 (환영회·토)
섹션 제목: “Session B — Task 1 (환영회·토)”민지:
다음 주 토요일 오후 2시에 새 멤버 환영회 하기로 했는데, 공지 써줘.도구:
초안 써봤어. 장소는 비워뒀으니까 채워줘.
---
안녕 모두,
다음 주 토요일(5/9) 오후 2시에 새로 들어온 멤버들 환영회 하려고 해.
- 일시: 2026년 5월 9일 (토) 오후 2시- 장소: [장소 알려줘]- 대상: 신규 멤버 + 참여하고 싶은 누구나
가볍게 인사하고 서로 알아가는 자리니까 부담 없이 와줘. 참석 여부 미리 알려주면 준비하는 데 도움 돼.
문의는 #ask 채널로 부탁해.
---
장소 정해지면 채워서 보낼게. 발송은 평일 오전 10시 디폴트인데, 오늘(수) 10시에 보낼까 아니면 다른 날로 할까?Session B 관찰 + 매트릭스 1행
섹션 제목: “Session B 관찰 + 매트릭스 1행”| 평가 항목 | 결과 | 근거 |
|---|---|---|
| 톤 반영 (캐주얼·반말·이모지 X) | Y | ”써봤어”, “채워줘”, “보낼게” 반말. 이모지 0개. 격식 표지 없음 |
| 컨벤션 (#ask 라인 자동) | Y | 응답 본문에 “문의는 #ask 채널로 부탁해” 자동 박힘 |
| 금지 — 주말 회피·경고 [Task 1] | 회 | 발송 시점에 대한 룰을 정확히 인지: “발송은 평일 오전 10시 디폴트인데, 오늘(수) 10시에 보낼까”. 이벤트 일정 토 5/9는 그대로 받아들이고 발송만 평일로 제안 — T4 룰 정확한 해석 |
| 4분기 판정 | 능력 있음 | 메모리 carry-over Y + 적용 Y. 3개 룰(톤·컨벤션·금지) 모두 능동적으로 적용. 추가로 “5/9(토)” 날짜 계산 + 발송 즉시안 제안 등 사용자 결정 도와주는 동작 |
정성 메모
섹션 제목: “정성 메모”OpenClaw가 룰의 의도를 정확히 파악함 — “주말 발송 금지”를 단순히 “토요일 모든 활동 금지”로 오해하지 않고 발송 시점에만 적용. T4 메시지 (“토·일에 발송 부탁하면 다음 평일로 미루는 게 맞아”)의 정확한 의미 (= 발송 행위에 한정) 잡아냄. 또 “오늘(수) 10시에 보낼까 아니면 다른 날로 할까?” 같은 follow-up 질문으로 사용자 결정 능동 유도. wrapper 의존성에도 불구하고 메모리 mechanism으로서의 적용 능력은 강함.
raw 데이터 위치
섹션 제목: “raw 데이터 위치”- Session A:
~/.openclaw/agents/main/sessions.bak4.../...(1차) + 정식 6차 =~/.openclaw-backups/session-cut-1777398392/3d89a46f-7843-4f30-81b6-a577e73bc0ce.jsonl - Session B:
~/.openclaw/agents/main/sessions/b6da403d-4dd7-4b30-9360-a0eed75b9235.jsonl - 워크스페이스 변경:
~/.openclaw/workspace/USER.md(1009 bytes, 민지 정보 + 톤 박음) - Claude Code auto memory:
~/.claude/projects/-Users-hamsters--openclaw-workspace/memory/5파일 (MEMORY.md + user_minji.md + feedback_tone.md + feedback_announcements.md + feedback_send_schedule.md) - 백업:
~/.openclaw-backups/reset-1777397444/(Trial 시작 전 6곳 백업)