ai.nvim
A provider-agnostic ask/stream layer for talking to an AI from inside Neovim -- context assembly (buffer/selection/diagnostics), a streaming answer panel, and one :Ai command, instead of every plugin hand-rolling its own curl calls.
- status
- beta — Beta stage — active development. This repository is past its first shape and in active use, but the surface is not frozen: breaking changes are still possible. Pin a commit or tag if you depend on it.
- category
- AI
- neovim
- 0.10+
- repo
- github.com/StefanBartl/ai.nvim
- commits
- 54
- help
- :help ai
install
{
"StefanBartl/ai.nvim",
opts = {},
} docs/
- BINDINGS.md
- README.md
- architecture.md
- attachments.md
- commands.md
- configuration.md
- health.md
- installation.md
- quickstart.md
- requirements.md
- scope.md
git log
- test docs: second review round -- registry-independent keymap scan, every provider stubbed, wider extractors
- docs vimdoc: bring doc/ai.txt back in line with docs/*.md
- test docs: harden the docs-example spec after review (vacuous checks, portability)
- test docs: execute and cross-check the documented examples against the code (REL-08)
- docs add missing anchor for health.md's configuration section
- docs link back to the wkd family site
- perf ui/panel: stream chunks via incremental buffer writes, not a full rewrite
- feat context: add opts.conflict scope, both merge sides labeled (GS-21)
- fix completion,context: close a dismiss race and an uncaught raise
- fix providers: close the on_done/on_error double-fire gap for all four providers
- ci bump JohnnyMorganz/stylua-action to v5 (Node-20 deprecation)
- ci upload the failure log on a timed-out job too, not just a failed one