Claude Code 모드로 AI 봇 개인정보 마스킹하기

클로드 코드 모드(Mod)란?

모드는 클로드 코드에 덧붙이는 작은 프로그램이에요. 클로드 코드가 무언가를 하려는 순간(파일을 읽을 때, 명령을 실행할 때, 화면을 그릴 때)마다 모드가 중간에 끼어들 수 있어요. Anthropic이 2026년 10월 1일에 공개했고, 지금 클로드 코드에는 기본으로 켜져 있어요.

끼어들어서 할 수 있는 일은 세 가지예요.

  • 지켜보기: 무슨 일이 일어났는지 기록해요

  • 고쳐 쓰기: 내용을 바꿔서 다음 단계로 넘겨요

  • 대신 답하기: 실행을 막거나 대신 처리해요

화면에 패널이나 버튼, 알림을 띄우는 것도 돼요. 클로드 코드의 일부 기본 기능도 사실 모드로 만들어져 있어요.

원래 쓰던 hook과는 뭐가 다를까?

클로드 코드를 우리 팀에 맞게 바꾸는 방법은 모드 전에도 있었어요. 화면 아래에 글자를 띄우는 상태줄과, 정해진 순간에 짧은 명령을 실행하는 hook이에요. 우리 팀 봇도 이미 hook을 여러 개 쓰고 있어서, 모드가 이것들과 무엇이 다른지부터 짚고 갈게요.

  • 상태줄(statusline): 화면 맨 아래에 글자 한 줄을 띄워요. 보여 주기만 해요.

  • hook: 정해진 순간마다 짧은 명령을 한 번 실행하고 끝나요. 위험한 작업을 막거나 경고를 띄울 때 써요. 한 번 실행하고 끝나서, 앞에서 무슨 일이 있었는지는 기억하지 못해요.

  • 모드: 클로드 코드가 켜져 있는 동안 계속 함께 떠 있어요. 앞에서 있었던 일을 기억하고, 내용을 고쳐 쓰고, 화면에 무언가를 띄울 수 있어요.

비유하면 상태줄은 전광판, hook은 출입문 센서, 모드는 건물 안에 상주하는 관리인이에요. 막거나 경고만 하면 되면 hook으로 충분하고, 내용을 바꾸거나 기억이 필요하면 모드를 써요.

슬랙만 쓰는 팀에도 모드가 필요할까?

필요해요. 슬랙에서 부르는 봇이 내부적으로 클로드 코드로 돌아가고 있다면요.

공식 문서를 보면, 봇처럼 화면 없이 도는 클로드 코드에서도 중간에 끼어드는 기능은 그대로 동작해요.

이 모드를 만들게 된 이유

우리 팀 봇 뽀짝이는 하루에도 여러 번 회원 정보를 조회해요. 결제 확인, 수강 문의 답변, 쿠폰 발급처럼 운영 일을 하려면 회원 명단을 봐야 하고, 그 결과에는 이름·전화번호·이메일이 같이 딸려 와요.

문제는 봇이 한 번 본 정보가 생각보다 멀리 퍼진다는 점이에요.

  • 대화 기록으로 컴퓨터에 저장돼요

  • 봇이 쓰는 작업 일지에 옮겨 적혀요

우리 팀 운영 1원칙이 "내부 데이터 외부 노출 금지"예요. 그동안은 "원본을 통째로 조회하지 말 것", "공개하기 전에 개인정보를 검사할 것" 같은 규칙을 정해 두고 봇과 사람이 지키는 방식이었어요. 근데 규칙은 잊어버리면 끝이에요.

실제로 이 과제를 준비하던 날에도, 봇이 다른 걸 확인하다가 서비스 비밀번호(인증 토큰)가 대화에 그대로 찍혔어요. 보려던 게 아닌데 딸려 들어온 거예요. 그래서 "조심하자"는 규칙 말고, 처음부터 봇 눈에 안 보이게 하는 장치를 만들기로 했어요.

이미 쓰고 있는 안전장치 8개를 확인해 봤는데, 봇이 읽는 내용을 가리는 건 하나도 없었어요. 조회 결과를 중간에서 고쳐 쓰는 일은 모드라서 할 수 있는 일이에요.

