최종 갱신: 2026-11-08. 라일로(Lylo)를 만드는 개인 개발자가 이 방침을 적고 지킵니다. 법률 검토를 거치지 않았고, 여기 적힌 것은 실제로 코드가 하는 일 그대로입니다 — 코드가 바뀌면 이 페이지도 같은 커밋에서 바뀝니다.
앱이 보내는 것 — 하루 한 번의 다섯 가지
데스크탑 앱은 하루 한 번(그날 실제로 쓰면 두 번) 다섯 가지를 서버로 보냅니다 — 무작위 설치 번호 · 앱 버전 · macOS 버전 · 아키텍처 · 그날 사용 여부(예/아니오). 무작위 설치 번호는 이 기계에 설치할 때 한 번 만들어지는 난수일 뿐, 이름·이메일·계정과 이어지지 않습니다.
이 다섯 가지는 끌 수 없습니다. 어느 버전이 실제로 쓰이는지, 몇 명이 쓰는지를 알아야 개발을 계속할지 판단할 수 있기 때문입니다. 그래서 설정 화면에도 끄는 스위치를 두지 않았습니다.
휴대폰 앱이 보내는 것 — 하루 한 번의 다섯 가지
Lylo 리모트(iPhone 앱)는 앱을 연 날 한 번(그날 Mac을 새로 연결하거나 끊었으면 한 번 더) 다섯 가지를 서버로 보냅니다 — 무작위 설치 번호 · 앱 버전 · iOS 버전 · 받은 곳(App Store · TestFlight) · 연결한 Mac의 수. 몇 명이 휴대폰으로 라일로를 쓰는지 세기 위한 것입니다. 무작위 설치 번호는 휴대폰 앱이 처음 열릴 때 만드는 난수이고 앱을 지우면 함께 사라집니다. 이름·이메일·계정, 그리고 어느 Mac과 연결했는지는 담기지 않습니다 — 몇 대인지만 갑니다.
이 다섯 가지도 끌 수 없습니다. 데스크탑 앱의 다섯 가지와 같은 이유입니다.
앱 출시 알림 신청
라일로 리모트 소개 페이지에서 출시 알림을 신청하면 적은 이메일과 고른 기종(iPhone · Android)이 서버에 저장됩니다. 이 주소는 앱 출시를 알리는 메일에만 씁니다. 메일을 보내면 보낸 때를 함께 적어 둡니다. 보관 기한이 없고, 지우고 싶으면 아래 연락처로 알려 주시면 지웁니다.
휴대폰 앱에서 보내는 의견
Lylo 리모트의 의견 보내기에서 글을 쓰고 보내기를 누르면, 그 글이 서버에 저장되고 운영자가 읽습니다. 글과 함께 가는 것은 제안·버그의 구분 · 앱 버전과 빌드 · iOS 버전 · 연결한 Mac의 Lylo 버전 · 받은 곳(App Store · TestFlight)입니다. 무작위 설치 번호 · 세션 이름 · 대화는 함께 가지 않습니다. 이메일은 선택입니다 — 적으면 함께 저장되고, 자세한 이야기를 여쭙거나 결과를 알려 드릴 때만 씁니다. 글과 이메일은 보관 기한이 없습니다. 지우고 싶으면 아래 연락처로 알려 주시면 지웁니다.
앱이 Anthropic API로 직접 나가는 경로는 없습니다. 사용량 조회는 이미 로그인된 claude CLI에게 로컬에서 물어볼 뿐이고, 이 프로세스는 사람이 직접 조작하거나 앱을 앞으로 가져올 때만 뜹니다.
어떤 기능을 얼마큼 썼는지는 보내지 않습니다. 2026년 9월 27일 하루 동안 앱이 기능 사용을 시간당으로 접어 보낸 적이 있지만 같은 날 그 기능을 통째로 걷었습니다 — 앱은 더 이상 기능 사용을 기록하지도 보내지도 않습니다. 이 기계에 남아 있던 기록 파일은 앱이 지우고, 서버의 요약 표도 지웠습니다.
작업 시간 — 기기를 연결했을 때만, 그리고 끌 수 있습니다
앱은 어느 프로젝트에 얼마나 시간을 썼는지를 이 기계 안에서 잽니다. 그 기록은 기기를 계정에 연결하지 않으면 한 바이트도 밖으로 나가지 않습니다. 연결은 앱의 설정 → 일반 → 작업 시간 동기화에서 시작하고, 연결을 끊으면 그 자리에서 멈춥니다 — 위의 하루 한 번의 다섯 가지와 달리 이것은 끌 수 있습니다.
연결한 뒤 올라가는 것은 넷입니다. 작업 구간 — 종류(내 시간 · 읽는 시간 · AI가 도는 시간 · 승인을 기다린 시간) · 프로젝트 이름 · 시작 시각 · 길이 · 시간대 오프셋 · 무인 실행 여부 · 그 구간이 난 세션 번호(2026년 9월 27일부터 — 아래 세션 요약과 같은 번호이고, 그래야 “그 세션을 켜 둔 시간”과 “실제로 일한 시간”을 갈라 보여드릴 수 있습니다). 세션 요약 — 프로젝트 이름 · 열린 시각 · 첫 턴과 마지막 턴 · 주고받은 횟수. 그리고 2026년 9월 27일부터 둘이 더 올라갑니다 — 턴별 토큰 기록(턴이 끝난 시각 · 프로젝트 이름 · 모델 이름 · 토큰 수 네 가지(입력 · 출력 · 캐시 읽기 · 캐시 생성) · 그때까지의 누적 비용(달러) · 무인 실행 여부)과 사용 한도 기록(한도 창의 종류 · 초기화 시각 · 그 창에서 가장 많이 찼던 비율 · 관측 횟수 · 그때의 요금제 이름 — Max 20x처럼 앱 사이드바에 보이는 이름 그대로 · 어느 Claude 계정의 창인지 가르는 계정 키).
대화 내용 · 프롬프트 · 파일 경로 · 15초 단위 원자료는 올라가지 않습니다. 안 보내겠다는 약속이 아니라 서버 표에 그 칸 자체가 없습니다. 프로젝트 이름은 git 원격 주소에서 만들어지며 (github.com/사용자/저장소), 주소에 섞인 사용자 이름·토큰은 만들 때 떼어 냅니다.
모델 이름이 늘어난 자리입니다. 위의 하루 한 번의 다섯 가지에는 지금도 모델 이름이 들어가지 않습니다. 여기에만 들어가고, claude-opus-5처럼 도구가 알려 주는 식별자 그대로이며 길이와 글자 종류가 제한되어 있습니다. 이 기록을 받는 이유는 하나입니다 — 어느 요금제가 맞는지를 숫자로 보기 위해서입니다(한도를 얼마나 쓰는지 · 캐시가 얼마나 맞는지 · 어느 모델을 얼마나 쓰는지). 요금제 이름은 그 숫자를 “유지 · 낮추기 · 올리기” 권고로 바꾸는 데 씁니다 — 같은 파일에 있는 계정 이메일 · 이름 · 조직 이름은 보내지 않습니다. 계정 키는 2026년 9월 28일부터 Claude 계정 ID에 Lylo 전용 값을 섞어 되돌릴 수 없게 해시한 값입니다(ID 원문은 보내지 않습니다). 같은 Claude 계정을 여러 Mac에서 써도 한 계정으로 합쳐 판단하려는 것이고, 그 대가로 같은 계정을 몇 대의 Mac에서 쓰는지가 저희 서버에 보입니다. 그 전에는 Mac마다 따로 만든 번호였고, 이미 올라간 기록은 새 키로 옮겨 합칩니다. 기기를 연결하지 않으면 이 둘도 한 바이트도 나가지 않고, 계정을 삭제하면 작업 구간·세션과 함께 지워집니다.
연결한 기기는 기기 목록에서 언제든 해지할 수 있고, 해지하면 그 기기의 다음 업로드부터 거부됩니다. 목록에서 어느 기기인지 알아볼 수 있게 그 Mac의 컴퓨터 이름(시스템 설정 → 일반 → 공유에 적힌 이름 — 대개 사람 이름이 들어 있습니다)이 연결할 때와 업로드할 때 함께 올라가고, macOS 버전 · 아키텍처 · 마지막 싱크 시각과 함께 목록에 보입니다. 기기 목록에서 다른 이름을 붙일 수 있고, 붙인 이름이 있으면 그 이름이 먼저 보입니다. 이 이름은 연결을 승인하는 화면에는 보이지 않습니다 — 그 화면에서 믿을 것은 앱과 브라우저의 코드가 같은지 하나뿐입니다.
지우고 싶을 때 — 아래 문의처로 계정 삭제를 요청하시면 계정과 함께 올라온 작업 시간이 전부 지워집니다 (데이터베이스에서 계정 행을 지우면 연결된 기기·구간·세션이 함께 지워지도록 되어 있습니다). 앱에서 연결만 끊으면 새 기록이 더는 올라가지 않고, 이미 올라간 것은 남습니다. 기기 목록에서 해지한 기기를 ‘목록에서 삭제’하면 그 기기의 컴퓨터 이름과 붙인 이름은 지워지지만, 그 기기가 올린 기록은 계정에 남습니다. 프로젝트 하나의 기록은 내 작업 시간 → 기록 정리에서 직접 지울 수 있습니다(그 프로젝트의 작업 시간 · 세션 · 토큰 기록이 계정에서 지워지고, 되돌릴 수 없습니다). 같은 프로젝트가 두 줄로 갈렸을 때 한 줄로 합치는 것도 그 화면에서 합니다 — 합치기 위해 새로 보내는 것은 없습니다.
휴대폰 연결 — Lylo 리모트를 쓸 때만
Lylo 리모트(iPhone 앱)를 Mac과 연결하면, 그 휴대폰에서 보고 보낸 대화는 휴대폰과 내 Mac 사이에서만 오갑니다 — 이 서버를 지나지 않습니다. 둘은 연결할 때 나눈 열쇠로 서로를 확인하고, 연결할 때마다 새 열쇠로 잠급니다. 말하기 버튼으로 녹음한 소리도 내 Mac으로만 가고, Mac이 글자로 바꾼 뒤 지웁니다. 휴대폰 앱은 대화도 사용 기록도 이 서버로 보내지 않습니다 — 보내는 것은 위의 하루 한 번 다섯 가지뿐입니다. 연결하지 않으면 이 절의 어느 것도 일어나지 않습니다.
끄는 법: Mac의 Lylo 설정 > 휴대폰에서 그 휴대폰을 끊습니다. 끊는 순간부터 그 휴대폰이 보내는 것은 거부됩니다.
휴대폰 알림 — Lylo 리모트를 쓸 때만
Lylo 리모트(휴대폰에서 내 Mac의 세션을 보는 앱)에서 알림을 켠 경우에만 아래가 나갑니다. 알림을 안 켜면 0바이트입니다. 대화 내용은 이 서버를 지나지 않습니다 — 휴대폰과 Mac이 서로 직접 주고받습니다.
세션이 답을 마쳤거나 내 손을 기다릴 때, Mac이 이 서버에 무슨 일인지 네 가지 중 하나(답을 마침 · 허락을 기다림 · 질문이 옴 · 오류로 멈춤)와 휴대폰의 알림 주소(Apple이 이 앱에 준 기기 주소), 이 둘만 보냅니다. 서버는 정해진 문장 하나(예: “세션이 답을 마쳤습니다”)를 Apple의 알림 서비스로 넘기고 끝입니다. 프로젝트 이름 · 세션 이름 · 대화 · 파일 경로는 보내는 칸이 아예 없습니다. 서버는 알림 주소를 저장하지도 로그에 남기지도 않습니다(데이터베이스를 쓰지 않습니다). 알림은 Apple의 알림 서비스를 지나므로 Apple은 “이 앱의 알림이 이 기기로 갔다”는 사실을 압니다.
끄는 법: 휴대폰 앱에서 알림을 끄면 Mac이 알림 주소를 지우고 더는 아무것도 보내지 않습니다. 휴대폰 연결을 끊어도 마찬가지입니다.
두 번째 Mac부터는 App Store에서 한 번 사는 기능입니다. 결제와 구매 기록은 Apple이 가지고, 라일로는 누가 샀는지 받지 않습니다. 휴대폰 앱이 Apple에 산 것을 확인하는 일은 휴대폰 안에서 끝납니다.
집 밖에서 연결 — 공유기와 iCloud
Lylo 리모트로 연결한 휴대폰이 있고 Mac 설정의 ‘밖에서도 연결’이 켜져 있으면(처음엔 켜져 있습니다), 집 밖의 휴대폰이 Mac에 바로 닿도록 Mac이 집 공유기에 문 하나를 엽니다(자동 포트 열기 · UPnP). 공유기에 묻는 것은 공유기의 바깥 주소와 문 열기 · 닫기뿐이고, 집 안에서만 오갑니다. 바깥 주소는 공유기에게만 묻습니다 — 다른 서비스에 “내 주소가 뭐냐”고 묻지 않습니다. 문은 연결한 휴대폰이 있는 동안만 있고, 한 시간마다 다시 열며, 앱을 끄거나 휴대폰 연결을 끊거나 스위치를 끄면 바로 닫습니다. 그 문으로 들어와도 이 Mac과 짝지은 휴대폰이 아니면 아무것도 못 합니다. 대화는 여전히 이 서버를 지나지 않습니다.
집 밖에서 공유기의 주소가 바뀌어도 휴대폰이 다시 찾을 수 있게, Mac은 연결한 휴대폰마다 지금 닿을 주소(집 Wi-Fi 주소 · 공유기 바깥 주소 · Tailscale 주소)와 쓴 시각을 한 줄로 Apple iCloud(CloudKit의 공개 저장소)에 둡니다. 그 줄은 그 휴대폰과 Mac만 아는 열쇠로 잠가 두어 Apple도 우리도 내용을 못 읽고, 줄의 이름도 그 열쇠에서 나와 남이 어느 줄인지 고를 수 없습니다. Apple이 아는 것은 Mac의 iCloud 계정이 언제 썼는지와 그때의 IP 주소, 휴대폰이 읽은 때의 IP 주소입니다. 주소가 바뀐 때와 하루 한 번 쓰고, 휴대폰이 스스로 연결을 지우면 그 줄을 지웁니다. Mac에서 연결을 끊으면 앱이 꺼져 있던 휴대폰도 알 수 있도록 그 줄을 같은 열쇠로 잠근 ‘끊김’ 표시로 바꿔 30일 동안 두고 지웁니다. Mac이 iCloud에 로그인하지 않았으면 이 줄은 없습니다.
끄는 법: Mac의 Lylo 설정 > 휴대폰에서 ‘밖에서도 연결’을 끄면 공유기 문을 닫고, iCloud의 줄에서도 공유기 바깥 주소를 뺍니다. 휴대폰 연결을 모두 끊으면 문은 바로 닫히고 줄은 위의 30일이 지나면 남지 않습니다.
이 웹사이트가 다루는 것
방문 집계 — 쿠키를 심지 않고, 방문자 브라우저로 스크립트를 내려보내지도 않습니다. 서버가 요청을 받는 그 순간 IP와 브라우저 정보(User-Agent)를 SHA-256(그날의 무작위 소금 | IP | User-Agent)로 해시해 방문자 하나를 셉니다. IP와 User-Agent 원문은 해시하는 그 자리에서만 잠깐 쓰이고 어디에도 저장하지 않습니다. 소금은 매일 바뀝니다 — 다만 기록하는 그 순간에 한해 직전 7일의 소금으로 다시 해시해 보고 “7일 안에 온 적이 있나”를 예/아니오 하나로 남깁니다. 그 뒤로는 날짜 사이를 이을 수 없습니다. 해시와 함께 쌓이는 것은 페이지 경로 · 유입 채널 · 방문 국가(2글자)입니다.
봇 · 크롤러 — 검색엔진·AI 크롤러처럼 브라우저 정보(User-Agent)로 봇임이 드러나는 요청은 사람 방문에서 빼고, 봇 종류 이름 · 페이지 경로 · 횟수만 따로 셉니다. IP는 남기지 않습니다.
다운로드 — 설치 파일을 내려받으면 받은 버전 · 유입 태그(utm_source) · 국가 코드(2글자) · 어디서 왔는지(referer 호스트)를 기록합니다. IP 원문은 저장하지 않습니다.
호스팅 로그 — 이 사이트는 Vercel에서 돕니다. Vercel의 표준 접속 로그에는 요청 IP가 그대로 남을 수 있는데, 이 로그 정보를 제가 따로 보관하지는 않습니다. 그밖에 나머지는 Vercel의 기본 정책을 따릅니다.
계정 — GitHub으로 로그인할 때만
이 사이트에는 GitHub 계정으로 로그인하는 화면이 있습니다. 로그인하지 않으면 계정이 만들어지지 않고, 아래 내용은 하나도 해당되지 않습니다 — 랜딩 · 변경 내역 · 다운로드는 로그인 없이 그대로 쓸 수 있습니다.
로그인하면 GitHub에서 이메일 · 계정 이름 · 아바타 주소 셋을 받아 보관합니다. 요청하는 권한은 GitHub의 기본 프로필 읽기(read:user · user:email)뿐이고, 저장소에는 접근하지 않습니다. 쓰는 이유는 하나입니다 — 데스크탑과 노트북에서 따로 잡히던 작업 시간을 같은 사람의 것으로 묶기 위해서입니다.
로그인 절차상 GitHub이 건네주는 접근 토큰도 함께 저장되지만, 암호화해서 넣고 어디에도 쓰지 않습니다. 로그인 상태는 쿠키 하나로 유지하며 그 쿠키에는 무작위 세션 값만 들어 있습니다 — 로그아웃을 누르면 서버에서 그 세션을 지웁니다.
내 작업 시간 화면의 계정 탭에서 기준 시간대 · 근무 시간 · 근무 요일 · 주간 목표를, 요약 탭의 카드에서 카드마다의 목표(예: 몰입 비율 60% 이상)와 몰입 · 휴식 문턱(예: 25분 · 60분)을 정하면 그 값(예: Asia/Seoul · 10:00–19:00 · 월~금 · 주 25시간)을 계정에 붙여 보관합니다 — 통계가 하루를 어느 시계로 끊을지, 어디부터를 근무 시간 밖으로 볼지, 몇 분짜리 덩어리를 몰입으로 셀지, 이번 주에 얼마나 남았는지, 카드가 목표에 닿았는지를 적는 데만 씁니다. 정하지 않으면 아무것도 저장하지 않고, 비우면 지웁니다.
계정 정보는 방문 집계 · 앱 기록과 다른 곳에 따로 보관합니다. 앱이 보내는 다섯 가지에는 계정이 들어 있지 않으므로(위 문단), 둘은 서로 이어지지 않습니다. 작업 시간은 예외입니다 — 기기를 연결하면 그 기록은 계정에 붙습니다(그게 두 기계의 시간을 합치는 방법입니다). 계정을 지우고 싶으면 아래 문의처로 알려 주세요 — 지우면 딸린 기록도, 연결한 기기와 올라온 작업 시간도 함께 지웁니다.
보관 기간
앱이 보내는 다섯 가지는 설치 하나당 하루 한 줄로 쌓입니다 (같은 날 두 번 오면 그 줄을 고칠 뿐 늘리지 않습니다). 방문 집계에는 90일이 지난 기록을 지우는 절차가 마련돼 있지만 아직 자동으로 돌리고 있지는 않습니다. 앱 기록 · 다운로드 기록 · 호스팅 로그에도 아직 자동 삭제 기간을 정해 두지 않았습니다 — 정하면 이 페이지에 먼저 적습니다. 작업 시간도 마찬가지로 자동 삭제 기간이 없습니다(앱 안의 원자료는 90일, 구간은 400일이 지나면 지워지지만 그건 이 기계 안의 이야기입니다). 계정 정보와 올라온 작업 시간은 계정이 살아 있는 동안 보관하고, 지워 달라고 하시면 지웁니다.
문의처
개인정보 처리에 관해 궁금한 점은 miconblog@gmail.com으로 문의해 주세요.