Communitygithub.com

curiositech/windags-skills

Whisper, Deepgram, AssemblyAI를 사용한 오디오 전사 파이프라인 구축 - 화자 분리 및 실시간 스트리밍 지원. 활성화 키워드: 전사, 음성-텍스트, 화자 분리, 오디오 처리, 회의 기록. 사용 불가: 텍스트-음성 합성(voice-audio-engineer), 음악 생성(ai-engineer).

windags-skills란 무엇인가요?

이 스킬은 Whisper, Deepgram, AssemblyAI를 활용하여 프로덕션 수준의 음성-텍스트 파이프라인을 구축하는 방법을 제공합니다. 배치 처리와 실시간 스트리밍 모두를 지원하며, 화자 분리(diarization) 기능을 포함합니다. 주요 플랫폼으로는 OpenAI Whisper(large-v3), Deepgram Nova-3, AssemblyAI Universal-2를 지원하며, 각 상황에 맞는 최적의 엔진을 선택할 수 있는 의사 결정 트리를 제공합니다. 특히, 30분 이상의 긴 오디오 파일 처리 시 청크 분할 전략, VAD(음성 활동 감지) 최적화, 타임스탬프 동기화, 언어 자동 감지 실패 대응, 메모리 오버플로우 방지 등 실제 개발 현장에서 자주 발생하는 문제점과 해결 방안을 상세히 다룹니다. 또한, 회의록 전사 워크스루 예제를 통해 전문가와 초보자의 접근 방식 차이를 명확히 보여주며, WER 5% 미만, 화자 정확도 90% 이상 등의 품질 게이트와 사용 경계 조건을 제시합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/curiositech/windags-skills/tree/HEAD/skills/audio-transcription-pipeline

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

오디오 전사 파이프라인

Whisper, Deepgram, AssemblyAI를 사용하여 배치 및 실시간 전사와 화자 분리를 지원하는 프로덕션 수준의 음성-텍스트 파이프라인을 구축합니다.

의사 결정 포인트

엔진 선택 의사 결정 트리

요구 사항이 다음과 같은 경우:
├─ 실시간 스트리밍이 필요한가?
│  ├─ 예: Deepgram Nova-3 WebSocket 사용 (가장 빠름)
│  └─ 아니오: 정확도 요구 사항 확인으로 이동
├─ 최고 정확도가 필요하고 GPU가 있는가?
│  ├─ 예: faster-whisper와 함께 Whisper large-v3 사용
│  └─ 아니오: 비용 분석으로 이동
├─ 예산 < $0.0059/분 이고 컴퓨팅 자원이 있는가?
│  ├─ 예: 로컬 Whisper 사용
│  └─ 아니오: AssemblyAI Universal-2 사용 (최고 API 화자 분리)

배치 vs 스트림 처리

오디오 특성이 다음과 같은 경우:
├─ 길이 > 30분?
│  ├─ 예: 청크 분할(무음 구간 기준)하여 배치 처리 사용
│  └─ 아니오: 지연 시간 확인으로 이동
├─ 10초 이내에 결과가 필요한가?
│  ├─ 예: 스트리밍 사용 (Deepgram/Whisper.cpp)
│  └─ 아니오: 더 나은 정확도를 위해 배치 처리 사용

VAD (음성 활동 감지) 사용

콘텐츠 유형이 다음과 같은 경우:
├─ 실시간 대화/회의?
│  ├─ 예: VAD 활성화 (무음 구간에서 40-60% 컴퓨팅 절약)
│  └─ 아니오: 콘텐츠 확인으로 이동
├─ 강의/발표 (일시 정지 포함)?
│  ├─ 예: 보수적 VAD 사용 (min_silence_duration_ms: 1000)
│  └─ 아니오: 밀집 음성(오디오북 등)의 경우 VAD 건너뛰기

도메인별 모델 선택

언어/억양이 다음과 같은 경우:
├─ 비영어권 또는 강한 억양?
│  ├─ 예: Whisper large-v3 사용 (최고 다국어 지원)
│  └─ 아니오: 속도 확인으로 이동
├─ 1초 미만 지연 시간이 필요한가?
│  ├─ 예: Deepgram Nova-3 스트리밍 사용
│  └─ 아니오: 비즈니스/의학 용어에는 AssemblyAI 사용

실패 모드

무음 구간 환각(Hallucination)

감지: 조용한 구간에 반복된 구문이나 유령 음악 설명이 전사본에 나타남 진단: VAD 비활성화 또는 임계값이 너무 낮아 모델이 배경 잡음에서 텍스트를 생성함 수정: min_silence_duration_ms: 500으로 VAD 활성화, Whisper에서 --no_speech_threshold 0.6 사용

10명 초과 화자에서 화자 분리 붕괴

감지: 10-15분 후 모든 화자가 "Speaker 1"으로 레이블 지정되거나 문장 중간에 무작위로 화자가 전환됨 진단: 화자 임베딩 모델이 포화 상태, 혼잡한 오디오에서 중첩 혼란 수정: 무음으로 사전 분할, 스테레오인 경우 AssemblyAI dual_channel 사용, 최대 활성 화자 8명으로 제한

비디오 타임스탬프 동기화 드리프트

감지: 자막이 해당 비디오 프레임보다 2-5초 먼저/늦게 나타남 진단: 오디오 전처리로 길이가 변경되었거나 VAD가 타임스탬프 조정 없이 세그먼트를 제거함 수정: 전처리에서 --preserve_timing 사용, 원본 오디오 타임코드와 동기화, 알려진 음성 이벤트에 대해 검증

언어 자동 감지 실패

감지: 화자가 억양이 있을 때 영어 단어가 횡설수설로 전사되거나 코드 스위칭이 무시됨 진단: 모델이 처음 30초 동안 잘못된 언어로 고정되었거나 다국어 콘텐츠가 분류기를 혼란시킴 수정: 억양이 있는 영어의 경우 language="en"으로 언어 강제 지정, 비영어를 영어로 변환하려면 task="translate" 사용

긴 파일에서 메모리 오버플로우

감지: 45분 이상 파일에서 OOM 충돌 또는 30분 후 갑작스러운 품질 저하 진단: 모델이 전체 컨텍스트 윈도를 유지하여 GPU VRAM이 소진됨 수정: 30초 오버랩으로 25분 경계에서 청크 분할, RAM 효율성을 위해 --without_timestamps 사용

작업 예제

완전한 회의 전사 워크스루

시나리오: 90분 이사회 회의, 6명 화자, 정확한 화자 식별 및 회의록용 타임스탬프 필요

입력 분석:

  • 90분 → 청크 분할 필요
  • 6명 화자 → 화자 분리 한도 이내
  • 비즈니스 맥락 → AssemblyAI 사용 (용어 처리)

의사 결정 경로:

  1. 길이 > 30분 → 배치 처리 필요
  2. 화자 수 = 6 → 화자 분리 가능
  3. 비즈니스 도메인 → AssemblyAI Universal-2 선택
  4. 높은 정확도 필요 → 화자 레이블 + 스마트 포매팅 활성화

구현:

# 1단계: 전처리 (전문가 포착: 오디오 레벨 정규화)
ffmpeg -i meeting.mp4 -ar 16000 -ac 1 -filter:a "volume=0.8" meeting_clean.wav

# 2단계: 오버랩으로 청크 분할 (초보자는 전체 파일을 처리함)
from pydub import AudioSegment
audio = AudioSegment.from_wav("meeting_clean.wav")
chunks = []
for i in range(0, len(audio), 25*60*1000):  # 25분 청크
    chunk = audio[i:i+27*60*1000]  # 2분 오버랩으로 27분
    chunks.append(chunk)

