BugShot is a Chrome extension that lets you inspect web elements, edit styles in real time, and submit fully documented issues.
시행일: 2026년 6월 22일
BugShot(이하 “확장 프로그램”)은 사용자의 개인정보를 소중히 여기며, 최소한의 정보만 수집·처리합니다. 본 방침은 확장 프로그램이 어떤 정보를 다루는지 투명하게 안내합니다.
| 정보 | 수집 시점 | 목적 |
|---|---|---|
| Jira 자격 증명 (API Token 또는 OAuth 토큰) | Jira 연동 설정 시 | 이슈 생성 및 첨부 |
| Jira 사용자 이메일 | 연동 검증 시 | 연동 상태 표시 |
| GitHub 자격 증명 (PAT 또는 OAuth 토큰) | GitHub 연동 설정 시 | 이슈 생성 및 파일 업로드 |
| GitHub 사용자 ID | 연동 검증 시 | 연동 상태 표시 |
| Linear 자격 증명 (API Key 또는 OAuth 토큰) | Linear 연동 설정 시 | 이슈 생성 및 첨부 |
| Linear 사용자 이름·이메일 | 연동 검증 시 | 연동 상태 표시 |
| Notion 자격 증명 (Internal Integration Token 또는 OAuth 토큰) | Notion 연동 설정 시 | 페이지 생성 및 첨부 |
| Notion 워크스페이스 정보 | 연동 검증 시 | 연동 상태 표시 |
| GitLab 자격 증명 (Personal Access Token 또는 OAuth 토큰) | GitLab 연동 설정 시 | 이슈 생성 및 파일 업로드 |
| GitLab 사용자 이름·이메일 및 인스턴스 URL | 연동 검증 시 | 연동 상태 표시 (self-managed 인스턴스 주소 포함) |
| Asana 자격 증명 (Personal Access Token 또는 OAuth 토큰) | Asana 연동 설정 시 | 작업(task) 생성 및 파일 업로드 |
| Asana 사용자 이름·이메일 | 연동 검증 시 | 연동 상태 표시 |
CC(참조) 기능을 사용하면 입력한 검색어로 연동된 플랫폼(Jira·GitHub·Linear·Notion·GitLab·Asana)의 사용자 디렉터리를 조회해 멘션 후보(이름·핸들·아바타)를 표시합니다. 사용자가 선택한 멘션 대상의 식별자는 생성되는 이슈 본문에 포함되어 해당 플랫폼으로 전송됩니다. 검색어와 조회된 후보 목록은 기기에 저장되지 않습니다.
| 정보 | 수집 시점 | 목적 |
|---|---|---|
| DOM 요소 스타일 정보 | 요소 선택 시 | 스타일 비교 및 이슈 본문 생성 |
| 스크린샷·탭 영상 | 캡처/탭 녹화 시 | 현재 탭 화면을 캡처해 이슈 첨부 |
| 화면 녹화 영상 | 화면 녹화 모드 선택 시 | 브라우저 화면 공유 다이얼로그로 사용자가 직접 선택한 대상(전체 화면·다른 앱 창·다른 탭 등 BugShot이 열린 탭 밖 화면도 포함될 수 있음)을 녹화해 이슈 첨부 |
| 네트워크 요청 로그 | 디버그 캡처 활성화 시 | 이슈 첨부 (디버그 정보) |
| 콘솔 로그 | 디버그 캡처 활성화 시 | 이슈 첨부 (디버그 정보) |
| 사용자 액션 로그 (클릭·입력·페이지 이동·단축키 입력·토글·드롭다운 선택) | 디버그 캡처 활성화 시 | 이슈 첨부 (재현 단계 — 영상 모드에 한해 첨부) |
| 30초 리플레이 프레임 | 30초 리플레이 활성화 시 | 현재 탭 화면을 주기적으로 캡처해 직전 30초를 메모리에 임시 보관 (미저장·미전송, 사용자가 명시적으로 캡처할 때만 영상으로 첨부) |
| 사용자 첨부 파일 | 파일 첨부 기능 활성화 후 이슈에 파일 첨부 시 (선택 기능, 기본 꺼짐) | 사용자가 직접 선택한 임의의 로컬 파일을 이슈에 첨부 |
네트워크 로그 수집 시 authorization, cookie 등 민감 헤더와 token, access_token 등 민감 쿼리 파라미터는 자동으로 마스킹 처리됩니다. 요청·응답 본문(JSON·폼 데이터)에 포함된 token, password, secret 등 민감 키의 값도 자동으로 마스킹됩니다.
디버그 캡처 시 콘솔·네트워크 로그는 현재 페이지 본문뿐 아니라 그 페이지에 삽입된 다른 출처(third-party) 프레임(iframe — 예: 결제 위젯, 임베드 SDK)에서 발생한 콘솔·네트워크 로그도 함께 수집할 수 있습니다. 이는 해당 프레임에서 일어나는 오류가 버그 재현에 필요하기 때문이며, 수집된 로그에는 출처(origin) 정보가 함께 기록되어 이슈 첨부 시 출처별로 구분·필터할 수 있습니다. 위 민감 헤더·파라미터·본문 마스킹은 프레임 출처와 무관하게 동일하게 적용됩니다.
사용자 액션 로그는 클릭한 요소·입력 필드·페이지 이동에 더해, 단축키·특수키 입력(예: Enter·Esc·⌘K — 인쇄 문자와 입력 필드 값 자체는 기록하지 않습니다), 체크박스·라디오 토글, 드롭다운 선택을 재현 단계로 기록합니다. 비밀번호·카드번호 등 민감 입력 필드(type=password, autocomplete 힌트, 필드 이름·라벨의 민감 키워드로 판별)의 입력 값은 자동으로 마스킹 처리되며, 해당 민감 필드에 포커스된 동안의 키 입력은 아예 기록하지 않아 원문이 기기를 벗어나지 않습니다.
화면 녹화 중에는 페이지를 이동(다른 사이트로의 이동 포함)하더라도 그동안의 콘솔·네트워크·액션 로그가 끊기지 않고 함께 보존되어, 해당 녹화로 만든 이슈에는 녹화 중 방문한 페이지들의 디버그 로그가 포함될 수 있습니다.
디버그 캡처를 한 번 시작한 적 있는 페이지를 다시 로드하면, 캡처를 재개하는 시점에 해당 페이지 로드 초반(재개 직전)의 콘솔·네트워크·액션 로그도 소급해 함께 포함될 수 있습니다. 이 로드 초반 로그는 캡처를 다시 시작하기 전까지는 기기 메모리에만 임시 보관되며 저장·전송되지 않습니다.
| 정보 | 수집 시점 | 목적 |
|---|---|---|
| LLM 프로바이더 설정 (base URL, API 키, 모델) | AI 초안 기능 설정 시 | LLM API 호출 |
LLM API 키는 난독화하여 저장됩니다.
Chrome 내장 AI(Prompt API)를 지원하는 브라우저에서는 외부 API 호출 없이 온디바이스 모델로 초안을 생성할 수 있습니다. 이 경우 데이터가 사용자의 기기를 벗어나지 않으며, 별도의 API 키가 필요하지 않습니다.
확장 프로그램은 제품 개선을 위해 익명 집계 이벤트를 수집합니다(2026년 6월 19일 시행).
| 정보 | 수집 시점 | 목적 |
|---|---|---|
| 설치(extension_installed, 확장 버전) | 신규 설치 시 | 설치 규모·버전 분포 파악 |
| 사이드 패널 열기(sidepanel_opened) | 사이드 패널을 열 때 | 활성화 정도 파악 |
| 플랫폼 연결(platform_connect: 플랫폼·성공/취소/실패) | OAuth 연결 시도 시 | 연동 플랫폼별 인기도·연결 성공·취소·실패 비율 파악 |
| 플랫폼 연결 해제(platform_disconnected: 플랫폼) | 연결 해제 시 | 연동 이탈 파악 |
| 이슈 제출(issue_submitted: 플랫폼·캡처 모드·제출 결과) | 이슈 제출 시 | 플랫폼별 사용량·캡처 방식 우선순위·제출 성공·실패 비율 파악 |
이 이벤트들은 위 분류 문자열만 담으며, 이슈 제목·본문·URL·개인 식별 정보는 일절 포함하지 않습니다. 같은 설치를 구분하기 위해 설치 시 무작위 식별자(distinct_id)를 한 번 생성해 기기에 저장하고 이후 이벤트에 함께 보냅니다. 이 식별자는 무작위 값일 뿐 이메일·계정·IP 등 어떤 개인정보와도 연결되지 않습니다. 실제 IP 주소가 저장되지 않도록 이벤트에 IP 값을 0.0.0.0으로 실어 보내고, 위치 추정(GeoIP)도 비활성화합니다($geoip_disable). 이 집계에는 별도의 옵트아웃(off) 설정이 없습니다.
확장 프로그램은 위 항목 외에 사용자의 브라우징 기록, 쿠키, 개인 식별 정보 등을 수집하지 않습니다.
모든 데이터는 사용자의 브라우저 내부에만 저장됩니다.
외부 서버에 사용자 데이터를 저장하지 않습니다.
확장 프로그램은 아래 서비스에만 데이터를 전송합니다.
| 대상 | 전송 내용 | 목적 |
|---|---|---|
Jira REST API (*.atlassian.net, api.atlassian.com) |
이슈 본문, 스크린샷, 영상, 디버그 로그 | 이슈 생성 및 첨부 |
GitHub REST API (api.github.com) |
이슈 본문, 라벨, 담당자 | 이슈 생성 |
GitHub (github.com, uploads.github.com) |
스크린샷, 영상, 디버그 로그 | 파일 업로드 |
Linear GraphQL API (api.linear.app) |
이슈 본문, 스크린샷, 영상, 디버그 로그 | 이슈 생성 및 첨부 |
Notion REST API (api.notion.com) |
페이지 본문, 스크린샷, 영상, 디버그 로그 | 페이지 생성 및 첨부 |
GitLab REST API (gitlab.com 또는 사용자 지정 self-managed 인스턴스) |
이슈 본문, 라벨, 담당자, 스크린샷, 영상, 디버그 로그 | 이슈 생성 및 파일 업로드 |
Asana REST API (app.asana.com) |
작업(task) 본문, 워크스페이스·프로젝트·담당자, 스크린샷, 영상, 디버그 로그 | 작업 생성 및 파일 업로드 |
| OAuth 프록시 서버 | OAuth 인가 코드 | 토큰 교환 (Jira, GitHub, Notion, Asana) |
| 사용자 지정 LLM 프로바이더 | 이슈 본문 초안, 스크린샷 (선택적), 디버그 로그 요약 (선택적) | AI 초안 생성 |
PostHog (us.i.posthog.com) |
익명 집계 이벤트 (설치·패널 열기·플랫폼 연결/해제·이슈 제출) | 익명 사용량 집계 |
OAuth 프록시 서버는 토큰 교환만 중계하며, 사용자 데이터를 저장하거나 로깅하지 않습니다. Linear·GitLab은 PKCE 방식으로 프록시 없이 직접 토큰을 교환합니다.
사용자가 “파일 첨부” 기능으로 직접 선택한 로컬 파일은 이슈(작업) 제출 시 위 각 플랫폼(Jira·GitHub·Linear·Notion·GitLab·Asana)에 본문 첨부로 함께 업로드됩니다. 이 기능은 기본적으로 꺼져 있으며, 설정에서 활성화한 경우에만 동작합니다.
GitLab self-managed 인스턴스에 PAT로 연결할 경우, 사용자가 입력한 인스턴스 주소(임의 origin)로 직접 통신합니다. 이 접근은 선택적 호스트 권한(<all_urls>)을 통해 연결 시 브라우저의 권한 요청 대화상자로 1회 허가받으며, gitlab.com 연결에는 별도 권한 요청이 없습니다.
LLM 프로바이더는 사용자가 직접 설정한 엔드포인트로만 전송되며, 사용자가 AI 초안 생성을 명시적으로 실행할 때에만 동작합니다. 연결 시 브라우저의 런타임 권한 요청을 통해 해당 호스트 접근을 허가받습니다.
CC(참조) 멘션 검색 시 입력한 검색어는 위 각 플랫폼의 사용자 검색 API로 전송되며, 사용자가 선택한 멘션 대상은 이슈 본문의 일부로 함께 전송됩니다. 모두 사용자가 직접 검색·선택할 때에만 동작합니다.
수집한 정보를 제3자에게 판매, 공유, 전달하지 않습니다. 사용자가 직접 이슈를 생성하거나 AI 초안을 요청하는 경우에만 해당 플랫폼 또는 사용자가 설정한 LLM 프로바이더로 데이터가 전송됩니다.
chrome.storage 데이터가 자동으로 삭제됩니다.| 권한 | 사용 목적 |
|---|---|
| sidePanel | 사이드 패널 UI 표시 |
| activeTab | 현재 탭의 DOM 요소 정보 수집 |
| scripting | DOM 선택·오버레이 표시를 위한 스크립트 주입, GitHub 파일 업로드를 위한 페이지 스크립트 실행 |
| storage | 설정·세션·이슈 기록 저장 |
| commands | 키보드 단축키 등록 |
| contextMenus | 우클릭 메뉴에서 사이드 패널 열기 |
| identity | OAuth 로그인 (Jira, GitHub, Linear, Notion, GitLab, Asana) |
| tabCapture | 탭 영상 녹화 |
| webNavigation | 페이지 이동 직전 콘솔·네트워크 로그 꼬리 보존, 새로 로드된 프레임(iframe) 감지 시 로그 수집 연결 (탭·프레임 이동 감지) |
확장 프로그램은 아래 도메인에 대한 네트워크 접근 권한을 가집니다.
*.atlassian.net, api.atlassian.com, auth.atlassian.com — Jira API 및 OAuthapi.github.com, github.com, uploads.github.com — GitHub API 및 파일 업로드api.linear.app — Linear API 및 OAuthapi.notion.com — Notion API 및 OAuthgitlab.com — GitLab API 및 OAuth (gitlab.com 연결 시). self-managed 인스턴스는 선택적 호스트 권한으로 런타임 허가app.asana.com — Asana API 및 OAuth<all_urls> (모든 사이트) — 아래 세 기능에서 브라우저의 권한 요청 대화상자를 통해 런타임에 허가를 받습니다. 세 기능 모두 사용자가 직접 켜거나 실행할 때만 동작합니다. (30초 리플레이의 화면 캡처(captureVisibleTab)는 일반 호스트 권한으로는 동작하지 않고 <all_urls>를 요구합니다.)
captureVisibleTab)하기 위해 (“30초 리플레이” 설정 스위치를 켤 때 1회 동의)30초 리플레이를 통해 부여된 권한은 일반 캡처의 연속성 유지에도 사용됩니다(2026년 6월 13일 시행): 권한이 있으면 다른 사이트로 페이지를 이동해도 사이드 패널이 닫히지 않고, 이동한 페이지에서 캡처·로그 수집을 계속할 수 있습니다. 이는 30초 리플레이 스위치를 꺼도 권한이 유지되는 한 적용되며, 권한은 Chrome 설정(확장 프로그램 > BugShot > 사이트 액세스)에서 언제든 철회할 수 있습니다. 철회 시 즉시 기존 동작(페이지 이동 시 패널 종료)으로 돌아갑니다.
본 방침이 변경될 경우, 이 페이지를 통해 고지합니다.
개인정보 관련 문의: ox501501@gmail.com