frankroeder/parrot.nvim

parrot.nvim 🦜 - the plugin that brings stochastic parrots to Neovim.

解決的問題

parrot.nvim 是一個將大型語言模型(LLM)直接整合至文字編輯工作流程的 Neovim 插件。它提供在不離開編輯器的情況下生成、重寫與 AI 模型對話的功能,同時透過避免背景請求或自主代理,優先保障使用者的隱私與透明性。

工作原理

此插件可連接到多種 OpenAI 相容的 API 端點(包含 OpenAI、Anthropic、Google Gemini、xAI,以及 Ollama 等本地提供者)。主要以兩種模式運作:

  1. 聊天模式:使用者開啟專用的 Markdown 緩衝區進行對話。整個緩衝區內容作為上下文,回應會直接流式傳送到檔案中,並以 .md 檔案形式永久儲存。
  2. 命令模式:使用者可在視覺選取範圍內執行內嵌操作。:PrtRewrite:PrtAppend:PrtPrepend 等命令可根據提示修改程式碼或文字,通常還提供 diff 視圖以預覽變更。

適用對象

希望獲得 AI 輔助編輯與聊天功能,但希望完全掌控傳送到 API 的資料,明確避免分析檔案的「代理式」行為的開發者與 Neovim 使用者。

特色亮點

  • 統一的提供者系統:支援廣泛的 API,包括 OpenAI、Anthropic、Gemini、xAI,以及透過 Ollama 實現的本地服務。
  • 隱私優先:無自動補全,無隱藏的背景請求用於分析檔案。
  • 彈性 API 金鑰管理:支援環境變數、bash 命令與密碼管理器 CLI。
  • 雙模型獨立設定:聊天與互動式命令可分別設定模型,以平衡成本與效能。
  • 持久化對話:對話內容以標準 Markdown 檔案形式儲存。
  • 上下文控制:透過 .parrot.md 檔案支援專案級指令。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案