chat.nvim

A lightweight, extensible chat plugin for Neovim with AI integration.

Chat with AI assistants directly in your editor using a clean, floating window interface.

Get Started View on GitHub


✨ Key Features

🧠 Three-Tier Memory

Working, daily, and long-term memory system with automatic extraction and priority-based retrieval.

🔄 Parallel Sessions

Run multiple conversations with different AI models, each maintaining separate context and settings.

🤖 16+ AI Providers

Built-in support for DeepSeek, OpenAI, Anthropic, GitHub AI, and many more AI services.

🛠️ 20+ Tools

File operations, Git integration, web search, memory management, and extensible custom tools.

🔌 MCP Protocol

Native Model Context Protocol support for extended tool capabilities.

💬 IM Integration

Connect Discord, Telegram, Lark, DingTalk, WeCom, and WeChat for remote AI interaction.


🚀 Quick Start

Installation

Using lazy.nvim:

{
  'wsdjeg/chat.nvim',
  dependencies = {
    'wsdjeg/job.nvim', -- Required
    'wsdjeg/picker.nvim', -- Optional but recommended
  },
}

Basic Setup

require('chat').setup({
  api_key = {
    deepseek = 'your-api-key-here',
  },
  allowed_path = vim.fn.getcwd(),
})

Usage

:Chat          " Open chat window
:Chat new      " Start a new session
:Chat prev     " Switch to previous session
:Chat next     " Switch to next session

📊 Project Stats

Metric Status
License GitHub License
Issues GitHub Issues
Release GitHub Release
Activity GitHub commit activity

📚 Documentation

Explore the comprehensive documentation:

  • Getting Started - Installation and quick start guide
  • Configuration - Detailed configuration options
  • Usage - Commands, keybindings, and features
  • Providers - Supported AI providers and custom providers
  • Tools - Built-in tools and custom tool development
  • API - HTTP API and IM integrations

💬 Community


📄 License

chat.nvim is released under the GPL-3.0 License.