# Ghost Pepper – macOS용 로컬 음성-텍스트 변환 앱

> Clean Markdown view of GeekNews topic #28287. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=28287](https://news.hada.io/topic?id=28287)
- GeekNews Markdown: [https://news.hada.io/topic/28287.md](https://news.hada.io/topic/28287.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2026-04-07T23:33:05+09:00
- Updated: 2026-04-07T23:33:05+09:00
- Original source: [github.com/matthartman](https://github.com/matthartman/ghost-pepper)
- Points: 4
- Comments: 1

## Topic Body

- macOS에서 **Control 키를 누르고 말하면 자동으로 텍스트로 변환 후 붙여넣기**하는 **로컬 음성 인식 앱**
- 모든 **음성 인식과 텍스트 정리 과정이 로컬에서만 수행**되어, **클라우드 전송 없이 개인정보 보호** 보장
- **WhisperKit**과 **LLM.swift** 기반으로, **Hugging Face 모델**을 자동 다운로드해 캐시 저장
- **스마트 정리 기능**으로 불필요한 말 제거 및 자기 수정 표현 보정, **메뉴 막대 앱 형태**로 백그라운드 실행
- **MIT 라이선스 오픈소스**로 공개되어 있으며, **Apple Silicon macOS 14 이상**에서 동작

---

### 개요
- **Ghost Pepper**는 macOS용 **완전 로컬 음성-텍스트 변환 앱**으로, **Control 키를 누르고 말한 뒤 놓으면 자동으로 텍스트로 변환 후 붙여넣기** 기능 제공
- **클라우드 API를 사용하지 않으며**, 모든 데이터와 모델이 **로컬에서만 처리**됨
- **Apple Silicon(M1 이상)** 기반 macOS 14.0 이상에서 동작
- **메뉴 막대 앱** 형태로 실행되며, 로그인 시 자동 실행 가능
- **MIT 라이선스**로 공개된 오픈소스 프로젝트

### 주요 기능
- **Control 키를 누르고 말하기** → 키를 놓으면 자동으로 **텍스트 변환 및 붙여넣기**
- **로컬 실행 구조**로, 음성 인식과 후처리 모델이 모두 Mac 내부에서 동작
- **스마트 정리 기능**으로 불필요한 말(uh, um 등)을 제거하고 **자기 수정 표현을 자동 보정**
- **메뉴 막대 전용 인터페이스**로 Dock 아이콘 없이 백그라운드에서 작동
- **사용자 설정 지원**: 정리 프롬프트 수정, 마이크 선택, 기능 on/off 전환 가능

### 작동 방식
- 모든 모델은 **오픈소스 기반**이며, 최초 실행 시 자동 다운로드 후 **로컬 캐시 저장**
- 음성 인식은 **WhisperKit**, 텍스트 정리는 **LLM.swift**를 통해 수행
- 모델 파일은 **Hugging Face**에서 제공
- ## 음성 인식 모델
  - **Whisper tiny.en (~75MB)**: 가장 빠른 영어 전용 모델
  - **Whisper small.en (~466MB)**: 기본값, 높은 정확도의 영어 전용 모델
  - **Whisper small (multilingual)**: 다국어 지원
  - **Parakeet v3 (~1.4GB)**: 25개 언어 지원, [FluidAudio](https://github.com/FluidInference/FluidAudio) 기반
- ## 텍스트 정리 모델
  - **Qwen 3.5 0.8B (~535MB)**: 기본값, 약 1~2초 내 처리
  - **Qwen 3.5 2B (~1.3GB)**: 빠른 처리 속도(약 4~5초)
  - **Qwen 3.5 4B (~2.8GB)**: 최고 품질(약 5~7초)

### 설치 및 실행
- ## 앱 설치
  1. [GhostPepper.dmg](https://github.com/matthartman/ghost-pepper/releases/latest/download/GhostPepper.dmg) 다운로드
  2. DMG 열기 후 **Applications 폴더로 드래그**
  3. **마이크 및 손쉬운 사용 권한** 허용
  4. **Control 키를 누르고 말하기**로 사용 시작
- ## 소스 빌드
  1. 저장소 클론
  2. `GhostPepper.xcodeproj`를 Xcode에서 열기
  3. **Cmd+R**로 빌드 및 실행

### 권한 요구
| 권한 | 목적 |
|---|---|
| **Microphone** | 음성 녹음 |
| **Accessibility** | 전역 단축키 및 자동 붙여넣기 수행 |

### 추가 정보
- **로그인 시 자동 실행**이 기본 활성화되어 있으며, 설정에서 비활성화 가능
- **디스크에 로그 저장 없음** — 변환된 텍스트는 파일로 기록되지 않으며, **디버그 로그는 메모리 내에서만 유지** 후 앱 종료 시 삭제

### 기술 구성 및 의존성
- **WhisperKit**: 음성 인식 엔진
- **LLM.swift**: 텍스트 정리용 로컬 LLM
- **Hugging Face**: 모델 호스팅
- **Sparkle**: macOS 앱 업데이트 관리

### 이름의 의미
- 모든 모델이 **로컬에서만 실행**되어 개인 데이터가 외부로 전송되지 않음
- **Ghost Pepper(매운 고추)** 라는 이름은 **무료로 제공되는 강력한 기능**을 상징

### 기업 및 관리형 기기 지원
- 앱은 **손쉬운 사용(Accessibility)** 권한이 필요하며, 일반적으로 **관리자 권한**이 요구됨
- **MDM 환경(Jamf, Kandji, Mosaic 등)** 에서는 **PPPC(Privacy Preferences Policy Control)** 프로파일을 통해 사전 승인 가능
  - **Bundle ID**: `com.github.matthartman.ghostpepper`
  - **Team ID**: `BBVMGXR9AY`
  - **Permission**: Accessibility (`com.apple.security.accessibility`)

## Comments



### Comment 54871

- Author: neo
- Created: 2026-04-07T23:33:05+09:00
- Points: 1

###### [Hacker News 의견들](https://news.ycombinator.com/item?id=47666024) 
- 이 앱 정말 멋짐. 하지만 볼 때마다 내 **Pixel 6**가 떠오름  
  2021년 모델인데, 오프라인에서도 음성을 텍스트로 변환하고 문맥에 따라 자동으로 수정함. 심지어 내가 계속 말하면 앞부분 문장까지 다시 고쳐줌.  
  Google이 Whisper나 Qwen보다 **5년이나 앞서** 이런 기술을 넣은 게 놀라움. 그런데 왜 지금은 더 강력한 플랫폼에서 1GB짜리 트랜스포머 모델이 필요한지 궁금함
  - 이건 **WebSpeech API**에서 쓰이는 동일한 모델임. 완전히 오프라인에서도 작동함  
    Google이 약 10년 전 이 모델 훈련을 지원했고, 지금도 꽤 훌륭함.  
    Webkit이나 Blink 기반 브라우저에 내장되어 있어서 여러 웹사이트가 단순 프론트엔드로 활용 중임.  
    하지만 모델 자체는 **비공개 blob** 형태라 Firefox에서는 지원되지 않음  
    [MDN 문서](https://developer.mozilla.org/en-US/docs/Web/API/Web_Speech_Recognition_API) / [Chrome 데모](https://www.google.com/intl/en/chrome/demos/speech.html)
  - Microsoft **OneNote**도 2007년쯤 비슷한 기능이 있었음.  
    당시 팀에 있었는데, 유지보수 인력이 없어서 오프라인 모델을 버리고 온라인 전용으로 전환했음.  
    기술적 이유보다는 단순히 **유지보수 인력 부족** 때문이었음
  - 정확도는 훨씬 낮음.  
    Android에서는 **Futo**, macOS에서는 **MacWhisper**를 쓰고 있음. 기본 Apple 모델보다 훨씬 나음
  - macOS와 iOS도 내장된 **받아쓰기 기능**으로 가능함. Mac에서는 Globe 키 + D
  - 내 Pixel 7은 오히려 인식률이 너무 낮아서 거의 못 씀.  
    대신 오픈소스 **Whisper**나 **Parakeet** 같은 로컬 STT 모델은 훨씬 강력함.  
    배경 소음이나 중얼거림에도 덜 흔들림.  
    나는 **Voice AI** 쪽에서 일하고 있어서 매일 이런 모델들을 쓰는데, 체감 차이가 정말 큼

- 앱 정말 잘 만들었음. 피드백을 주자면,  
  첫째, 자동으로 **클립보드에 붙여넣기** 기능이 꼭 필요함. 단축키를 누르지 않아도 되게 하거나 설정 가능하게 하면 좋겠음  
  둘째, 속도가 다른 솔루션보다 약간 느림. 이건 사용성에 큰 영향을 줌  
  셋째, 포맷 제어 기능이 있으면 좋겠음. 예를 들어 “new line”을 말했을 때 실제 줄바꿈으로 인식되면 좋겠음

- 이 스레드는 각자 **macOS용 음성→텍스트 앱**을 만든 사람들이 모인 지원 그룹 같음
  - 내가 만든 모든 앱을 [여기](https://opensource.builders/alternatives/superwhisper)에 정리해둠.  
    최근 **Ghost Pepper**도 추가했고, 필요한 기능을 담은 skill.md를 만들어 직접 앱을 빌드할 수도 있음
  - /r/macapps 서브레딧에서도 **whisper dictation** 앱이 너무 많음.  
    포화된 카테고리에서는 기존 앱과의 **차별점**을 명확히 설명해야 함  
    [관련 글](https://www.reddit.com/r/macapps/comments/1r6d06r/new_post_requirements_for_rmacapps/)
  - 나도 직접 하나 만들었는데, 나중에 **KeyVox**를 보고 제작자와 얘기하게 됨.  
    [KeyVox GitHub](https://github.com/macmixing/keyvox/)
  - 나는 **nixOS**에서 **Noctalia**에 인디케이터를 붙여서 구현했음.  
    성능이 **Wispr Flow**와 거의 비슷하고, 완전히 로컬에서 돌아감
  - 전형적인 Apple 스타일로, **macOS 27이나 28**쯤 되면 기본 기능으로 들어갈 거라 기대 중임

- Linux 사용자로서 [**Hyprwhspr**](https://github.com/goodroot/hyprwhspr)를 개발했음  
  최신 **Cohere Transcribe** 모델을 GPU로 돌리면 성능이 매우 좋음.  
  WhisperKit을 **faster-whisper**나 **turbov3**와 비교해봤는지 궁금함.  
  Apple이 곧 **네이티브 STT**를 내놓을 것 같아 기대 중임
  - [**Handy**](https://github.com/cjpais/handy)와 비교하면 어떤지 궁금함.  
    왜 기존 프로젝트를 개선하지 않고 새로 만들었는지도 알고 싶음
  - 나는 **Whisper large-v3**를 M2 Max에서 셀프호스팅으로 돌림.  
    정확도가 충분해서 클린업 모델은 필요 없었음.  
    다만 30초 이상 긴 오디오에서는 **지연 시간**이 느껴짐. WhisperKit이 긴 오디오를 어떻게 처리하는지 궁금함
  - **Omarchy**에서 Hyprwhspr를 매일 쓰고 있음. 정말 훌륭함
  - 나도 비슷한 걸 만들려던 참이었는데 덕분에 안 만들어도 됨.  
    혹시 **풋 페달 PTT**(Push-To-Talk) 기능 고려해본 적 있는지?  
    Apple에도 이미 STT가 있지만 모델 품질이 아직 아쉬움

- **Speech-to-text**는 내 개발 흐름의 핵심임.  
  LLM이나 코딩 에이전트에게 프롬프트를 말로 전달할 때 특히 유용함.  
  플랫폼별로 최고의 오픈소스 음성 입력 도구를 [이 GitHub 저장소](https://github.com/primaprashant/awesome-voice-typing)에 정리했음
  - 개발에서 받아쓰기를 어떻게 쓰는지 궁금함.  
    나는 분당 120단어를 타이핑하니까 말보다 훨씬 빠름.  
    접근성 외에, 이건 느린 타이퍼를 위한 건지 아니면 **소파에 누워 코딩**하려는 용도인지 진심으로 궁금함

- [**Handy**](https://handy.computer/) 같은 앱이 이미 존재하지 않음?
  - 몇 가지 아쉬운 점이 있음.  
    1) Linux에서는 FTP 계정과 curlftpfs, SVN/CVS로 비슷한 시스템을 쉽게 만들 수 있음  
    2) USB 드라이브를 완전히 대체하지는 못함. 오프라인 발표용으로 여전히 USB를 들고 다님  
    3) 수익 모델이 불분명함. 무료로 제공하면서 **수익 창출**이 가능할지 의문임
  - Handy는 정말 잘 만든 툴임
  - 같은 문제를 해결하는 **여러 솔루션**이 존재할 수 있음
  - 네, **speech-to-text**는 이미 존재함
  - 내 사용 사례에는 딱 맞음. 다른 앱 UI를 건드릴 필요가 없음

- 공유 고마움. **로컬 속도와 프라이버시**에 집중한 점이 마음에 듦  
  나는 비슷한 목표를 가진 [**Hex**](https://github.com/kitlangton/Hex)를 쓰고 있는데, 두 앱의 차이에 대한 생각이 궁금함

- 요즘 **로컬 퍼스트 LLM**이 작아질수록 앱 개발의 **핵심 인프라**가 될 것 같음  
  예전 **Electron**이 예쁜 앱을 쉽게 만들게 해준 것처럼, 이제는 약간의 RAM만 희생하면 됨
  - 맞음, 결국 모든 게 **ClaudeVM**처럼 될 것 같음  
    [관련 블로그](https://jperla.com/blog/the-future-is-claudevm)

- **Whisper** 관련 프로젝트가 많은데, 이게 예전 OpenAI 모델인지 아니면 업데이트된 버전인지 궁금함  
  나는 **Parakeet v3**를 쓰는데 작고 훌륭함. 그런데 왜 아직도 Whisper가 이렇게 많은지 의문임
  - Whisper는 여전히 **안정적이고 신뢰성 높은 모델**임.  
    새로운 모델보다 환각이 적고, AMD GPU에서도 쉽게 돌릴 수 있음.  
    Parakeet을 직접 포팅해봤지만 결국 Whisper로 돌아왔음
  - 나도 Parakeet으로 바꿀까 고민 중임.  
    하지만 나는 **폴란드어**와 전문 용어를 많이 써서 Whisper v3가 더 잘 맞음
  - Whisper는 다양한 언어를 지원하고, tiny부터 turbo까지 여러 버전이 있음.  
    그래서 **시스템 환경에 맞게 조정 가능**한 게 강점임
  - 나도 macOS에서 **Parakeet**을 Voice Ink로 쓰고, 집에서는 **Kokoro**로 음성→텍스트를 돌림.  
    GrapheneOS 폰에서도 Parakeet 서버를 연동함  
    [관련 글](https://zach.codes/p/vibe-coding-a-wispr-clone-in-20-minutes)

- 프로젝트가 정말 마음에 들고 내 워크플로우에 통합해보고 싶음.  
  다만 “**$80M 투자받은 대형 AI랩과 비교하며 무료로 제공한다**”는 문구는 조금 거슬림.  
  이건 반항적이라기보다 이미 **기존 연구의 연장선**에 있는 작업임.  
  “spicy”하다고 표현하기엔 다소 과장된 느낌임
