자동 안전망
blog-studio가 사용자 대신 자동으로 챙겨주는 자리가 둘로 갈립니다. 발행 직전에 글을 거르는 두 게이트, 그리고 작업 흐름 바깥에서 도는 훅 세 개입니다. 명령을 외울 필요는 없지만 무엇이 왜 막히는지를 알아 두면 막혔을 때 덜 당황합니다.
발행 전 두 게이트
섹션 제목: “발행 전 두 게이트”글이 Blogger에 올라가기 전에 두 검사를 통과해야 합니다.
AI-smell 게이트
섹션 제목: “AI-smell 게이트”글이 “사람이 쓴 것처럼” 읽히는지를 점수로 봅니다. em-dash가 한 문단에 여러 개 박히거나, “정리하면” “핵심은” 같은 표현이 반복되거나, 모든 문단이 똑같은 길이거나, 도입부가 결론부터 던지면 점수가 올라갑니다. 점수가 높을수록 AI 티가 짙다는 뜻입니다.
점수에 따라 셋으로 갈립니다. 30점 미만이면 합격, 30~60점이면 경고, 60점 초과면 불합격입니다. 불합격이면 발행이 막히고, 글이 자동으로 다시 쓰여집니다. 이 차단은 발행 스크립트가 코드 레벨에서 강제하는 자리라, 우회하려 해도 막힙니다.
AdSense 게이트
섹션 제목: “AdSense 게이트”광고 정책에 걸릴 만한 글을 발행 전에 거릅니다. 저가치 신호가 있는 글은 자동으로 표시되고, 이미 AdSense가 플래그한 글은 draft로 되돌리는 흐름으로 빠집니다. 광고 수익을 노리는 블로그라면 이 게이트가 정책 위반으로 계정이 막히는 사고를 미리 줄여 줍니다.
훅 세 개
섹션 제목: “훅 세 개”훅은 사용자가 명령으로 부르지 않아도 특정 순간에 자동으로 도는 스크립트입니다. .claude/hooks/에 박혀 있고, .claude/settings.json이 연결합니다.
| 스크립트 | 언제 | 무엇을 |
|---|---|---|
session-start.sh | 세션 시작 | 이전 작업, 최근 이력, 블로그 정체성, 메모리를 자동으로 컨텍스트에 끌어옴 |
stop-reminder.sh | 응답 종료 | 다음 세션을 위한 메모(active.md)가 비었으면 갱신하라고 알림 |
pre-commit-check.sh | git commit 직전 | 자격증명과 시크릿이 커밋에 섞이지 않게 차단 |
session-start.sh — 끊긴 자리에서 돌아오기
섹션 제목: “session-start.sh — 끊긴 자리에서 돌아오기”새 세션을 시작하면 이 훅이 active.md(이전 세션의 다음 작업), progress.md의 마지막 30줄, product-marketing-context.md(블로그 정체성), MEMORY.md를 자동으로 컨텍스트에 끌어옵니다. 며칠 만에 다시 열거나 /clear 후에 시작해도, 이 자리들이 자동으로 앞에 붙어 작업이 끊기지 않습니다. 블로그 정체성이 아직 placeholder면 “/start부터 하라”는 안내가 뜹니다.
stop-reminder.sh — 다음 세션을 위한 메모
섹션 제목: “stop-reminder.sh — 다음 세션을 위한 메모”AI가 응답을 끝낼 때 active.md가 비어 있으면 한 줄 알립니다. 방금 한 일, 다음 시작점, 보류된 결정을 5~15줄로 적어 두라는 안내입니다. 이 메모가 있어야 다음 세션의 session-start.sh가 끌어올 거리가 생깁니다.
pre-commit-check.sh — 자격증명 사고 막기
섹션 제목: “pre-commit-check.sh — 자격증명 사고 막기”git commit 직전에 자동으로 도는 검사입니다. Google OAuth 파일(credentials.json, token.json)이 커밋에 섞이면 차단하고, OAuth client_secret이나 refresh_token, API 키 패턴이 파일에 들어 있으면 막습니다. _workspace/의 큰 산출물이 통째로 커밋되는 것도 막습니다.
이 훅 덕분에 자격증명을 실수로 공개 저장소에 올리는 사고를 한 겹 막습니다. 다만 훅이 모든 걸 잡지는 못하니, 자격증명 파일은 처음부터 .gitignore에 들어가 있는 자리(base 기본값)를 건드리지 않는 편이 안전합니다.
보안 기준선 S1~S8
섹션 제목: “보안 기준선 S1~S8”위 게이트와 훅이 강제하는 규칙은 AI_AUTOMATION.md의 보안 기준선 여덟 줄에 정리돼 있습니다. 자격증명을 git에 안 올리기(S1, S7), _workspace/ 바깥을 함부로 안 건드리기(S2), 발행 전 게이트(S5, S8) 같은 자리입니다. 비개발자 입장에서는 이 줄들을 외울 필요 없이, 게이트가 막으면 그 이유를 읽고 고치면 됩니다.
게이트나 워크플로가 막혀서 어떻게 빠져나올지 막막하면 when-ai-gets-stuck으로 갑니다.