Skip to content

Getting Started

Welcome to Binary Ninja Sidekick. This tutorial covers installation, configuration, and which features require a service plan. Follow each section in order and you will be ready to analyze binaries by the end.

Purchasing a Plan

Tip

If you already have a plan and API key, skip to Installation.

Most of Sidekick's analysis features are powered by the Sidekick cloud service, which requires an active plan. Visit sidekick.binary.ninja/plans to purchase a plan. After completing the purchase you will receive an API key.

Note

You need a Sidekick account to purchase a plan. If you do not have one, you can create one at sidekick.binary.ninja/sign_in.

Installing the Plugin

Launch the Binary Ninja Plugin Manager by selecting Plugins > Manage Plugins from the main menu. Search for "Sidekick" and click the Install button.

Plugin Manager Install Sidekick

The plugin has several package dependencies. Installation may take a few minutes — you will see a progress indicator in the Plugin Manager while dependencies download. When installation completes, Binary Ninja prompts you to restart. Restart Binary Ninja to activate the plugin.

Supported Python Version

Sidekick's Python packages currently target compatible Python versions in the range >=3.10,<3.13. The simplest and safest option is to use the Python interpreter bundled with Binary Ninja. If you configure Binary Ninja to use a system interpreter instead, make sure it falls within that supported range.

Updating the Plugin

When a Sidekick update is available, you can install it using either method:

  • Plugin Manager: Select Plugins > Manage Plugins, search for "Sidekick", and click Update.

Setting Your API Key

  1. Copy one of your valid API keys from sidekick.binary.ninja/account#api-keys
  2. Paste it into one of the following places:
    • The prompt that appears on first launch if no key is configured
    • The Sidekick API Key field in Binary Ninja settings (sidekick.service.api_key)
    • The Configure Sidekick API Key dialog, opened from Plugins > Sidekick > Configure API Key... or by clicking the Sidekick status indicator in the status bar and selecting Configure API Key...

Note

Setting your API key saves it to settings automatically. Setting your API key does not require restarting Binary Ninja.

Accessing Service Features

Not every Sidekick feature depends on the cloud service. The table below shows which features require a valid API key and which run entirely on your machine.

Feature Requires service?
Chat Yes — queries and automatic thread titling require service access
Welcome to Sidekick! onboarding chat Partially — opening the onboarding thread does not require service access, but live guided demonstrations in Chat do. If service is unavailable, Sidekick falls back to a local setup message.
Suggest Repairs / Suggest Types / Suggest Names / Suggest Comments Yes — each operation sends context to the service and applies the results
Semantic Indexing No — all embedding and vector storage is local via a bundled sidecar process. The embedding model is downloaded once from HuggingFace on first use.
Notebook No — you can create and edit entries manually at any time without service access
Indexes No — manual index creation and BNQL queries run locally
BNQL No — queries execute locally against the binary database
Code Maps No — graph generation runs locally
Transaction Log No — local analysis history and audit trail
Sidekick API Depends — default automation models use the Sidekick service, but you can configure local models or your own API keys for fully offline use. See Configuring completion pools.

Tip

You can open a binary and explore the Notebook, Indexes, BNQL, Code Maps, and Transaction Log without a service plan. These features are useful for organizing your analysis even when working offline.

Configuring Service Connection

Use Plugins > Sidekick > Toggle Online / Offline to switch service access from the menu bar. The Sidekick status indicator in the Binary Ninja status bar shows whether Sidekick is connected, offline, disconnected, or missing an API key. Click the indicator to inspect the current host, see whether an API key is configured, and choose actions such as Go Online, Go Offline, Retry Connection, or Configure API Key....

Sidekick Status

By default, Sidekick connects on startup. To start in offline mode, uncheck sidekick.service.start_online in Binary Ninja settings.

Starting with the Welcome Chat

Once you have a binary open, choose Plugins > Sidekick > Welcome to Sidekick! to open the guided onboarding chat for the active workspace.

The Welcome chat is organized around the three core activities Sidekick helps with:

  1. Search — find the code relevant to your question
  2. Simplify — make code more readable with names, types, comments, and analysis repair
  3. Surface — extract useful artifacts such as findings, summaries, and visualizations

For each activity, the onboarding chat can either:

  • Show me — demonstrate the workflow on your current binary
  • Teach me — explain the relevant UI surfaces and controls

If Sidekick is not online yet, the Welcome chat still opens and gives you local setup guidance so you can finish connecting and continue later.

Next Steps

With installation complete, you can either open Plugins > Sidekick > Welcome to Sidekick! for a guided tour or explore the following pages to learn how to use Sidekick effectively: