null
README.md * [Documentation] Added "Screenshots" section after introduction * [Markdown] Inserted two image references pointing to new screenshots directory screenshots/chat-example-1.png screenshots/chat-example-2.png |
||
|---|---|---|
| screenshots | ||
| api.lua | ||
| init.lua | ||
| README.md | ||
| ui.lua | ||
DeepSeek Chat for Neovim
A Cursor IDE-style chat interface for Neovim that integrates with DeepSeek API.
Screenshots
Features
- 🎨 Beautiful floating window UI similar to Cursor IDE
- 💬 Chat interface with message history
- 🤖 DeepSeek API integration
- ⌨️ Keyboard shortcuts for easy navigation
- 📝 Markdown support in messages
Setup
-
Set your DeepSeek API key:
export DEEPSEEK_API_KEY="your-api-key-here"Or configure it directly in
init.lua:deepseek_chat.setup({ api_key = "your-api-key-here", -- ... other options }) -
Open the chat:
- Press
<leader>dc(default leader is space, sodc) - Or call
:lua require("nvim-deepseek-chat").toggle()
- Press
Configuration
You can customize the chat interface in your init.lua:
deepseek_chat.setup({
api_key = os.getenv("DEEPSEEK_API_KEY") or "",
api_url = "https://api.deepseek.com/v1/chat/completions",
model = "deepseek-chat",
max_tokens = 4096,
temperature = 0.7,
width = 80, -- Chat window width
height = 0.8, -- Percentage of screen height
position = "right", -- "right", "left", or "center"
border = "rounded", -- Border style
})
Usage
- Open/Close:
<leader>dcor:lua require("nvim-deepseek-chat").toggle() - Send message: Type in the input box and press
Enter - Close: Press
Escorqin the chat window
Requirements
- Neovim 0.8+
nui.nvimplugin (already in your config)curlcommand (for API requests)- DeepSeek API key
Keybindings
<leader>dc- Toggle DeepSeek ChatEnter- Send message (when in input box)Escorq- Close chat window

