Skip to main content

Setup

Configuration

The plugin reads its configuration from the plugins.nevermined section of your openclaw.json:
{
  "plugins": {
    "entries": {
      "nevermined": {
        "enabled": true,
        "config": {
          "nvmApiKey": "sandbox:eyJhbG...",
          "environment": "sandbox",
          "planId": "did:nv:abc123...",
          "agentId": "did:nv:def456...",
          "creditsPerRequest": 1,
          "enablePaidEndpoint": false,
          "agentEndpointPath": "/nevermined/agent"
        }
      }
    }
  }
}

Configuration Fields

FieldRequiredDefaultDescription
nvmApiKeyNoYour Nevermined API key. Can be set via /nvm_login instead.
environmentNosandboxTarget environment: sandbox for testing, live for production.
planIdNoDefault payment plan ID. When set, subscriber tools use this plan automatically.
agentIdNoDefault agent ID. Required for plans with multiple agents.
creditsPerRequestNo1Number of credits consumed per request.
enablePaidEndpointNofalseEnable the x402 paid HTTP endpoint on the gateway.
agentEndpointPathNo/nevermined/agentHTTP path for the paid agent endpoint.

Environment Details

EnvironmentDescriptionUse Case
sandboxTest environment on Arbitrum SepoliaDevelopment, testing, integration
liveProduction environment on Arbitrum OneLive deployments with real payments

Authentication Flow

The plugin supports a browser-based login flow identical to the Nevermined CLI:
  1. User sends /nvm_login in any chat channel
  2. The plugin starts a local HTTP server on a random port
  3. A browser window opens to the Nevermined login page
  4. After authentication, Nevermined redirects back with the API key
  5. The key is stored in the plugin’s in-memory config for the current session
The login times out after 5 minutes if no authentication is received.

Logging Out

Send /nvm_logout or call nvm_logout to remove the stored API key. All payment tools will require re-authentication after logout.

Default Values

When planId and agentId are set in the config, all subscriber tools (checkBalance, getAccessToken, orderPlan, queryAgent) use them as defaults. You can always override them per-call by passing the parameter explicitly. This is useful for gateways that serve a single plan — configure it once and all tools work without extra parameters.