Table of Contents

Namespace JD.AI.Channels.OpenClaw

Classes

AgentBinding

Maps an OpenClaw channel/peer to this agent.

AgentBindingPeer

Peer targeting for bindings.

JdAiAgentDefinition

Defines a JD.AI agent to register with the OpenClaw gateway. These agents appear in the OpenClaw dashboard alongside native agents.

OpenClawAgentRegistrar

Registers JD.AI agents with an OpenClaw gateway via config RPC so they appear as native agents in the OpenClaw dashboard alongside OpenClaw's own agents.

OpenClaw uses optimistic-concurrency whole-config replacement:

  1. config.get (no params) → returns { raw, hash, ... }
  2. Parse raw JSON, modify agents.list array
  3. config.set with { raw, baseHash } → atomic write if hash matches

JD.AI-managed agents are identified by an ID prefix (jdai-).

OpenClawBridgeChannel

Bridges JD.AI gateway to an OpenClaw instance via WebSocket JSON-RPC. Implements IChannel to appear as a regular channel in the JD.AI gateway. Messages sent to this channel are forwarded to OpenClaw via chat.send; messages from OpenClaw are surfaced as inbound channel messages via chat events.

OpenClawChannelStatus

OpenClaw channel status from channels.status.

OpenClawConfig

Configuration for connecting to an OpenClaw gateway via WebSocket JSON-RPC. Device identity fields are required for Ed25519 challenge-response authentication.

OpenClawEvent

An event received from the OpenClaw gateway.

OpenClawIdentityLoader

Resolves OpenClaw state directory candidates and loads device identity/auth values.

OpenClawRpcClient

JSON-RPC-over-WebSocket client for communicating with an OpenClaw gateway. Implements the OpenClaw v3 protocol: challenge-response device auth with Ed25519 signatures, typed request/response/event frames, and automatic reconnection.

OpenClawSession

OpenClaw session summary from sessions.list.

RpcResponse

Response from an OpenClaw RPC call.

ServiceCollectionExtensions

DI registration helpers for the OpenClaw bridge channel.