ogpt.nvim
무엇인가
ogpt.nvim은 Neovim 편집기 안에서 LLM 호출을 편집 동작으로 묶는 Lua 플러그인이다. 문법 교정, 번역, 키워드 생성, docstring 작성, 테스트 추가, 코드 최적화, 요약, 버그 수정, 코드 설명, 가독성 분석 같은 작업을 선택 영역에 대해 실행하도록 액션 목록과 제공자 설정을 규율한다.
어떻게 동작하나
설정은 Lua 테이블로 주입한다. default_provider로 기본 제공자를 정하고 providers 테이블에 ollama, openai, gemini, anthropic, textgenui 등의 api_host와 api_key를 넣는다. 액션은 JSON 파일이나 플러그인 설정으로 정의하며, 선택 영역은 {{{selection}}}, 지시문은 {{{instruction}}} 플레이스홀더로 템플릿에 치환된다. telescope.nvim이 액션·페르소나 선택 UI를, nui.nvim이 팝업 창을 담당한다. 세션 창, 시스템 입력 창, 파라미터 창, 템플릿 창이 분리되어 있어 대화 상태와 실행 파라미터를 편집 중에 바꿀 수 있다.
무엇과 다른가
SKILL.md나 CLAUDE.md처럼 에이전트에 규칙을 주입하는 파일이 아니다. 규칙 파일이 에이전트의 판단을 사전에 제약하는 방식이라면, 이 플러그인은 사용자가 액션을 골라 실행하는 편집기 측 도구다. 프롬프트를 매번 직접 타이핑하는 것과 달리 액션 정의를 JSON으로 저장해 재사용하고, 제공자와 모델을 액션마다 다르게 지정할 수 있다.
어떻게 쓰나
lazy.nvim 기준으로 huynle/ogpt.nvim을 VeryLazy 이벤트에 걸고 opts에 default_provider와 providers를 넘긴다. 의존성은 MunifTanjim/nui.nvim, nvim-lua/plenary.nvim, nvim-telescope/telescope.nvim이다. 제공자를 지정하지 않으면 ollama가 기본이고 엔드포인트는 http://localhost:11434, 모델은 mistral:7b가 기본값이다. 원격 Ollama를 쓰면 api_host_cmd 또는 OLLAMA_API_HOST 환경변수로 호스트를 바꾼다. folke/edgy.nvim과 함께 쓰면 OGPT 창을 오른쪽 사이드바에 고정할 수 있다.
전제와 한계
Neovim과 Lua 설정이 전제이고, Ollama 사용 시 curl과 로컬 인스턴스가 필요하다. OpenAI, Gemini, Anthropic, TextGenUI는 각각 API 키를 설정에 넣어야 한다. Claude Code, Codex, Cursor 같은 코딩 에이전트에 규칙을 주입하지 않으며, 에이전트의 자동 실행 훅이나 슬래시 명령 체계와는 연결되지 않는다. 지원 제공자와 액션 목록은 README에 열거된 범위이고, 세부 기본값은 저장소의 lua/ogpt/config.lua를 확인해야 한다.
유사 도구
- codecompanion.nvimNeovim 안에서 LLM과 CLI 에이전트를 채팅 버퍼로 다루는 Lua 플러그인이다. ACP와 MCP를 내장하고 어댑터로 프로바이더를 갈아 끼운다.
- open-webuiOllama와 OpenAI 호환 API를 하나의 웹 화면으로 묶는 셀프 호스팅 AI 플랫폼이다. 플러그인·RAG·RBAC를 내장하고 완전 오프라인 실행을 지원한다.
- lumen에이전트가 파일 전체를 읽는 대신 로컬 임베딩으로 만든 의미 검색 MCP 도구를 쓰게 해, 토큰 비용과 세션 시간을 줄이는 Claude Code 플러그인이다.
- 9router여러 AI 코딩 CLI 도구를 40개 이상 제공자에 연결하고, 구독→저가→무료 순 폴백과 tool_result 압축으로 토큰을 줄이는 로컬 라우팅 프록시다.