VoxNote — Meeting Transcription & AI Summary

by Moonjuun
5
4
3
2
1
New Plugin

Description

This plugin has not been manually reviewed by Obsidian staff. Transcribe meeting recordings via Deepgram, then generate template-based AI summaries via Gemini.

Reviews

No reviews yet.

Stats

stars
downloads
0
forks
0
days
NaN
days
NaN
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
0
commits

Latest Version

Invalid date

Changelog

README file from

Github

VoxNote — Meeting Transcription & AI Summary

An Obsidian plugin that turns meeting recordings into Markdown notes — speech-to-text via Deepgram with per-speaker timestamps, plus an optional AI summary step via Google Gemini that drops a structured digest next to the transcript.

🇰🇷 한국어 가이드: README-ko.md

Migrating from "Deepgram Meeting STT"? The plugin was relisted as VoxNote in v2.0.0 (id voxnote). The old listing has been withdrawn from the Obsidian community directory, so the old plugin will not auto-update to 2.0.0. To switch: uninstall the old plugin → search "VoxNote" in Community plugins → install → re-enter your Deepgram + Gemini API keys. Your VoxNote/ vault folder (recordings, transcripts, templates, summaries) is untouched.


What you get

  • Audio → transcript: drop an audio file, right-click, pick a title — get back a Markdown note with per-speaker [HH:MM:SS] timestamps.
  • Audio → transcript → AI summary (optional): in the same right-click, also produce a structured summary note (action items, decisions, key quotes — whatever the template says) backlinked to the transcript.
  • File-based summary templates under VoxNote/Templates/. Each .md declares its own prompt and output skeleton with {{placeholders}}; you edit them like any other note. Favorites surface as flat menu items; the rest sit in an AI 요약 ▸ submenu. Three starters are seeded on first run (Meeting, Interview, Lecture).
  • Workspace stays clean: VoxNote/ (Audio · STT · Templates · AI-Summaries) is auto-created at the vault root, and .gitignore rules are added so recordings and your API keys never enter vault git sync.
  • Bilingual UI — Korean / English / auto-follow Obsidian locale.
  • Zero Retention by default for Deepgram; AI summary is fully optional and gated on having a Gemini key set.
  • Mobile compatible — works on Obsidian for iOS / Android.

The plugin keeps working as a pure STT tool. If you don't set a Gemini key, no AI menus appear and nothing leaves your machine except the audio you choose to transcribe.

Install

  1. Settings → Community plugins → Browse
  2. Search for "VoxNote"
  3. Install + Enable

Setup

On first enable, a one-time consent modal explains what's sent to Deepgram and auto-creates an VoxNote/ workspace at the vault root — including Templates/ (seeded with three starter summary templates) and AI-Summaries/. It also writes .gitignore rules so recordings and your API keys stay out of vault git sync.

1. Deepgram API key (required for STT)

  1. Sign up at Deepgram Console — free tier includes a $200 credit (~770 hours of nova-3).

    Deepgram API Keys page

  2. API Keys → Create New API Key (any name, Member permission is enough).

    Create API Key dialog

  3. Paste into Settings → VoxNote → "Deepgram API key" → click Validate.

    Plugin settings tab

2. Gemini API key (optional — only for AI summary)

Leave this blank if you only want STT. To enable AI summary:

  1. Open Google AI Studio → API keys and create one.
  2. Paste into Settings → VoxNote → "Gemini API key".
  3. Pick a model — gemini-2.5-flash (default, fast & cheap) or gemini-2.5-pro (higher quality).

The AI menus stay hidden until a key is set.

Usage

Transcribe only

  1. Place an audio file (mp3, m4a, mp4, wav, flac, ogg, opus, webm, aac) into VoxNote/Audio/.
  2. Right-click the file → VoxNote ▸ Transcribe only.
  3. Enter a title → Enter.
  4. After ~1–2 minutes the transcribed note appears in VoxNote/STT/ and opens automatically.

Right-click → VoxNote submenu

The same flow is available from the command palette (Cmd+P / Ctrl+P) → "Transcribe audio → meeting note".

If you copied the file via Finder/Explorer and it doesn't appear in the sidebar right away, run Cmd+P"Reload app without saving" first.

Transcribe + summarize in one go (AI summary set up)

  1. Right-click an audio file → VoxNote ▸ ⭐ Transcribe + AI summary: Meeting (favorite templates surface flat; others live under AI summary ▸).
  2. Enter a title.
  3. After STT finishes, the transcript is fed to Gemini with the template's prompt.
  4. Two notes appear: the transcript in VoxNote/STT/, the summary in VoxNote/AI-Summaries/{title} (요약).md with a source: "[[...]]" backlink to the transcript.

If STT fails, nothing else runs. If only the summary step fails, the transcript is preserved and you get a notice.

Re-summarize an existing note