# 3단계: 화자 분리로 전사
results = []
for chunk in chunks:
    response = assemblyai_client.transcribe(
        chunk, speaker_labels=True, auto_punctuation=True,
        dual_channel=False, speaker_labels_max=8
    )
    results.append(response.get_paragraphs())

# 4단계: 오버랩 세그먼트 병합 (초보자가 놓치는 전문가 단계)
merged = merge_overlapping_transcripts(results, overlap_seconds=120)

전문가 vs 초보자:

  • 초보자: 90분 파일을 직접 처리 → OOM 충돌 또는 낮은 정확도
  • 전문가: 오버랩으로 청크 분할, 청크 간 화자 일관성 검증, 먼저 오디오 정규화

품질 게이트

  • 알려진 정답이 있는 테스트 샘플에서 WER(단어 오류율) < 5%
  • 화자 정확도 > 90% (정답이 있는 경우 각 발화에 대한 올바른 화자 ID)
  • 스트리밍 구현의 경우 종단 간 실시간 지연 시간 < 2초
  • SRT/VTT 파일 검증 통과 (올바른 타임스탬프, 중복 세그먼트 없음)
  • 오디오 전처리 완료: 16kHz 모노 WAV/FLAC 형식 확인
  • VAD 매개변수 조정: 샘플에서 무음 감지 오탐률 < 10%
  • 최대 2시간 파일에 대해 메모리 사용량 < 8GB (청크 분할 정상 작동)
  • API 오류 처리 테스트: 타임아웃, 재시도, 할당량 초과 처리
  • 화자 분리 화자 수가 예상과 일치 (±1 화자 허용 오차)
  • 출력 타임스탬프가 100ms 정확도 내에서 원본 오디오와 정렬

사용 불가 경계

이 스킬은 다음에 사용하면 안 됩니다:

  • 텍스트-음성 합성 → 대신 voice-audio-engineer 사용
  • 음악 전사 또는 가사 추출 → 음악 AI 모델의 경우 ai-engineer 사용
  • 전사 없는 오디오 분류 → 오디오 분류의 경우 ai-engineer 사용
  • 실시간 번역 (전사 + 번역) → language-translator 스킬과 결합
  • 음성 생체 인식 또는 화자 식별 → 화자 인식 모델의 경우 ai-engineer 사용
  • 오디오 품질 향상 또는 노이즈 제거 → 오디오 처리의 경우 voice-audio-engineer 사용

다음 경우에 위임하세요:

  • 맞춤형 웨이크 워드 감지 필요 → voice-audio-engineer
  • 오디오 핑거프린팅 필요 → data-pipeline-engineer
  • 음성 어시스턴트 구축 → voice-audio-engineer + conversation-designer
  • 10,000시간 이상 처리 → 오케스트레이션을 위해 data-pipeline-engineer

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

curiositech/windags-skills

Expert in 2000s-era music visualization (Milkdrop, AVS, Geiss) and modern WebGL implementations. Specializes in Butterchurn integration, Web Audio API AnalyserNode FFT data, GLSL shaders for audio-reactive visuals, and psychedelic generative art. Activate on "Milkdrop", "music visualization", "WebGL visualizer", "Butterchurn", "audio reactive", "FFT visualization", "spectrum analyzer". NOT for simple bar charts/waveforms (use basic canvas), video editing, or non-audio visuals.

curiositech/windags-skills

Expert legal research agent for finding and scraping expungement data state by state. Knows authoritative sources, URL patterns, Firecrawl configuration, and 2026 legal landscape.

curiositech/windags-skills

Expert in 3D computer vision labeling tools, workflows, and AI-assisted annotation for LiDAR, point clouds, and sensor fusion. Covers SAM4D/Point-SAM, human-in-the-loop architectures, and vertical-specific training strategies. Activate on '3D labeling', 'point cloud annotation', 'LiDAR labeling', 'SAM 3D', 'SAM4D', 'sensor fusion annotation', '3D bounding box', 'semantic segmentation point cloud'. NOT for 2D image labeling (use clip-aware-embeddings), general ML training (use ml-engineer), video annotation without 3D (use computer-vision-pipeline), or VLM prompt engineering (use prompt-engineer).

