Skip to main content

AI-powered iPhone home screen organizer. One command to scan, score, and fix your layout over USB.

Project description

Unjiggle

Your iPhone home screen is a mess. You know it. You've given up fixing it. Unjiggle fixes it for you.

Unjiggle is an AI-powered CLI that reads your iPhone home screen, scores your organization, tells you what's wrong (and why), and fixes it — one step at a time or all at once.

unjiggle go — one command to scan, score, and analyze your iPhone

Quick Start

pip install unjiggle

Connect your iPhone via USB, then:

unjiggle go

That's it. One command. It scans your phone, scores your organization, runs AI analysis, and generates a shareable report card.

The Share Card

Unjiggle generates a Wrapped-style share card with your archetype, score, and App DNA mosaic. Screenshot it. Post it. Challenge your friends.

Unjiggle share card — The Agile Optimizer, score 70/100

What It Does

unjiggle go — The full experience in one command:

  • Reads your entire home screen layout over USB (226 apps, 8 pages, 14 folders... or whatever yours looks like)
  • Scores your organization (0-100) across four dimensions
  • Runs AI analysis that actually sees your phone: duplicate apps, abandoned apps, scattered categories, cryptic folder names
  • Generates a share card with your archetype and App DNA mosaic

unjiggle suggest — Interactive AI walkthrough:

  • The AI walks you through 5-7 observations, each with a specific fix
  • For cleanup suggestions: choose Delete (with a Marie Kondo gratitude moment), Archive (App Library), or Keep
  • Every change is previewed before applying
  • Auto-backup before any write. One-command undo.

unjiggle safety-test — Prove it's safe first:

  • Reads your layout, writes it back unchanged, reads again
  • Verifies the result is identical
  • Your phone doesn't change at all. Run this first if you're nervous.

Commands

Command What it does
unjiggle go Full experience: scan, score, AI analysis, share card
unjiggle scan See your layout color-coded by category
unjiggle score Organization score (0-100) with breakdown
unjiggle analyze AI observations (Claude or GPT-4.1)
unjiggle suggest Interactive walkthrough — apply changes step by step
unjiggle suggest --apply-all Just Fix It mode — apply everything at once
unjiggle report --open Generate share card + full report
unjiggle safety-test Prove read/write works (changes nothing)
unjiggle backup Save current layout
unjiggle restore Undo any changes

Requirements

  • macOS (USB communication with iPhone)
  • iPhone connected via USB with "Trust This Computer" accepted
  • Python 3.10+
  • API key for AI features: set ANTHROPIC_API_KEY or OPENAI_API_KEY

How It Works

Unjiggle uses pymobiledevice3 to communicate with your iPhone's SpringBoard services over USB. It reads the IconState (your home screen layout), enriches it with App Store metadata, and uses an LLM to generate observations and layout suggestions.

The write path is validated on iPhone 16 Pro, iOS 26.0. Every write is preceded by a verified backup and an optional round-trip safety test.

GUI Coming Soon

A native Mac app with live preview, drag-and-drop editing, animated before/after transformations, and a slider to control aggressiveness is in development.

The CLI validates the core value prop. The GUI is the full product.

Sign up for early access: unjiggle.com

License

GPL-3.0 (matching pymobiledevice3)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unjiggle-0.2.0.tar.gz (376.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

unjiggle-0.2.0-py3-none-any.whl (66.3 kB view details)

Uploaded Python 3

File details

Details for the file unjiggle-0.2.0.tar.gz.

File metadata

  • Download URL: unjiggle-0.2.0.tar.gz
  • Upload date:
  • Size: 376.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for unjiggle-0.2.0.tar.gz
Algorithm Hash digest
SHA256 5ea167b6319f0503eb933dc0bad1ad9e1eb8324d88b41497fc7f88446077fe92
MD5 4ed52baddb0b09613dad4a56b7b61150
BLAKE2b-256 78ecb438dd13404c253c6d4eb1d1a535553a3212f067a8b66155ca04301fbe17

See more details on using hashes here.

Provenance

The following attestation bundles were made for unjiggle-0.2.0.tar.gz:

Publisher: publish.yml on chungty/unjiggle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file unjiggle-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: unjiggle-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 66.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for unjiggle-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6e118261119d4eb0533735724d26a3e06747f79512901a425d15271cdb8d0807
MD5 19ecb677ea207530174f0c622fb095ac
BLAKE2b-256 46988f02213464231efe1d0adfbfb6875c101a22516cf8ba5e05a041f284fe58

See more details on using hashes here.

Provenance

The following attestation bundles were made for unjiggle-0.2.0-py3-none-any.whl:

Publisher: publish.yml on chungty/unjiggle

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page