
개인정보 처리방침
최종 업데이트: 2026년 4월 19일
개요
Codelifter("확장 프로그램")는 웹 페이지 요소를 React + Tailwind CSS 코드로 변환하는 Chrome 브라우저 확장 프로그램입니다. 귀하의 개인정보를 소중히 여깁니다. 이 방침은 수집하는 데이터, 사용 방법, 보호 방법을 설명합니다.
Google API에서 받은 정보의 사용은 Chrome 웹스토어 사용자 데이터 정책(Limited Use 요건 포함)을 준수합니다.
수집하는 데이터
1. DOM 구조
요소 또는 전체 페이지를 변환하도록 선택하면, 확장 프로그램은 선택 영역의 DOM 트리(HTML 태그, 계산된 CSS 스타일, 레이아웃 크기/위치, 표시 텍스트 포함)를 직렬화합니다. 이 데이터는 Vercel 프록시 서버로 전송되고 AI 서비스(Anthropic Claude Sonnet, HuggingFace Qwen2.5-Coder)에 전달되어 코드 생성에만 사용됩니다. 전송된 DOM 데이터는 코드 생성 완료 직후 삭제되며 서버에 영구 저장되지 않습니다.
2. 스크린샷
확장 프로그램은 변환 중 선택된 요소의 스크린샷을 캡처하여 AI 모델의 시각적 분석에 활용합니다. 스크린샷은 일시적으로 처리되며 영구 저장되지 않습니다.
3. API 키
AI 처리는 당사 서버 프록시를 통해 처리됩니다. 별도의 API 키 입력이 필요하지 않습니다.
4. 구독 및 결제
Note: 참고: Pro 구독은 출시 준비 중입니다. 현재는 무료 티어만 제공되며, 결제 처리는 활성화되지 않았습니다.
Pro 구독은 토스페이먼츠를 통해 안전하게 관리 및 처리됩니다. 당사는 신용카드 번호를 처리하거나 저장하지 않습니다. 결제 데이터는 토스페이먼츠 개인정보처리방침의 적용을 받습니다.
5. 사용 메타데이터
서비스 이용 현황 파악 및 쿼터 적용을 위해 다음 데이터를 수집합니다:
- 인증 사용자: Supabase에 계정과 연동된 월별 변환 횟수 카운터 저장
- 익명 사용자: IP 주소를 SHA-256 + 교체 솔트로 해싱 처리 (원본 IP는 저장되지 않음)
- Sentry를 통한 오류 보고 (beforeSend로 PII 마스킹 적용 — 이메일, 파일 경로, 토큰 제거 후 전송)
데이터 처리 목적 (이용 목적)
위에 명시된 데이터는 다음 목적으로만 처리됩니다. 광고, 프로파일링, 신용 평가, 제3자 AI 모델 학습에는 일절 사용하지 않습니다.
- 코드 생성 — 변환 요청한 요소의 DOM/CSS 는 AI 제공업체(Anthropic Claude, HuggingFace Qwen)로 전송되어 반환되는 React/Vue/Svelte 컴포넌트 생성에만 사용됩니다. 요청 페이로드는 응답 반환 후 보존되지 않습니다.
- 사용량 한도 적용 — 인증 사용자: Supabase 계정에 연동된 월별 변환 카운터 / 익명 사용자: 악용 방지용 rate limit 에 salted SHA-256 IP 해시 사용(원본 IP 미저장).
- 계정 인증 — Supabase 에 이메일과 사용자 UUID 를 저장하여 로그인 인증 및 구독 티어에 연동된 API 호출 권한을 확인합니다.
- 결제 처리 — Pro 구독(곧 출시) 가입 시, 토스페이먼츠가 카드 데이터를 직접 처리하며, 당사는 사용자 UUID 에 연동된 구독 상태 토큰만 수신합니다.
- 보안 — 선택 사항인 MCP 서버의 페어링 토큰은 로컬(chrome.storage.local 및 chmod 600 CLI 설정 파일)에만 저장되어 로컬 WebSocket 인증에 사용되며, 당사 서버로 전송되지 않습니다.
- 오류 모니터링 — Sentry 는 온디바이스 PII 마스킹(이메일, IP, JWT, hex64 토큰이 beforeSend 로 제거됨)이 적용된 크래시 리포트만 수신하여 프로덕션 장애 진단에 사용됩니다.
보안 및 저장
데이터는 다음 안전 조치에 따라 저장 및 전송됩니다:
- 모든 네트워크 전송은 HTTPS(TLS 1.2+)를 사용합니다. 자체 API 요청은 codelifter.vercel.app 에만 전송됩니다.
- 인증은 Supabase 발급 JWT 토큰을 사용하며, 세션 토큰은 chrome.storage.local 및 브라우저 쿠키(secure/httpOnly 플래그 적용 가능 시)에 저장됩니다.
- PII 필터링은 DOM 페이로드가 브라우저를 떠나기 전에 전적으로 사용자 기기에서 실행됩니다.
- 선택 사항인 MCP 서버는 127.0.0.1 에만 바인드되며 crypto.timingSafeEqual 페어링 토큰 검증과 3-strike 10분 차단을 강제합니다.
- AI 제공업체의 API 키는 당사 서버에만 보관되며 확장에 포함되거나 클라이언트에 노출되지 않습니다.
PII 필터링
DOM 데이터가 AI 서버로 전송되기 전에 확장 프로그램이 텍스트 내 개인식별정보(PII)를 자동으로 탐지하고 제거합니다. 이 필터링은 데이터가 브라우저를 떠나기 전 온디바이스에서 실행됩니다:
- 이메일 주소 →
[email] - 전화번호 (국제 및 한국 형식) →
[phone] - 신용카드 번호 →
[card-number] - 주민등록번호 →
[ssn]
수집된 데이터는 데이터 공유 섹션에 명시된 AI 제공업체 외의 제3자에게 판매, 공유, 또는 이전되지 않습니다.
온디바이스 AI
확장 프로그램이 Chrome 내장 온디바이스 AI(예: Prompt API, Summarization API)를 사용하는 경우, 모든 처리는 기기 내에서 로컬로 수행됩니다. 이러한 작업에는 외부 서버로 데이터가 전송되지 않습니다.
데이터 공유
다음의 제한된 경우를 제외하고 개인 데이터를 제3자에게 판매, 공유, 또는 이전하지 않습니다:
- AI 제공업체: DOM 스냅샷은 Vercel 프록시 서버를 통해 코드 생성 목적으로만 Anthropic(Claude Sonnet) 및 HuggingFace(Qwen2.5-Coder)에 전달됩니다.
- Supabase: 사용자 인증, 구독 상태, 변환 이력, rate-limit 카운터, 오류 로그가 Supabase(미국)에 저장됩니다. Supabase는 당사의 주요 데이터베이스 및 인증 제공업체입니다.
- 토스페이먼츠: 구독 관리 및 결제 처리에 사용됩니다.
- Sentry: PII 마스킹이 적용된 오류 보고서가 장애 모니터링 및 디버깅을 위해 Sentry에 전송됩니다.
- 법적 요구: 법률 또는 유효한 법적 절차에 의해 요구되는 경우.
쿠키 및 추적
확장 프로그램은 쿠키, 추적 픽셀 또는 제3자 애널리틱스 스크립트를 사용하지 않습니다. 웹사이트는 언어 설정을 기억하기 위한 단일 설정 쿠키(cl_locale)만 사용합니다.
데이터 보존
DOM 스냅샷과 스크린샷은 일시적으로 처리되며 API 응답 반환 후 서버에 저장되지 않습니다.
인증 사용자의 변환 횟수는 계정이 존재하는 동안 Supabase에 보존됩니다. 익명 사용자의 IP 해시는 매월 교체됩니다. Sentry의 오류 로그는 90일간 보존됩니다.
결제 관련 기록(subscriptions 테이블의 billing_key·paid_at·refund_at·약관 동의 시각, payment_events 테이블의 토스 webhook 이력 및 raw_payload)은 「전자상거래 등에서의 소비자보호에 관한 법률」 제6조에 따라 5년간 보존되며, 보존 기간 경과 후 자동 삭제 cron(매월 1일 KST 06:00)으로 정리됩니다.
이용자 권리
익명 사용자에 대한 영구 데이터베이스를 유지하지 않으므로, 일반적으로 요청에 따라 조회하거나 삭제할 수 있는 개인 데이터가 서버에 저장되어 있지 않습니다. 인증 사용자는 문의를 통해 계정 삭제를 요청할 수 있습니다. AI 제공업체가 처리한 데이터에 대한 문의는 해당 업체의 개인정보처리방침을 참고해 주세요.
아동 개인정보
확장 프로그램은 13세 미만 아동을 대상으로 하지 않습니다. 아동으로부터 고의로 개인정보를 수집하지 않습니다.
방침 변경
본 개인정보 처리방침은 수시로 업데이트될 수 있습니다. 중요한 변경 사항은 이 페이지 상단의 "최종 업데이트" 날짜를 갱신하여 사용자에게 알립니다. 변경 후 확장 프로그램을 계속 사용하면 업데이트된 방침에 동의한 것으로 간주됩니다.
MCP 로컬 서버
개발자 통합 설정에서 MCP 서버를 활성화하면 Codelifter CLI가 localhost:12307에 전용으로 바인드된 로컬 WebSocket 서버를 시작합니다.
- 서버는 로컬 머신의 프로세스에서만 접근 가능합니다 — 외부 네트워크 접근은 OS 네트워크 레이어에서 차단됩니다.
- WebSocket 업그레이드 요청에 x-codelifter-token 헤더가 포함되어야 하며, 확장 설정의 pairing token과 일치해야 합니다. 유효하지 않은 token의 요청은 즉시 거부되며, 연속 3회 실패 시 10분간 차단됩니다.
- fetch() 또는 XMLHttpRequest를 통한 웹 페이지의 직접 호출은 브라우저 CORS 정책에 의해 차단됩니다 — Codelifter는 CORS 헤더를 설정하지 않습니다.
- MCP 서버를 통해 전송되는 데이터는 "수집하는 데이터" 섹션에 기재된 표준 /api/transform 경로와 동일한 경로로 전송됩니다. 추가 데이터는 전송되지 않습니다.
- 확장 설정에서 pairing token을 언제든지 재발급할 수 있습니다. 재발급 즉시 기존에 연결된 모든 MCP 클라이언트가 무효화됩니다.
- Codelifter CLI의 로컬 MCP 서버는 127.0.0.1:12307에서만 바인드되며 외부 네트워크로 노출되지 않습니다.
- 연결 인증은 사용자 자신의 pairing token으로만 이루어집니다. Codelifter 서버로 token이 전송되지 않습니다.
- 확장과 CLI는 로컬에서 직접 통신하며, 변환 과정에서 수집된 DOM 데이터는 "수집하는 데이터" 섹션에 기재된 표준 /api/transform 경로 외로는 서버에 저장되지 않습니다.
개인정보 보호책임자
회사는 「개인정보 보호법」 제31조에 따라 이용자의 개인정보를 보호하고 처리에 관한 사항을 총괄하여 책임지는 보호책임자를 다음과 같이 지정합니다.
- 성명: 장혁 (대표자)
- 직책: 대표자 / 개인정보 보호책임자
- 이메일: jh0580jh@tididig.com
- 연락처: +82 10 4567 1569
이용자께서는 회사의 서비스(또는 사업)를 이용하시며 발생한 모든 개인정보 보호 관련 문의, 불만처리, 피해구제 등에 관한 사항을 보호책임자에게 문의하실 수 있습니다. 회사는 정보주체의 문의에 대해 지체 없이 답변 및 처리해 드릴 것입니다.
문의
본 개인정보 처리방침에 대해 질문이나 우려 사항이 있으시면 아래로 문의해 주세요:
이메일: jh0580jh@tididig.com