curiositech/windags-skills

Implement WCAG 2.2 AA/AAA compliance with automated testing, keyboard navigation, screen reader support, and focus management. Activate on: accessibility audit, WCAG compliance, keyboard navigation, screen reader, aria attributes, axe-core, focus trap. NOT for: design-level accessibility review (use design-accessibility-auditor), color contrast only (use css-in-js-architect).

curiositech/windags-skills

Time-blind friendly planning, executive function support, and daily structure for ADHD brains. Specializes in realistic time estimation, dopamine-aware task design, and building systems that actually work for neurodivergent minds.

curiositech/windags-skills

Designs digital experiences for ADHD brains using neuroscience research and UX principles. Expert in reducing cognitive load, time blindness solutions, dopamine-driven engagement, and compassionate design patterns. Activate on 'ADHD design', 'cognitive load', 'accessibility', 'neurodivergent UX', 'time blindness', 'dopamine-driven', 'executive function'. NOT for general accessibility (WCAG only), neurotypical UX design, or simple UI styling without ADHD context.

curiositech/windags-skills

>- Apply crisis decision-making research to agent routing, uncertainty triage, and coordination failure analysis in time-pressured systems. Use when diagnosing handoff failures, analytical paralysis, or expert judgment under incomplete information. NOT for routine coding, simple CRUD design, or static single-agent tasks with complete information.

curiositech/windags-skills

Extend and modify the admin dashboard, developer portal, and operations console. Use when adding new admin tabs, metrics, monitoring features, or internal tools. Activates for dashboard development, analytics, user management, and internal tooling.

curiositech/windags-skills

Conversation patterns and interaction protocols for multi-agent systems. Covers request/response, pub/sub, blackboard, delegation chains, debate, critique, consensus, fan-out/fan-in, supervisor-worker, and peer negotiation. Deep analysis of AutoGen conversation patterns, CrewAI delegation, LangGraph state passing, and FIPA-ACL performatives. Teaches how to design what agents say to each other and in what order. Activate on: "agent conversation", "agent protocol", "multi-agent debate", "agent delegation", "supervisor worker pattern", "agent voting", "consensus protocol", "fan-out fan-in", "agent negotiation", "blackboard pattern", "agent dialogue", "conversation topology", "agent handoff". NOT for: wire format or serialization (use agent-interchange-formats), orchestration infrastructure (use agentic-infrastructure-2026), single agent behavior (use agentic-patterns).

curiositech/windags-skills

Meta-agent for creating new custom agents, skills, and MCP integrations. Expert in agent design, MCP development, skill architecture, and rapid prototyping. Activate on 'create agent', 'new skill', 'MCP server', 'custom tool', 'agent design'. NOT for using existing agents (invoke them directly), general coding (use language-specific skills), or infrastructure setup (use deployment-engineer).

curiositech/windags-skills

AI-powered calendar management and agent-based scheduling coordination. Covers calendar APIs (Google Calendar, CalDAV/iCal), AI scheduling assistants (Reclaim, Clockwise, Motion, Cal.com), building custom calendar agents with MCP, multi-calendar merging, timezone management, focus block protection, meeting fatigue detection, and agent-to-agent meeting negotiation protocols. Activate on: "calendar agent", "AI scheduling", "calendar coordination", "meeting scheduling", "calendar API", "focus time protection", "calendar optimization", "Google Calendar MCP", "Reclaim", "Clockwise", "Motion", "Cal.com", "smart scheduling", "calendar-aware agent", "timezone scheduling", "agent negotiation meetings". NOT for: manual calendar UI component design (use form-validation-architect), project management scheduling or Gantt charts (use project-management-guru-adhd), general time-tracking or pomodoro apps (use adhd-daily-planner for time-awareness), building the agent itself from scratch (use agent-creator).

