Skip to content

openwong2kim/ai-tab

Repository files navigation

AI Tab

Electron 기반 멀티 AI 브라우저. 본인 계정으로 ChatGPT/Claude/Perplexity 등을 한 화면에 분할 표시하고, 터미널 탭에서 Claude Code/Cursor 같은 AI CLI를 띄우는 사용자 본인용 도구.

의도와 한계 (사용 전 필독)

이 앱은 본인 계정 세션 컨테이너입니다. 자동 입력·스크래핑·자동 폴링·동시 자동 송신 같은 자동화 기능은 일절 포함하지 않으며 추가하지도 않습니다.

  • 사이트별 로그인은 사용자가 직접 키보드로 진행합니다.
  • 한 화면에 여러 AI를 띄우지만, 각 webview는 독립된 세션이며 서로 데이터를 주고받지 않습니다.
  • 외부 배포 보류. 사내 사용자 도구로만 운영합니다.

임베드 vs 외부 위임

사이트 처리 방식 이유
ChatGPT webview 임베드 자체 이메일/비번 인증이 embedded webview에서 동작
Claude webview 임베드 자체 매직링크 인증이 embedded webview에서 동작
Perplexity webview 임베드 자체 인증
Gemini 외부 시스템 브라우저로 위임 Google OAuth가 RFC 8252상 embedded webview를 차단

Gemini는 사이드바 "+" 메뉴의 "외부 서비스" 섹션 버튼으로 시스템 기본 브라우저(또는 Chrome.app)에서 열립니다.

사내망 (자체서명 인증서) 모드

기본 빌드는 SSL 인증서 검증이 정상 동작합니다. 사내 자체서명 사이트(예: GitLab 172.21.6.10)에 접속해야 하는 경우 사이드바 "+" 메뉴 하단의 "사내망 모드 (SSL 검증 끄기)" 체크박스를 켜고 앱을 재시작하세요.

  • ON 상태일 때 메인 창 상단에 빨간 INSECURE 배지가 표시되어 모드를 명시합니다.
  • 망 외 환경에서는 반드시 OFF로 두세요. 켜둔 채 외부망 사용 시 MITM(중간자 공격)에 노출될 수 있습니다.

터미널 (PTY)

사이드바 "+" → "PowerShell" 항목으로 터미널 탭을 추가할 수 있습니다. 초기 명령어를 지정해 claude(Claude Code), cursor, npx ... 같은 AI CLI를 즉시 띄울 수 있습니다.

PTY는 보안상 메인 윈도우 frame에서만 IPC 호출이 허용되며, webview frame에서의 호출은 자동 거부됩니다.

개발

npm install      # 의존성 설치
npm run dev      # Vite + Electron 동시 실행
npm test         # 단위 테스트 (vitest)
npm run build    # 프로덕션 빌드
npm run package  # electron-builder로 데스크톱 앱 패키징

검증 절차 (수동 E2E 체크리스트)

PR 또는 빌드 후 다음을 직접 확인하세요. 자동 E2E는 도입하지 않음(over-engineering).

  1. 빌드/테스트: npm run build, npm test 통과
  2. SSL 게이트 OFF: 자체서명 사이트 접속 시 인증서 차단 확인
  3. SSL 게이트 ON 후 재시작: 사내망 사이트 접속 + 빨간 INSECURE 배지 표시
  4. 외부 위임: 사이드바 외부 서비스 Gemini 버튼 → 시스템 브라우저에서 열림 (앱 내부에 새 탭 추가 안 됨)
  5. DevTools Console: electronAPI.openExternal('javascript:alert(1)') 입력 → false 반환 + warn 출력
  6. 잔존 webview: ChatGPT/Claude/Perplexity 각각 로그인 → 정상 응답. navigator.userAgent에 "Electron" 문자열 없음
  7. 마이그레이션: electron-store에 gemini.google.com URL 탭 수동 주입 후 재실행 → 다이얼로그 표시 → 예/아니오 모두 1회 이후 재차 묻지 않음
  8. PTY: 메인 윈도우 → terminal 탭에서 claude CLI 실행 시 ANTHROPIC_API_KEY/OAuth 인증 정상 동작

라이선스

Internal use only.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages