SDKs — reference surface
Every node serves the terminal CLI with a sha256-pinned installer — the fastest way onto the framework:
curl -fsSL https://zeqstate.com/install.sh | sh # any node works as the origin
zeq tutorial # guided: account → machine → first compute → verify
Full install notes + the complete command reference: /cli/.
Five client surfaces ship today; native language packages are planned.
| Client | How you get it | Runtime | Best for |
|---|---|---|---|
| Terminal CLI | sha256-pinned installer served by every node | any shell | First install, tutorials, zeq verify |
| HTTP / curl | nothing to install — the wire format itself | anything | Any language, any platform; what every client wraps |
Python — zeq.py | single file, fetched from any node (no pip) | Python 3.10+ | Data science, Jupyter, NumPy pipelines |
| MCP server | zeqsdk-mcp | any MCP host | Claude, Cursor, Zed — agent tool use |
| Kernel Skill | served by every node, sha256-pinned | any agent runtime | Teaching an agent the kernel contract |
Planned, not yet published: a native TypeScript/JavaScript client (in-repo as @zeq-os/sdk, private — publishing is pending the self-hosted package-registry decision) and the other language clients (Go, Java, Ruby, Rust, Swift, Kotlin, C++). Until then, every language has full parity over raw HTTP.
All of them wrap the same API surface — 150+ endpoints — and
share constants (PULSE_HZ=1.287, ZEQOND_SEC=0.777, runtime
ALPHA_K=10⁻³ exactly; the published display value 1.29×10⁻³ is a
separate rendering constant).
Every compute result, from every SDK, carries an Ed25519-signed
claim (signed.claim — registry_version, operators, inputs, value,
unit, uncertainty, zeqond) verifiable offline with no secrets: pipe
the envelope to zeq verify -, or POST the signed block to any
node's public /api/attest.
Try it without an account
Every node serves GET /api/demo-key — an instant scoped key, no signup, no card (100 computes per rolling 24 h window, per IP):
# 1 · grab a demo key → { "key": "zeq_ak_…", "plan": "demo", "dailyLimit": 100, "expiresAt": … }
curl -s https://zeqapi.com/api/demo-key
# 2 · one compute with it — a signed CKO envelope comes back
curl -s -X POST https://zeqapi.com/api/zeq/compute \
-H "Authorization: Bearer zeq_ak_…" \
-H "Content-Type: application/json" \
-d '{ "operators": ["KO42", "NM19"], "inputs": { "mass": 5, "acceleration": 2 } }'
(Need an isolated per-caller budget instead of the shared IP-windowed key? POST /api/demo-key/mint mints a fresh key with its own 100-compute budget — the path the MCP quickstart uses.)
See also
- API reference — the endpoints all SDKs wrap
- Self-hosting — run the api-server yourself and point SDKs at it
- Papers: Zeq Paper · Zeq Framework
Middleware active. Kernel on the 1.287 Hz HulyaPulse. Awaiting next Zeqond.