AI Notes

pending

by Gabriele De Rosa

Record audio, transcribe it, and enrich your written notes with AI-powered insights.

ā˜… 7 starsUpdated 1mo agoGPL-3.0Discovered via Obsidian Unofficial Plugins
View on GitHub

AI Notes - Obsidian Plugin

An Obsidian plugin to record audio, transcribe it, and enrich your written notes with AI-powered insights.

AI Notes Demo

Features

  • šŸŽ™ļø Audio recording — Record directly from your microphone while editing a note
  • āœļø Transcription — Convert recordings to text using whisper.cpp or any OpenAI-compatible endpoint
  • šŸ¤– AI enrichment — Combine your notes and transcriptions, then summarize and structure them with an LLM
  • šŸ“‚ Organized storage — Recordings are saved in per-note folders inside a configurable vault directory
  • šŸ”Œ Flexible backends — Works with local models (Ollama, whisper.cpp, llama.cpp) or cloud APIs (OpenAI, etc.)

Commands

CommandDescription
Start/Stop recordingToggle microphone recording — audio is embedded in the active note
Transcribe recordingsTranscribe all embedded audio files in the current note
Enrich noteGenerate an AI-powered summary combining your notes and transcriptions

All commands are available via the Obsidian command palette (Ctrl/Cmd + P).

Installation

  1. Open Settings → Community Plugins → Browse
  2. Search for AI Notes
  3. Click Install, then Enable

Manual installation

  1. Download the latest release from GitHub Releases
  2. Extract main.js, manifest.json, and styles.css into your vault at .obsidian/plugins/ai-notes/
  3. Reload Obsidian and enable the plugin in Settings → Community Plugins

Configuration

Open Settings → AI Notes to configure the plugin.

Recording

SettingDescriptionDefault
Recordings folderVault folder where audio files are savedrecordings

Transcription (Whisper)

SettingDescriptionDefault
Whisper endpoint URLwhisper.cpp server (http://host:port) or OpenAI-compatible (http://host:port/v1)http://localhost:8080
Whisper modelModel name (only for OpenAI-compatible endpoints)whisper-1
Whisper API keyOptional API key (only for OpenAI-compatible endpoints)—

Enrichment (LLM)

SettingDescriptionDefault
LLM endpoint URLOpenAI-compatible API base URLhttp://localhost:11434/v1
LLM API keyOptional API key for the endpoint—
LLM modelModel name to use for enrichmentllama3

Usage

1. Record

Open a note and run Start/Stop recording from the command palette. The status bar shows šŸ”“ while recording. Run the command again to stop — the audio file is automatically embedded in your note.

2. Transcribe

Run Transcribe recordings to convert all embedded audio files in the current note to text. Transcriptions appear in collapsible blocks below each recording.

3. Enrich

Run Enrich note to send your written notes and transcriptions to an LLM. The AI-generated summary is appended to your note.

Note structure

The plugin organizes your note like this:

Your written notes here...

## šŸ”“ REC
![[recording-file.webm]]
<details>
<summary>Transcription</summary>
Transcribed text...
</details>

## šŸ¤– AI
AI-generated enrichment...

Privacy First

This plugin does not connect to any external service out of the box. All endpoints are user-configured — nothing is sent anywhere until you explicitly set up and point the plugin to your own services.

Works great with local AI! Use llama.cpp, LM Studio, Ollama, whisper.cpp — or any OpenAI-compatible endpoint — to keep your data entirely on your machine.

  • Transcription: Audio recordings are sent to the Whisper-compatible endpoint you configure.
  • Enrichment: Note content and transcriptions are sent to the LLM endpoint you configure.

You are in full control of where your data goes.

Credits

AI Notes is made with ♄ by derogab and it's released under the GPL-3.0 license.

Contributors

Tip

If you like this project or directly benefit from it, please consider buying me a coffee:
šŸ”— bc1qd0qatgz8h62uvnr74utwncc6j5ckfz2v2g4lef
āš”ļø derogab@sats.mobi
šŸ’¶ Sponsor on GitHub

Stargazers over time

Stargazers over time

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.