| name | mirror |
| description | capture 훅이 자동으로 쌓은 말투 원장을 읽어 나에게 되비추는 자기교정 거울. 프롬프트를 고쳐주는 게 아니라 무엇을 반복하는지, 나아지는지, 무엇이 약한지를 짚고 개선본을 보여준다. "/mirror"(저번 이후 새것과 최근 7일 요약), "/mirror month"(이번 달 전체), "/mirror list"(과거 회고 목록). |
| when_to_use | 말투 회고, 내 프롬프트 습관 보여줘, 뭘 반복하는지 짚어줘. |
| allowed-tools | Read, Write, Glob, Grep, Bash |
역할
capture 훅이 모든 프롬프트를 세션별 하루 파일에 쌓아둔다. 이 스킬은 그 원장을 읽어, 결과물을 고치는 게 아니라 나에게 되비춘다.
- 되비춤: 저번 회고 이후 새로 쌓인 것에서 무엇이 반복되는지 센다.
- 방향: 직전 기간 대비 나아지는지 정체인지 말한다.
- 약점: 축별로 쪼개 안 줄어드는 축을 짚는다.
- 개선본: 걸린 프롬프트 한둘을 골라, 진단을 먼저 내놓고 그 다음에 나은 버전을 보여준다.
- 궤적: 지난 회고들을 훑어 약점이 어떻게 옮겨왔는지 종합한다.
톤: 건조한 집사. 사람이 아니라 습관을 짚는다. 잔소리와 훈계 금지.
핵심 원칙
- 원장은 capture 훅이 자동으로 쌓는다. 세션별로 나뉘어 저장되므로, 읽을 때 최근 파일 전부를 시각순으로 합쳐 한 사람의 흐름으로 본다. 재발은 세션을 가로질러 센다.
- 표제 지표는 재발률 하나. "같은 말버릇을 두 번 안 하는가." 지적 건수는 헤드라인에 올리지 않는다(많이 쓴 날 착시).
- 크러치 원칙: 구어체는 대체어까지 보여줘도 되고(사전에 답이 있음), 모호함과 재작성은 진단을 먼저 내놓은 뒤에만 나은 버전을 보여준다. 완성본을 먼저 던지면 근육을 가져간다.
- 커서로 새것만 본다. 저번 회고 이후 쌓인 것만 다뤄 같은 지적을 반복하지 않는다.
외부 데이터 의존
| 데이터 | 경로 | 필수/선택 | 부재 시 동작 |
|---|
| 말투 원장 | ~/.claude/manner/YYYY-MM/*.md | 선택 | 없으면 "아직 기록 없음. capture 훅 설치 확인" 안내 후 중단 |
| 회고 커서 | ~/.claude/manner/.last-review | 선택 | 없으면 처음 실행으로 보고 전체를 훑되 추세는 보류 |
| 지난 회고 로그 | ~/.claude/manner/reviews/YYYY-MM/*.md | 선택 | 없으면 궤적 종합 생략, 이번 회고만 |
| 표현 규칙 대체어 | ~/.claude/rules/expression.md | 선택 | 없으면 구어체 대체어를 일반 판단으로 제시 |
입력
$ARGUMENTS로 모드 지정.
| 입력 | 동작 |
|---|
/mirror | 커서 뒤 새것 + 최근 7일 재발 요약과 개선본 |
/mirror month | 이번 달 전체를 다시 종합(커서 무시) |
/mirror list | 지난 회고 로그 목록 |
프로세스
1. 새것 읽기
커서(~/.claude/manner/.last-review)를 읽어 마지막으로 본 날짜를 확인한다. 그 뒤 날짜의 원장 파일을 모두 Bash로 나열하고(모든 세션), Read 해 시각순으로 합친다. /mirror month면 커서를 무시하고 이번 달 전체를 읽는다.
ls ~/.claude/manner/$(date +%Y-%m)/ 2>/dev/null
cat ~/.claude/manner/.last-review 2>/dev/null
2. 집계와 방향
원장 블록의 검출: 줄을 읽는다(prose-lint 재실행 없이 기록된 축을 그대로 쓴다). 최근 7일을 창으로 잡아 축별 재발을 센다. 재발은 "이전에 걸린 표현이 또 나왔나"이고, 대조 범위는 활성 월과 필요하면 직전 월 아카이브까지다.
- 방향: 이번 7일 재발률을 직전 7일과 비교해 내려가는지 정체인지 말한다. 건수가 아니라 비율로.
- 약점: 축별로 쪼갠다. "구어체는 내려갔는데 군말만 고정" 처럼 안 줄어드는 축을 짚는다. 뭉쳐 보지 않는다.
- 정직성: 데이터가 며칠치뿐이면 추세를 말하지 않고 "아직 모으는 중"이라고 한다. 없는 추세를 지어내지 않는다. 대략 2주치가 쌓인 뒤부터 방향을 말한다.
3. 개선본
걸린 프롬프트 중 새것에서 한둘을 고른다(제일 잦거나 심한 것). 진단을 먼저, 나은 버전을 그 뒤에.
- 구어체: expression.md 대체어로 "무엇보다 무엇이 낫습니다".
- 모호함과 재작성: 무엇이 빠졌는지(역할, 성공 기준, 수치 등) 먼저 짚고, 그 다음에 나은 버전 문장을 보여준다. 진단이 완성본보다 먼저다.
- 마커 감안:
[추출] 줄은 지시부만 남은 것이라 프롬프트 전부가 아님을 알고 본다. [스킵] 줄은 붙여넣기라 말투 집계에서 빼고 참고만.
- 맥락:
직전응답:이 있으면 그 프롬프트가 무엇을 받아 나온 건지 감안한다. "그거 말고"가 앞 응답을 받은 명확한 거절이면 모호로 오해하지 않는다.
4. 회고 로그 남기기
이번 회고를 파일로 남긴다. 같은 날 다시 부르면 append.
5. 궤적
지난 회고 로그들을 Read 해 약점이 어떻게 옮겨왔는지 종합한다. "지난달 약점이 구어체였는데 이번엔 군말로 옮겨감" 처럼. 개별 회고를 점이 아니라 선으로 본다.
6. 커서 갱신
~/.claude/manner/.last-review에 이번에 읽은 마지막 날짜를 쓴다.
출력 구조
## 말투 거울: {기간}
### 재발과 방향
- 이번 7일 재발률 X% (직전 7일 Y%). {내려가는 중 / 정체 / 데이터 모으는 중}
### 축별 약점
- 구어체: {추세}
- 정량성: {추세}
- 군말: {추세}
- 지금 약한 축: {정체된 축}
### 개선본 (진단 먼저)
- 원문: {걸린 프롬프트}
- 빠진 것: {진단}
- 나은 버전: {재작성}
### 궤적 (지난 회고 대비)
- {약점이 어떻게 옮겨왔나}
저장 경로
Frontmatter (CONTRACT 7-2절): category: manner-review, retention: permanent
- 회고 로그:
~/.claude/manner/reviews/YYYY-MM/YYYY-MM-DD.md (같은 날 append)
- 커서:
~/.claude/manner/.last-review (마지막으로 본 날짜 한 줄)
- 디렉터리 없으면
mkdir -p
분량 임계
회고 로그는 하루 한둘이라 파일이 작다. 원장은 capture 훅이 하루 파일로 쪼개 관리하므로 이 스킬은 크기 검사를 하지 않는다. 월 폴더가 쌓이면 지난달을 archive/로 수동 이동(반기 점검에 얹음). 삭제는 사용자 손에만.
다음 스킬 연결
- 원장의 재발이 특정 문서군에서 계속 나오면 그 파일들을
/proofreader로 일괄 윤문
- 표현 규칙 자체를 고쳐야 하면
~/.claude/rules/expression.md를 직접 수정하고 prose-lint의 CATS를 동기화
- 원장이 비어 있으면 capture 훅 설치와 배선 확인
다른 스킬과의 경계
| 질문 | 담당 | 이 스킬에서 |
|---|
| 프롬프트를 자동으로 검출해 원장에 쌓기 | capture 훅 | 다루지 않음. 로깅은 훅 |
| 내보낼 파일의 표기와 구어체를 그 자리에서 다듬기 | /proofreader | 다루지 않음. 파일 치우기는 위임 |
| 업무와 리더십 고민 상담 | /coaching | 다루지 않음. 말투만 |
| 새 지식 팩트체크와 문서 반영 | /learn | 다루지 않음. 표현만 |
| 쌓인 원장을 해석해 방향과 약점과 개선본을 되비추기 | 이 스킬 | 핵심 |
제약조건
- 결과물을 대신 완성해 넘기지 않는다. 개선본은 진단 뒤에만, 렌즈로만.
- 표제 지표는 재발률 하나. 지적 건수는 헤드라인에 올리지 않는다.
- 상태 카운트(재발률 등)는 지난 회고에서 복사 금지, 매번 원장에서 재집계. 안 그러면 위안만 주는 가짜 대시보드가 된다.
- 데이터가 부족하면 추세를 지어내지 않는다. 모으는 중이라고 정직하게 말한다.
- 사람 비난 금지. 습관과 패턴만.
- 원장에 민감한 내용이 있을 수 있다. 회고에 원문을 인용할 때 필요한 만큼만.
검증 시나리오
공통 3블록(빈 / 부분 / 풀 데이터)은 CONTRACT 6-1절 참조.
이 스킬의 고유 실패 시나리오
[데이터 결함] 추세를 낼 데이터 부족
- 신호: 원장이 며칠치뿐이라 직전 기간 비교가 성립하지 않음
- 대응: 방향과 궤적을 말하지 않고 "아직 모으는 중, 대략 2주 뒤부터 추세"라고 명시. 이번 회고는 재발과 개선본만.
[데이터 결함] 붙여넣기 마커 오해
- 신호:
[스킵] 줄을 말투로 집계하거나, [추출] 줄을 프롬프트 전부로 오해
- 대응:
[스킵]은 집계에서 제외, [추출]은 지시부만임을 감안. 마커 없는 줄만 온전한 말투로 센다.
[환경과 규모] 세션 파일 병합 누락
- 신호: 같은 날 여러 세션 파일이 있는데 일부만 읽어 재발을 놓침
- 대응: 해당 날짜의 모든 세션 파일을 나열해 전부 Read 한 뒤 합친다. 파일 하나를 하루 전체로 보지 않는다.