Node.js/TypeScript SDK for the iii engine. Use when building workers, registering functions, or invoking triggers in TypeScript or JavaScript.
85
81%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
The TypeScript/JavaScript SDK for connecting workers to the iii engine.
Full API reference: https://iii.dev/docs/api-reference/sdk-node
npm install iii-sdk
| API | Purpose |
|---|---|
registerWorker(url, { workerName }) | Connect to the engine and return the iii client |
iii.registerFunction(id, handler, options?) | Register a local async function handler |
iii.registerFunction(id, httpConfig, options?) | Register an HTTP-invoked external function |
iii.registerTrigger({ type, function_id, config, metadata? }) | Bind a trigger to a function (with optional metadata) |
iii.trigger({ function_id, payload, action? }) | Invoke a function |
TriggerAction.Void() | Fire-and-forget invocation mode |
TriggerAction.Enqueue({ queue }) | Durable async invocation mode |
Logger | Structured logging |
withSpan, getTracer, getMeter | OpenTelemetry instrumentation |
iii.createChannel() | Binary streaming between workers |
iii.createStream(name, adapter) | Custom stream implementation |
iii.registerTriggerType(id, handler) | Custom trigger type registration |
When implementing an auth function for RBAC workers, the AuthResult supports:
| Field | Purpose |
|---|---|
allowed_functions: string[] | Additional function IDs to allow |
forbidden_functions: string[] | Function IDs to deny (overrides expose_functions) |
allowed_trigger_types?: string[] | Trigger types the worker may register |
allow_trigger_type_registration | Whether the worker can register new trigger types |
function_registration_prefix? | Prefix applied to functions registered by worker |
context: Record<string, unknown> | Arbitrary context forwarded to middleware/handlers |
For browser environments, use iii-browser-sdk (same API, adapted for browser WebSocket constraints). See iii-browser-sdk skill for details.
iii-functions-and-triggersiii-http-endpointsiii-http-middlewareiii-browser-sdkiii-python-sdkiii-rust-sdkiii-node-sdk in the iii engine.8921efa
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.