Skip to main content

Language SDKs

Every SDK is a thin, typed wrapper over the same wire protocol — so whichever language you reach for, you get the same constants, the same equations, and the same Ed25519-signed result you can verify offline. The clients differ only in ergonomics, never in the physics.

The flagship — @zeq/sdk (TypeScript / JavaScript)

A typed client for your hosted machine — HulyaPulse timing, the operator catalogue, and the platform calls in one package, all computing on our nodes. It's published to Zeq's own registry (not npmjs), so you point the @zeq scope at it once, then install normally:

npm config set @zeq:registry https://zeqsdk.com/registry
npm install @zeq/sdk

It's a typed client for your hosted machine — it calls the framework on our nodes and hands you back signed results. It can also compute and verify offline with no secrets where that helps (the same verification any node performs), but the default path is the hosted compute you subscribe to.

Python — zeq.py, no pip

A single file, fetched straight from a node — nothing to install into your environment:

curl -fsSO https://zeqsdk.com/cli/zeq.py

Built for data-science workflows — Jupyter, NumPy pipelines — where you want verified physics inline with the rest of your analysis.

Every client

ClientHow you get itBest for
TypeScript / JavaScript@zeq/sdknpm install @zeq/sdk (Zeq registry)apps, services, notebooks — the flagship
Terminal CLIzeqinstall.shfirst install, tutorials, zeq verify
Pythonzeq.pycurl one file, no pipdata science, Jupyter, NumPy
HTTP / curlnothing to install — the wire format itselfany language; the protocol every client speaks
Go · Rust · Java · Kotlin · Swift · Ruby · C++from the Zeq registrynative clients in your stack
MCP server@zeq/mcpAI agents — tool use
Kernel skillserved by every nodeteaching an agent the kernel contract

HTTP is the floor

Under all of them is plain HTTP — the wire format is the SDK. Anything that can make a request can speak Zeq, and every worked example in these docs is a curl you can run as-is. The typed SDKs exist to make that pleasant in your language, not to gate it behind one.