직접 만든 모드: pii-mask

pii-mask는 봇이 무언가를 조회한 직후, 그 결과를 읽기 바로 전에 개인정보를 가려요. 원본 데이터는 그대로 두고, 봇 눈에 들어가는 내용만 바꿔요. 이름의 pii는 개인정보라는 뜻이에요.

  • 휴대폰 번호: 010-1234-5678 → 010-****-5678 (뒤 4자리는 본인 확인용으로 남겨요)

  • 이메일: [email protected] → t***@gmail.com (회사 메일인지 개인 메일인지는 보이게)

  • 주민등록번호 뒷자리

  • API 키: 외부 서비스에 접속할 때 쓰는 긴 비밀 문자열(서비스 비밀번호)

기수, 결제 상태, 금액처럼 일에 필요한 정보는 그대로 둬요. 가린 다음에는 봇에게 "개인정보 몇 건을 가렸으니, 원래 값이 필요하면 사람에게 물어보라"는 메모를 같이 남겨요.

원리는 간단해요. 봇이 조회를 마치면 모드가 결과를 먼저 받아서, 번호·메일·비밀번호처럼 보이는 글자를 찾아 가린 뒤 봇에게 넘겨줘요. 봇은 가려진 결과만 보게 돼요.

실제로 가려지는지 확인한 결과

가짜 회원 정보 파일을 만들어서, 같은 질문을 모드 없이 한 번, 모드를 켜고 한 번 물었어요(2026-10-16 제가 잰 값).

  • 모드 없이: 클로드가 010-1234-5678, [email protected], 키 원문을 그대로 옮겨 적었어요

  • 모드 켜고: 010-****-5678, t***@gmail.com, AIRTABLE_API_KEY=[토큰 가림]으로 옮겨 적었어요

  • 봇과 같은 방식으로 돌린 뒤 컴퓨터에 저장된 대화 기록을 검색했더니 원래 번호 0건, 원래 비밀번호 0건이었어요

  • 자동 테스트 11개를 돌려서 모두 통과했어요

위 그림은 2026-10-16에 실제로 돌린 두 실행의 출력을 그대로 옮겨 그린 카드예요. 가짜 회원 정보라 실제 개인정보는 없어요.

실제 봇에서도 동작할까?

동작해요. 실제 슬랙·디스코드 봇(뽀짝이)에 모드를 올린 뒤 봇이 명령 결과를 읽게 했더니, 봇이 받은 결과부터 010-****-1234, s***@naver.com으로 가려져 있었어요(2026-10-16 확인). 파일을 직접 열어 읽게 해도 똑같이 가려졌고, 클로드가 "원문 번호는 복원할 수 없으니 원본을 직접 확인해 달라"고 답했어요.

채널마다 다르게 가리기

처음 버전은 어디서든 번호와 메일을 다 가렸어요. 근데 실제 봇에 올려 보니 문제가 있었어요. 쿠폰 발급이나 멤버십 연장처럼 이메일로 회원을 찾는 업무는, 봇이 가려진 메일을 받으면 회원을 못 찾아서 일이 막혀요.

그래서 두 번째 버전은 대화하는 곳에 따라 가리는 범위를 나눴어요.

  • 디스코드처럼 외부 사람이 있는 곳: 번호·메일·주민번호·비밀번호를 전부 가려요

  • 팀 슬랙에서 업무할 때: 비밀번호만 가리고, 번호와 메일은 업무에 쓸 수 있게 둬요

  • 한 번 외부 채널로 확인된 대화는 끝까지 전부 가려요. 대화가 이어지는 동안 기억하는 기능이라, hook으로는 하기 어려운 부분이에요

어디서 온 대화인지는 메시지마다 붙는 대화방 번호로 구분해요. 디스코드는 긴 숫자, 슬랙은 영문으로 시작해요. 같은 가짜 파일로 확인해 보니 슬랙에서는 번호는 보이고 비밀번호만 가려졌고, 디스코드에서는 번호·메일·비밀번호가 모두 가려졌어요(2026-10-16 제가 잰 값).

