Back to browse
GitHub Repository

An AI workspace inside Neovim where every conversation is a document you own.

55 starsLua

I built a full LLM chat client as a Neovim filetype

by StanAngeloff·Apr 1, 2026·3 points·0 comments

AI Analysis

●●SolidNiche GemBig Brain

Conversations as plain .chat files you own—no database, no hidden session state.

Strengths
  • File-based conversation storage means you own and can version every chat session
  • Tree-sitter markdown parsing enables clean navigation without custom UI
  • Credentials via env vars or system keyring, never stored in Lua config
Weaknesses
  • Neovim-only limits audience to terminal-centric developers
  • AI-in-editor space is crowded with Cursor, Continue, and Aider
Target Audience

Neovim users who want AI assistance without leaving their editor

Similar To

Continue · Aider · Cursor

Post Description

I started Flemma because I wanted to bring my AI workload into Neovim.

My workflow started with me living in developer portals - Claude Workbench, OpenAI Platform, Vertex (the horrors of GCP's Console UI!) I would spend hours in these web UIs crafting prompts, iterating on system instructions, maintaining a carefully curated library of sessions. But the browser really wasn't optimised for this kind of interaction. Editing was clunky (muscle memory <C-W> would close the tab instead and wipe my work), going back and forth between the LLM and myself felt off. So I had an idea: what if I could turn a Markdown document into an LLM chat interface?

At first I thought that would be enough - just do what I was already doing in the browser... but in Neovim. And sure enough having been accustomed to my own setup for the last decade I immediately felt a productivity boost. Writing functional requirement documents, statements of work, deep research across different systems - all of it felt better in "my" editor.

I then had a taste of Aider... and Claude Code... and all the other tools that were coming out. And Flemma felt lacking. So I started building: tool support, better conversation organisation, a proper UI to tame the noise that tool calls introduce.

Today, Flemma is a fully evolved AI workspace. It runs autonomous agent loops, interacts with multiple LLMs (Anthropic, OpenAI, Vertex, Moonshot) and lets you switch providers mid-conversation - something I do occasionally during research, asking two or three different models for their take on a problem, then combining findings into a final document.

Under the hood, .chat files are just Markdown with role markers (@You:, @Assistant:), but Flemma treats them as a proper filetype with its own parser, AST, LSP server, template engine and sandboxed tool execution. The buffer *is* the state - no hidden database, no JSON history, no server process. Your conversations are portable, greppable and version-controllable (I backup mine in Git). You can close Neovim, reopen the file a week later and pick up exactly where you left off.

It's got prompt caching, extended thinking, 7 built-in tools, a layered config system that gets out of your way and a UI that keeps getting refined to bring the noise down and make long agent sessions pleasant to work in (not quite there yet).

Flemma is for anyone who'd rather stay in Neovim. If that's you, I'd love to hear what you think.

Repo: https://github.com/Flemma-Dev/flemma.nvim

Demo: http://flemma.dev/flemma.nvim/blob/develop/README.md#-flemma

Similar Projects

AI/ML●●Solid

LLM Memory Solved?

130× more facts per GiB than vectors, but no semantic similarity matching.

Big BrainWizardry
gary23w
202d ago
Infrastructure●●Solid

Fast Database for Agents

LSM + LLM summarization for agent logs; clever architecture, but zero adopters yet.

WizardryBig BrainNiche Gem
wanderinglight
103mo ago