Right-click any markdown note → VoxNote ▸ AI summary: <template> — same flow, but the note's body is the input transcript. Useful for trying a different template, or summarizing notes that weren't produced by this plugin.

Output examples

Transcript (VoxNote/STT/...):

---
date: 2026-05-13
type: meeting
tags: [meeting, stt]
duration: 28m 41s
language: ko
source: [[VoxNote/Audio/standup.m4a]]
speakers: ["Speaker 1", "Speaker 2"]
---

# Stand-up 2026-05-13

**Speaker 1** [00:00:01 - 00:00:08]
Good morning, let's start with the status updates.

**Speaker 2** [00:00:09 - 00:00:14]
Sure, I'll go first.

Summary (VoxNote/AI-Summaries/..., using the Meeting template):

---
source: "[[VoxNote/STT/Stand-up 2026-05-13]]"
template: "Meeting"
date: 2026-05-13
language: Korean
type: ai-summary
---
# Stand-up 2026-05-13

> Source: [[VoxNote/STT/Stand-up 2026-05-13]] · 2026-05-13 · 28:41

## Summary
- Status updates from each team
- ...

## Decisions
- ...

## Action Items
- [ ] @Speaker1 — follow up with ...

Customize a template

Edit any .md in VoxNote/Templates/:

---
name: "Meeting"
favorite: true        # show flat in the right-click menu
prompt: |
  Summarize the transcript as meeting minutes.
  - decisions: clear, one bullet per decision.
  - action_items: use checkbox markdown; include owner name when present.
placeholders:
  summary: "3-5 bullet overview of the discussion"
  decisions: "Bullet list of decisions made"
  action_items: "Checkbox list of action items (with owner if mentioned)"
---
# {{title}}

> Source: {{source}} · {{date}} · {{duration}}

## Summary
{{summary}}

## Decisions
{{decisions}}

## Action Items
{{action_items}}

The placeholders you declare here become the JSON schema Gemini is forced to fill — no free-form text drift. Add as many as you want.

To scaffold a new template with every system placeholder documented, run the command palette → "새 요약 템플릿 만들기 (Create new summary template)".

Rename speakers

Speakers are labelled Speaker 1, Speaker 2 by default. To replace with real names:

  1. Open the meeting note.

  2. Command palette → "Rename speaker (current note)".

    Rename speaker command

  3. Pick the speaker from the dropdown (auto-detected from the note's frontmatter).

  4. Type the real name → click Replace.

Every occurrence in both the body and the speakers frontmatter array is rewritten.

Settings

Setting Description Default
UI language Plugin UI (Korean / English / auto-follow Obsidian) auto
Deepgram API key Required for STT. Stored locally in data.json (none)
Note folder Vault-relative STT output path VoxNote/STT
Template path Optional custom STT note template (built-in template)
Audio language Primary recording language ko
Deepgram model nova-3 (latest) / nova-2 (stable) nova-3
Speaker diarization Produce per-speaker transcripts true
Zero Retention Ask Deepgram to discard data after processing true
Gemini API key Optional. Enables the AI summary menus (none)
Gemini model gemini-2.5-flash (fast/cheap) / gemini-2.5-pro (higher quality) gemini-2.5-flash
Templates folder Where summary templates live VoxNote/Templates
Summaries folder Where AI summary notes are written VoxNote/AI-Summaries

See FEATURES.md for the full placeholder reference, AI summary deep-dive, accuracy guide (audio quality, speaker count, recording-room checklist), and mobile usage notes.

Security & Privacy

  • Audio is sent to Deepgram over HTTPS for processing. Transcript text is sent to Gemini only if you trigger an AI summary.
  • Your API keys are stored locally as plain JSON in .obsidian/plugins/voxnote/data.json (Obsidian plugin standard). The plugin auto-adds this path to your vault's .gitignore.
  • The VoxNote/ folder is also auto-added to .gitignore so recordings, transcripts, and summaries never enter vault git sync.
  • Deepgram complies with GDPR / SOC 2 Type II / HIPAA (with BAA) / CCPA. See Deepgram Trust Center and Privacy Policy.
  • Zero Retention is on by default for Deepgram. Guaranteed immediate effect on Growth or higher Deepgram plans; free / Pay-as-you-go tier may still retain data per standard policy (~30 days).
  • Gemini API usage is governed by Google's Gemini API Terms and Privacy Policy. Free-tier requests may be used to improve Google's models — use the paid tier if that's a concern.
  • Please obtain consent from meeting participants before recording and transmitting audio to a third-party API.

Cost

Approximate cost with nova-3:

Length Deepgram Gemini (2.5-flash, summary) Total
30 min $0.13 ~$0.005 ~$0.14
1 hour $0.26 ~$0.01 ~$0.27
2 hours $0.52 ~$0.02 ~$0.54

The free $200 Deepgram credit + Gemini's free tier cover many hours of typical use. See Deepgram Pricing and Gemini API Pricing for current rates.

License

MIT © 2026 Moonjuun