Communitygithub.com

ai4s-research/open-science

Tauri 앱이나 라이브 모델을 실행하지 않고 데스크톱 프론트엔드 변경 사항을 시각적으로 확인합니다.

open-science란 무엇인가요?

이 스킬은 OpenCode 세션이나 라이브 모델을 필요로 하는 전체 앱 실행 없이, 데스크톱 프론트엔드 컴포넌트 변경 사항을 빠르게 시각적으로 검증할 수 있는 방법을 제공합니다. 개발자는 임시 Vite 페이지를 생성하여 특정 React 컴포넌트를 마운트하고, 브라우저 제어 스킬을 통해 자동화된 스크린샷을 촬영하여 변경 사항을 확인할 수 있습니다. 주로 Claude Code 환경에서 사용되며, Vite의 내장 HTML 서빙 기능을 활용하여 간단한 설정만으로 컴포넌트를 렌더링합니다. 이를 통해 개발 주기를 단축하고, Tauri 앱 전체를 빌드하거나 실행하지 않고도 UI 변경을 검증할 수 있어 생산성을 크게 향상시킵니다.

지원 대상~Claude Code~Codex CLI~Cursor✓OpenCode
npx skills add https://github.com/ai4s-research/open-science/tree/HEAD/apps/desktop/.claude/skills/verify

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

데스크톱 프론트엔드 변경 사항 확인하기

전체 앱을 실행하려면 OpenCode 세션과 라이브 모델 회전이 필요합니다. 순수 프론트엔드 컴포넌트 변경의 경우, 대신 임시 Vite 페이지에 컴포넌트를 마운트하세요:

  1. apps/desktop/verify-<x>.html (일반 html, <div id="root">, <script type="module" src="/src/verify-<x>.tsx">)과 apps/desktop/src/verify-<x>.tsx (ReactDOM.createRoot, Tailwind를 위해 ./index.css 임포트, @/로 컴포넌트 임포트)를 생성합니다. Vite는 apps/desktop/ 아래의 모든 .html 파일을 자동으로 제공합니다.
  2. cd apps/desktop && npx vite --port 5199 --strictPort (백그라운드). npx 래퍼가 이중으로 실행되어 "포트 사용 중" 오류를 보고할 수 있으며, 이때 첫 번째 인스턴스는 정상적입니다. 재시도 전에 lsof -iTCP:5199로 확인하세요.
  3. 브라우저 제어 스킬(Chrome HTTP API, 포트 9528)을 사용하여 구동: createWindow → waitForSelector → readDom → screenshotTab (스크린샷은 ~/Downloads/에 저장됩니다). 주의사항: evalScript는 확장 프로그램의 CSP에 의해 차단되므로 readDom/scrollTab을 사용하세요. readDom은 명시적인 "attributes": []가 필요하며, 그렇지 않으면 "Value is unserializable" 오류가 발생합니다.
  4. 정리: closeTab, vite 프로세스 종료, 두 harness 파일 삭제, git status가 깨끗한지 확인합니다.

관련 스킬