Sprint 9 종료: 데스크톱 MVP
요약
Meronq의 Sprint 9 결과물로 Tauri 2를 활용한 첫 번째 데스크톱 셸(Desktop Shell) MVP가 공개되었습니다. 기존 패키지를 활용해 프로젝트 연결, 메모리 상태 확인, MCP 서버 관리가 가능한 네이티브 윈도우 환경을 구축했습니다.
핵심 포인트
- Tauri 2 기반의 네이티브 윈도우 및 프로젝트 폴더 선택기 구현
- 핸드셰이크 및 메모리 통계 UI를 통한 실시간 상태 모니터링
- MCP 서버의 라이프사이클(시작/중지) 관리 기능 제공
- 웹 개발 모드와 Tauri 네이티브 모드 간의 유연한 개발 환경 지원
Sprint 9가 종료되었습니다.
목표는 Meronq의 기존 패키지들을 활용하여 **첫 번째 데스크톱 셸 (Desktop Shell)**을 출시하는 것이었습니다. 이는 프로젝트를 연결하고, 핸드셰이크 (Handshake) 및 메모리 (Memory) 상태를 보여주며, 제품 MCP 서버를 관리하는 네이티브 윈도우 (Native Window)입니다. Sprint 8이 제품화 (Productization)를 탐색했다면, Sprint 9는 데스크톱 트랙을 실행 가능한 코드로 전환했습니다.
Sprint 9 결과물
- Tauri 2 스캐폴드 (Scaffold) (
apps/desktop내) — 웹 UI (Web UI)를 감싸는 네이티브 윈도우 (Native Window) - 프로젝트 폴더 선택기 (Project folder picker) → 연결된 프로젝트를 위한
MERONQ_PATH설정 - 핸드셰이크 및 메모리 통계 UI (Handshake and memory stats UI) — 비전 (Vision), 스프린트 (Sprint), ADRs 및 메모리 카운트
- MCP 서버 라이프사이클 (MCP server lifecycle) — 실시간 상태와 함께 시작/중지
데스크톱은 ADR-0008과 일치하게 기존 패키지들 (@meronq/server-core, @meronq/memory, @meronq/mcp-server)를 활용한 **셸 (Shell)**입니다.
아키텍처 (Architecture)
Web UI (Vite) → Node 사이드카 (Node sidecar) (HTTP :39281) → <project>/.meronq/
· handshake (server-core)
· memory stats
...
Tauri 2 (src-tauri/)는 네이티브 윈도우 (Native Window)와 폴더 선택기 (Folder picker)를 추가합니다. 동일한 UI가 브라우저에서도 실행되므로, Rust를 컴파일하지 않고도 빠른 반복 (Iteration)이 가능합니다.
실행하는 두 가지 방법
- 웹 개발 (Web dev) (브라우저, Rust 미사용):
pnpm --filter @meronq/desktop dev - Tauri 네이티브 (Tauri native) (Rust):
pnpm --filter @meronq/desktop tauri:dev
웹 개발 (Web dev) 모드는 http://localhost:1420에서 사이드카 (Sidecar)와 Vite UI를 부팅하며, 첫 실행 시 server-core / mcp-server 의존성 (Dependencies)을 자동으로 빌드합니다.
연결 → 검사 → 실행 (Connect → inspect → run)
- 빈 폴더 →
Initialize(README,package.json,.meronq/local생성) - 기존 리포지토리 (Existing repo) →
Connect(핸드셰이크 + 메모리 통계) - MCP 시작 → 연결된 프로젝트로
MERONQ_PATH가 설정된meronq-mcp를 생성
Sprint 10 — 데스크톱 다듬기 및 클라우드 스파이크 (Cloud spike)
네이티브 빌드 검증 (Windows/macOS), 사이드카 (Sidecar) 자동 시작, 메모리 검색 UI, 그리고 클라우드 워크스페이스 API 스파이크 (Cloud workspace API spike).
함께하기
함께하기
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기