콘텐츠로 이동

[보관] 진입 셋업 가이드 (P1 시작 전)

이 문서의 체크리스트가 모두 끝나야 probe 시리즈 P1으로 들어간다. 자동화 가능한 항목은 이미 처리됨, 사용자 액션 항목만 남음.

L2/L3 셋업도 같이 처리한다. 정성 메모(runs/notes.jsonl)·일기(runs/diary.md)·도구 익명 매핑 파일(runs/.tool_map.json)이 P1 첫 태스크 전에 준비돼야 한다. 상세는 07-indicator-spec.md·08-meta-eval.md·experiments/00-plan.md.

probe 시리즈 흐름 (자세한 건 experiments/00-plan.md):

  • 이 문서 (P1 진입 전) = Track A 백엔드(Claude Code) 진입 + L2/L3 채집 양식 준비
  • P1~P9 = 하루 1 probe, 각 probe 사전 plan + 사후 result는 experiments/P*-….md
  • Track B 전환은 해당 probe의 §2에서 결정 (probe 단위 분배)
flowchart TD
    Auto[자동 완료<br/>디렉토리·hook·샌드박스·codex·Hermes] --> S1
    S1[STEP 1<br/>Anthropic Claude 구독 + Claude Code OAuth] --> S2
    S2[STEP 2<br/>호환성 V1~V4 - Track A] --> S3
    S3[STEP 3<br/>OpenClaw 설치 - Track A] --> S4
    S4[STEP 4<br/>L2·L3 채집 양식 검증] --> S5
    S5[STEP 5<br/>환경 격리 검증] --> Gate{모든 STEP PASS?}
    Gate -->|예| P1([P1 진입])
    Gate -->|아니오| Block[해당 STEP 분기로 회귀<br/>05-compat-check.md §3]

    classDef ok fill:#efe,stroke:#080,color:#040
    classDef warn fill:#fee,stroke:#c00,color:#600
    class P1 ok
    class Block warn
  • 디렉토리 구조: data/, logs/, runs/, scripts/, .claude/
  • 진행 hook 설치: .claude/settings.json + .claude/log-event.sh — 모든 Claude Code 이벤트가 logs/history-${EXPERIMENT_TOOL}.jsonl로 기록됨
  • 가짜 샌드박스 데이터: data/ (members, form_responses, event_chat, faq, news_seed, speakers, schedule_responses, new_members, channel_activity)
  • 측정 CSV 양식: runs/runs.csv
  • L2/L3 채집 양식 (P1 진입 전 준비 완료):
    • runs/notes.jsonl (빈 파일) — 정성 메모
    • runs/diary.md — 일기(framing D)
    • runs/.tool_map.json (gitignore) — {"tool_X":"hermes","tool_Y":"openclaw"} 익명 매핑
    • runs/checkpoints.md — probe 단위 체크포인트 양식
  • 코인토스 스크립트: scripts/coin.sh (매일 아침 1회 실행)
  • 데이터 재생성 스크립트: scripts/generate_sandbox.py (시드 고정 — 재실행 시 동일 데이터)
  • codex CLI 설치 + 로그인 + 스모크 테스트 (history/21) — Track B를 사용하는 probe에서 활성.
  • Hermes 설치 (history/22) — provider=anthropic(Claude Code OAuth) 자동 import 완료. Track A 그대로 진입 가능.

사용자 액션 항목 (반드시 수동)

섹션 제목: “사용자 액션 항목 (반드시 수동)”

1. Anthropic Claude 구독 — Track A 백엔드

섹션 제목: “1. Anthropic Claude 구독 — Track A 백엔드”
  • Claude.ai 또는 Claude Code 사용 중인 계정(권장: 평소 ~/.claude/별도 계정) 활성 확인
  • Hermes는 이미 Claude Code OAuth로 인증 완료 — 별도 작업 없음
  • OpenClaw 측 Anthropic 인증은 STEP 3 OpenClaw 설치 후 진행

2. ChatGPT 구독 + Codex CLI — Track B 백엔드 (Track B를 사용하는 probe 진입 직전 점검)

섹션 제목: “2. ChatGPT 구독 + Codex CLI — Track B 백엔드 (Track B를 사용하는 probe 진입 직전 점검)”
  • ChatGPT Plus/Pro 활성화
  • codex CLI 설치 + codex login
  • 스모크 테스트 통과
  • → 이 항목은 history/21에서 모두 처리. Track B 사용 probe 진입 시 양쪽 도구 provider만 스위치.

3. OpenClaw 설치 (P1 진입의 마지막 관문)

