quasuki-sdk
v0.2.5
Published
Versioned Quasuki machine-client SDK for catalog discovery, schema-aware task execution, and governed transaction workflows.
Downloads
490
Maintainers
Readme
Quasuki SDK
Quasuki is the executable agent commerce layer. Shoonya is the proof layer.
This package is the public machine-client entrypoint for governed agent commerce.
Public naming rule:
- use Quasuki public task refs such as
zones.list,admission.preview,policy.simulate, andsettlement.submit - treat deeper stack refs such as
naxytra.*,xytadel.*, andopenetram.*as advanced provenance/debug metadata
Versioned Quasuki machine-client SDK for:
- catalog discovery
- schema-aware task shaping
- multi-task validation and execution
- quote preview and quote creation
- governed transaction and receipt retrieval
- compact workflow summaries for agent consumption
Public product boundary:
shoonyaremains the trust, receipt, and evidence substratequasuki-sdkis the paid execution, settlement, and governed delivery client layer
Canonical line:
Shoonya proves. Quasuki sells and executes.
Install
npm install quasuki-sdkNode runtime target: >=18
Shortest Path
const { createClient } = require("quasuki-sdk");
const client = createClient({
baseUrl: process.env.QUASUKI_BASE_URL,
apiKey: process.env.QUASUKI_API_KEY,
walletId: process.env.QUASUKI_WALLET_ID,
walletSecret: process.env.QUASUKI_WALLET_SECRET,
accountId: process.env.QUASUKI_ACCOUNT_ID
});
async function main() {
const result = await client.execute({
command: "List zones",
task_ref: "zones.list",
body: {}
});
console.log(client.summarizeCommandResult(result));
}
main().catch((error) => {
console.error(error.message);
process.exit(1);
});Common Flows
Inspect Catalog Schema
const { createClient } = require("quasuki-sdk");
const client = createClient({ baseUrl: process.env.QUASUKI_BASE_URL });
async function main() {
const summary = await client.fetchCatalogSummary();
const categories = await client.listTaskCategories();
const schema = await client.getTaskSchema("admission.preview");
const template = await client.getTaskTemplate("admission.preview");
console.log(summary);
console.log(categories);
console.log(schema);
console.log(template);
}
main().catch(console.error);Single Task Execute
const { createClient } = require("quasuki-sdk");
const client = createClient({
baseUrl: process.env.QUASUKI_BASE_URL,
apiKey: process.env.QUASUKI_API_KEY,
walletId: process.env.QUASUKI_WALLET_ID,
walletSecret: process.env.QUASUKI_WALLET_SECRET
});
async function main() {
const result = await client.execute({
command: "List zones",
task_ref: "zones.list",
body: {}
});
console.log(JSON.stringify(client.summarizeCommandResult(result), null, 2));
}
main().catch(console.error);Multi-Task Execute
const { createClient } = require("quasuki-sdk");
const client = createClient({
baseUrl: process.env.QUASUKI_BASE_URL,
apiKey: process.env.QUASUKI_API_KEY,
walletId: process.env.QUASUKI_WALLET_ID,
walletSecret: process.env.QUASUKI_WALLET_SECRET
});
async function main() {
const result = await client.executeTaskSet(
[
{
task_id: "zones",
task_ref: "zones.list",
body: {}
},
{
task_id: "preview",
task_ref: "admission.preview",
body: {
source_zone_id: "<source-zone-id>",
target_zone_id: "<target-zone-id>",
interaction_class: "<interaction-class>",
artifacts: {
receipt_types: ["shoonya_receipt"]
}
}
}
],
{
command: "Inspect zones and preview admission"
}
);
console.log(JSON.stringify(client.summarizeCommandResult(result), null, 2));
}
main().catch(console.error);Quote Preview
const { createClient } = require("quasuki-sdk");
const client = createClient({
baseUrl: process.env.QUASUKI_BASE_URL,
apiKey: process.env.QUASUKI_API_KEY
});
async function main() {
const quote = await client.previewExecutionQuote({
command: "List zones",
task_ref: "zones.list",
body: {}
});
console.log(JSON.stringify(client.summarizeQuote(quote), null, 2));
}
main().catch(console.error);Runnable examples are in examples/:
Standalone Consumer Proof
If you want a clean external install proof instead of using the workspace repo:
cd examples/standalone-consumer
npm install
npm run catalogThat example depends on the published package version from npm, not a local file reference.
Public independent consumer proof:
- repo:
https://github.com/quasuki/quasuki-sdk-first-live-run - release:
https://github.com/quasuki/quasuki-sdk-first-live-run/releases/tag/v0.1.0 - validated flow: live catalog fetch, self-serve agent onboarding, and paid
zones.listexecution through the published package
Narrow Public Launch Pricing
The current public Quasuki launch pricing surface is intentionally narrow.
Representative starting prices:
billing.summaryat$0.05admission.previewat$0.10policy.simulateat$0.35workflow.packat$0.50jobs.commitat$1.25settlement.submitat$1.50trust.verifyat$0.50receipt_ledger.handoff.validateat$0.60runtime.emit_anchorat$4.50
These are pricing-basis values for the first public tasks. Settlement rail choice can affect the final settlement amount.
Environment
Typical environment variables:
QUASUKI_BASE_URLQUASUKI_API_KEYQUASUKI_WALLET_IDQUASUKI_WALLET_SECRETQUASUKI_ACCOUNT_ID
Required by flow:
- catalog/schema inspection:
QUASUKI_BASE_URL - native execute:
QUASUKI_BASE_URL,QUASUKI_API_KEY,QUASUKI_WALLET_ID,QUASUKI_WALLET_SECRET - x402 execute:
QUASUKI_BASE_URL,QUASUKI_ACCOUNT_ID,QUASUKI_WALLET_ID,QUASUKI_WALLET_SECRET - transaction/receipt retrieval:
QUASUKI_BASE_URL,QUASUKI_API_KEY
Stable Public Surface
Stable entrypoints:
require("quasuki-sdk")require("quasuki-sdk/client")
Current declared contract:
QUASUKI_SDK_NAME = "quasuki-sdk"QUASUKI_SDK_VERSION = "0.2.5"QUASUKI_API_VERSION = "v1"createClient(options)QuasukiClient
Core client methods:
fetchCatalog()fetchCatalogSummary()summarizeCatalog(payload)listTasks()listTaskCategories()getTask(taskRef)getTaskDetail(taskRef)summarizeTask(task)getTaskPricing(taskRef)getSettlementProfiles()getTaskSchema(taskRef)getTaskTemplate(taskRef)getTaskTemplates(taskRefs)validateTaskBody(taskRef, body)validateTaskSet(tasks)buildTaskSetPayload(taskSpecs, options)withSettlement(payload, options)previewExecutionQuote(payload, options)createPaymentQuote(payload)execute(payload, options)executeTaskSet(taskSpecs, options)getTransaction(transactionId)getReceipt(receiptId)waitForTransaction(transactionId, options)waitForMonitor(result, options)summarizeQuote(payload)summarizeTransaction(payload)summarizeReceipt(payload)summarizeCommandResult(payload)
Settlement/profile ergonomics:
buildTaskSetPayload(..., { settlementMode })now carriessettlement_modebuildTaskSetPayload(..., { settlement })now carries the explicit settlement proof objectpreviewExecutionQuote(payload, { settlementMode })now applies per-quote rail selection without mutating the original payloadexecute(payload, { settlementMode, settlement })now applies the same settlement selection/proof convenience path
Catalog/pricing ergonomics:
summarizeCatalog(payload)returns a compact view of catalog version, task count, settlement profiles, and task pricing hintsfetchCatalogSummary()returns the compact server-side catalog view when availablelistTaskCategories()returns public categories for navigation without dumping the full cataloglistTasks()returns compact task summaries including public aliases, category,pricing_band,public_launch_price, andpricing_notegetTaskDetail(taskRef)resolves a public alias or internal task ref to the full catalog task detailgetTaskPricing(taskRef)returns only the pricing-hint slice for a single taskgetSettlementProfiles()returns compact settlement-profile summaries for the active deployment
Repository And Release
Repository: https://github.com/quasuki/quasuki-sdk
Release checks:
npm run verify:allnpm run pack:dry-runnpm run release:checknpm run release:plan
Version bump helper:
npm run version:bump -- patchnpm run version:bump -- minornpm run version:bump -- majornpm run version:bump -- 0.3.0
Related release docs:
