session-recording
사용자가 "녹음시작" / "녹음 시작" / "강의 녹음" / "회의 녹음" / "전사 시작" 이라고 하거나, 실시간 강의·회의·교육 세션의 녹음과 요약을 요청할 때 사용한다. 실시간 전사와 함께 오디오 원본(m4a)도 저장한다. 실행을 멈추는 "녹음종료" / "녹음 끝" 도 이 스킬이 처리한다.
Install
npx skills add https://github.com/LeeYudok/doksam-skills/tree/main/skills/session-recording
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install leeyudok-doksam-skills@llmmart
git clone https://github.com/LeeYudok/doksam-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole leeyudok/doksam-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
세션 실시간 녹음·요약 (강의·회의·교육)
whisper-stream으로 마이크 입력을 실시간 전사하고, ffmpeg로 오디오 원본(session.m4a)을 병행 저장하며, 10분 간격 루프로 누적 요약과 질문 후보를 갱신한다. 회차 산출물은 전부 작업 디렉터리 아래 session-<YYYY-MM-DD>/ 안에 모은다 (기존 자료가 lecture-<날짜>/ 관례를 쓰는 레포면 그 관례를 따른다).
전제 조건
whisper-stream바이너리(whisper.cpp의 stream 예제)와 한국어 지원 모델이 설치돼 있어야 한다. 시작 전에 한 번 확인하고, 없으면 사용자에게 설치 여부를 먼저 묻는다 — 임의로 대용량 모델을 다운로드하지 않는다.- 바이너리:
command -v whisper-stream(macOS는brew install whisper-cpp계열로 설치 가능) - 모델:
~/models/whisper/ggml-large-v3-turbo.bin(기본 가정 경로 — 다르면 사용자에게 확인)
- 바이너리:
- 오디오 원본 저장에는
ffmpeg가 필요하다 (command -v ffmpeg, macOS 는brew install ffmpeg). 없으면 사용자에게 설치 여부를 묻고, 설치를 원치 않으면 전사만으로 진행한다 — 오디오 저장이 없으면 부정확한 구간을 재청취·재전사할 수 없다는 점을 한 줄 알린다. - 용어집(glossary) — 고유명사 오인식을 줄이는 2층 사전 구조를 쓴다:
- 스킬 내장 공용 사전:
resources/glossary.d/00-common-it.txt(도메인 무관 IT 용어. 프로젝트·회사 고유명사를 여기에 커밋하지 않는다 — 공개 레포다) - 로컬 사전:
~/.config/session-recording/glossary.d/*.txt(개인 전역) 와 작업 디렉터리의glossary.txt(프로젝트별). 둘 다 없으면 "용어집 없이 시작할까요?" 를 한 번 묻는다. - 형식은 한 줄 한 항목
정식표기 | 오인식1, 오인식2 | 비고('#' 줄과 빈 줄 무시).
- 스킬 내장 공용 사전:
- 이미 설치돼 있으면 재설치·재다운로드하지 않는다.
트리거
| 사용자 발화 | 동작 |
|---|---|
녹음시작, 녹음 시작, 강의 녹음 시작, 회의 녹음 시작, 전사 시작 |
아래 시작 절차 실행 |
녹음종료, 녹음 끝, 강의 끝, 회의 끝 |
아래 종료 절차 실행 |
지금까지 요약, 중간 요약 |
루프 회차 1회를 수동 실행 |
시작 절차
세션(강의·회의) 제목·주제를 한 줄 묻는다. 요약 헤더와 교정 프롬프트의 도메인 맥락으로 쓴다. 이미 대화에서 알 수 있으면 묻지 않는다.
회차 디렉터리 생성 + 입력 볼륨 설정 + whisper-stream 백그라운드 기동 (프로젝트 루트 기준):
mkdir -p session-$(date +%F) osascript -e 'set volume input volume 70' # macOS # 용어집 병합 → 정식표기만 뽑아 프롬프트로 (내장 공용 + 로컬 전역 + 프로젝트) GLOSSARY=$(cat <스킬경로>/resources/glossary.d/*.txt \ ~/.config/session-recording/glossary.d/*.txt \ ./glossary.txt 2>/dev/null \ | grep -v '^#' | grep -v '^$' | cut -d'|' -f1 | tr '\n' ',' | tr -s ' ') cd session-$(date +%F) && whisper-stream \ -m ~/models/whisper/ggml-large-v3-turbo.bin \ -l ko -t 8 --step 3000 --length 10000 \ --prompt "다음 용어가 등장하는 회의: $GLOSSARY" \ -f transcript.txt--prompt는 강제가 아니라 편향이다 — 한도 약 224토큰이므로 용어가 아주 많으면 이번 세션과 관련 높은 것 위주로 앞쪽에 배치한다.런타임의 백그라운드 실행 수단으로 띄운다(Claude Code 는
Bash run_in_background=true).disown금지 — 실행 주체가 프로세스를 추적하지 못해 종료·완료 감지가 깨진다.온라인 세션(Zoom/Teams)이면 마이크 대신 BlackHole 등 시스템 오디오 캡처를 쓰는 게 음질이 낫다. 사용자가 온라인이라고 하면 이 점을 알린다.
오디오 원본 병행 녹음 — ffmpeg 가 있으면 같은 입력을 m4a 로 저장한다 (whisper 와 별개 프로세스, macOS CoreAudio 는 같은 입력 장치의 동시 캡처를 허용한다):
cd session-$(date +%F) && ffmpeg -f avfoundation -i ":0" -ac 1 -c:a aac -b:a 64k -movflags +frag_keyframe+empty_moov session.m4a- 역시 백그라운드로 띄우고
disown하지 않는다. :0은 기본 오디오 입력 인덱스다. 장치가 여럿(BlackHole 등)이면ffmpeg -f avfoundation -list_devices true -i ""로 인덱스를 확인해 whisper-stream 과 같은 입력을 잡는다.frag_keyframe+empty_moov는 프로세스가 비정상 종료해도 그 시점까지의 오디오가 재생 가능하게 남도록 하는 안전장치다 (일반 m4a 는 정상 종료 전에 죽으면 통째로 깨진다).- AAC 64k 모노 기준 2시간에 약 55MB.
- 역시 백그라운드로 띄우고
30초쯤 뒤
transcript.txt에 실제 텍스트가 쌓이는지,session.m4a크기가 커지는지 한 번 확인하고 보고한다. transcript 가 비어 있으면 마이크 권한·입력 장치를 먼저 점검한다. 확인 없이 "시작했습니다"만 보고하지 않는다.요약 루프를 건다 — 10분 간격. 런타임에 주기 실행 수단이 있으면 그것을 쓰고 (Claude Code 는
loop스킬로/loop 10m 세션 전사 증분 요약 (session-<날짜>)), 없으면 사용자에게 "중간 요약" 발화로 회차를 돌리도록 안내한다.읽은 바이트 오프셋을 대화 안에서 계속 들고 간다. 초기값 1.
매 회차 절차
마지막 오프셋 이후만 읽는다. 파일 전체 재읽기 금지.
tail -c +<마지막오프셋> transcript.txt wc -c transcript.txt # 다음 회차 오프셋 = 이 값 + 1환각 라인을 걸러낸다. whisper는 무음 구간에서 요리 유튜브 자막풍 문장을 지어낸다:
tail -c +<오프셋> transcript.txt | grep -v -E "^\s*-?\s*(감사합니다|다음 영상에서 만나요|시청해주셔서 감사합니다|-끝-|- 네\.|고춧가루|양념장.*)\s*!?\.?\s*$"보고는 두 가지를 갱신한다:
- 누적 세션 요약 — 이번 구간에서 새로 나온 내용을 기존 요약에 병합. 매 회차 처음부터 다시 쓰지 않는다.
- 질문 후보 — 강사·발표자에게 물어볼 것. 세션이 진행되며 답이 나온 항목은 목록에서 빼고 새 후보로 교체한다.
쉬는 시간·점심에는 잡음만 쌓인다. 파일 크기가 늘어도 알맹이가 없으면 "휴식 중, 스트리머 정상" 한 줄로 끝낸다. 억지로 요약을 만들지 않는다.
인식 근거가 없는 내용은 지어내지 않는다. 특히 사람 이름·고유명사는 음성으로 확정 불가 —
[불명확]으로 남긴다.
종료 절차
- whisper-stream 프로세스를 종료한다 — 런타임에 백그라운드 작업 중단 수단이 있으면
그것으로, 없으면
pkill -f whisper-stream. ffmpeg 는 반드시 SIGINT 로 종료한다 (pkill -INT -f 'ffmpeg.*session.m4a') — 정상 마무리 쓰기가 일어나야 하며,kill -9는 마지막 조각을 잃는다. 종료 후ffprobe -v error -show_entries format=duration session.m4a로 길이가 세션 시간과 비슷한지 확인한다. - 루프를 반드시 해제한다. 끝난 뒤에도 계속 돌면 빈 요약이 쌓인다.
- 최종 산출물을 만든다:
session.m4a— 오디오 원본. 절대 덮어쓰지 않는다. 전사가 의심스러운 구간의 재청취·재전사용 근거다. whisper-cli 는 m4a 를 직접 못 읽으므로(miniaudio 디코더 한계, 2026-08-02 실측) 재전사는 반드시 변환을 거친다:ffmpeg -i session.m4a -ar 16000 -ac 1 tmp16k.wav && whisper-cli -m <모델> -l ko -f tmp16k.wavtranscript.txt— 원본. 절대 덮어쓰지 않는다.transcript_<세션>_cleaned.txt— 정리본. 환각 grep 제거 → 1,000줄 내외로 분할 → 조각별 교정. 하위 에이전트를 병렬로 띄울 수 있는 런타임이면 조각당 하나씩 3~4개를 동시에(중간 성능 모델로 충분하다), 그런 수단이 없으면 조각을 순차로 처리한다 — 분할과 조각별 교정은 어느 쪽이든 지킨다. 프롬프트에 세션 맥락 + 용어집 병합본 전체(오인식 매핑 포함)를 반드시 넣는다 — 출처는 위 전제 조건의 glossary 파일들이다. 없으면 고유명사가 전부 엉뚱하게 복원된다.- 세션 중 새로 확정된 용어(사용자가 교정해 준 고유명사)는 로컬 사전에 추가한다 — 다음 세션부터 자동 반영된다. 회사·프로젝트 고유명사를 스킬 레포에 커밋하지 않는다.
summary_<세션명>_<날짜>.md— 보고용 요약본(교육요약·회의록 등 성격에 맞게). 표준/격식 톤.
- 레포에 회차 기록 표(README 등)가 있으면 한 행 추가한다.
- 사용자가 매뉴얼 HTML을 원하면
session-<날짜>/html/에 만든다 — 모바일 우선 + 데스크톱 동시 확인,<meta charset="utf-8">필수(없으면 한글 전부 깨짐). 표·코드블록은 각자overflow-x: auto컨테이너에 넣는다.
자주 하는 실수
| 실수 | 결과 |
|---|---|
매 회차 transcript.txt 전체 읽기 |
컨텍스트 폭발. 오프셋 이후만 읽는다. |
disown으로 백그라운드 실행 |
실행 주체가 완료·실패를 감지하지 못한다. |
| 환각 필터 없이 요약 | "양념장"이 세션 내용으로 들어간다. |
정리본을 transcript.txt에 덮어쓰기 |
원본 소실. 복구 불가. |
| 교정 단계에 용어집 없이 지시 | 고유명사가 전부 창작된다. |
| 프로젝트 고유명사를 내장 사전에 커밋 | 공개 레포에 회사 정보 노출. 로컬 사전에 둔다. |
| --prompt 없이 전사 후 손교정 반복 | 같은 오인식이 세션마다 재발한다. |
| 세션 끝나고 루프 방치 | 빈 요약이 계속 쌓인다. |
ffmpeg 를 kill -9 로 종료 |
마지막 조각 소실. SIGINT 로 종료한다. |
| whisper 와 ffmpeg 가 다른 입력 장치를 잡음 | 전사와 오디오 내용이 어긋난다. 시작 확인 때 둘 다 점검. |
Files (doksam-skills)
-
resources
-
glossary.d
-
00-common-it.txt 1 KB
# session-recording 공용 IT 용어 사전 (도메인 무관, 공개 무해). # 형식: 정식표기 | 오인식 예시(콤마 구분, 선택) | 비고(선택) # '#' 시작 줄과 빈 줄은 무시한다. 프로젝트·회사 고유명사는 이 파일이 아니라 # 로컬 사전(~/.config/session-recording/glossary.d/, 작업 디렉터리 glossary.txt)에 둔다. 애자일 | 에자일 | 스프린트 | 스플릿, 스프린드 | 스쿼드 | 스프드 | 백로그 그루밍 | 백로그 불미, 맨보브루밍 | 데일리 스탠드업 | 데이프 판독, 데이비스텔러 미팅 | 스프린트 회고 | 스프린트 백오본 | 지라 | 자라 | 컨플루언스 | 컴플루언스 | 아키텍처 | 아키티티, 아키텍터 | AI 에이전트 | 이레이전스, 레이전스 | PMO | 피해모, 피해 모 | 협의체 | 호비트 | 스티어링 커미티 | 스티어링 커뮤니티 | 착수보고 | 창소보고 | 킥오프 | 키코프 | 온보딩 | 언보딩 | POC | 포씨 | 워크숍 | 포트샵, 워크샵 | 아틀라시안 | 아틀란시안 |
-
-
-
SKILL.md 10.6 KB
--- name: session-recording description: 사용자가 "녹음시작" / "녹음 시작" / "강의 녹음" / "회의 녹음" / "전사 시작" 이라고 하거나, 실시간 강의·회의·교육 세션의 녹음과 요약을 요청할 때 사용한다. 실시간 전사와 함께 오디오 원본(m4a)도 저장한다. 실행을 멈추는 "녹음종료" / "녹음 끝" 도 이 스킬이 처리한다. --- # 세션 실시간 녹음·요약 (강의·회의·교육) whisper-stream으로 마이크 입력을 실시간 전사하고, ffmpeg로 오디오 원본(`session.m4a`)을 병행 저장하며, 10분 간격 루프로 누적 요약과 질문 후보를 갱신한다. 회차 산출물은 전부 작업 디렉터리 아래 `session-<YYYY-MM-DD>/` 안에 모은다 (기존 자료가 `lecture-<날짜>/` 관례를 쓰는 레포면 그 관례를 따른다). ## 전제 조건 - `whisper-stream` 바이너리(whisper.cpp의 stream 예제)와 한국어 지원 모델이 설치돼 있어야 한다. 시작 전에 한 번 확인하고, 없으면 사용자에게 설치 여부를 먼저 묻는다 — 임의로 대용량 모델을 다운로드하지 않는다. - 바이너리: `command -v whisper-stream` (macOS는 `brew install whisper-cpp` 계열로 설치 가능) - 모델: `~/models/whisper/ggml-large-v3-turbo.bin` (기본 가정 경로 — 다르면 사용자에게 확인) - 오디오 원본 저장에는 `ffmpeg` 가 필요하다 (`command -v ffmpeg`, macOS 는 `brew install ffmpeg`). 없으면 사용자에게 설치 여부를 묻고, 설치를 원치 않으면 **전사만으로 진행한다** — 오디오 저장이 없으면 부정확한 구간을 재청취·재전사할 수 없다는 점을 한 줄 알린다. - **용어집(glossary)** — 고유명사 오인식을 줄이는 2층 사전 구조를 쓴다: - 스킬 내장 공용 사전: `resources/glossary.d/00-common-it.txt` (도메인 무관 IT 용어. **프로젝트·회사 고유명사를 여기에 커밋하지 않는다** — 공개 레포다) - 로컬 사전: `~/.config/session-recording/glossary.d/*.txt` (개인 전역) 와 작업 디렉터리의 `glossary.txt` (프로젝트별). 둘 다 없으면 "용어집 없이 시작할까요?" 를 한 번 묻는다. - 형식은 한 줄 한 항목 `정식표기 | 오인식1, 오인식2 | 비고` ('#' 줄과 빈 줄 무시). - 이미 설치돼 있으면 재설치·재다운로드하지 않는다. ## 트리거 | 사용자 발화 | 동작 | |---|---| | `녹음시작`, `녹음 시작`, `강의 녹음 시작`, `회의 녹음 시작`, `전사 시작` | 아래 시작 절차 실행 | | `녹음종료`, `녹음 끝`, `강의 끝`, `회의 끝` | 아래 종료 절차 실행 | | `지금까지 요약`, `중간 요약` | 루프 회차 1회를 수동 실행 | ## 시작 절차 1. **세션(강의·회의) 제목·주제를 한 줄 묻는다.** 요약 헤더와 교정 프롬프트의 도메인 맥락으로 쓴다. 이미 대화에서 알 수 있으면 묻지 않는다. 2. 회차 디렉터리 생성 + 입력 볼륨 설정 + whisper-stream 백그라운드 기동 (프로젝트 루트 기준): ```bash mkdir -p session-$(date +%F) osascript -e 'set volume input volume 70' # macOS # 용어집 병합 → 정식표기만 뽑아 프롬프트로 (내장 공용 + 로컬 전역 + 프로젝트) GLOSSARY=$(cat <스킬경로>/resources/glossary.d/*.txt \ ~/.config/session-recording/glossary.d/*.txt \ ./glossary.txt 2>/dev/null \ | grep -v '^#' | grep -v '^$' | cut -d'|' -f1 | tr '\n' ',' | tr -s ' ') cd session-$(date +%F) && whisper-stream \ -m ~/models/whisper/ggml-large-v3-turbo.bin \ -l ko -t 8 --step 3000 --length 10000 \ --prompt "다음 용어가 등장하는 회의: $GLOSSARY" \ -f transcript.txt ``` - `--prompt` 는 강제가 아니라 편향이다 — 한도 약 224토큰이므로 용어가 아주 많으면 이번 세션과 관련 높은 것 위주로 앞쪽에 배치한다. - 런타임의 백그라운드 실행 수단으로 띄운다(Claude Code 는 `Bash run_in_background=true`). **`disown` 금지** — 실행 주체가 프로세스를 추적하지 못해 종료·완료 감지가 깨진다. - 온라인 세션(Zoom/Teams)이면 마이크 대신 BlackHole 등 시스템 오디오 캡처를 쓰는 게 음질이 낫다. 사용자가 온라인이라고 하면 이 점을 알린다. 3. **오디오 원본 병행 녹음** — ffmpeg 가 있으면 같은 입력을 m4a 로 저장한다 (whisper 와 별개 프로세스, macOS CoreAudio 는 같은 입력 장치의 동시 캡처를 허용한다): ```bash cd session-$(date +%F) && ffmpeg -f avfoundation -i ":0" -ac 1 -c:a aac -b:a 64k -movflags +frag_keyframe+empty_moov session.m4a ``` - 역시 백그라운드로 띄우고 `disown` 하지 않는다. - `:0` 은 기본 오디오 입력 인덱스다. 장치가 여럿(BlackHole 등)이면 `ffmpeg -f avfoundation -list_devices true -i ""` 로 인덱스를 확인해 **whisper-stream 과 같은 입력**을 잡는다. - `frag_keyframe+empty_moov` 는 프로세스가 비정상 종료해도 그 시점까지의 오디오가 재생 가능하게 남도록 하는 안전장치다 (일반 m4a 는 정상 종료 전에 죽으면 통째로 깨진다). - AAC 64k 모노 기준 2시간에 약 55MB. 4. **30초쯤 뒤 `transcript.txt`에 실제 텍스트가 쌓이는지, `session.m4a` 크기가 커지는지 한 번 확인하고 보고한다.** transcript 가 비어 있으면 마이크 권한·입력 장치를 먼저 점검한다. 확인 없이 "시작했습니다"만 보고하지 않는다. 5. 요약 루프를 건다 — 10분 간격. 런타임에 주기 실행 수단이 있으면 그것을 쓰고 (Claude Code 는 `loop` 스킬로 `/loop 10m 세션 전사 증분 요약 (session-<날짜>)`), 없으면 사용자에게 "중간 요약" 발화로 회차를 돌리도록 안내한다. 6. 읽은 바이트 오프셋을 대화 안에서 계속 들고 간다. 초기값 1. ## 매 회차 절차 1. **마지막 오프셋 이후만 읽는다.** 파일 전체 재읽기 금지. ```bash tail -c +<마지막오프셋> transcript.txt wc -c transcript.txt # 다음 회차 오프셋 = 이 값 + 1 ``` 2. 환각 라인을 걸러낸다. whisper는 무음 구간에서 요리 유튜브 자막풍 문장을 지어낸다: ```bash tail -c +<오프셋> transcript.txt | grep -v -E "^\s*-?\s*(감사합니다|다음 영상에서 만나요|시청해주셔서 감사합니다|-끝-|- 네\.|고춧가루|양념장.*)\s*!?\.?\s*$" ``` 3. 보고는 **두 가지**를 갱신한다: - **누적 세션 요약** — 이번 구간에서 새로 나온 내용을 기존 요약에 병합. 매 회차 처음부터 다시 쓰지 않는다. - **질문 후보** — 강사·발표자에게 물어볼 것. 세션이 진행되며 답이 나온 항목은 목록에서 빼고 새 후보로 교체한다. 4. **쉬는 시간·점심**에는 잡음만 쌓인다. 파일 크기가 늘어도 알맹이가 없으면 "휴식 중, 스트리머 정상" 한 줄로 끝낸다. 억지로 요약을 만들지 않는다. 5. 인식 근거가 없는 내용은 **지어내지 않는다.** 특히 사람 이름·고유명사는 음성으로 확정 불가 — `[불명확]`으로 남긴다. ## 종료 절차 1. whisper-stream 프로세스를 종료한다 — 런타임에 백그라운드 작업 중단 수단이 있으면 그것으로, 없으면 `pkill -f whisper-stream`. ffmpeg 는 **반드시 SIGINT 로** 종료한다 (`pkill -INT -f 'ffmpeg.*session.m4a'`) — 정상 마무리 쓰기가 일어나야 하며, `kill -9` 는 마지막 조각을 잃는다. 종료 후 `ffprobe -v error -show_entries format=duration session.m4a` 로 길이가 세션 시간과 비슷한지 확인한다. 2. **루프를 반드시 해제한다.** 끝난 뒤에도 계속 돌면 빈 요약이 쌓인다. 3. 최종 산출물을 만든다: - `session.m4a` — 오디오 원본. **절대 덮어쓰지 않는다.** 전사가 의심스러운 구간의 재청취·재전사용 근거다. whisper-cli 는 m4a 를 직접 못 읽으므로(miniaudio 디코더 한계, 2026-08-02 실측) 재전사는 반드시 변환을 거친다: `ffmpeg -i session.m4a -ar 16000 -ac 1 tmp16k.wav && whisper-cli -m <모델> -l ko -f tmp16k.wav` - `transcript.txt` — 원본. **절대 덮어쓰지 않는다.** - `transcript_<세션>_cleaned.txt` — 정리본. 환각 grep 제거 → 1,000줄 내외로 분할 → 조각별 교정. 하위 에이전트를 병렬로 띄울 수 있는 런타임이면 조각당 하나씩 3~4개를 동시에(중간 성능 모델로 충분하다), 그런 수단이 없으면 조각을 순차로 처리한다 — 분할과 조각별 교정은 어느 쪽이든 지킨다. 프롬프트에 **세션 맥락 + 용어집 병합본 전체**(오인식 매핑 포함)를 반드시 넣는다 — 출처는 위 전제 조건의 glossary 파일들이다. 없으면 고유명사가 전부 엉뚱하게 복원된다. - 세션 중 새로 확정된 용어(사용자가 교정해 준 고유명사)는 **로컬 사전에 추가**한다 — 다음 세션부터 자동 반영된다. 회사·프로젝트 고유명사를 스킬 레포에 커밋하지 않는다. - `summary_<세션명>_<날짜>.md` — 보고용 요약본(교육요약·회의록 등 성격에 맞게). 표준/격식 톤. 4. 레포에 회차 기록 표(README 등)가 있으면 한 행 추가한다. 5. 사용자가 매뉴얼 HTML을 원하면 `session-<날짜>/html/`에 만든다 — 모바일 우선 + 데스크톱 동시 확인, `<meta charset="utf-8">` 필수(없으면 한글 전부 깨짐). 표·코드블록은 각자 `overflow-x: auto` 컨테이너에 넣는다. ## 자주 하는 실수 | 실수 | 결과 | |---|---| | 매 회차 `transcript.txt` 전체 읽기 | 컨텍스트 폭발. 오프셋 이후만 읽는다. | | `disown`으로 백그라운드 실행 | 실행 주체가 완료·실패를 감지하지 못한다. | | 환각 필터 없이 요약 | "양념장"이 세션 내용으로 들어간다. | | 정리본을 `transcript.txt`에 덮어쓰기 | 원본 소실. 복구 불가. | | 교정 단계에 용어집 없이 지시 | 고유명사가 전부 창작된다. | | 프로젝트 고유명사를 내장 사전에 커밋 | 공개 레포에 회사 정보 노출. 로컬 사전에 둔다. | | --prompt 없이 전사 후 손교정 반복 | 같은 오인식이 세션마다 재발한다. | | 세션 끝나고 루프 방치 | 빈 요약이 계속 쌓인다. | | ffmpeg 를 `kill -9` 로 종료 | 마지막 조각 소실. SIGINT 로 종료한다. | | whisper 와 ffmpeg 가 다른 입력 장치를 잡음 | 전사와 오디오 내용이 어긋난다. 시작 확인 때 둘 다 점검. |
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.