개인정보,
쉬운 말로.
Gnista는 Mac에서만 돌아요. 분석도, 텔레메트리도, 계정도 없고, 세션에 관한 건 무엇도 Mac 밖으로 나가지 않아요. 앱이 보내는 요청 하나하나와, 각각 무엇을 보내는지 적었어요.
업데이트
Mac 안에서
Gnista는 코딩 에이전트가 Mac에 남기는 것을 읽어요. 에이전트의 훅이 로컬 소켓으로 보내는 이벤트, 그리고 제목, 진행 상황, 비용, 한도를 위해 에이전트 자체의 세션 파일과 설정이요. 있는 자리에서 읽기만 하고, 어디로도 보내지 않아요.
Gnista 자신의 것도 조금, Application Support 안의 자기 폴더에 보관해요. 최근에 끝난 세션, 가장 최근의 플랜 한도, 모델 가격 목록, 바꾼 에이전트 설정의 백업, 아직 보내지 않은 충돌 보고서(30일 뒤 삭제), 내려받은 Linux 헬퍼, 보여 준 Amp 스레드의 최근 메시지(일주일 뒤 삭제), 그리고 직접 만든 에이전트, 모델, 이동 규칙 파일이에요. 라이선스 키는 동기화하지 않는 Gnista 전용 키체인 항목에, 체험 시작 시점은 그곳과 Gnista의 환경설정에 보관해요. 키체인의 다른 항목은 읽지 않고, 포트를 뒤지지도 않아요.
에이전트를 연결할 때는, 백업한 뒤에 그 에이전트 설정에서 자기 줄만 고쳐요. 허락해 주면 자동화와 손쉬운 사용 권한으로 맞는 터미널 탭이나 윈도우를 찾아요. 이것도 Mac 안에서만 일어나요.
원격 머신을 연결하면, Gnista는 그 머신의 ~/.gnista에 헬퍼와 설정 파일 하나를 두고, 그곳에서 연결하는 에이전트의 설정에 훅을 추가해요. 머신의 연결을 해제하면 둘 다 사라져요.
온라인으로 가는 것
- 업데이트 확인. 자동 업데이트가 켜져 있으면 Gnista는 하루에 한 번쯤 gnista.sh에 업데이트 목록을 요청하고, 업데이트는 GitHub에 있는 Gnista의 공개 다운로드에서 받아요. 다른 모든 요청처럼 IP 주소가 함께 가고, 지금 쓰는 Gnista 버전을 알려요. Mac의 프로필은 보내지 않아요.
- 라이선스. 키를 활성화하면 Gnista는 키와, 활성화의 이름표인 Mac의 이름을 우리 중계 서버 report.gnista.sh에 보내요. 중계 서버는 딱 그것만 Creem(우리 대신 Gnista를 판매하는 곳)에 넘기고, 라이선스에 관해서는 아무것도 남기지 않아요. 일주일에 한 번쯤 Gnista가 키를 확인하고, 키를 제거하면 그 Mac의 자리가 비워져요. 둘 다 키와 이 Mac의 활성화 ID를 보내요. 대량 전송을 막으려고, 중계 서버는 아래의 충돌 보고서처럼 라이선스 요청 수를 세요. 체험에는 온라인으로 가는 게 없어요.
- 모델 가격. ‘사용량’을 켰을 때만: LiteLLM의 공개 가격 목록을 GitHub에서 하루에 많아야 한 번 받아요. 그냥 다운로드일 뿐, 사람이나 세션에 관한 건 아무것도 함께 가지 않아요.
- 충돌 보고서. Gnista나 그 헬퍼가 예기치 않게 종료되면, 다음에 Gnista를 열 때 충돌 보고서를 보낼지 물어봐요. 설정 ▸ Gnista에 관하여에서 항상 보내거나 보내지 않도록 고를 수 있고, 조직이 자기 Mac에 대해 정할 수도 있어요. 보고서에는 오류 내용, 발생 시각과 Gnista 코드에서 발생한 위치, 스레드 큐의 이름, 로드된 라이브러리의 이름과 주소, Gnista와 macOS 버전, Mac 모델과 프로세서 아키텍처, 그리고 충돌 보고서용으로만 만든 무작위 번호가 들어가요. 프로젝트, 프롬프트, 코드에 관한 내용도, 사용자 이름이나 파일 경로도 없어요. 보고서는 스웨덴 Inleed에 있는 우리 중계 서버 report.gnista.sh로 가고, 거기서 Proton을 통해 이메일로 우리에게 전해지며, 사본은 남지 않아요. 대량 전송을 막으려고 하루 보고서 수를 세지만, IP 주소는 알아볼 수 없는 값으로만 다루고 다음 날 잊어요.
- 원격 머신. 설정 ▸ 원격에서 연결했을 때만이에요. Gnista는 평소 쓰는 ssh와 ssh 설정, 키로 그 머신에 접속해서 헬퍼를 두고, 에이전트를 연결하고, 줄을 클릭하면 에이전트의 tmux 페인을 띄우고, 에이전트의 이벤트를 Mac으로 가져오고 응답을 돌려보내는 터널을 열어 둬요. Kubernetes 파드도 평소 쓰는
kubectl로 같은 방식으로 접속해요. 지금 쓰는 Gnista 버전의 헬퍼가 그 머신에 처음 필요할 때 GitHub에 있는 Gnista의 공개 다운로드에서 내려받고, Gnista의 키로 서명된 경우에만 써요. 이 다운로드는 어느 버전과 프로세서용인지만 알리고, 사람에 관한 건 아무것도 알리지 않아요. - Amp의 스레드. Amp는 스레드를 자기 서버에 보관해서, Amp 줄을 보여 주려고 Gnista가 로그인된 그대로 Amp 자체의 CLI를 실행해 스레드, 든 비용, 남은 크레딧을 읽어요. Gnista는 자기 것은 아무것도 함께 보내지 않아요.
- 그 밖엔 없어요. 분석도, 광고도, 계정도 없어요.
베타 보고서
베타를 테스트한다면, Gnista가 보고서를 만들어 줄 수 있어요. 최근 2주간의 Gnista 충돌 보고서, 최근 24시간의 Gnista 자체 로그(민감한 값은 빼고), 그리고 Gnista 버전, macOS 버전, Mac 모델, 표시 모드, 연결된 에이전트를 적은 짧은 메모예요. 이 보고서를 메일 앱에서 우리에게 가는 이메일 초안에 첨부해요. 먼저 확인하고 직접 보내지 않는 한 아무것도 보내지지 않아요.
라이선스 구입
구입은 우리의 판매 대행사(merchant of record)인 Creem을 거쳐요. 결제를 받고, 세금을 처리하고, 키를 보내 주죠. Creem이 무엇을 수집하는지는 Creem의 개인정보 처리방침 (새 탭에서 열림)에 있어요. 우리는 Creem이 판매자에게 보여 주는 주문 정보, 예를 들어 이메일 주소와 구입한 상품을 보고, 라이선스를 도와드리는 데만 써요.
이 웹사이트
gnista.sh는 정적 페이지예요. 쿠키도 광고도 없어요. 방문 수와 다운로드, 구입 버튼 클릭 수는 Pirsch (새 탭에서 열림)로 세요. 쿠키를 쓰지 않고 독일에서 호스팅되는 분석 서비스예요. Pirsch는 IP 주소를 저장하지 않아요. IP 주소, 브라우저, 날짜로 만든 해시로 방문을 구분하기 때문에, 다음 날이나 다른 사이트에서는 같은 방문자를 알아보지 못해요. Pirsch가 보는 건 연 페이지, 어느 페이지에서 왔는지, 브라우저, 운영체제, 언어, 화면 크기, 대략적인 위치예요. 자세한 건 Pirsch의 개인정보 처리방침 (새 탭에서 열림)에 있어요.
폰트와 아이콘은 gnista.sh에서 직접 나와요. 다른 곳에서 불러오는 건 Pirsch의 스크립트뿐이에요. 언어를 바꾸면, 브라우저가 페이지에서 보던 위치를 기기 자체 저장소에 그 탭에서만 기억해요. 호스팅은 statichost.eu가 맡고 있고, 여느 웹 호스트처럼 페이지를 전달하려고 IP 주소를 받아요.
문의
Gnista는 Blixt & Dunder (새 탭에서 열림)가 만들어요. 우리가 가진 본인 정보를 묻거나, 고치거나 지워 달라고 하려면 support@gnista.sh로 메일을 보내세요. 결제 정보는 Creem에 물어보세요.
이 중 무엇이든 바뀌면, 이 페이지가 날짜와 함께 먼저 바뀌어요.