Iii iii-rust-sdk
install
source · Clone the upstream repo
git clone https://github.com/iii-hq/iii
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/iii-hq/iii "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/iii-rust-sdk" ~/.claude/skills/iii-hq-iii-iii-rust-sdk && rm -rf "$T"
manifest:
skills/iii-rust-sdk/SKILL.mdsource content
Rust SDK
The native async Rust SDK for connecting workers to the iii engine via tokio.
Documentation
Full API reference: https://iii.dev/docs/api-reference/sdk-rust
Install
Add to
Cargo.toml:
iii-sdk = { version = "0.10", features = ["otel"] }
Key Types and Functions
| Export | Purpose |
|---|---|
| Connect to the engine, returns client |
| Register a sync function using the builder API |
| Register an async function using the builder API |
| Two-arg convenience method for function registration |
| Builder with and auto-generated request schemas via |
| Bind a trigger to a function |
| Invoke a function |
| Fire-and-forget invocation |
| Durable async invocation |
| Error type for handler failures |
| Helper for atomic stream CRUD |
, , | OpenTelemetry (requires feature) |
| HTTP client with trace context propagation |
Key Notes
- Add
tofeatures = ["otel"]
for OpenTelemetry supportCargo.toml - Use
for sync handlers,RegisterFunction::new("id", handler)
for asyncRegisterFunction::new_async("id", handler) - Handler input types that derive
get auto-generated request schemasschemars::JsonSchema - Chain
on.description("...")
to document the functionRegisterFunction - Keep the tokio runtime alive (e.g.,
loop) for event processingtokio::time::sleep
returnsregister_trigger
on success; propagate errors withOk(())?
Pattern Boundaries
- For usage patterns and working examples, see
iii-functions-and-triggers - For HTTP middleware patterns, see
iii-http-middleware - For Node.js SDK, see
iii-node-sdk - For Python SDK, see
iii-python-sdk - For browser-side usage, see
iii-browser-sdk
When to Use
- Use this skill when the task is primarily about
in the iii engine.iii-rust-sdk - Triggers when the request directly asks for this pattern or an equivalent implementation.
Boundaries
- Never use this skill as a generic fallback for unrelated tasks.
- You must not apply this skill when a more specific iii skill is a better fit.
- Always verify environment and safety constraints before applying examples from this skill.