A minimal AI assistant integration for Vim.
Kisuke.vim is a simple Vim plugin designed to bring basic AI capabilities into the editor. It focuses on usability and provides a straightforward way to interact with AI models without unnecessary complexity.
- Multi-session chat interface within Vim
- Support for multiple AI providers and models
- Buffer menu for easy navigation and session management
- File context sharing (mark files to include in prompts)
- Code snippet selection for context
- Syntax highlighting for code blocks in the chat buffer
- Session management (create, switch, delete)
- Web search for LLM calls
- Currently this is available only for anthropic models, but will add this to openai and grok too. Might not add to google, I don't even know if google sdk supports web search probably does but still won't add it
- sonnet-4.5
- sonnet-4
- opus-4.1
- opus-4
- sonnet-3.7
- haiku-3.7
- opus-3.7
- grok-4
- gemini-2.5-pro
- gemini-2.5-flash
- gpt-4.1 (
- gpt-4.1-mini
- gpt-4o
- gpt-4o-mini
- gpt-4-turbo
- gpt-4
- gpt-3.5-turbo
Ensure you have node and yarn installed globally.
npm i -g yarn@latestmkdir -p ~/.vim/pack/plugins/start
cd ~/.vim/pack/plugins/start
git clone https://github.com/dorukozerr/kisuke.vim.git
cd kisuke.vim
yarn build
cd ~Add the following to your .vimrc within the plug#begin() and plug#end() block:
Plug 'dorukozerr/kisuke.vim', { 'do': 'yarn build' }Then run :PlugInstall.
Add the following to your .vimrc within the Vundle plugin section:
Plugin 'dorukozerr/kisuke.vim'Then run :PluginInstall. After installation, navigate to the plugin directory (~/.vim/bundle/kisuke.vim or similar) and run yarn build.
cd ~/.vim/bundle
git clone https://github.com/dorukozerr/kisuke.vim.git
cd kisuke.vim
yarn build
cd ~Kisuke.vim includes comprehensive help documentation. After installation, you can access it by running:
:help kisukeIf the help tags aren't automatically generated during installation, you can generate them manually:
:helptags ALLThis will give you access to detailed information about commands, configuration options, and usage examples.
Kisuke will prompt you for an API key the first time you use a specific provider. Configuration (provider, model, API keys) is stored in ~/.config/kisuke/config.json. You can also manually edit this file.
To configure or change the provider and model, use the buffer menu (accessible via <Leader>ko) or potentially dedicated commands in the future.
Add these recommended mappings to your .vimrc:
" kisuke
nnoremap <Leader>ko :KisukeOpen<CR>
nnoremap <Leader>km :KisukeMarkFocusedFile<CR>
vnoremap <Leader>kh :KisukeMarkHighlighted<CR>
nnoremap <leader>krc :KisukeRemoveLastMarkedCodeBlock<CR>
nnoremap <Leader>kc :KisukeCreateNewSession<CR>
nnoremap <Leader>kd :KisukeDeleteSession<CR>
nnoremap <Leader>krs :KisukeResumeLastSession<CR>
| Mapping | Command | Description | Mode |
|---|---|---|---|
| leader + k + o | :KisukeOpen |
Open Kisuke chat buffer & menu | n |
| leader + k + m | :KisukeMarkFocusedFile |
Mark/unmark focused file for context | n |
| leader + k + h | :KisukeMarkHighlighted |
Mark highlighted code block for context | v |
| leader + k + r + c | :KisukeRemoveLastMarkedCodeBlock |
Remove last added code block from context | n |
| leader + k + c | :KisukeCreateNewSession |
Create new session | n |
| leader + k + d | :KisukeDeleteSession |
Delete current session | n |
| leader + k + r + s | :KisukeResumeLastSession |
Resume the most recent session | n |
Feedback, suggestions, and contributions are welcome! Feel free to open issues or submit pull requests on GitHub.
MIT