curiositech/windags-skills

Build and adopt production AI agent infrastructure in 2026. Covers framework selection (LangGraph, CrewAI, AutoGen, MCP), orchestration patterns, evaluation, observability, memory systems, and tool use. Also covers the SOCIAL dimension: how to sell agent infrastructure internally, change management, measuring ROI, building trust in autonomous systems, and scaling adoption across teams. Activate on: "agent infrastructure", "agent framework comparison", "which agent framework", "sell AI tools internally", "agent adoption", "agent observability", "agent evaluation", "MCP architecture", "agentic mesh", "enterprise AI agents", "AI change management", "agent ROI". NOT for: building specific agents (use ai-engineer), designing agent behavior patterns (use agentic-patterns), prompt tuning (use prompt-engineer).

curiositech/windags-skills

Fundamental patterns for effective agentic behavior. Teaches decomposition, tool orchestration, error recovery, context management, quality self-assessment, and knowing when to stop. Model-agnostic principles that make any agent more effective regardless of domain. Activate on: "how should I structure this agent", "agentic workflow", "agent patterns", "multi-step task", "tool orchestration", "/agentic-patterns", "decompose this", "agent best practices", "chain of actions", "when should the agent stop", "agent loop design". NOT for: creating agent infrastructure (use agent-creator), building DAGs (use windags-architect), specific tool implementation.

curiositech/windags-skills

Automated discovery and matching of agent skills for dynamic task routing and capability assessment

curiositech/windags-skills

Cryptographic security for agentic systems — zero-trust agent networking, signed message envelopes (JWS/JWE), capability-based security (ocaps), Merkle tree audit trails, WASM sandboxing, and formal verification. Covers CLI dev tool security, mTLS between agents, permission boundaries (least privilege for AI agents), and supply chain security for skills/plugins. Activate on: "agent security", "zero trust agents", "secure agent communication", "capability-based security", "ocap", "signed messages between agents", "agent audit trail", "sandbox agent execution", "agent permissions", "mTLS agents", "cryptographic verification", "agent supply chain", "OWASP agentic", "prove agent did X", "tamper-proof agent logs". NOT for: application-level SAST scanning (use security-auditor), network firewall rules (use infrastructure), SOC2/HIPAA compliance (organizational), or prompt injection defense (use prompt-engineer).

curiositech/windags-skills

Data structures and serialization formats for agent-to-agent communication. Covers message envelopes, structured output schemas, capability declarations, task handoff payloads, error/retry signaling, and context windows as data structures. Deep comparison of A2A protocol, MCP, OpenAI function calling, and LangChain message types. Teaches when to use rigid schemas vs free-form with validation, typed vs untyped, streaming vs batch. Activate on: "agent message format", "agent communication schema", "agent-to-agent protocol", "A2A protocol", "MCP message format", "structured output for agents", "agent interop", "interchange format", "agent serialization", "task handoff format", "capability declaration". NOT for: what agents say to each other (use agent-conversation-protocols), orchestration topology (use multi-agent-coordination), building agent infrastructure (use agentic-infrastructure-2026).

curiositech/windags-skills

Logic-based agent programming language implementing BDI architecture for practical autonomous agent development

curiositech/windags-skills

>- Design AgentSpeak(L)-style BDI agents with context-guarded plans, selection functions, and intention stacks. Use for interruptible autonomy, agent policy, and multi-agent orchestration in dynamic environments. NOT for simple rule engines, static planners, or centralized workflows.

curiositech/windags-skills

Foundational concurrent computation model where actors communicate exclusively through asynchronous message passing

curiositech/windags-skills

license: Apache-2.0 NOT for unrelated tasks outside this domain.

관련 스킬