Документация доступна только на английском языке.
JetBrains, Zed and ACP editors
Run Nib in any editor that speaks the Agent Client Protocol — JetBrains IDEs, Zed and any other ACP client.
nib acp runs Nib as an Agent Client Protocol (ACP) agent over standard input and output. Editors that host ACP agents can drive Nib sessions with it, without a plugin.
Every session the editor starts is an ordinary Nib session. It shows up in the desktop app and in nib --resume, and you can continue it from either.
Before you start
- The
nibCLI is installed. Find its full path withwhich nib(macOS, Linux) orwhere nib(Windows). Editors start agents without your shell profile, so use the absolute path. - A model provider is configured in Nib (desktop app → Customize → Models), or a provider key is in the environment, such as
ANTHROPIC_API_KEY. - Nothing else.
nib acpuses the running daemon (for example the desktop app's) or starts one for the editor.
Set up your editor
AI Assistant in IntelliJ IDEA, WebStorm, PyCharm, GoLand, Rider and the other JetBrains IDEs hosts custom ACP agents from ~/.jetbrains/acp.json.
-
Open the AI Chat tool window, open the agent menu in its upper-right corner and choose Add Custom Agent. This creates and opens
~/.jetbrains/acp.json. -
Add Nib under
agent_servers. The key is the name shown in AI Chat:~/.jetbrains/acp.json { "default_mcp_settings": {}, "agent_servers": { "Nib": { "command": "/Users/you/.local/bin/nib", "args": ["acp"], "env": {} } } } -
Pick Nib in the AI Chat agent list and send a prompt.
Notes:
- Leave
default_mcp_settingsempty. Nib uses its own MCP configuration and ignores servers the IDE offers. - JetBrains adds the open file, selection and diagnostics automatically only for its built-in agents. With Nib, attach what you want it to see. Attached files are read through the IDE, so unsaved changes are included.
- Keys in
envare stored in plain text. Prefer configuring providers in Nib, which keeps keys in the OS keychain. - JetBrains doesn't support ACP agents in WSL.
If Nib doesn't start
Run the command yourself in a terminal:
/full/path/to/nib acp --verboseIt should wait silently for input, with diagnostics on standard error. If it exits, the message says why. Check the path and the JSON, then restart the editor.
Options
nib acp [--permission-mode <mode> | --dangerously-skip-permissions] [--allow-dangerously-skip-permissions]
[-m <provider:model>] [--effort <level>]
[--daemon-url <url>] [--data-dir <dir>] [--verbose]| Option | Meaning |
|---|---|
--permission-mode | Default permission mode for new sessions |
--dangerously-skip-permissions | Same as --permission-mode bypassPermissions: the flag in the editor's agent settings is your choice |
--allow-dangerously-skip-permissions | The editor's mode picker offers Bypass. Without it the picker offers Bypass only when the run starts in it or you've accepted Bypass in any Nib client (the app, VS Code or the terminal) |
-m, --effort | Default model and reasoning effort for new sessions |
--daemon-url | Connect to a specific daemon. Its token comes from the NIB_DAEMON_TOKEN environment variable, never a flag |
--data-dir | Data directory for a daemon nib acp starts |
--verbose | Log to standard error. Standard output carries only protocol messages |
The editor can still change the mode, model and effort for each session. Each session's folder comes from the editor, so there's no --cwd.
What works
| In the editor | In Nib |
|---|---|
| New, load, resume, list and close sessions | Daemon sessions. Loading replays the conversation; the list is filtered by folder |
| Prompts | Text, images, embedded resources and file links. Linked files are read through the editor, so unsaved buffers are seen |
| Streaming | Answer and thinking text, tool calls with file locations, edit diffs, todo plans, mode, title and context-usage updates |
| Permission requests | Allow once, Always allow or Deny. Multiple-choice questions, MCP servers' requests for input and budget pauses (raise the cap, finish this turn, switch model or stop) are offered as choices |
| Cancel | Interrupts the turn and withdraws open approvals |
| Modes and options | Ask, Accept edits, Plan, Auto, Don't ask and Bypass, plus model and effort selectors |
| Slash commands | /compact [focus], and /init, /security-review, /simplify, /recap, /statusline and /loop, sent as typed for the runner to expand |
Not supported yet
- MCP servers passed by the editor are ignored. Configure MCP servers in Nib.
- Writing files through the editor isn't used. Nib writes files itself, with checkpoints you can rewind.
- Running commands in the editor's terminal isn't used. Commands run in Nib's shell and the output is streamed back.
- Audio input isn't supported.
- Authentication methods aren't needed, because Nib uses the local daemon's configuration.
Next
- VS Code: the dedicated extension.
- CLI reference: every
nibcommand and flag.
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.
Agent SDK
Embed the Nib agent in TypeScript and Python programs, with in-process tools, permission callbacks, hooks, structured output and spending limits.