feat(mcp): implement Prompts capability, Resources, and clean up daemon architecture

This commit is contained in:
Riz Ashraf committed 2026-09-22 21:41:17 +01:00
1 parent 9b9b403ef2
commit 251757f8fc
29 files changed
+1276 -182

No files matched your search

+45
View File
@@ -0,0 +1,45 @@
# Antigravity Neovim MCP Instructions
When connected to this Neovim MCP server (win-nvim or linux-nvim), you have powerful tools to interact directly with the active Neovim editor.
## The Tool Arsenal
The following tools are available (many should be agerTools):
- **File/Buffer Mgmt:**
vim_open_file,
vim_open_buffer,
vim_close_buffer,
vim_split_window,
vim_reload_buffer,
vim_save_buffer
- **State Reading:**
vim_get_active_buffer,
vim_get_cursor,
vim_get_visual_selection,
vim_get_viewport,
vim_get_messages
- **Diagnostics & Visuals:**
vim_set_diagnostics,
vim_highlight_lines,
vim_set_quickfix
- **God Mode:**
vim_execute_lua
## 1. Using Dedicated Tools First
Always prefer the specific dedicated tools (like
vim_open_file,
vim_highlight_lines, etc.) over writing raw Lua scripts. These tools are tested and safe.
## 2. Lua God Mode (
vim_execute_lua)
If you need to access *any* Neovim API that does not have a dedicated tool (e.g., complex buffer edits, changing options, LSP interactions), you MUST use
vim_execute_lua as your escape hatch.
### CRITICAL RULES for
vim_execute_lua:
1. **Never Block:** Never use interactive prompts ( im.fn.input, im.ui.select, im.fn.confirm) or confirmation flags in regex substitutions (e.g., %s/old/new/gc). This will cause the headless MCP bridge to deadlock forever.
2. **Visual Feedback:** Always trigger a notification using ␍equire("notify")("Antigravity: [Action]", "info", { title = "Antigravity" }).
3. **Auto-Save:** If you modify a file buffer, always save it using im.cmd('write') within the same Lua script so external tools can see the changes, unless you explicitly want to pause for manual human review.
4. **Buffer Focus:** When making changes to a specific buffer, always ensure the active window is switched to that buffer, and optionally move the cursor so the human can see the change visually.
## 3. The "Unix is NOT King" Rule
When Neovim is running and you need to perform file read/writes or search and replace within an opened project, **prioritize Neovim tools over basic unix terminal utilities** (like cat, grep, sed, wk, or PowerShell equivalents). Use Neovim as your primary interface to the codebase.