Документация доступна только на английском языке.
VS Code
Use Nib inside VS Code and editors built on it, with edits reviewed in the diff editor, context from your selection and diagnostics, and native approval prompts.
The Nib extension puts the agent in a VS Code panel. It's a client of the local Nib daemon, so it shares sessions with the nib CLI: start in the editor, continue in the terminal, or the other way round. The desktop app runs a daemon of its own; see How it finds the daemon to share its sessions too.
The extension goes live on the VS Code Marketplace and Open VSX with the first public release.
Requirements
- VS Code 1.105 or later, or an editor built on VS Code.
- A trusted workspace. The extension doesn't run in Restricted Mode.
- A model provider configured in Nib, or a provider key in the environment.
Install
Install the extension
In VS Code, open the Extensions view, search for Nib (publisher nibapp) and choose Install. Or run:
code --install-extension nibapp.nib-vscodeEditors built on VS Code that install from Open VSX find it under the same name. Without access to either marketplace, download nib-vscode-<version>.vsix from the latest release and choose … → Install from VSIX… in the Extensions view.
Open Nib
Click the Nib icon in the activity bar, or press ⌃⌘P (Shift+Alt+P).
What you get
- The Nib panel, in the activity bar or in an editor tab (Nib: Open in New Tab): this workspace's sessions, a streaming transcript with tool calls, approvals, questions, MCP servers' requests for input and budget pauses, and the mode, model and effort pickers.
- Edits reviewed in the diff editor. When Nib asks to edit a file, the proposal opens beside the file. Accept (⌘↵) or Reject (⌘⌫) from the editor title. Finished changes can be reopened from the transcript and reverted.
- Context from your editor. Your selection is offered with your next message. ⌥K adds it as a mention like
@src/app.ts#L10-20.@mentions files: a small text file, or one with unsaved changes, goes with your message, and anything else (an image, a PDF, a large file) as a reference Nib opens itself. Nib: Fix Problems in This File sends the file's diagnostics. - Native prompts. When the panel is hidden, approvals, questions and plan reviews also appear as VS Code notifications and quick picks.
- Status bar. Shows the daemon connection and whether a session is running or waiting for you.
- Fork and rename. Fork Session opens a copy of the session (the conversation so far, the same settings) in its place, and Rename Session changes its name. Both are in the panel's … menu and the command palette.
- Terminal handoff. Nib: Continue Session in Terminal opens the session in the
nibterminal UI.nibrunning in this window's integrated terminal sees your selection in the editor.
Keyboard shortcuts
| Command | macOS | Windows / Linux |
|---|---|---|
| Open Nib | ⌃⌘P | Shift+Alt+P |
| New session | ⌘⇧⎋ | Shift+Alt+N |
| Add selection to chat | ⌥K | Alt+K |
| Accept / reject proposal (diff editor) | ⌘↵ / ⌘⌫ | Ctrl+Enter / Ctrl+Backspace |
| Respond to the pending request | ⌘⌥Y | Shift+Alt+Y |
| Switch permission mode (in the composer) | ⇧⇥ | Shift+Tab |
| While a turn runs: send into it / queue for after it (in the composer) | ↵ / ⌘↵ | Enter / Ctrl+Enter |
Other commands in the Nib category: New Session, Show Sessions, Add File to Chat, Stop the Running Turn, Revert This Change and Reconnect to Daemon.
Settings
| Setting | Default | Meaning |
|---|---|---|
nib.language | The extension's language, one of those it speaks; empty follows VS Code's display language | |
nib.daemon.url | Connect to this daemon instead of finding one | |
nib.daemon.path | Path to a nib-daemon executable to start | |
nib.daemon.dataDir | ~/.nib | Data directory for a daemon the extension starts |
nib.permissions.nativePrompts | whenHidden | Show approvals as VS Code notifications: always, whenHidden or never |
nib.diffs.reviewEdits | true | Open proposed edits in the diff editor for review |
nib.context.shareSelection | true | Offer your editor selection with the next message |
nib.terminal.bridge | true | Let nib in integrated terminals talk to this window |
How it finds the daemon
The extension connects, in order, to:
- The daemon at
nib.daemon.url, if set. - A daemon that's already running for the extension's data directory (
nib.daemon.dataDir, by default the CLI's~/.nib), found through itsdaemon.json. The desktop app's daemon keeps its data in the app's own folder, so to use the app's sessions, setnib.daemon.dataDirto that folder. - A daemon it starts itself:
nib.daemon.path, then the desktop app's bundlednib-daemon, thennib-daemonon yourPATH. A daemon it started stops when the window closes.
The terminal bridge
nib in an integrated terminal reaches VS Code over a WebSocket on 127.0.0.1, with a random port and a random token for each window. The address and token are passed only to that window's terminals through environment variables, never written to disk. The token is checked in constant time, and any request from a browser (one with an Origin header) is refused. Turn the bridge off with nib.terminal.bridge.
Next
- ACP editors: JetBrains IDEs, Zed and others.
- Permissions: modes and rules.