
Obsidian Voice Agent
https://github.com/coleam00/obsidian-voice-agent- Category
- AI Agents
- Rank
- No. 2026Tools index
- Pricing
- Open Source
- Type
- AGENT
- Builder
- coleam00
- GitHub
- 33 stars
- Date
About
Voice-powered AI agent for Obsidian that lets you interact with your knowledge base through speech.
What it does
It runs a local React chat interface backed by separate text and voice agents. Both agents can search Markdown notes, match file patterns, inspect metadata, and read complete documents. Text requests travel through a REST API, while voice sessions use LiveKit and OpenAI Realtime.
Why it's ranked here
The design is unusually concrete for a small knowledge assistant: typed and spoken modes share the same retrieval tools, and the interface can show referenced documents during speech. The cost is operational weight. A useful session depends on two runtimes, two package managers, cloud credentials, an OpenAI key, and three running processes.
What's good
Search goes beyond basic keyword lookup. The agent combines a Whoosh full-text index with file-pattern matching, regular-expression search, frontmatter parsing, metadata inspection, and complete note retrieval. Its text prompt also directs the model to cite note paths, which makes answers easier to trace back to source material.
Tradeoffs
Setup requires Python 3.11 or newer, Node.js 20 or newer, uv, pnpm, LiveKit Cloud, and OpenAI Realtime access. The documented launch flow occupies three terminals. The API permits every web origin, and the supplied routes show no authentication. Indexing silently skips unreadable notes, which can hide missing material.
How to use it well
It suits technical Obsidian users who want conversational retrieval from a local Markdown vault and accept running several services. Build the index, use broad search for discovery, then let the agent read specific notes for grounded summaries. It does not cover note creation or editing because the shared tools only search, inspect, and read.
Technical notes+
README.md documents a React 18 and TypeScript frontend, a Python 3.11+ FastAPI backend, LiveKit rooms, Pydantic AI, OpenAI models, and a Whoosh index. frontend/vite.config.ts proxies /api to port 8000, while frontend/src/App.tsx posts text queries to /api/chat. backend/src/api/routes.py exposes /chat, /livekit-token, /index/rebuild, and /health, enables unrestricted CORS, and runs text chat with openai:gpt-4o-mini. backend/src/tools/index.py rebuilds the index from vault Markdown files and stores paths, titles, content, and modification times. backend/src/tools/search.py provides indexed, glob, and regex retrieval; backend/src/tools/documents.py reads frontmatter and file metadata. backend/src/agents/text_agent.py registers all five retrieval tools with Pydantic AI.
Observed
- License
- MIT
- Primary languages
- Python and TypeScript
- Install surface
- Source installation with uv for the backend and pnpm for the frontend
- Interfaces
- React browser interface with text and voice modes, plus a FastAPI REST API
- Runtime requirements
- Python 3.11+, Node.js 20+, LiveKit Cloud, and an OpenAI API key with Realtime API access
- Vault support
- Indexes and reads Markdown files from a configured Obsidian vault
- Search stack
- Whoosh full-text indexing, glob file matching, regex content search, and frontmatter parsing
Read from README.md, frontend/vite.config.ts, frontend/src/App.tsx, frontend/src/main.tsx, backend/src/config.py, backend/src/__init__.py, frontend/src/vite-env.d.ts, backend/src/api/routes.py, backend/src/tools/index.py, backend/src/api/__init__.py, backend/src/tools/search.py, backend/src/tools/__init__.py, backend/src/agents/__init__.py, backend/src/tools/documents.py, backend/src/agents/text_agent.py.
What it can do
Search knowledge base using voice commands
Spoken search query → Relevant notes and documents from Obsidian vault
Create new notes through voice dictation
Spoken note content → New note file in Obsidian vault
Edit existing notes with voice commands
Spoken editing instructions and content → Updated note with modifications applied
Navigate between linked notes using voice
Spoken note names or link references → Navigation to specified notes in Obsidian
Query knowledge base for specific information
Spoken questions about vault content → AI-generated answers based on knowledge base
Add tags and metadata through voice
Spoken tag names and metadata values → Notes with applied tags and metadata
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.