SDKs

SDKs Overview

Two families: Agent SDKs route encrypted decisions from your backend, and Client SDKs receive them on user-facing surfaces. Pick one of each.

Connectors

Already building with LangGraph or LangChain? Skip the boilerplate — the connectors wrap the Python Agent SDK as a graph node or HITL middleware so your agent pauses on interrupt(), fans the approval out to every registered device, and resumes from a webhook.

Prefer to wire decisions yourself? Pick an Agent SDK below and call send_decision directly.

Agent SDKs

Agent SDKs live on your server. They wrap the relay's Agent API with idiomatic types, perform the per-device post-quantum encryption locally, and provide a one-call sendDecisionAndWaitForOutcome helper.

All Agent SDKs share the same surface:

MethodPurpose
initNoxyAgentClient(config)Construct the client. Loads the post-quantum primitives.
sendDecision(identityId, payload)Route an encrypted decision to every device of the identity.
getDecisionOutcome({decisionId, identityId})Single outcome poll.
waitForDecisionOutcome(options)Backoff loop until terminal or timeout.
sendDecisionAndWaitForOutcome(identityId, payload, options?)Convenience — send + wait in one call.
getQuota()Current quota for your application.

Client SDKs

Client SDKs live on user-facing surfaces. They register a device once with the relay using your APP_SIGNING_SECRET, then receive encrypted decisions on an open stream and submit outcomes back.

All Client SDKs share the same shape:

MethodPurpose
createNoxyClient(options) / initialize()Load or create the device, connect, authenticate.
on(handler)Receive decrypted decisions; handler decides UI.
submitDecisionOutcome / sendDecisionOutcomePublish APPROVE or REJECT for a decision id.
rotateKeys()Generate fresh device keys, publish new public keys.
revokeDevice()Remove the device from the relay.
close()Disconnect cleanly.

Example projects

  • Liquidation Sentinel Agent — 24/7 Aave v3 health-factor watchdog. When your position drifts into danger, Anthropic drafts a rescue plan and Noxy asks you to approve before any repay or supply transaction is broadcast.
  • Yield Rebalancer Agent — Cross-protocol lending yield scanner. It compares net APY after gas and friction, then routes a rebalance proposal through Noxy and only moves funds on-chain after you approve.

Picking the right pair

If your agent is in…And your users are on…Recommended pair
Node.js / TypeScriptWebNode.js SDK + Browser SDK
PythoniOS / AndroidPython SDK + iOS SDK / Android SDK
Go / RustTelegramGo SDK or Rust SDK + Telegram Bot SDK
AnythingMultiple surfacesAny Agent SDK; install Client SDKs on each surface — outcomes are unified per identity.