diff --git a/docs/semgrep-ci/network-broker.md b/docs/semgrep-ci/network-broker.md
index 7b3463093..7a3fe87d9 100644
--- a/docs/semgrep-ci/network-broker.md
+++ b/docs/semgrep-ci/network-broker.md
@@ -69,8 +69,7 @@ See the [Network Broker repository](https://github.com/semgrep/semgrep-network-b
Ensure that you are logged in to the server where you want to run Semgrep Network Broker. Complete the following steps while logged in to that server.
-### Create the config file
-
+### 1. Create the config file
docker run ghcr.io/semgrep/semgrep-network-broker:VERSION_NUMBER genkey
-1. Run the following command in the CLI to generate your public key, replacing the placeholders with your private key generated in the previous step and the Network Broker version number:
+### 2. Generate and store your private key
+The Network Broker requires a WireGuard keypair to establish a secure connection. To generate your private key:
- echo "YOUR_PRIVATE_KEY" | sudo docker run -i ghcr.io/semgrep/semgrep-network-broker:VERSION_NUMBER pubkey
+ 1. Determine the [Network Broker version](https://github.com/semgrep/semgrep-network-broker/pkgs/container/semgrep-network-broker) you want to use. The format should be similar to `v0.36.0`. Most users should use the latest version, especially when setting up the broker for the first time.
+ 2. Run the following command in your terminal to generate your private key, replacing the placeholder with the Network Broker version number:
+ docker run ghcr.io/semgrep/semgrep-network-broker:VERSION_NUMBER genkey
+ 3. Store your private key in the config file by adding a `privateKey` field under `wireguard` section with its value set to the key you generated.
- :::info Key sharing
- Your public key is safe to share. Do **not** share your private key with anyone, including Semgrep.
- :::
+### 3. Share your public key with Semgrep
+ :::info Key sharing
+ Your public key is safe to share. **Never** share your private key with anyone, including Semgrep.
+ :::
+ 1. Run the following command in your terminal to generate your public key, replacing the placeholders with your private key generated in the previous step and the Network Broker version number:
+ echo "YOUR_PRIVATE_KEY" | sudo docker run -i ghcr.io/semgrep/semgrep-network-broker:VERSION_NUMBER pubkey
-### Update the config with the keypair
-
-1. Update the `config.yaml` file by replacing `YOUR_PRIVATE_KEY` with the value of your private key.
-1. Add your public key to the Semgrep AppSec Platform:
+### 4. Add your public key to the Semgrep AppSec Platform
1. Log in to Semgrep AppSec Platform.
2. Navigate to **Settings > Broker**.
3. Paste your public key and click **Add Public Key**.
-### Update the config with your SCM information
-
+### 5. Update the config with your SCM information
Update the `config.yaml` by replacing the SCM information containing `YOUR_BASE_URL` with your SCM and its base URL for Azure DevOps, GitHub, GitLab, or Bitbucket Data Center.
-sudo docker run -d -it --rm -v $(pwd):/emt ghcr.io/semgrep/semgrep-network-broker:VERSION_NUMBER -c /emt/config.yaml
- ```yaml
- inbound:
- wireguard:
- localAddress: fdf0:59dc:33cf:9be8:0:ORGANIZATION_ID:0:1
- ```
-### Start the broker
+#### Multiple configuration files
+You can overlay multiple configuration files by passing multiple `-c` arguments:
-Run the following command to start Semgrep Network Broker with your completed configuration file:
+```console
+semgrep-network-broker -c config1.yaml -c config2.yaml -c config3.yaml
+```
+
+Note that arrays are replaced, while maps are merged.
- sudo docker run -d -it --rm -v $(pwd):/emt ghcr.io/semgrep/semgrep-network-broker:VERSION_NUMBER -c /emt/config.yaml
## Check Semgrep Network Broker logs
@@ -375,7 +361,7 @@ Do not attempt to run multiple instances of the Semgrep Network Broker to increa
## Allowlist multiple source code managers with one configuration file
-It is possible to allow access to multiple source code managers (SCM) within a single configuration file. One entry for a given SCM [uses the SCM-specific key provided in the configuration file](/semgrep-ci/network-broker#update-the-config-with-your-scm-information), as shown in the following example for a GitHub connection:
+It is possible to allow access to multiple source code managers (SCM) within a single configuration file. One entry for a given SCM [uses the SCM-specific key provided in the configuration file](/semgrep-ci/network-broker#5-update-the-config-with-your-scm-information), as shown in the following example for a GitHub connection:
inbound: