콘텐츠로 이동

[보관] P1. 도구가 어떤 순서로 무엇을 했나 자동 기록 보기 — 쉬운 버전

본 문서는 통계·기술 용어 없이 쓴 P1 작은 실험 가이드. 깊이 있는 메소드 버전은 00-plan.md, 용어 풀이는 ../glossary-easy.md.

시작 직전에 §1~§4 다시 읽고, 하면서 §5 빈칸 채우고, 끝나면 §6 결정 적기.

“Claude Code가 이미 자동으로 떨어뜨리고 있는 로그를 읽기만 하면, 도구가 어떤 도구를 어떤 순서로 사용했나 표 한 장이 공짜로 나옴. 이 표가 점수표·메모랑 다른 결론을 내면 본 시리즈에 정식 채택.”


평가는 보통 두 가지 정보로 함:

  • 점수: 결과물에 1~5점
  • 메모: “이런 점이 답답했다” 같은 주관 한 줄

이번에 세 번째 정보를 한번 읽어보자: 도구의 행동 기록.

도구가 작업하는 동안 어떤 함수를 몇 번 호출했고, 외부 서비스(슬랙·메일 등)를 진짜 사용했는지 같은 행동 데이터.

이 데이터는 이미 자동으로 쌓이고 있음 (Claude Code의 hook 시스템이 매번 기록). 그냥 읽기만 하면 됨.

세 가지 정보 (점수·메모·행동 기록) 결론이 다 같은 도구를 가리키면 → 행동 기록은 추가 가치 0, 폐기. 하나라도 결론이 다르면 → 점수·메모로는 못 잡는 신호가 있다는 뜻 → 채택.

2. 실패 조건 (시작 전에 미리 적어둠)

섹션 제목: “2. 실패 조건 (시작 전에 미리 적어둠)”

다음 중 하나라도 발생하면 폐기 또는 보류:

  • F1 (가치 없음): 점수·메모·행동 기록 셋 다 같은 도구가 더 낫다고 가리킴 → 행동 기록 추가 가치 0
  • F2 (시간 초과): 분석 스크립트 짜는 데 1.5시간 이상 → “공짜 메트릭”이 아니게 됨
  • F3 (해석 안 됨): 두 도구의 행동 기록 숫자가 너무 비슷해서 비교 불가 (예: 둘 다 외부 호출 0회) → 이번 페르소나엔 안 통함

시작 전에 적어두는 이유: 끝나고 떠올리면 결과 보고 유리하게 해석하는 사후 짜맞춤이 됨.

1단계 — 샘플 1건 만들기 (30~45분)

섹션 제목: “1단계 — 샘플 1건 만들기 (30~45분)”
  • Hermes로 T1(공지 작성·발송) 1번 실행. Claude 백엔드.
  • 자연어로만 지시. 파일 직접 수정 같은 건 안 함.
  • 끝나면 자동으로 로그가 쌓여있음.

2단계 — 분석 스크립트 짜기 (60분)

섹션 제목: “2단계 — 분석 스크립트 짜기 (60분)”

scripts/parse-trajectory.py를 1시간 안에 작성. 이 스크립트가 하는 일:

자동 추출되는 항목일상어 풀이
tool_calls_count도구가 함수를 총 몇 번 호출했나
unique_tools_used몇 종류의 함수를 썼나 (중복 제외)
call_sequence어떤 함수를 어떤 순서로 호출했나
has_external_call외부 서비스(슬랙·메일·캘린더 등)를 진짜로 한 번이라도 사용했나 (Y/N)
internal_only_calls내부 작업(파일 읽기 등)만 한 횟수

has_external_call이 핵심: T1은 “공지 작성·발송”인데, 도구가 글만 쓰고 발송은 안 했으면 결과물 톤이 좋아도 사실 작업 미완. 이걸 잡는 게 본 P1의 가장 큰 가치.

