idevice
CoreDevice

Open Stdio Socket

Read the UUID provided by the CoreDevice open stdio socket service.

Open Stdio Socket is a CoreDevice service reached through RSD and RemoteXPC. The client connects to com.apple.coredevice.openstdiosocket.

Use It For

  • Connect through the iOS 17+ CoreDevice tunnel.
  • Call the typed CoreDevice client methods.
  • Use the matching tool command when one is registered.

Feature Flag

Cargo.toml
[dependencies]
idevice = { version = "0.1.64", features = ["usbmuxd", "rsd", "core_device"] }

Service Names

PathValue
RSDcom.apple.coredevice.openstdiosocket

Rust Example

src/main.rs
use idevice::{RsdService, core_device::OpenStdioSocketClient};

let mut client: OpenStdioSocketClient = rsd_handshake
    .connect(&mut rsd_provider)
    .await?;
let uuid = client.read_uuid().await?;
println!("{uuid}");

CLI Equivalent

This service does not have a dedicated idevice-tools command.

Common Errors

ErrorWhat to check
RSD service not foundThe connected device did not advertise the CoreDevice service name.
RemoteXPC errorCheck the CoreDevice action and payload shape used by the client.
Tunnel unavailableCreate the iOS 17+ tunnel before connecting to CoreDevice services over USB.

Source

On this page