Skip to main content

Pippin: A Token-Efficient CLI for iOS Automation

Pippin (Simulator Driver) is a command-line interface designed to bridge the gap between Large Language Models (LLMs) and the iOS Simulator. It provides a set of stateless, atomic commands to inspect, interact with, and verify the state of iOS applications running in the Simulator.

Features

  • Token Efficiency: Generates simplified, text-based JSON representations of the UI, allowing LLMs to "see" the screen with minimal token usage.
  • Stateless Actions: Each command is independent, making it easier for agents to reason about the state.
  • Native Wrapper: Orchestrates xcrun simctl and idb for robust automation.

Installation

You can run Pippin directly using uvx (recommended):

uvx pippin --help

Or install it via pip:

pip install pippin

Note: You must have idb (iOS Development Bridge) and Xcode command-line tools installed and configured on your machine.

Usage

Pippin commands follow the structure: pippin [command] [subcommand] [flags]

Vision (Seeing the Screen)

  • Inspect UI: Get a JSON representation of the current screen.
    pippin inspect --interactive-only
    
  • Take Screenshot: Capture the visual state.
    pippin screenshot output.png
    

Interaction (Acting on the App)

  • Tap Element: Tap by accessibility identifier or label text.
    pippin tap "Log In"
    
  • Type Text: Enter text into the focused field.
    pippin type "user@example.com" --submit
    
  • Scroll: Scroll in a direction, optionally until an element is found.
    pippin scroll down --until-visible "Submit"
    
  • Gestures: Perform swipes.
    pippin gesture swipe 100,200 100,400
    

System (Controlling the Environment)

  • Launch App: Launch an app by Bundle ID.
    pippin launch com.example.myapp --clean
    
  • Open URL: Open a deep link.
    pippin open "myapp://settings"
    
  • Permissions: Manage privacy permissions.
    pippin permission camera grant
    
  • Location: Set simulated GPS coordinates.
    pippin location 37.7749 -122.4194
    

Verification (Checking State)

  • Assert: Verify UI state (exists, visible, hidden, text matches).
    pippin assert "Welcome Message" visible
    
  • Logs: Fetch recent app logs.
    pippin logs --crash-report
    
  • File Tree: List files in the app's sandbox.
    pippin tree documents
    

Contributing

  1. Clone the repository.
  2. Install dependencies.
  3. Run tests: python3 -m unittest discover tests

Metadata

Release files for pippin-ios 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pippin-ios 0.1.0
File Size Uploaded
pippin_ios-0.1.0.tar.gz 23.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pippin-ios 0.1.0
File Interpreter ABI Platform
pippin_ios-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 53.5 kB

Release files / pippin_ios-0.1.0.tar.gz

Download URL pippin_ios-0.1.0.tar.gz
Size 23.7 kB
Tags Source
SHA-256 checksum
How to use checksums
51238bf66e6d29f0bcb21221180cd7598f61685e25665bc067a7875eefbcfe0c
BLAKE2b-256 checksum
How to use checksums
6f71ad39c0df1f2eb46ac0f6853f72b17ea85cbbd0f1910512f79e14df7a0667
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.5

Release files / pippin_ios-0.1.0-py3-none-any.whl

Download URL pippin_ios-0.1.0-py3-none-any.whl
Size 29.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
06cb1dff42f97bd87c95f36aa3ffdbb93583a36b4bf6991cf3b194688b4e6d0f
BLAKE2b-256 checksum
How to use checksums
147760324f7f89fb993b83722dbe0974c4c51789294f7e3486275b0fc46e376d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.5

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page