MCPcopy Index your code
hub / github.com/electricbubble/gidevice-cli

github.com/electricbubble/gidevice-cli @v0.8.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.8.2 ↗ · + Follow
26 symbols 111 edges 18 files 2 documented · 8%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Golang-iDevice-CLI

license

Installation

https://github.com/electricbubble/gidevice-cli/releases

Devices

$ gidevice list
$ gidevice listen

DeveloperDiskImage

$ gidevice mount -l
# gidevice mount -l -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7
$ gidevice mount -d=/path/.../DeviceSupport/14.4/
$ gidevice mount /path/.../DeviceSupport/14.4/DeveloperDiskImage.dmg /path/.../DeviceSupport/14.4/DeveloperDiskImage.dmg.signature

App

$ gidevice applist
$ gidevice applist -t=all -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7

$ gidevice launch com.apple.Preferences
$ gidevice kill com.apple.Preferences

$ gidevice install /path/.../WebDriverAgentRunner-Runner.ipa
$ gidevice uninstall com.leixipaopao.WebDriverAgentRunner.xctrunner

$ gidevice ps

Forward

# Default port local=8100 remote=8100
$ gidevice forward
$ gidevice forward -l=9100 -r=9100 -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7

XCTest

$ gidevice xctest com.leixipaopao.WebDriverAgentRunner.xctrunner
# Only the logs contained in the text are displayed
$ gidevice xctest com.leixipaopao.WebDriverAgentRunner.xctrunner --contains="ServerURLHere->" --contains="Running tests..." --contains="Built at"
$ gidevice xctest com.leixipaopao.WebDriverAgentRunner.xctrunner --env=USE_PORT=8200 --env=MJPEG_SERVER_PORT=9200

Syslog

$ gidevice syslog

CrashReport

$ gidevice crashreport /path/.../local/dir/ -e -k

Screenshot

$ gidevice screenshot
$ gidevice screenshot -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7 -o=/path/..../screenshot.png

DeviceInfo

$ gidevice info
$ gidevice info -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7 --json=true   # for json format output

Thanks

About
libimobiledevice/libimobiledevice A cross-platform protocol library to communicate with iOS devices
anonymous5l/iConsole iOS usbmuxd communication impl iTunes protocol
alibaba/taobao-iphone-device tidevice can be used to communicate with iPhone device
electricbubble/gidevice communicate with iOS devices implemented with Golang

Thank you JetBrains for providing free open source licenses

Core symbols most depended-on inside this repo

ErrorExit
called by 52
internal/helper.go
GetDeviceFromCommand
called by 14
internal/helper.go
_devices
called by 2
internal/helper.go
IsDeveloper
called by 1
internal/helper.go
getFirstDevice
called by 1
internal/helper.go
getDevice
called by 1
internal/helper.go
Execute
called by 1
cmd/root.go
main
called by 0
main.go

Shape

Function 25
Struct 1

Languages

Go100%

Modules by API surface

internal/helper.go6 symbols
cmd/root.go3 symbols
cmd/info.go2 symbols
main.go1 symbols
cmd/xctest.go1 symbols
cmd/uninstall.go1 symbols
cmd/syslog.go1 symbols
cmd/screenshot.go1 symbols
cmd/ps.go1 symbols
cmd/mount.go1 symbols
cmd/listen.go1 symbols
cmd/list.go1 symbols

For agents

$ claude mcp add gidevice-cli \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact