← 작업장으로

JARVIS MAC · OPEN SOURCE EXPERIMENT

자비스를 불렀더니,
네스트가 답했다.

키보드를 내려놓고 Mac에 말을 걸었다.
질문을 알아듣고 만든 답변이 집에 있던 스피커로 흘러나왔다.

01 / THE CONNECTION

각자 하던 일을,
하나의 목소리로 연결했다.

Mac의 내장 마이크가 말을 받고, 로컬 음성 인식이 질문을 글로 바꾼다. 호출어로 시작한 질문을 Cursor에 전달하고, 완성된 답변을 음성으로 합성해 Google Nest Mini에서 재생한다.

  1. 01Mac 마이크호출어와 질문
  2. 02로컬 인식입타로 받아쓰기
  3. 03Cursor근거로 답변 생성
  4. 04macOS 음성문장을 소리로
  5. 05Google Nest재생과 청취

메뉴 막대에서 호출을 기다리고, 일시정지하거나 종료할 수 있다. 답변을 만드는 동안과 스피커가 말하는 동안에는 새 질문을 받지 않아 자기 목소리에 다시 반응하는 일을 막는다.

02 / THE RECEIPT

작동했다. 그리고 시간을 쟀다.

39.07

말을 마친 뒤 → 네스트 재생 시작

실제 사람의 발화에서 출발해, 네스트의 재생 상태와 사람이 한 번 들었다는 확인까지 맞춰 봤다. 빠른 응답이라고 하기에는 아직 기다림이 길다.

답변 생성 21.88초네스트 연결 13.47초인식·합성 등
단일 질문의 구간별 관측값
무음으로 발화 끝 판정0.90초
로컬 음성 인식0.40초
네스트 연결13.47초
근거 조회0.94초
Cursor 답변 생성21.88초
음성 합성1.04초
네스트 재생 시작0.31초

숫자가 말해주는 것

큰 대기는 답변 생성과 스피커 연결에 있었다. “AI가 느리다”로 묶지 않고, 다음에 손댈 구간을 구분할 수 있게 됐다.

2026년 9월 23일 MacBook Pro 내장 마이크로 측정한 1회 결과다. 발화 시작부터는 42.77초. 끝 시점은 무음 감지가 정한 마지막 유성 프레임이며, 장치 버퍼와 관측 오차가 있다.

각 구간은 별도로 측정하고 반올림했다. 합계와 전체 시간에는 부가 처리 시간이 포함된 차이가 있다.

개인정보를 제외한 측정값 JSON ↗

03 / WHAT STAYS LOCAL

호출 전의 말은
내 컴퓨터 안에 둔다.

짧은 발화 단위의 음성 인식과 호출어 판정은 Mac에서 수행한다. 호출 전의 인식 내용은 저장하거나 Cursor에 보내지 않는다. 임시 음성 파일은 인식 직후 삭제한다.

호출된 질문과 근거는 답변 생성을 위해 Cursor로 전송된다. 최근 호출의 질문·답변·시간은 로컬 기록으로 남는다. 따라서 전체 과정이 오프라인인 도구는 아니다.

“자비스”는 호출 규칙이지 화자 인증이 아니다. 공개 메뉴 앱에는 가전 제어 기능을 넣지 않았다.

04 / TAKE IT APART

연결 코드를 공개한다.

메뉴 막대 앱, 로컬 호출 판정, Cursor 연결, 네스트 출력, 설치 안내를 독립 저장소에 담았다. 자기 Mac과 스피커에 맞춰 읽고 바꿀 수 있다.

Jarvis Mac · GitHub ↗

직접 사용하기 전에

  • 연결 코드는 MIT 라이선스다. Cursor와 macOS, 음성 모델은 각자의 조건을 따른다.
  • 개인 기기명·인증정보·음성 원본·운영 기록은 공개하지 않는다.
  • 공개용 기본 인식기는 사용자가 설치하는 whisper.cpp CLI 어댑터다. 위 실측은 입타의 상주 인식기를 쓴 결과로, 공개 버전의 속도를 보장하지 않는다.
  • 완성형 범용 비서가 아닌 개발자용 실험이다. 현재 기본 근거 조회는 하늘·노을 질문에 한정되고, 일반 웹 검색과 끼어들기는 미지원이다.
작업장 전체 페이지 목적에 맞는 페이지 찾기