PasteGuard: AI에게는 컨텍스트를, 당신의 개인 데이터는 아닌 것.
요약
PasteGuard는 PII 및 비밀 정보를 ChatGPT, Claude, Gemini 등 주요 AI 서비스에 전송하기 전에 마스킹하는 개인 정보 보호 계층입니다. 브라우저 확장 프로그램, 앱/SDK 통합, 코딩 에이전트 환경에서 작동하여 민감한 데이터를 로컬에서 처리할 수 있게 합니다. 이는 사용자가 원본을 유지하고 AI 제공업체는 플레이스홀더만 보게 하는 방식으로 데이터 보안을 강화합니다.
핵심 포인트
- AI 서비스 전송 전 PII 및 비밀 정보 마스킹 기능 제공
- 브라우저, 앱/SDK, 코딩 에이전트 등 다방면에서 적용 가능
- 로컬 우선(local-first) 아키텍처를 통해 데이터 통제권 확보
- Docker 등을 이용해 로컬 프록시 형태로 쉽게 배포 가능
AI가 컨텍스트를 가져갑니다. 하지만 당신의 사적인 데이터를 가져가는 것은 아닙니다.
PasteGuard는 PII(개인 식별 정보)와 비밀 정보를 ChatGPT, Claude, Gemini, API 제공업체, Codex 또는 Claude Code에 도달하기 전에 마스킹합니다.
브라우저 채팅 · 앱 및 API · 코딩 에이전트 · 문서화

사용자는 원본을 유지하고, 제공업체는 플레이스홀더를 보게 됩니다.
로컬에서 실행하거나 자체 인프라에 셀프 호스팅할 수 있습니다.
PasteGuard는 원시 클라이언트 데이터, 고객 기록, 로그, 자격 증명 또는 프로덕션 세부 정보를 모델 제공업체에 직접 전송할 수 없는 팀을 위한 로컬 우선(local-first) 개인 정보 보호 계층입니다.
이것은 세 곳에서 작동합니다:
ChatGPT, Claude, 그리고 Gemini. 고객 메모, 계약서, 지원 티켓, 후보자 상세 정보 또는 내부 컨텍스트를 전송할 때 원시 사적 값을 채팅 제공업체에 보내지 않습니다. 사용자는 원본을 보고, AI는 플레이스홀더를 봅니다.
실험적인 브라우저 확장 프로그램은 ChatGPT, Claude, 그리고 Gemini용으로 사용할 수 있습니다.
확장 프로그램 설치 → · 문서 채팅 →
앱, SDK 및 내부 AI 제품. 애플리케이션을 제공업체에 직접 연결하는 대신 PasteGuard를 가리키도록 설정합니다.
기본 URL 하나만 변경하면 됩니다. PasteGuard가 요청을 마스킹하고 구성된 제공업체로 전달하며, 응답에서 지원되는 플레이스홀더를 복원합니다.
Codex, Claude Code, Cursor, Windsurf, Copilot 및 기타 코딩 에이전트. 에이전트 프롬프트에는 종종 로그, 스택 트레이스, 티켓, 설정 파일, 테스트 고정 장치(test fixtures) 및 코드베이스 컨텍스트가 포함됩니다. PasteGuard는 해당 컨텍스트가 사용자의 기기를 떠나기 전에 비밀 정보와 PII를 마스킹합니다.
PasteGuard는 AI 제공업체 앞의 개인 정보 보호 제어 지점입니다. 규제된 워크플로우를 지원할 수 있지만, 법률적, 보안 또는 규정 준수 프로그램(compliance program)을 대체하지는 않습니다.
현재 사용 가능한 옵션이 다음과 같은 경우에 사용하세요:
- 민감한 작업에 클라우드 AI를 사용하지 않으려는 경우
- 고객 또는 프로덕션 데이터를 수동으로 편집해야 하는 경우
- 클라우드 제공업체가 더 나은 결과를 줄 것이더라도 로컬 모델로 전환해야 하는 경우
- 모든 앱 내부에 일회성 마스킹 코드를 구축해야 하는 경우
PasteGuard를 로컬 프록시(local proxy)로 실행하세요:
docker run --rm -p 3000:3000 ghcr.io/sgasser/pasteguard:latest
만약 0.9.3 버전의 detector가 SIGSEGV로 종료되면, docker run에 -e ORT_DISABLE_TELEMETRY=1을 추가하세요. 설치 문제 해결(installation troubleshooting) 섹션을 참조하십시오.
대시보드는 localhost:3000에서 열 수 있습니다.
앱이나 에이전트를 제공업체(provider) 대신 PasteGuard를 가리키도록 설정하세요:
| 대상 (Target) | PasteGuard URL | 원본 URL (Original URL) |
|---|---|---|
| OpenAI | http://localhost:3000/openai/v1 | https://api.openai.com/v1 |
| Anthropic | http://localhost:3000/anthropic | https://api.anthropic.com |
| Codex CLI | http://localhost:3000/codex | https://chatgpt.com/backend-api/codex |
from openai import OpenAI
client = OpenAI(base_url="http://localhost:3000/openai/v1")
client.chat.completions.create(...)와 client.responses.create(...) 모두 PasteGuard의 개인 정보 보호 파이프라인을 거칩니다.
사용자 지정 설정(custom config), 영구 로그(persistent logs), Docker Compose 또는 사용자 지정 GLiNER 모델의 경우: **문서(docs)**를 읽어보세요.
마스크 모드 (Mask Mode)
마스크 모드는 요청을 업스트림 AI 제공업체로 보내기 전에 PII(개인 식별 정보)와 비밀 정보를 플레이스홀더로 대체합니다. 지원되는 응답은 사용자에게 반환되기 전에 복원됩니다.
라우트 모드 (Route Mode)
라우트 모드는 민감한 데이터를 포함하는 요청을 Ollama, vLLM 또는 llama.cpp와 같은 로컬 LLM으로 전송합니다. 민감한 데이터가 없는 요청은 설정된 클라우드 제공업체로 여전히 전송될 수 있습니다.
개인 데이터 (Personal data): 이름, 위치, 이메일, 전화번호, 신용카드, IBAN, IP 주소 및 EU VAT 번호. 탐지 기능은 다국어(multilingual)를 지원합니다.
비밀 정보 (Secrets): OpenAI, Anthropic, Stripe, AWS, GitHub와 같은 제공업체의 API 키; SSH 및 PEM 개인 키; JWT 토큰; 베어러 토큰; 비밀번호; 연결 문자열.
이 모든 항목은 스트리밍 응답을 포함하여 실시간으로 탐지되고 마스크 처리됩니다.
모든 요청은 마스킹 상세 정보와 함께 로그로 기록됩니다. 무엇이 탐지되었고, 무엇이 마스크 되었으며, 무엇이 제공업체에 도달했는지 확인하세요.
탐지기는 구조화된 값에 대한 체크섬 및 형식 검사와 이름 및 장소에 대한 의미론적 백엔드(semantic backend)를 결합합니다. 현재 GLiNER가 유일한 백엔드입니다. 의미론적 백엔드(Semantic Backends)를 참조하세요.
Bun · Hono · GLiNER + python-stdnum (detector/
)゜ SQLite 또는 Postgres
기여 방법에 대한 지침은 CONTRIBUTING.md를 참고해주세요.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기