
Claude Code 구독을 '회의 코파일럿'으로 만드는 OSS를 만들었습니다
요약
Claude Code 구독을 활용하여 추가 API 비용 없이 회의 코파일럿으로 사용할 수 있는 오픈소스 도구 LiveMTG를 소개합니다. 로컬 Whisper를 사용하여 음성 데이터를 클라우드에 전송하지 않고도 실시간 회의록 작성, 질문 제안, 마인드맵 생성을 지원합니다.
핵심 포인트
- Claude Code/Codex CLI를 호출하여 별도의 API 키나 추가 비용 없이 작동
- 로컬 Whisper(MLX/whisper.cpp)를 사용하여 데이터 보안 및 프라이버시 강화
- 실시간 회의록 업데이트, 다음 질문 제안, 교착 상태 해결책 제시 기능 제공
- 회의 후 마인드맵과 대화 관계 도표가 포함된 올인원 PDF 생성

회의를 녹음하는 것만으로, 말하는 도중에 회의록 · 다음에 물어봐야 할 질문 · 마인드맵이 성장해가는 로컬 실행 도구 「LiveMTG」를 만들었습니다. 무료 OSS (MIT)입니다.
npm install -g live-mtg@beta
live-mtg

녹음 시작부터 회의 내용이 성장하는 모습 (UI는 실제 화면 · 회의 내용은 샘플)
무엇이 새로운가: API 키가 필요 없음
이런 종류의 AI 회의록 도구는 많이 있지만, LiveMTG의 설계상의 승부수는 단 하나입니다.
"Claude Code (또는 Codex) 구독을 가지고 있는 사람은 이미 AI 이용 권한을 가지고 있다. 그것을 회의에 유용하면 된다"
LiveMTG는 API 키를 일절 요구하지 않습니다. AI 처리는 모두 사용자의 머신에 설치되어 있는 claude / codex CLI를 일회성으로 호출함으로써 작동합니다. 월간 SaaS 요금도, 종량제 설정도, 사내 API 키 배포도 없습니다. Claude Code가 작동하는 머신이라면, 추가 비용 없이 회의 코파일럿 (Copilot)이 작동합니다.
음성 또한 같은 사상으로, 받아쓰기(Transcription)는 로컬의 Whisper (Apple Silicon이라면 MLX, Intel Mac/Windows는 whisper.cpp)를 사용합니다. 회의 음성 · 받아쓰기 · 회의 데이터는 단 1바이트도 클라우드로 나가지 않습니다. 고객과의 상담이나 인사 면담처럼 외부 SaaS에 내보내기 어려운 회의에서도 사용할 수 있습니다.
할 수 있는 일
라이브 (회의 중)
- 실시간 회의록: 요약 · 의제 · 결정 사항 · ToDo · 미결 사항을 15초마다 업데이트
- 다음에 물어볼 질문 / 다음에 할 말: 회의의 종류를 판정하여, 상담이라면 "상대에게 물어볼 한 가지 질문", 브레인스토밍이라면 "다음에 이야기하면 좋을 논점"을 제안
- 해석 확인: AI가 듣기에 확신이 없는 고유명사("나카타 씨? 타나카 씨?")를 카드로 확인해 옵니다. ✓/✗로 대답하면 이후의 해석에 즉시 반영
- 교착 상태에 대한 제안: 토론이 막힌 것을 감지하면, 배경 자료를 바탕으로 한 "대립하는 2가지 안 + 추천안 + 근거"를 제시
- 잘못을 깨달았다면 "보충 · 정정"이라고 한마디 보내면, 과거의 회의 내용까지 거슬러 올라가 수정됨
회의 후
- 저장된 모든 음성으로부터 고정밀의 정식 문서를 재생성 (화자 이름 확인 포함)
- 올인원 회의록 PDF: 표지 ~ 결정 사항 ~ 미결 사항에 더해, 방사형 마인드맵과 "대화의 관계" 도표 (토론의 흐름을 스토리라인으로 도해)까지 하나의 파일에 담음
- "배움과 다음 단계": 자신의 입장과 목표에 비추어 본 회고 리포트. 회의 종류별 플레이북(Playbook)에 교훈을 축적하여 다음 AI 가이드가 더 똑똑해짐
구조 (기술적인 이야기)
구성 방식은 단순합니다. Python 서버 1개 + 브라우저 UI + 외부 CLI의 조합으로, 상주하는 AI 프로세스는 없습니다.
브라우저 녹음 (15초 청크) → whisper → transcript.txt
→ 즉시 해석 (haiku · 차분 500자만) → data.json → UI가 2초마다 폴링 (Polling)
고안한 점 몇 가지:
1. 모델의 3단계 구성 — 라이브 차분 해석은 속도 최우선인 haiku, 준비 채팅이나 웹 정보 확인은 sonnet, 정식 문서 작성 · 슬라이드 · 회고는 품질 우선인 opus. 모두 claude -p의 일회성 실행이므로, 상태 관리나 연결 유지도 없습니다.
2. 차분(Difference)만 전달 — 매번 "새롭게 추가된 발언 500자 + 현재 회의록의 작은 인덱스"만 전달하므로, 3시간의 회의라도 1회당 해석 비용이 일정합니다.
3. AI에 의존하지 않는 부분을 결정함 — 회의록 PDF나 맵의 레이아웃은 결정론적(Deterministic) 코드 생성 방식을 사용합니다 (AI를 거치면 내용이 떨어지거나 · 느려지거나 · 환각(Hallucination)이 발생함). 반대로 "해석 확인"은 기계적으로 검출된 미인지어를 작은 AI 선별 과정을 거쳐 내보내는 2단계 방식을 취합니다. "어디에 AI를 사용하지 않을 것인가"의 설계가 체감 품질을 결정한다는 것이 이 프로젝트의 가장 큰 배움입니다.
4. 프롬프트 회귀 테스트 — "모호한 인명 → 확인 카드가 나옴", "명료한 발화 → 나오지 않음", "브레인스토밍 → 이야기 제안이 됨"과 같은 골든 케이스(Golden Case)를 17건 보유하고 있으며, 프롬프트를 변경할 때마다 실제로 haiku를 호출하여 검증합니다. "프롬프트 변경으로 인해 품질이 몰래 망가지는 것"을 방지하는 메커니즘입니다.
개발 뒷이야기: AI와 만들면서 흥미로웠던 장애
이 도구 자체도 거의 전부 Claude Code (의 더욱 상위 모델)와 페어로 개발하고 있습니다만, 인상적이었던 장애가 2가지 있습니다.
haiku가 '장고(Long Thinking)'를 하다가 전멸한 이야기 — 라이브 분석의 AI 호출 횟수를 줄이기 위해, 여러 개의 분석 레인(Lane)을 하나의 프롬프트로 통합한 적이 있습니다. 그 결과, 출력 필드가 11개이고 규칙이 방대한 프롬프트가 되자마자 haiku의 응답 시간이 3초에서 40~90초로 악화되었습니다. 타임아웃(Timeout)이 연속으로 29번 발생하며 화면이 완전히 침묵했습니다. 작은 모델은 '생성량'이 아니라 '판단의 복잡성' 때문에 느려진다는 것을 깨달았습니다. 통합을 철회하고 다시 세분화된 레인으로 되돌리니 회복되었습니다.
Windows의 4연속 벽 — 일본어 Windows에서 실행했더니, ① cp932로 罫線(Box-drawing) 문자를 출력할 수 없어 실행 즉시 사망 → ② 수정했더니 Microsoft Store의 '0바이트짜리 가짜 python'을 잡아 즉시 종료 → ③ 수정했더니 데이터 폴더가 두 곳으로 분열되어 모델을 찾지 못함 → ④ 수정했더니 Whisper의 UTF-8 출력을 cp932로 읽으려다 분석 스레드가 사망. 하나를 고치면 다음 문제가 나타나는 4연속 콤보였습니다. 현재는 모두 제품 측에서 자동으로 회피합니다 (UTF-8 강제, py 런처 우선, 폴더 자동 통합).
동작 요구사항
- Mac (Apple Silicon / Intel 모두 대응) 또는 Windows 11
- Chrome (녹음에 사용. 온라인 회의는 '탭의 오디오 공유' 기능을 통해 상대방의 목소리도 가져올 수 있습니다)
- Node.js 20+
- Claude Code 또는 Codex 구독 (각자의 계정으로 로그인. 이것이 AI 엔진이 됩니다)
첫 실행 시 live-mtg로 온보딩이 시작되며, ffmpeg · Whisper · 모델 다운로드까지 자동으로 안내합니다.
마치며
아직 베타 버전이지만, 매일 저의 실제 회의에서 사용하며 개선하고 있습니다. 버그 보고 및 기능 요청은 GitHub Issues로 부탁드립니다. live-mtg report를 통해 회의 내용을 포함하지 않는 진단 리포트를 생성할 수 있습니다.
무료로 사용할 수 있습니다. 개발을 응원하고 싶으신 분은 GitHub Sponsors를 통해 후원해 주시면 큰 힘이 됩니다 ($5~. 스폰서는 Issue 우선 대응).
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기