{"slug": "show-hn-ghostmeet-self-hosted-meeting-transcription-and-summaries", "title": "Show HN: Ghostmeet – Self-hosted meeting transcription and summaries", "summary": "Ghostmeet, a self-hosted meeting transcription and summarization tool, captures audio from a browser tab, transcribes it locally with Whisper, and summarizes it with Claude on demand, ensuring audio never leaves the user's machine. The open-source tool runs via Docker and a Chrome extension, supporting apps like Meet, Zoom, and Teams without requiring a bot to join the call.", "body_md": "# The invisible\n\nAI meeting\n\nassistant.\n\nLive captions and smart summaries for any meeting — captured silently from your browser tab, transcribed locally with Whisper, summarized with Claude on demand.\n\nYour audio never leaves your machine.\n\n## Press play.\n\nIt works like this.\n\nA fully scripted re-enactment of a real session. All speakers, names, and content are fictional.\n\n## Six things it does,\n\nquietly, on your laptop.\n\n### Real-time transcription\n\nWhisper STT runs in a loop, updating captions every 10 seconds. tiny → large models, pick your size.\n\n### AI-powered summaries\n\nKey decisions, action items, next steps. On demand — hit Summarize when the meeting ends.\n\n### Meeting context\n\nAttach an agenda, a design doc, or a prior transcript. The summarizer actually reads them.\n\n### 100% local audio\n\nAudio is captured, streamed, and transcribed on your machine. Nothing is sent to a server you don't own.\n\n### One-command setup\n\ndocker compose up -d. Three services, one port, ready in 30 seconds once the image pulls.\n\n### Invisible to others\n\nRuns as a Chrome side panel. No bot joins the call. No one in the meeting knows it's there.\n\n## From a tab playing audio,\n\nto a structured summary,\n\nwithout leaving your machine.\n\n### Browser tab\n\nAny tab that plays audio — Meet, Zoom, Teams, a podcast, a training video.\n\n### Extension captures\n\nChrome side panel taps the tab's audio stream directly. No microphone, no screen.\n\n### WebSocket → local\n\nAudio frames stream to a FastAPI backend running on localhost:8877.\n\n### Whisper transcribes\n\nfaster-whisper processes 10-second chunks. Captions appear in the side panel as they're ready.\n\n### Claude summarizes\n\nWhen you click Summarize, the full transcript + any attached context goes to Claude. Structured output returns.\n\nIf you enable AI summaries, your *transcript text* (never audio) is sent to the Claude API using *your own key*. That is the complete list of times your data leaves your machine.\n\n## Running in under\n\na minute.\n\nClone, start the backend, load the Chrome extension. That's the whole setup.\n\n``` bash\n 1$ git clone https://github.com/Higangssh/ghostmeet.git 2$ cd ghostmeet 3$ cp .env.example .env  # add your Anthropic key (optional) 4$ docker compose up -d\n```\n\n`base`\n\n). Subsequent starts are instant.## Three meetings a week\n\nyou stop taking notes for.\n\n### Standups that write themselves.\n\nStart the panel, join the daily. Walk away with structured notes and a list of action items tagged by owner. No copy-paste into Notion.\n\n### Coaching you actually re-read.\n\nPrivate conversations deserve private tooling. Your weekly 1:1 transcript lives on your laptop, not in a vendor's S3 bucket.\n\n### User interviews, without the compliance review.\n\nCustomer conversations often come with NDAs that forbid third-party transcription services. ghostmeet sidesteps the entire category.\n\n## Fair questions,\n\ndirect answers.\n\n## Is my audio really private?\n\n## Which meeting apps are supported?\n\n## Do I need a GPU?\n\n## Why self-host at all?\n\n## Can I host the backend on a separate machine?\n\n## What about speaker diarization?\n\n## Does it work offline?\n\n## Keep your meetings\n\non your own machine.\n\nghostmeet is free, open source, and runs entirely on your machine. Clone it, run it, keep it.", "url": "https://wpnews.pro/news/show-hn-ghostmeet-self-hosted-meeting-transcription-and-summaries", "canonical_source": "https://ghostmeet.sshlab.dev/", "published_at": "2026-07-08 01:27:51+00:00", "updated_at": "2026-07-08 01:59:39.139332+00:00", "lang": "en", "topics": ["ai-tools", "large-language-models", "ai-products", "developer-tools", "ai-infrastructure"], "entities": ["Ghostmeet", "Whisper", "Claude", "Anthropic", "Chrome", "Docker", "FastAPI", "Notion"], "alternates": {"html": "https://wpnews.pro/news/show-hn-ghostmeet-self-hosted-meeting-transcription-and-summaries", "markdown": "https://wpnews.pro/news/show-hn-ghostmeet-self-hosted-meeting-transcription-and-summaries.md", "text": "https://wpnews.pro/news/show-hn-ghostmeet-self-hosted-meeting-transcription-and-summaries.txt", "jsonld": "https://wpnews.pro/news/show-hn-ghostmeet-self-hosted-meeting-transcription-and-summaries.jsonld"}}