프로젝트 목록으로
2026년 3월 29일
3분 소요

Scrin

macOS 네이티브 회의록 앱. 온디바이스 STT & LLM으로 실시간 녹음, 자동 전사, AI 요약까지 로컬에서 처리.

Overview

회의, 강의, 미디어 콘텐츠를 녹음하고 AI로 정리하는 macOS 네이티브 앱. Apple Silicon의 MLX 프레임워크를 활용해 모든 AI 처리를 로컬에서 수행한다. 클라우드 API 없이 프라이버시를 지키면서 STT와 요약을 제공한다.

Architecture

graph LR
    A[Scrin.app] -->|Unix Socket| B[scrin_server.py]
    B --> C[MLX STT<br/>Qwen3-ASR-1.7B]
    B --> D[MLX LLM<br/>Qwen2.5-3B]
    C -->|transcript| A
    D -->|summary| A

Tech Stack

CategoryTech
AppSwift 6 / SwiftUI
PlatformmacOS 15+
AI RuntimeMLX (Apple Silicon)
STT ModelQwen3-ASR-1.7B-8bit
LLM ModelQwen2.5-3B-Instruct-4bit
IPCUnix Domain Socket
EditorTiptap (WKWebView)
ServerPython (mlx-audio, mlx-lm)

Features

  • 실시간 녹음 — 오디오 활동 감지, 일시정지/재개, 플로팅 녹음 프롬프트
  • 온디바이스 STT — Qwen3-ASR 모델로 로컬 전사, 중국어 오인식 자동 보정
  • AI 요약 — 회의 / 강의 / 미디어 카테고리별 맞춤 요약 템플릿
  • 화자 분리 — 에너지 기반 스펙트럼 클러스터링으로 Speaker A/B 자동 분류
  • Ask AI — 회의 내용 기반 Q&A, 대화 히스토리 유지
  • 리치 에디터 — Tiptap 기반 마크다운 편집기, AI 노트 재작성
  • 템플릿 시스템 — 시스템 프롬프트 & 사용자 템플릿 커스터마이징
  • 폴더 관리 — 회의록 폴더별 정리

Server–App Communication

sequenceDiagram
    participant App as Scrin.app
    participant Srv as scrin_server.py
    participant STT as Qwen3-ASR
    participant LLM as Qwen2.5

    App->>Srv: transcribe (audio path)
    Srv->>STT: generate_transcription
    STT-->>Srv: segments + text
    Srv-->>App: transcript JSON

    App->>Srv: summarize (transcript)
    Srv->>LLM: generate (chat template)
    LLM-->>Srv: structured summary
    Srv-->>App: title + summary JSON

Project Structure

scrin/
├── Scrin/                  # Swift Package
│   ├── Sources/
│   │   ├── App.swift       # 앱 진입점
│   │   ├── Views/          # SwiftUI 뷰
│   │   ├── Models/         # 데이터 모델 & 스토어
│   │   ├── Audio/          # 오디오 캡처
│   │   ├── STT/            # 서버 통신 클라이언트
│   │   ├── Theme/          # UI 테마
│   │   └── Tiptap/         # 리치 에디터 번들
│   └── Package.swift
└── scrin_server.py         # MLX AI 서버 (STT + LLM)