Skip to content

Start here ​

Nib is a local-first AI coding agent desktop client. The app keeps the workspace, host process, agent runtime, and provider configuration visible and inspectable while still making everyday coding work feel direct.

Choose a path ​

If you want to…Start with
See what the app looks likeScreens
Run recurring local tasksScheduled tasks
Add an MCP catalog and its keyMCP market
Understand what is shippedProduct scope
Learn how the system fits togetherArchitecture
Trace a protocol or storage boundaryRuntime specs
Build an extensionPlugin development
Understand why a decision existsADR index
Validate a user-visible changeE2E test plan

The mental model ​

text
Renderer UI  →  Electron orchestration  →  Rust host core
      ↓                    ↓                       ↓
  transcript          pi Node sidecar          SQLite + processes

The renderer owns presentation. Electron main coordinates desktop capabilities: window lifecycle, IPC routing, process supervision, the update client, and the plugin, MCP-bridge, and optional loopback MCP-control services. The Rust host owns tool execution and the workspace sandbox, the permission gateway, plugin host services, RPC, and persistence. The pi sidecar owns the agent loop and provider-facing model work.

Working with the docs ​

The documentation is English-first. Use global search when you know a term, protocol method, or decision number; use the sidebar when you are exploring a domain.

Before you change a boundary ​

  1. Read the relevant spec.
  2. Check the linked ADRs and the decisions log.
  3. Update the E2E scenario when behavior is user-visible or protocol-visible.
  4. Run the narrowest useful validation, then record the result in the change.

See the AI development workflow and change checklist for the complete repository rules.

StepFun Plan ​

See StepFun Plan setup for the subscription endpoint and model configuration.

Local-first · Model-agnostic · Plugin-powered. nib.am