Warning
This plugin is in early alpha development stage. Features may be incomplete, unstable, or change without notice. While basic functionality is available, you may encounter bugs, performance issues, or unexpected behavior. Current platform support is limited to MacOS and Linux, with Windows to be added at a later date.
-
Both Vim and Neovim are supported, but the plugin may require a newer version than what's installed on your system by default.
-
Install Node.js, version 22.0.0 or newer, which is a required dependency.
-
Install the plugin
-
Manual installation (Vim):
git clone https://github.com/augmentcode/augment.vim.git \ ~/.vim/pack/augment/start/augment.vim
-
Manual installation (Neovim):
git clone https://github.com/augmentcode/augment.vim.git \ ~/.config/nvim/pack/augment/start/augment.vim
-
Vim Plug:
Plug 'augmentcode/augment.vim'
-
Lazy.nvim:
{ 'augmentcode/augment.vim' },
-
-
Open Vim and sign in to Augment with the
:Augment signin
command.
Open a file in vim, start typing, and use tab to accept suggestions as they appear.
The following commands are provided:
:Augment status " View the current status of the plugin
:Augment signin " Start the sign in flow
:Augment signout " Sign out of Augment
:Augment enable " Globally enable suggestions (on by default)
:Augment disable " Globally disable suggestions
:Augment log " View the plugin log
:Augment chat " Start a chat with Augment AI
The chat command allows you to interact with Augment AI in a conversational manner. You can use it in two ways:
-
Direct command with message:
:Augment chat How do I implement binary search?
-
With selected text:
-
Select text in visual mode
-
Type
:Augment chat
followed by your question about the selection
-
The response will appear in a new buffer with markdown formatting. Note that chat is currently limited to single-turn conversations - each chat command starts a new conversation.
Workspace folders help Augment understand your codebase better by providing
additional context. You can configure workspace folders by setting
g:augment_workspace_folders
in your vimrc:
let g:augment_workspace_folders = ['/path/to/project', '~/another-project']
Workspace folders can be specified using absolute paths or paths relative to your home directory (~). Adding your project's root directory as a workspace folder helps Augment generate completions that match your codebase's patterns and conventions.
Note: This option must be set before the plugin is loaded.
By default, tab is used to accept a suggestion. If you want to use a
different key, create a mapping that calls augment#Accept()
. The function
takes an optional arugment used to specify the fallback text to insert if no
suggestion is available.
" Use Ctrl-Y to accept a suggestion
inoremap <c-y> <cmd>call augment#Accept()<cr>
" Use enter to accept a suggestion, falling back to a newline if no suggestion
" is available
inoremap <cr> <cmd>call augment#Accept("\n")<cr>
The default tab mapping can be disabled by setting
g:augment_disable_tab_mapping = v:true
before the plugin is loaded.
If another plugin uses tab in insert mode, the Augment tab mapping may be
overridden depending on the order in which the plugins are loaded. If tab isn't
working for you, the imap <tab>
command can be used to check if the mapping is
present.
This repository includes two main components:
- Vim Plugin: This includes all files in the repository except
dist
folder. These files are licensed under the MIT License. - Server (
dist
folder): This file is proprietary and licensed under a Custom Proprietary License.
For details on usage restrictions, refer to the LICENSE.md file.
We encourage users to report any bugs or issues directly to us. Please use the Issues section of this repository to share your feedback.
For any other questions, feel free to reach out to support@augmentcode.com.