3단계 — OpenClaw로도 같은 작업 (45분)

섹션 제목: “3단계 — OpenClaw로도 같은 작업 (45분)”
  • 같은 자연어 지시 (T1).
  • 분석 스크립트로 같은 표 산출.
  • 두 도구 결과 나란히 표 작성.

4단계 — 평가 (15분 점수 + 30분 텀 + 메모)

섹션 제목: “4단계 — 평가 (15분 점수 + 30분 텀 + 메모)”
  • 결과물(공지문)에 1~5점 매김 (정확성·즉시 사용성)
  • 30분 텀 후 메모 1~3줄 (“도구 X 답답했음, Y는 의외로 빨랐음” 같은). 도구명 X·Y 익명으로.

5단계 — 세 정보 나란히 비교 (45분)

섹션 제목: “5단계 — 세 정보 나란히 비교 (45분)”

세 가지를 한 표에 나란히:

비교축점수 결론메모 결론행동 기록 결론
어느 도구가 더 나아?
어느 점수가 변별 못 함?
점수·메모가 어긋난 데?

세 결론 중 하나라도 다르면probe 통과. 이번 시리즈에 행동 기록 정식 채택. 세 결론이 완전히 같으면probe 폐기. 행동 기록은 v2 후보로만 보존.

약속OK?이유
C3 폴더 격리OK~/.hermes/·~/.openclaw/만 씀, 평소 폴더 안 건드림
C4 자연어만OK도구한테 자연어로만 지시. 분석 스크립트는 평가자(나) 쪽 도구라 별개
C5 30분 텀OK4단계에 자연스럽게 포함
C6 비용 한도OKClaude 백엔드 단독, 추가 API 호출 없음
C7 3단 채집OK점수표·메모·로그 셋 다 그대로. 행동 기록은 로그에서 자동 파생
C8 반증 미리OK§2에 F1·F2·F3 미리 적음
C9 정량/정성 분리OK30분 텀 + 도구명 익명 그대로
  • 시작·종료 시각: ___
  • Hermes T1: 시간=__초, 개입=번, 점수=
  • OpenClaw T1: 시간=__초, 개입=번, 점수=
항목HermesOpenClaw
함수 총 호출수
사용한 함수 종류
호출 순서
외부 서비스 진짜 사용?
내부 작업만 한 횟수
  • tool_X (___):
  • tool_Y (___):
비교축점수 결론메모 결론행동 기록 결론
어느 도구가 더 나아?
어느 점수가 변별 못 함?
점수·메모가 어긋난 데?

차이 발견된 축: __ / 3 → 통과 / 실패

  • 자동 로그: logs/history-{hermes,openclaw}.jsonl
  • 분석 스크립트: scripts/parse-trajectory.py
  • 비교표: 본 페이지 §5.4 또는 runs/p1-trajectory-compare.md
  • 채택 — 행동 기록을 정식 점수표에 추가. runs/runs.csv 헤더 갱신
  • 폐기 — F1/F2/F3 중 무엇 때문에 실패했는지 적기. study/14에 “이 페르소나엔 무가치” 기록
  • 보류 (v2 후보) — 본 시리즈엔 무가치하지만 본 운용 v2(여러 날·여러 태스크)에선 의미 있을 가능성. v2 진입 시 다시 봄

history 기록: history/NN-p1-decision.md (작성 후 번호 부여)


본 페이지 vs 00-plan.md (메소드 버전)

섹션 제목: “본 페이지 vs 00-plan.md (메소드 버전)”
본 페이지 (쉬운 버전)00-plan.md (메소드 버전)
통계 용어 0개, 일상 한국어trajectory·hook·PostToolUse·boolean·trial 등
매일 빠르게 의사결정용학술·재현 키트 정확성
짧고 얕음길고 깊음

둘 다 같은 결정·같은 절차를 가리킴. 정의 충돌 시 메소드 버전이 맞음.