6 releases
Uses new Rust 2024
| new 0.3.3 | Apr 10, 2026 |
|---|---|
| 0.3.2 | Feb 3, 2026 |
| 0.3.1 | Jan 30, 2026 |
| 0.2.1 | Jan 21, 2026 |
| 0.1.0 | Jan 12, 2026 |
#1134 in Development tools
Used in selium-remote-cli
200KB
5K
SLoC
Remote Client module
Provides users with a client library and CLI for orchestrating Selium applications and servers from afar.
Crate structure
This service has 4 crates:
selium-remote-client-cli(cli/) - CLI binary for executing commands via theselium-remote-clientlibselium-remote-client(client/) - client library that guests consumeselium-remote-client-protocol(protocol/) - wire protocolselium-remote-client-server(server/) - WASM module run by the host
Usage
Compile the selium-remote-client-server component to WebAssembly and install in the Runtime's work directory:
cargo build --release --target wasm32-unknown-unknown -p selium-remote-client-server
cp target/wasm32-unknown-unknown/release/selium_remote_client_server.wasm /path/to/selium-runtime/work/modules/
The selium-remote-client-server component should be added to the Selium Runtime's initialisation args:
selium-runtime \
--work-dir /path/to/selium-runtime/work \
--module "path=selium_remote_client_server.wasm;capabilities=ChannelLifecycle,ChannelReader,ChannelWriter,ProcessLifecycle,NetQuicBind,NetQuicAccept,NetQuicRead,NetQuicWrite;args=utf8:localhost,u16:7000"
Capabilities
The CLI accepts the following capability names:
SessionLifecycle, ChannelLifecycle, ChannelReader, ChannelWriter, ProcessLifecycle,
NetQuicBind, NetQuicAccept, NetQuicConnect, NetQuicRead, NetQuicWrite,
NetHttpBind, NetHttpAccept, NetHttpConnect, NetHttpRead, NetHttpWrite,
NetTlsServerConfig, NetTlsClientConfig, SingletonRegistry, SingletonLookup, TimeRead
Dependencies
~18–34MB
~495K SLoC