SDKs.
Client libraries for Themisra attestation and Kleidon products across the languages you already ship in.
Every SDK exposes the same surface: a themisra.* namespace for attestations and verification, and a kleidon.* namespace for the four Kleidon products (Passify, SkinsVault, TokenForge, MintMarket). Languages differ only in idiom — same methods, same semantics, same wire protocol.
TypeScript
AvailableUniversal client. Works in Node, Bun, Deno, and the browser.
npm install @ligate/sdk
import { Ligate } from '@ligate/sdk'
const l = new Ligate({ chain: 'devnet' })
const receipt = await l.themisra.attest({
model: 'claude-4.7-opus',
prompt: 'Write a parser',
output: '...',
})
console.log(receipt.id)Python
DraftFor Jupyter, ML pipelines, and agent frameworks. Async-first via httpx.
pip install ligate
from ligate import Ligate
l = Ligate(chain="devnet")
receipt = await l.themisra.attest(
model="claude-4.7-opus",
prompt="Write a parser",
output="...",
)
print(receipt.id)Rust
DraftFor chain-adjacent services, nodes, and high-throughput pipelines.
cargo add ligate
use ligate::{Ligate, Chain};
let l = Ligate::new(Chain::Devnet);
let receipt = l.themisra.attest()
.model("claude-4.7-opus")
.prompt("Write a parser")
.output("...")
.submit()
.await?;
println!("{}", receipt.id);Go
PlannedFor backend services. Coming after TypeScript and Python stabilise.
go get github.com/ligate-io/ligate-go
l := ligate.New(ligate.Devnet)
receipt, err := l.Themisra.Attest(ligate.AttestInput{
Model: "claude-4.7-opus",
Prompt: "Write a parser",
Output: "...",
})Unity C#
PlannedKleidon-focused: wallet connect, asset rendering, token balance, SkinsVault.
Import via Unity Package Manager
// Kleidon wallet + asset rendering
Kleidon.Connect()
.OnSigned((wallet) => {
var items = Kleidon.SkinsVault.GetInventory(wallet);
ui.Render(items);
});Unreal C++
PlannedSame feature set as Unity, for Unreal engine titles.
Add plugin from marketplace
// Same surface as the Unity SDK, C++ bindings
UKleidon::Connect([](FKleidonWallet wallet) {
auto items = UKleidon::SkinsVault::GetInventory(wallet);
UI->Render(items);
});Looking for a language not listed? Email hello@ligate.io. A grant is available for community-maintained SDKs.