secretspec-ipc
Independent Rust implementation of SecretSpec IPC version 1 (SecretSpec
0.21+). The checked-in JSON Schema and OpenRPC documents under
schema/ipc/v1/ are canonical; this crate supplies strict framing/envelopes,
multiplexed clients, a server dispatcher, child lifecycle management, and typed
resolution/provider handler APIs.
Endpoints also answer rpc.discover before or after initialization (SecretSpec
0.21+). Discovery returns a self-contained OpenRPC document with its JSON
Schemas and endpoint metadata without loading application or provider state.
The crate packages the canonical discovery assets under schema/ipc/v1/.
The runtime-independent codec builds without Tokio:
cargo check -p secretspec-ipc --no-default-features
The default tokio feature enables async transports, clients, servers, process
launch, and handler adapters.
The blocking feature adds a synchronous secretspec.resolver/1 session over
std::process, for a consumer that has no async runtime and should not acquire
one. It reuses the same framing, envelopes, and validation, and adds no
dependency beyond the runtime-independent set:
cargo check -p secretspec-ipc --no-default-features --features blocking