모드 만드는 순서 (4단계)

  1. 클로드 코드에 원하는 모드를 말로 설명해요. 클로드가 알아서 파일을 만들어 줘요

  2. 클로드에게 "검사하고 테스트도 돌려줘"라고 해요. 모드가 무엇을 하는지, 제대로 동작하는지 확인해 줘요

  3. 실제로 설치하기 전에 한 번만 켜 보는 방식으로 시험해요. 켰을 때와 껐을 때 결과를 비교해 봐요

  4. 괜찮으면 설치해요. 설치하면 그 컴퓨터의 클로드 코드 전체에 적용돼요

제가 1단계에서 쓴 요청문은 이거예요. 그대로 복사해서 써도 돼요.

도구 결과의 휴대폰·이메일·주민번호·API 토큰을 클로드가 읽기 전에 가리는 모드를 만들어줘.
휴대폰은 뒤 4자리, 이메일은 첫 글자와 도메인만 남겨줘.
가릴 게 없으면 그대로 넘기고, 가리다가 에러가 나면 결과를 숨겨줘.
제대로 되는지 확인하는 테스트도 같이 만들어줘.

만들면서 알게 된 팁

  • 바로 설치하지 말고 먼저 시험해 보세요. 설치하면 컴퓨터 전체에 적용돼요. 저도 시험해 보다가 업무가 막히는 걸 발견하고 채널별로 나눴어요

  • 봇의 최종 답장은 모드로 고칠 수 없어요. 답장 끝에 한 줄 덧붙이는 것까지만 돼요. 그래서 말투 교정 같은 일은 hook이 더 맞았어요

  • 실패했을 때를 정해 두세요. 개인정보를 가리는 모드라면 "가리다가 문제가 생기면 결과를 아예 숨긴다"로 해 둬야 원래 값이 새지 않아요

  • 가려진 내용을 보고 파일을 고치면 안 맞아요. 봇이 가려진 글자를 원래 글자로 알고 고치려다 실패해요. 개인정보가 든 문서를 고칠 때는 모드를 잠깐 꺼요

설치와 되돌리기

만든 모드를 팀 컴퓨터에 설치하면, 그 뒤로 새로 시작하는 클로드 코드에 모두 적용돼요.

되돌리기도 간단해요. 명령 한 줄로 끄고 켤 수 있어요. 실제로 꺼 보니 비밀번호가 다시 그대로 보였고, 다시 켜자 바로 가려졌어요(2026-10-16 확인).

참고로 카카오톡 봇은 클로드 코드가 아니라 다른 모델로 돌고 있어서 이 모드의 적용 대상이 아니에요. 모드는 클로드 코드로 도는 봇에만 들어가요.

우리 팀에서 쓰면 좋을 다른 모드

Anthropic이 공개한 예시 모드 3개도 써 볼 만해요.

  • token-weather: 대화가 얼마나 찼는지 날씨 아이콘으로 보여 줘요

  • blast-radius: 파일을 지우는 것처럼 위험한 명령을 실행 직전에 붙잡고, 무엇이 지워지는지 보여 준 뒤 진행·취소 버튼을 띄워요

  • replay-theater: 방금 클로드가 고친 파일을 한 단계씩 다시 보여 줘요

모드는 내 컴퓨터에서 내 권한으로 돌아가는 프로그램이에요. 믿을 수 있는 곳에서 만든 모드만 설치하세요.

자주 묻는 질문

모드를 쓰려면 개발을 알아야 하나요?

아니요. 원하는 동작을 말로 설명하면 클로드 코드가 모드를 만들어 줘요. 만든 뒤에 "검사하고 테스트해줘"라고 한 번 더 시키면 돼요.

hook이 있는데 모드로 다 옮겨야 하나요?

아니요. 막거나 경고만 하는 일은 hook으로 충분해요. 내용을 바꾸거나, 대화 동안 기억하거나, 화면에 띄울 게 있을 때만 모드를 쓰면 돼요.

슬랙 봇에도 적용되나요?

봇이 클로드 코드로 돌아간다면 적용돼요. 화면 기능은 안 보이지만, 가리기나 막기 같은 기능은 그대로 해요.

참고 자료

공식 자료는 2026-10-16에 확인했어요.

3
7개의 답글
지피터스 뉴스레터

이번 주 AI, 딱 쓸 것만

매주 월요일 오후,
읽고 바로 써먹을 AI 소식만