일상 언어로 GitHub 저장소를 검색하고, AI로 코드에 대해 질문하고, 마음에 드는 저장소를 모아두는 개인용 데스크톱 앱입니다.
- 이 프로그램은 무엇인가요
- 사전 준비물 / 필요 프로그램
- 다운로드 방법
- 설치 방법
- 빠른 시작
- 실행 방법
- 사용 방법
- 명령어 모음
- 업데이트 내용 요약
- 파일/문서 위치
- 워크플로우
- 아키텍처
- 보안 및 데이터 흐름
- 문제 해결
- FAQ
- 라이선스 / 저작권 / 상업적 용도
GitHub AI Explorer는 GitHub에 있는 오픈소스 프로젝트를 "React 드래그앤드롭 라이브러리" 같은 일상 언어로 찾아주는 개인용 데스크톱 프로그램입니다. 인터넷 브라우저가 아니라 컴퓨터에 설치해서 쓰는 독립 실행형 프로그램(Windows/Mac/Linux)입니다.
- AI 없이도 핵심 기능 전부 사용 가능: 저장소 검색, 코드 검색, 이슈 검색, 북마크, 트렌딩 확인은 AI 설정 없이 바로 됩니다.
- AI는 선택 사항: 검색 결과 요약과 "이 코드가 뭐 하는 거야?" 같은 질문(코드 Q&A) 기능만 AI를 씁니다. 원하는 AI 서비스(OpenAI, Anthropic, Google Gemini, Groq)나 내 컴퓨터에 설치한 로컬 AI(Ollama, LM Studio)를 골라 쓸 수 있습니다.
- 개인 정보는 내 컴퓨터에만: 검색 기록, 저장한 컬렉션, API 키 전부 내 컴퓨터 안에만 저장됩니다. 회원가입도, 별도 서버 전송도 없습니다.
| 항목 | 필요 여부 | 설명 |
|---|---|---|
| Windows 10/11, macOS, Linux | 필수 | 셋 중 하나의 컴퓨터 |
| 인터넷 연결 | 필수 | GitHub 검색·AI 호출 시 필요 (완전 오프라인 사용은 캐시된 데이터만 검색 가능) |
| GitHub 계정 | 선택 | 없어도 씀. 계정에서 발급한 토큰을 넣으면 검색 한도가 늘어남 |
| AI 서비스 계정/API 키 | 선택 | AI 요약·코드 Q&A를 쓸 때만 필요 |
| 항목 | 확인된 버전(이 프로젝트 개발 환경 기준) | 확인 방법 |
|---|---|---|
| Node.js | v22.19.0에서 개발/검증됨 (LTS 계열 권장) | node --version |
| Rust | 1.94.1에서 개발/검증됨 (rust-version = "1.77.2" 이상 필요, src-tauri/Cargo.toml 명시) |
rustc --version |
| Tauri CLI 사전 요구사항 | Windows는 Visual Studio C++ 빌드 도구, macOS는 Xcode Command Line Tools, Linux는 webkit2gtk 등 | 공식 문서 참고 (플랫폼마다 다름 — 본 프로젝트가 직접 명시하지 않으므로 Tauri 공식 문서를 따르는 것이 정확함) |
| npm (Node.js에 포함) | Node.js 설치 시 자동 포함 | npm --version |
확인된 사실만 표기: 이 프로젝트의
package.json에는 Node 버전을 강제하는engines필드가 없습니다. 위 표의 버전은 "반드시 이 버전이어야 함"이 아니라 "실제 개발 환경에서 검증된 버전"입니다.
- 저장소 페이지 접속: https://github.com/sodam-ai/GitHub-Explorer
- 오른쪽의 Releases(릴리스) 메뉴 클릭
- 최신 버전에서 내 운영체제에 맞는 파일 다운로드
- Windows:
.msi또는.exe - macOS:
.dmg - Linux:
.AppImage또는.deb
- Windows:
⚠️ 확인 필요 항목: 이 문서를 작성하는 시점 기준으로 이 저장소에 실제로 릴리스 파일이 게시되어 있는지는 GitHub Releases 페이지에서 직접 확인해야 합니다. 게시된 설치 파일이 없다면 아래 "방법 B"로 소스 코드를 직접 빌드해야 합니다.
git clone https://github.com/sodam-ai/GitHub-Explorer.git
cd GitHub-Explorer- 다운로드한 설치 파일을 더블클릭
- 화면 안내에 따라 "다음"을 눌러 진행
- Windows에서 "Windows에서 PC를 보호했습니다" 같은 경고가 뜨면 추가 정보 → 실행을 눌러 진행 (서명되지 않은 개인 배포 앱에서 흔히 뜨는 표준 경고입니다)
- 설치 완료 후 시작 메뉴/응용 프로그램 목록에서 "GitHub AI Explorer" 실행
# 1) 프로젝트 폴더로 이동 (3번 항목에서 이미 clone 했다면 생략)
cd GitHub-Explorer
# 2) 프론트엔드 의존성 설치
npm install
# 3) 데스크톱 앱으로 빌드 (완성된 설치 파일이 src-tauri/target/release/bundle/ 에 생성됨)
npm run tauri:build빌드에는 컴퓨터 사양에 따라 수 분이 걸릴 수 있습니다(Rust 코드를 처음부터 컴파일하기 때문).
- 프로그램 실행
- 처음 실행하면 뜨는 안내 화면에서 "다음"을 눌러 예시를 확인하거나 "건너뛰기"로 바로 시작
- 화면 가운데 검색창에 원하는 걸 자연어로 입력 (예: "React 드래그앤드롭 라이브러리")
- Enter 또는 검색 버튼 클릭
- 결과 목록에서 저장소를 클릭하면 상세 정보 확인, 우측 상단 북마크 아이콘으로 저장 가능
AI 기능까지 쓰고 싶다면: 우측 상단 톱니바퀴(설정) 클릭 → "AI 제공자"에서 원하는 서비스의 API 키 입력 → 저장 → 아래 드롭다운에서 사용할 제공자 선택.
| 상황 | 방법 |
|---|---|
| 설치 파일로 설치한 경우 | 시작 메뉴(Windows) / 런치패드(macOS) / 앱 목록(Linux)에서 "GitHub AI Explorer" 클릭 |
| 소스 코드로 개발 중 확인만 하고 싶은 경우 | 아래 "웹 개발 모드" 참고 |
| 소스 코드로 데스크톱 앱 형태로 실행 | npm run tauri:dev (Rust까지 포함해 실제 데스크톱 창으로 뜸, 최초 실행 시 컴파일로 수 분 소요) |
npm run dev브라우저에서 http://127.0.0.1:7719 접속. 주의: 이 모드는 화면 UI만 빠르게 확인하는 용도입니다. API 키 저장(OS 키체인), 컬렉션 저장(SQLite) 등 데스크톱 전용 기능은 브라우저 모드에서 동작하지 않습니다(안전하게 무시되도록 설계되어 있어 오류는 나지 않지만, 실제로 저장되지는 않습니다).
- 검색창에 자연어(또는 키워드)로 검색 → 저장소 / 코드 / 이슈 3개 탭으로 결과 확인
- "필터 설정"에서 언어, 라이선스, 최소 스타 수, 최근 업데이트 여부 등으로 좁히기
- 인터넷이 없으면 자동으로 "오프라인 모드"로 전환되어 이전에 검색했던 결과 중에서만 찾아줍니다
검색 결과의 저장소를 클릭하면 미리보기 창이 뜹니다. README 기반 핵심 요약(AI 없이 자동 생성), 스타/포크/이슈 수, 최근 릴리스 등을 확인할 수 있습니다.
- 저장소 카드의 북마크 아이콘 클릭 → 새 컬렉션을 만들거나 기존 컬렉션에 추가, 메모 작성 가능
- 상단 "컬렉션" 메뉴에서 모아둔 저장소를 폴더별로 확인
- 메모에 URL을 입력하면 자동으로 클릭 가능한 링크로 바뀝니다
- 설정(⚙️) → "AI 제공자" 섹션에서 사용할 서비스의 API 키 입력 후 저장
- 같은 섹션의 "검색 요약·코드 Q&A에 사용할 제공자" 드롭다운에서 실제로 쓸 서비스 선택 (키를 넣는 것과 별개로, 여기서 선택해야 실제로 사용됩니다)
- 로컬 AI(Ollama, LM Studio)를 쓰려면 키 없이 이 드롭다운에서 선택만 하면 됩니다 (내 컴퓨터에서 해당 프로그램이 실행 중이어야 함)
- 저장소 상세 화면의 "코드에 대해 질문하기"에서 자유롭게 질문
지원 AI: OpenAI, Anthropic(Claude), Google Gemini, Groq(이상 API 키 필요) / Ollama, LM Studio(로컬 실행, 키 불필요)
상단 "트렌딩" 메뉴에서 오늘/이번 주/이번 달 인기 저장소 확인. 별 증가량은 이 프로그램을 실제로 사용하면서 매일 자동으로 기록된 값을 바탕으로 계산되므로, 처음 사용을 시작한 날에는 비교할 과거 기록이 없어 "집계 중"으로 표시됩니다. 이는 오류가 아니라 정상 동작이며, 데이터가 하루 이상 쌓이면 실제 증가량이 표시됩니다.
- 설정 → 데이터 → "컬렉션 내보내기": 모아둔 컬렉션 전체를 JSON 파일로 저장(백업, 다른 컴퓨터로 이전 등에 사용)
- 설정 → 데이터 → "가져오기": 내보냈던 JSON 파일을 선택하면 컬렉션이 복원됩니다. 항상 새 컬렉션으로 추가되며, 기존 컬렉션을 덮어쓰지 않습니다. 같은 파일을 두 번 가져오면 컬렉션이 중복 생성됩니다.
- 설정에서 다크/라이트 모드, 강조 색상(6종) 변경 가능
- Windows/macOS의 "동작 줄이기(모션 감소)" 설정을 켜두면 앱 전체 애니메이션이 자동으로 줄어듭니다
| 단축키 | 동작 |
|---|---|
Cmd/Ctrl + K |
커맨드 팔레트 열기 (빠른 이동, 검색, 테마 전환 등) |
| 명령어 | 동작 |
|---|---|
npm run dev |
브라우저 기반 개발 서버 실행 (http://127.0.0.1:7719) |
npm run build |
타입체크(tsc -b) + 프론트엔드 프로덕션 빌드(vite build) |
npm run lint |
ESLint 코드 검사 (eslint .) |
npm run preview |
빌드 결과 미리보기 |
npm run tauri |
Tauri CLI 직접 실행 |
npm run tauri:dev |
데스크톱 앱 개발 모드 실행 (Rust 포함) |
npm run tauri:build |
데스크톱 앱 설치 파일 빌드 |
| 명령어 | 동작 |
|---|---|
cargo check |
컴파일 가능 여부만 빠르게 확인 |
cargo clippy |
Rust 정적 분석(코드 품질 검사) |
cargo build --release |
릴리스용 최적화 빌드 |
이 프로젝트에는 자동화된 유닛 테스트가 설정되어 있지 않습니다 (
package.json에test스크립트 없음, 테스트 프레임워크 미설치,*.test.ts/*.spec.ts파일 없음 — 실제 확인된 사실).npm test는 존재하지 않는 명령입니다.
보안 강화 — API 키를 OS 키체인으로 이관
- 이전에는 앱 설정 안에 평문으로 저장될 수 있었던 API 키/토큰을, Windows Credential Manager 등 운영체제가 제공하는 안전한 저장소로 이관했습니다.
- 기존에 이미 키를 입력해둔 사용자도 다음 실행 시 자동으로 이전됩니다.
- 검색 API 호출에 최소 요청 간격을 두어 과도한 연속 호출을 방지했습니다.
멀티 프로바이더 AI 지원
- 검색 요약과 코드 Q&A 기능이 OpenAI 한 곳에만 묶여있던 것을, Anthropic(Claude), Google Gemini, Groq, 로컬 Ollama, 로컬 LM Studio까지 총 6개 제공자 중 선택할 수 있도록 확장했습니다.
- 설정에서 제공자를 선택하지 않으면 기존과 동일하게 OpenAI를 기본으로 사용하므로, 기존 사용자의 동작은 그대로 유지됩니다.
- 기본 모델명이 맞지 않을 경우를 대비해 모델명을 직접 입력할 수 있는 칸을 추가했습니다.
트렌딩 데이터 진위성 개선
- 기존에는 임의의 난수로 "오늘 증가한 스타 수"를 표시했으나, 이를 제거하고 실제 사용 기록을 하루 단위로 저장해 비교하는 방식으로 바꿨습니다.
- 비교할 과거 기록이 없는 경우 거짓 숫자 대신 "집계 중"으로 정직하게 표시합니다.
저장소 핵심 요약 (AI 불필요)
- README 파일을 분석해 헤더/배지/이미지/표 등을 제거하고 핵심 설명 문단만 추출해 보여주는 기능을 추가했습니다. AI 호출 없이 규칙 기반으로 동작합니다.
URL 자동 하이퍼링크
- 컬렉션 메모나 코드 Q&A 대화 내용에 URL을 입력하면 자동으로 클릭 가능한 링크로 표시됩니다.
컬렉션 가져오기 기능 연결
- 내보내기 기능은 있었지만 가져오기 버튼이 동작하지 않던 것을 실제로 연결했습니다. 손상된 백업 파일이나 형식이 다른 파일을 선택해도 명확한 오류 안내가 뜨도록 처리했습니다.
접근성(Accessibility) 개선
- 운영체제의 "동작 줄이기" 설정을 앱 전체 애니메이션에 자동 반영
- 아이콘만 있고 설명이 없던 버튼들에 스크린리더용 이름표(aria-label) 추가
- AI가 답변을 생성하는 동안 스크린리더가 상태를 안내하도록 개선
- 설정 화면의 입력창들이 화면에는 이름표가 보이지만 실제로는 연결되지 않아 스크린리더가 읽지 못하던 문제 수정
안정성 개선 — 무한 대기 방지 및 오류 안내
- 로컬 AI(Ollama 등) 서버가 응답하지 않을 때 화면이 무한정 로딩 상태로 멈출 수 있었던 문제를 해결(60초 제한 시간 추가)
- 내보내기/가져오기 실패 시 아무 반응 없이 조용히 실패하던 것을, 사용자에게 명확한 오류 메시지가 뜨도록 개선
| 종류 | 위치 |
|---|---|
| 이 문서(한국어 README) | README.md (프로젝트 최상위) |
| 영문 README | README.en.md |
| 이 문서들의 HTML 버전 | README.html, README.en.html |
| 다음 작업 계획/체크포인트 | CHECKPOINT.md |
| 기획 문서(PRD) | .PRD/ 폴더 (01_PRD.md, 02_DATA_MODEL.md, 03_PHASES.md, 04_PROJECT_SPEC.md, 05_WIREFRAMES.md) — |
| 프론트엔드 소스 코드 | src/ |
| Rust 백엔드 소스 코드 | src-tauri/src/ |
| 앱 아이콘 | src-tauri/icons/ |
| Tauri 설정 | src-tauri/tauri.conf.json |
| 프론트엔드 의존성 정의 | package.json |
| Rust 의존성 정의 | src-tauri/Cargo.toml |
사용자가 검색어 입력
│
▼
인터넷 연결 확인
├─ 연결됨 → GitHub API로 저장소/코드/이슈 동시 검색 → 결과 캐시에 저장
│ │
│ ▼
│ AI 제공자가 설정되어 있으면 → 검색 결과 요약 생성 (없으면 안내 문구만 표시)
│
└─ 끊김 → 이전에 캐시된 결과 중에서만 검색 (오프라인 모드 안내 표시)
사용자가 AI 요약/코드 질문 요청
│
▼
설정에서 선택된 제공자 확인
│
├─ OpenAI/Anthropic/Gemini/Groq → 저장된 API 키를 OS 키체인에서 불러와 해당 서비스에 요청
├─ Ollama/LM Studio → 내 컴퓨터의 로컬 서버(예: localhost:11434)에 요청
│
▼
60초 안에 응답 없으면 자동 중단 + 오류 안내
성공하면 결과 표시
사용자 행동(검색 기록/북마크/설정 변경 등)
│
▼
데스크톱 앱(Tauri) 안에서만 → Rust 백엔드 명령 호출 → 컴퓨터 내 SQLite 파일에 저장
※ 브라우저 개발 모드에서는 이 저장 단계가 동작하지 않음(안전하게 무시됨)
| 영역 | 기술 |
|---|---|
| 데스크톱 앱 프레임워크 | Tauri 2.10.3 |
| 프론트엔드 | React 19.2.4 + TypeScript 5.9.3 |
| 스타일링 | Tailwind CSS 4.2.2 |
| 상태 관리 | Zustand 5.0.12 |
| 애니메이션 | Framer Motion 12.38.0 |
| 빌드 도구 | Vite 8 |
| 백엔드(로컬) | Rust + rusqlite 0.32 (SQLite, 앱에 내장되어 별도 설치 불필요) |
| 안전한 키 저장 | Rust keyring 크레이트 (Windows Credential Manager / macOS Keychain / Linux Secret Service) |
GitHub-Explorer/
├── src/ # 프론트엔드 (React)
│ ├── components/ # 화면별 컴포넌트
│ ├── lib/ # API 호출, AI 어댑터, 유틸리티
│ ├── stores/ # Zustand 전역 상태
│ └── App.tsx / main.tsx # 진입점
├── src-tauri/ # 백엔드 (Rust)
│ ├── src/
│ │ ├── commands.rs # 프론트엔드가 호출하는 명령 20개
│ │ ├── db/mod.rs # SQLite 스키마 및 초기화
│ │ └── lib.rs # 앱 진입점, 트레이 아이콘, 명령 등록
│ └── tauri.conf.json # 앱 설정(이름/버전/창 크기 등)
└── .PRD/ # 기획 문서
- GitHub API·AI API는 프론트엔드가 직접 호출합니다. 초기 기획 문서(
.PRD/04_PROJECT_SPEC.md)에는 "프론트엔드에서 외부 API 직접 호출 금지, 반드시 Rust 명령을 거칠 것"이라는 원칙이 있었으나, 실제 구현은 이를 따르지 않고 프론트엔드에서 직접fetch합니다. API 키 자체는 Rust 명령을 통해 OS 키체인에 안전하게 저장되므로 키가 코드에 노출되지는 않지만, 이 설계 차이는 사실 그대로 밝힙니다. - GitHub 인증은 개인 접근 토큰(PAT) 방식입니다. 초기 기획의 OAuth App 방식이 아니라, 사용자가 GitHub 웹사이트에서 직접 발급한 토큰을 붙여넣는 방식으로 구현되어 있습니다.
- 자동 업데이트 기능은 설정만 되어 있고 미완성 상태입니다.
tauri.conf.json에 업데이트 서버 주소는 있지만, 업데이트 파일 서명에 필요한 공개키(pubkey)가 비어 있어 실제로는 작동하지 않을 가능성이 높습니다.
| 데이터 | 저장 위치 | 평문 저장 여부 |
|---|---|---|
| GitHub 토큰, OpenAI/Anthropic/Gemini/Groq API 키 | OS 키체인(Windows Credential Manager 등) | 아니오 — OS가 암호화 관리 |
| 검색 기록, 컬렉션, 대화 내역, 테마 설정 | 내 컴퓨터의 SQLite 파일 / 브라우저 localStorage(테마 등 비민감 설정만) | 해당 데이터는 민감정보가 아니므로 평문이나, 컴퓨터 밖으로 전송되지 않음 |
| 목적지 | 전송되는 내용 | 시점 |
|---|---|---|
GitHub API (api.github.com) |
검색어, (설정 시) GitHub 토큰 | 검색·저장소 상세 조회 시 |
| 선택한 AI 제공자(OpenAI/Anthropic/Gemini/Groq 서버, 또는 내 컴퓨터의 Ollama/LM Studio) | 검색 결과 요약 대상 저장소 정보, 코드 질문 내용, (클라우드 제공자의 경우) API 키 | AI 요약/코드 Q&A 사용 시에만 |
이 프로그램 자체를 위한 별도 서버는 없습니다. 즉, 사용자의 검색어나 대화 내용을 이 프로그램의 개발자가 수집하는 경로는 존재하지 않습니다(단, 사용자가 선택한 AI 제공자·GitHub의 자체 개인정보처리방침은 각 서비스 정책을 따릅니다).
- 데스크톱 앱의 콘텐츠 보안 정책(CSP)이 비활성화(
null)되어 있어, 다양한 외부 API 호출은 자유롭지만 웹 표준의 CSP 방어선은 적용되지 않습니다. - 자동 유닛 테스트가 없어 보안 관련 회귀는 수동 검증에 의존합니다.
| 증상 | 원인 | 대처 방법 |
|---|---|---|
| "Windows에서 PC를 보호했습니다" 경고가 뜸 | 서명되지 않은 배포 파일이라 Windows Defender SmartScreen이 기본 경고를 표시 | "추가 정보" → "실행" 클릭 |
| AI 요약이 "AI 요약을 사용하려면 설정에서 API 키를 입력하세요"로만 나옴 | API 키 미입력 또는 제공자 미선택 | 설정 → AI 제공자에서 키 입력 저장 + 드롭다운에서 실제 사용할 제공자 선택 (키만 넣고 선택을 안 하면 적용되지 않음) |
| Ollama/LM Studio를 선택했는데 응답이 안 옴 | 로컬 AI 프로그램이 실행 중이 아님 | 해당 프로그램을 먼저 실행하고 서버가 켜진 상태인지 확인(기본 주소 Ollama: localhost:11434, LM Studio: localhost:1234) |
| 트렌딩 화면에 숫자 대신 "집계 중"만 보임 | 비교할 과거 데이터가 아직 없음(오류 아님) | 하루 이상 사용 후 다시 확인 |
| 검색이 너무 적게 됨 / 자주 한도 초과 메시지 | GitHub API 요청 한도(토큰 미입력 시 시간당 60회) | 설정에서 GitHub 개인 접근 토큰 입력(시간당 5,000회로 증가) |
| 가져오기 시 "올바르지 않은 백업 파일입니다" | 파일이 이 앱에서 내보낸 형식이 아니거나 손상됨 | 이 앱의 "컬렉션 내보내기"로 만든 .json 파일인지 확인 |
| 빌드 중 Rust 오류 | Rust 도구 체인 문제 또는 캐시 손상 | cd src-tauri && cargo clean 후 재시도 |
npm run tauri:dev 실행이 아주 느림 |
최초 실행 시 Rust 전체 컴파일 | 정상 현상, 수 분 대기(두 번째 실행부터는 빨라짐) |
Q. 이 프로그램은 무료인가요? A. 프로그램 자체 사용에 요금은 없습니다. 다만 클라우드 AI 제공자(OpenAI 등)의 API 키를 사용하면 해당 서비스의 별도 요금 정책이 적용됩니다. 로컬 AI(Ollama, LM Studio)는 요금이 발생하지 않습니다.
Q. 인터넷 없이도 쓸 수 있나요? A. 이전에 검색해서 캐시에 저장된 결과 안에서는 오프라인 검색이 가능합니다. 새로운 검색이나 AI 기능은 인터넷이 필요합니다.
Q. 제 검색 기록이나 API 키가 어딘가로 전송되나요? A. 이 프로그램을 만든 곳으로 전송되는 경로는 없습니다. GitHub 검색은 GitHub 서버로, AI 기능은 사용자가 직접 선택한 AI 제공자 서버로만 전송됩니다(13장 참고).
Q. GitHub 계정이 꼭 있어야 하나요? A. 아니요. 계정 없이도 검색·북마크·트렌딩을 쓸 수 있습니다. 계정에서 발급한 토큰을 넣으면 검색 한도만 늘어납니다.
Q. 여러 AI 서비스를 동시에 쓸 수 있나요? A. 키는 여러 개를 동시에 저장해둘 수 있지만, 실제로 검색 요약/코드 Q&A에 쓰이는 것은 설정에서 선택한 제공자 1개입니다.
Q. 모바일(스마트폰/태블릿)에서도 쓸 수 있나요? A. 아니요. 이 프로그램은 Windows/macOS/Linux용 데스크톱 프로그램입니다. 모바일 버전은 없습니다(확인된 사실).
Q. 자동 업데이트가 되나요? A. 현재는 설정만 있고 실제로 작동하지 않을 가능성이 높은 미완성 상태입니다(12-3 참고). 최신 버전은 GitHub Releases 페이지에서 직접 확인하시는 것을 권장합니다.
Q. 이 프로그램을 상업적으로 써도 되나요? A. 16장(라이선스)을 반드시 먼저 확인하세요.
⚠️ 면책 고지: 이 항목은 법률 자문이 아니며 법적 효력을 보장하지 않습니다. 실제 사업적/법적 판단이 필요한 경우 반드시 변호사 등 전문가와 상담하시기 바랍니다. 아래 내용은 확인된 사실을 기반으로 한 안내입니다.
이 저장소에는 현재 별도의 LICENSE 파일이 존재하지 않습니다. (이 문서 작성 시점에 프로젝트 최상위 폴더를 직접 확인한 결과이며, 추측이 아닙니다.)
라이선스가 명시되지 않은 소프트웨어는, 저장소가 공개(public)되어 있어 코드를 볼 수 있다는 것과 그 코드를 사용/복사/수정/배포/상업적으로 이용해도 된다는 것은 전혀 별개입니다. 국제적으로 통용되는 저작권법의 기본 원칙상, 명시적인 라이선스가 없으면 원저작자가 모든 권리를 보유("All rights reserved")한 것으로 취급되는 것이 원칙이며, 제3자의 사용·복제·수정·배포·상업적 이용은 원저작자의 별도 허락 없이는 제한될 수 있습니다.
- 이 프로젝트를 개인적으로 참고하거나 학습 목적으로 코드를 읽는 것과, 실제로 코드를 가져다 쓰거나 재배포·상업적으로 이용하는 것은 다른 문제입니다.
- 상업적 이용, 재배포, 파생 저작물 제작을 고려하신다면 저장소 소유자(sodam-ai)에게 직접 문의하여 명시적인 허락 또는 향후 추가될 수 있는 LICENSE 파일의 내용을 확인하시기 바랍니다.
- 이 프로젝트는 다음과 같은 서드파티 오픈소스 라이브러리를 사용합니다(React, Tauri, Rust
keyring크레이트 등 다수,package.json/src-tauri/Cargo.toml에 전체 목록 명시). 각 라이브러리는 이 프로젝트와 별개로 자체 라이선스를 가지고 있으며, 그 라이선스 조건은 각 라이브러리 저장소에서 확인해야 합니다.
"GitHub"는 GitHub, Inc.의 상표입니다. 이 프로젝트는 GitHub의 공식 제품이 아니며, GitHub의 공개 API를 이용하는 독립적인 서드파티 도구입니다.
이 문서는 2026-07-20 기준 실제 소스 코드와 설정 파일을 직접 확인하여 작성되었습니다. 프로젝트가 업데이트되면 이 문서와 실제 동작이 달라질 수 있습니다.