What problem does it solve? Maintaining four hand-written SDKs for one Rust service produces transliterated, unidiomatic APIs and drift between languages. unibind lowers a single annotated Rust surface into an intent-carrying IR, then renders each language's native idiom, so every SDK reads like a native library. ## Core Features & Use Cases - Intent-based IR lowering: Rust attributes like #[unibind(associated)] and #[unibind::enumeration] express intent (construct, release, closed variant set, stream), and each backend renders its own idiom such as await using in TypeScript, async with in Python, use { } in Kotlin, and tagged tuples in Elixir. - Multi-file exports and doc link resolution: #[unibind::export(parts = [...])] splits a surface across files with compile errors for unregistered files, and every rustdoc intra-doc link is resolved per language or the build fails. - Use Case: When adding a new verb to the ix SDK in crates/ix/sdk-bind, place it in the file owning that namespace, annotate it once, and all four generated SDKs plus their conformance suites update consistently. ## Quick Start Ask the AI to add a new associated constructor to the Machine object in the ix SDK surface and verify the generated TypeScript and Python output follows the intent table.