콘텐츠로 이동

AI가 막혔을 때

글을 쓰다 보면 AI 워크플로 자체가 막히는 자리가 옵니다. 글 내용이 막힌 게 아니라 흐름이 멈춘 자리입니다. 자주 마주치는 몇 가지와 빠져나오는 길을 정리합니다.

AI-smell 게이트가 두 번 불합격일 때

섹션 제목: “AI-smell 게이트가 두 번 불합격일 때”

발행 직전 AI-smell 게이트가 불합격이면 글이 자동으로 다시 쓰입니다. 그런데 두 번 다시 써도 또 불합격이면 오케스트레이터가 멈추고 사용자에게 넘깁니다. 무한히 다시 쓰지 않는 자리입니다.

이때 글을 직접 한 번 읽어 봅니다. 보통은 같은 원인이 반복됩니다. 도입부가 매번 결론부터 던지거나, 모든 문단이 비슷한 길이거나, 1인칭 경험이 비어 있어 일반론으로 채워진 경우입니다. 사람이 한 단락을 직접 손보거나, “도입부를 실제 겪은 일로 다시 시작해줘” 같은 구체적인 방향을 주면 점수가 떨어집니다. 막연히 “다시 써줘”보다 막힌 원인을 짚어 주는 편이 빠릅니다.

집필 전에 AI가 멈춰서 “그때 어떤 에러를 봤는지”, “어디서 막혔는지”를 묻는 자리가 있습니다. 이건 막힌 게 아니라 일부러 박아 둔 자리입니다. 구체적인 실패나 데이터가 없으면 AI가 경험을 지어내지 않고 사용자에게 묻습니다.

기억나는 대로 적어 주면 됩니다. 정확한 에러 메시지가 기억 안 나면 “대략 이런 상황이었다” 정도로도 충분합니다. 그 디테일이 글의 신뢰를 만들고 AI-smell 게이트도 같이 통과시킵니다. 여기서 “아무거나 알아서 써줘”라고 넘기면 일반론으로 채워진 글이 나오고 게이트에서 다시 막힙니다.

dry-run은 됐는데 실제 발행이 안 되면 보통 자격증명 자리입니다. 발행 스크립트는 credentials.json이나 token.json이 없으면 dry-run까지만 돌고 멈추면서 어느 파일이 없는지 보고합니다. Blogger URL을 지어내지 않습니다.

이 경우 prerequisites의 OAuth 항목과 publish의 자격증명 단계로 돌아갑니다. token.json은 첫 발행 때 브라우저 동의로 생기니, 동의 화면이 안 떴다면 credentials.json이 제자리에 있는지부터 봅니다.

세션이 끊겨 어디까지 했는지 모를 때

섹션 제목: “세션이 끊겨 어디까지 했는지 모를 때”

며칠 만에 다시 열었거나 /clear 후 작업이 이어지지 않으면, 세션 시작 훅(session-start.sh)이 이전 작업과 최근 이력을 자동으로 끌어옵니다. 그래도 헷갈리면 Claude Code에 “지금까지 뭐 했는지 정리해줘”라고 물어봅니다. _workspace/의 brief와 staging 글, progress.md를 종합해 어디까지 왔는지 알려 줍니다.

다음 세션을 위해 작업을 끝낼 때 active.md에 다음 시작점을 적어 두면, 다음번에 이 자리가 훨씬 매끄럽습니다. stop-reminder.sh가 비어 있으면 알려 주는 자리이기도 합니다.

에러 메시지를 그대로 복사해 Claude Code에 붙여 넣고 “이거 왜 이래?”라고 묻는 게 가장 빠를 때가 많습니다. 그래도 안 되면 troubleshooting에서 같은 증상을 찾고, 거기에도 없으면 GitHub 이슈를 엽니다. 어느 단계, 어느 명령, 에러 전체, 환경 정보를 같이 적습니다.

자주 막히는 자리 모음은 troubleshooting에 있습니다.