vibevim
v0.1.0
Published
Mouse-friendly Neovim workbench for Codex and AI-assisted coding
Maintainers
Readme
Neovim Codex Workbench
A mouse-friendly, desktop-style Neovim configuration for AI-assisted coding. It combines a file explorer, a real centre editor, Codex sessions, independent terminal tabs, inline Git/Codex diffs, media previews, diagnostics, and switchable dark/light themes in one layout.
The default interface is intentionally usable without memorising a leader-key prefix: the header exposes the main actions and global function keys work from normal, insert, visual, and terminal mode.

The screenshot shows the intended three-pane workflow: project files on the left, the active document and diff in the centre, and Codex/agent output on the right.
Highlights
- Codex in the editor: embedded Codex terminal, multiple Codex agent tabs, YOLO-aware diff approval, automatic scroll-to-input, and file changes opened in the centre editor.
- Reliable inline diffs: the current file remains the only centre buffer; additions are green and removed/reference text is red regardless of the selected theme. Git index/HEAD snapshots are used as the comparison baseline, including untracked files. A draggable editor-local toolbar provides previous/next navigation and one-click accept-all (including newly-created files).
- Mouse-friendly file workflow: NvimTree, clickable header/menu, buffer tabs with a visible x, middle-click closing, and safe routing of file-tab clicks away from terminal panels.
- Independent terminals: create separate Shell, Codex, OpenCode, Claude Code, or custom command sessions in one shared right-hand terminal panel; switching tabs never adds another split or replaces the editor. A normal PTY exit is handled quietly.
- Rich previews: Glimpse previews images, video, archives, SQLite, documents, diagrams, and other formats when the terminal/protocol and optional tools are available.
- Quiet generated files: source maps,
tsbuildinfo, minified/bundle output, lock/cache/debug-log metadata, and common build directories stay out of the tree, file tabs, and automatic Codex diff previews (explicit:editremains available when inspection is intentional). - Navigation and diagnostics: Treesitter highlighting/indentation, Trouble, GitSigns, Diffview, Browse, and mini.nvim utilities.
- Themes: Flexoki Dark is the default; Catppuccin, Kanagawa, and Flexoki dark/light choices are available from the header or :ThemeSelect.
- Console transcripts: console-*.log buffers are presented without editor line numbers/sign noise and highlight timestamps, URLs, and log levels.
Requirements
- Neovim 0.10 or newer (0.12 is recommended for the current compatibility shims).
- Git and a terminal with true-colour support. A Nerd Font is optional; the UI keeps text fallbacks for terminals without Nerd Font glyphs.
- codex is optional but required for Codex features. codex-acp is used when installed; otherwise CodeCompanion can fetch the adapter with npx.
- Glimpse media features are optional. For the full preview surface install ImageMagick (magick) and, for video thumbnails/playback, ffmpeg. Other formats may use f3d, Blender, sqlite3, file, xxd, openssl, PlantUML, Mermaid CLI, or a Markdown renderer.
Install
Back up an existing configuration, then clone this repository as Neovim's config directory:
mv ~/.config/nvim ~/.config/nvim.backup.$(date +%Y%m%d-%H%M%S)
git clone https://github.com/NeronSignal/VibeVim.git ~/.config/nvim
nvimlazy.nvim bootstraps itself on the first launch and installs the declared plugins. If you already manage Neovim with another distribution, copy init.lua and lazy-lock.json into a test profile first rather than replacing your existing setup.
Install with npm
The repository includes a zero-dependency installer CLI. After the vibevim package is published, install it globally and activate the Neovim configuration:
npm install --global vibevim
vibevim install
nvimUntil the npm release is published, the same CLI can be installed directly from GitHub:
npm install --global github:NeronSignal/VibeVim
vibevim installvibevim install keeps an existing ~/.config/nvim (or the platform equivalent) as a timestamped backup. Use vibevim install --yes for scripted setup and vibevim doctor to check Neovim/Git and the active config.
Codex credentials and provider settings
No credentials are stored in this repository. Configure the Codex CLI using its normal login/configuration flow, or provide your own OpenAI-compatible provider through environment variables before starting Neovim. The configuration recognises CODEX_MODEL, CODEX_THOUGHT_LEVEL, CODEX_MODEL_PROVIDER, CODEX_OCEANAPI_BASE_URL, CODECOMPANION_OCEANAPI_URL, and OCEANAPI_API_KEY.
Keep API keys in your shell/keychain; never commit them to init.lua or a dotfile override.
Quick controls
| Key | Action | | --- | --- | | F1 | Open/close the control centre | | F2 | Toggle the file tree | | F3 | Open another Codex agent terminal | | F4 | Toggle the managed Codex terminal | | F5 | Open the Codex/Git inline diff | | F6 / F7 | Previous/next file tab | | F8 | Safely close the current file tab | | F10 | Toggle Trouble diagnostics | | F11 | Open this Neovim configuration | | F12 | Open lazy.nvim | | Ctrl-Tab | Next file tab | | Ctrl-S | Save the current buffer | | :TerminalNew | Choose Shell, Codex, OpenCode, Claude, or a custom terminal command | | :ThemeSelect | Choose a dark or light theme | | :CodexDiff [path] | Show one file's inline diff in the centre editor | | Floating diff toolbar | Drag its title bar; use ↑/↓ to move between changes, ✓ KABUL to accept every hunk in the file, or X to hide the toolbar |
The complete mouse and keymap reference is available from F1 → ? or :NvimShortcuts.
Development
The configuration is intentionally a single readable init.lua. Make changes on a branch, start Neovim with a clean test profile, and validate headlessly before opening a pull request:
nvim --headless -u ./init.lua -c 'lua print(vim.g.colors_name)' -c 'qa!'Please include the Neovim version, terminal emulator, operating system, and the relevant :messages output when reporting a bug. Do not include credentials or private project logs.
Contributing
Issues and pull requests are welcome. Keep provider-specific endpoints, tokens, and machine-local paths out of commits. Small focused changes with a reproducible test case are easiest to review.
License
MIT. See LICENSE.
Neovim Codex Workbench (Türkçe)
Yapay zekâ destekli kodlama için fare kullanımını kolaylaştıran, masaüstü tarzı bir Neovim yapılandırmasıdır. Dosya ağacı, merkez editör, Codex oturumları, bağımsız terminal sekmeleri, Git/Codex satır içi diff, medya önizleme ve tanı araçları tek düzende çalışır. Shell, Codex, OpenCode ve Claude oturumları sağdaki tek terminal panelinde sekme olarak tutulur; yeni terminal açmak ek bir pencere/split oluşturmaz.
Eklenen kod her temada yeşil, çıkarılan/eski referans kodu kırmızı gösterilir. Editör üzerinde taşınabilir diff aracı ↑/↓ ile değişiklikler arasında dolaşır; ✓ Kabul dosyadaki tüm hunks'ları (yeni dosya dahil) tek seferde kabul eder. console-*.log dosyaları satır numarası karmaşası olmadan console görünümünde açılır; ERROR, WARN, INFO ve LOG seviyeleri renklendirilir.
Varsayılan tema Flexoki Dark'tır; header'daki tema düğmesinden veya :ThemeSelect komutundan diğer koyu/açık temalara geçebilirsiniz.
Üretilmiş *.map, *.tsbuildinfo, minified/bundle çıktıları, lock/cache/debug-log
metadata ve yaygın build klasörleri dosya ağacında, sekmelerde ve otomatik Codex
diff önizlemesinde gösterilmez; gerektiğinde :edit ile açıkça açabilirsiniz.
Kurulum için mevcut ~/.config/nvim klasörünü yedekleyip depoyu klonlayın. Eklentiler ilk açılışta lazy.nvim tarafından kurulur. API anahtarlarını repoya yazmayın; Codex girişini ve sağlayıcı ayarlarını ortam değişkenleri veya kendi Codex yapılandırmanız üzerinden yapın.
npm ile global kurulum
Paket npm’de yayınlandığında arkadaşınız şu komutlarla kurabilir:
npm install --global vibevim
vibevim install
nvimPaket yayınlanmadan GitHub sürümünü kullanmak için npm install --global github:NeronSignal/VibeVim komutu da çalışır. vibevim install mevcut Neovim ayarlarını tarih damgalı bir yedeğe taşır; otomasyon için --yes, ortam kontrolü için vibevim doctor kullanılabilir.
Katkı göndermek için bir branch açın, temiz bir test profiliyle Neovim'i başlatın ve işletim sistemi/terminal/Neovim sürümünü açıklayın. Gizli anahtarları, özel endpoint'leri ve proje loglarını commit etmeyin.