섹션 제목: “3. OpenClaw 설치 (P1 진입의 마지막 관문)”
  • 공식 가이드 URL 확인 후 다음 세션에 공유
  • 설치 위치 ~/.openclaw/ 하위로 강제 (환경 격리 C3)
  • V1·V2 검증 — Anthropic backend 지원 여부
    • 공식 문서/README/changelog에서 “anthropic”, “claude”, “claude-code” 키워드 검색
    • config 파일 또는 CLI 플래그로 anthropic provider 지정 가능한지 확인
  • 자체 설정·스킬이 ~/.openclaw/ 내부에만 쓰는지 확인
  • 미지원 시: Track A에서 OpenClaw 빠짐 (결과에 명시) — 어댑터 자작은 채택 안 함
  • ~/.hermes/ 외부 누수 없음 (history/22 V2 결과)
  • OpenClaw 설치 후 동일 검증
  • ls ~/.hermes ~/.openclaw ~/.claude 세 디렉토리 모두 존재
  • 평소 쓰는 ~/.claude/settings.json에 실험 hook이 들어있지 않은지 확인 (실험 hook은 ~/hamster-lab/.claude/에만)

세션 종류에 따라 환경변수(슬러그)를 바꿔서 실행 — 그래야 hook이 올바른 로그 파일로 분기함. 표준 슬러그는 트랙 단위 (probe 시리즈가 Track A/B로 운영되므로 raw 로그도 트랙별 분리가 분석 정합성 ↑).

Terminal window
# 실험 설계·문서·분석 작업 (지금 같은 메타 작업)
EXPERIMENT_TOOL=meta claude
# Track A — Anthropic Claude Code 백엔드로 도구 실행 (Hermes/OpenClaw 모두)
EXPERIMENT_TOOL=track-a claude
# Track B — Codex 백엔드로 도구 실행
EXPERIMENT_TOOL=track-b claude
# Hermes는 자체 CLI라 Claude Code hook 안 탐 — Hermes 자체 로그(`~/.hermes/logs/`) 활용

표준 슬러그 명단: meta (설계·분석), track-a (Anthropic 백엔드 본실험), track-b (Codex 백엔드 본실험). 도구별 슬러그(hermes, openclaw)는 셋업/스모크 단계 임시용 — 본실험에선 트랙 슬러그로 통일.

EXPERIMENT_TOOL 미설정 시 모든 로그가 logs/history-unset.jsonl로 떨어지므로, 셸 alias 권장:

Terminal window
# ~/.zshrc 추가
alias claude-meta='EXPERIMENT_TOOL=meta claude'
alias claude-tra='EXPERIMENT_TOOL=track-a claude'
alias claude-trb='EXPERIMENT_TOOL=track-b claude'
  • python3 scripts/generate_sandbox.py 다시 돌려서 data/ 9개 파일 생성 확인
  • scripts/coin.sh 실행 — 오늘 probe의 도구 순서 결정 (각 probe 시작 전 1회)
  • cat runs/runs.csv — 헤더만 있는 빈 CSV 확인
  • 채집 양식 5종(runs.csv, notes.jsonl, diary.md, .tool_map.json, checkpoints.md) 존재 확인
  • 07-indicator-spec.md 지표 W2(조작적 정의) 머리에 두고 진입
  • Hermes 스모크: hermes 진입 후 “한 줄 자기소개” → 응답 받기
  • OpenClaw 스모크: 동일
  • experiments/P1/00-plan.md §1~§4 (목적·반증·단계·C-정합) 작성 완료, §5·§6은 빈칸
  • Claude Code 자동 메모리 스냅샷 (C3 메타-디자인 누수 차단) — 메타 세션에서 누적된 메모리가 OpenClaw 셋업 의사결정에 무의식적으로 영향 가능. P1 시작 직전 한 줄:
    Terminal window
    mv ~/.claude/projects/-Users-hamsters-hamster-lab/memory \
    ~/.claude/projects/-Users-hamsters-hamster-lab/memory.snapshot-pre-P1
    P9 종료 후 복원하거나 experiments/.memory-archive/로 이전. 이 동안 hamster-lab claude 실행은 빈 메모리로 시작.

비용·한도 모니터링 (probe 시리즈 전반)

섹션 제목: “비용·한도 모니터링 (probe 시리즈 전반)”

정액 구독이라 금액 모니터링은 불필요. rate limit을 probe 종료 시 체크:

  • 해당 probe에서 사용한 백엔드(Anthropic 또는 ChatGPT)의 사용량 한도 도달 여부
  • 도달 시 액션: 잔여 단계 다음 probe로 이월 (probe 일정 ±1일 조정 가능)
  • T_burst (scripts/burst_test.sh)는 모든 probe 종료 후 마지막에만

측정 무결성 리마인더 (각 probe 시작 시)

섹션 제목: “측정 무결성 리마인더 (각 probe 시작 시)”
  1. 한 도구 결과를 다른 도구에 보여주지 않기
  2. 코인토스 결과대로 도구 순서 지키기
  3. 같은 태스크 반복 시 이전 결과 안 보고 새로 지시
  4. OpenClaw 셋업은 P1 시작 에만 — 이후 모든 probe 동안 동결
  5. Track A 데이터는 Track B 시작 전에 한 번 스냅샷·고정 (덮어쓰기 방지)
  6. 평가자 1명, 시간 분리: 태스크 직후 정량 → 30분 텀 → 정성 (C5/C9)
  7. 정성 메모는 anonymous tool ID(tool_X/tool_Y)만 — 도구명 직접 표기 금지