Skip to content

leoric-crown/lima

Repository files navigation

LIMA - Local Intelligent Memo Assistant

Local-first, privacy-focused voice memo to knowledge workflow

What is LIMA? A voice-to-knowledge pipeline that runs entirely on your machine. Record voice memos, get AI-powered transcription and insight extraction, all without sending data to the cloud.

Why local-first?

  • Privacy: Your voice recordings never leave your machine
  • No subscriptions: No API costs, no monthly fees
  • Works offline: Once set up, no internet required
  • You own your data: Plain markdown files, open formats

Quick Start

Prerequisites

Corporate laptops: Docker Desktop requires a paid license for larger organizations. See Getting Started for alternatives.

1. Clone and Setup

git clone https://github.com/leoric-crown/lima.git
cd lima
make setup

The interactive wizard will:

  • Generate .env with secure credentials
  • Build and start Docker services
  • Wait for n8n to be ready
  • Guide you through creating an n8n API key
  • Configure your LLM (LM Studio or Ollama)
  • Import the Voice Memo workflows

2. Activate and Record

  1. Start LM Studio (Developer → Start Server) or ensure Ollama is running
  2. In n8n (http://localhost:5678), open Voice Memo Processor (Speaches) and toggle Active
  3. Open http://localhost:8888/lima/recorder/
  4. Click the microphone, speak, click again to process

Check your output:

cat data/notes/*.md

How It Works

🎤 Voice Recording
      ↓
🗣️ Transcription (Whisper)
      ↓
🤖 AI Analysis (Local LLM)
      ↓
📝 Markdown Note

The workflow:

  1. Transcribes audio via local Whisper (speech-to-text)
  2. Extracts title, summary, key points, action items via local LLM
  3. Generates Obsidian-compatible markdown with YAML frontmatter
  4. Saves to data/notes/ and archives audio to data/audio-archive/

Service URLs

Service URL Purpose
Voice Recorder http://localhost:8888/lima/recorder/ Browser-based recording
n8n http://localhost:5678 Workflow editor
Whisper http://localhost:9000 Transcription API

Common Commands

make setup           # Interactive first-time setup
make up              # Start services
make down            # Stop services
make status          # Check health
make seed            # Import workflows (safe to re-run)

docker compose logs -f         # View all logs
docker compose logs n8n -f     # View n8n logs
docker compose logs whisper -f # View Whisper (Speaches) logs

make whisper-native        # Start Whisper (CUDA/MLX Native) server in background
make whisper-native-stop   # Stop Whisper (CUDA/MLX Native) server
make whisper-native-logs   # Stream Whisper (CUDA/MLX Native) server logs
make whisper-native-status # Check Whisper (CUDA/MLX Native) server status

lms log stream --source server # View LM Studio Server logs

Documentation

Guide Description
Getting Started Detailed setup walkthrough
Customizing Your AI LLM configuration, context windows, prompts
Using on Your Phone Remote access via Tailscale
Where Is My Data? File locations, Obsidian, backups
Recipes Use case examples
Troubleshooting Common issues
Audio Processing Long recordings, ffmpeg
Native Whisper GPU acceleration

For Developers

Resource Description
MCP Setup AI-assisted workflow development
BACKLOG Ideas and future directions

What's Next?

Safe to tinker: If you break a workflow, rename it (to keep your work) or delete it, then run make seed to reimport the defaults. Experiment freely!

The BACKLOG is full of ideas waiting to be explored:

  • Conversational memory query (ask your notes questions)
  • Context-aware routing (auto-categorize memos)
  • Multi-speaker diarization
  • And more...

Stack

  • PostgreSQL 17 with pgvector
  • n8n workflow automation (custom image with ffmpeg)
  • Whisper (Speaches) for transcription
  • Caddy reverse proxy
  • LM Studio or Ollama for local LLM inference

About

LIMA - Local Intelligence Meeting Assistant. Private, offline meeting intelligence.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors