クラウドナビ
← 記事一覧に戻る
【2026年】Claude CodeでiPhoneを操作できる!phone-harness完全ガイド(セットアップ手順つき)
AIエージェント·1分で読了
#phone-harness#iPhone#Claude Code#iOS自動化#iPhoneミラーリング#AIエージェント

この記事のまとめ

「Claude Code に iPhone の操作も任せられたら…」

【2026年】Claude CodeでiPhoneを操作できる!phone-harness完全ガイド(セットアップ手順つき)


「Claude Code に iPhone の操作も任せられたら…」 「iOS アプリの自動化って、API や脱獄が必要でハードル高い…」

そんな常識を覆すプロジェクトが登場しました。phone-harness は、Claude Code や Codex などの AI エージェントから、あなたの本物の iPhone を直接操作できるようにするオープンソースツールです。

脱獄(ジェイルブレイク)不要・API 不要・Xcode 不要・WebDriverAgent 不要。macOS の「iPhone ミラーリング」機能を経由して、人間と同じように iPhone を操作します。X では 2,400 以上のいいねを集め、GitHub でも 179 スターを獲得している注目プロジェクトです。

この記事では、phone-harness の仕組み・セットアップ方法・使い方を初心者向けに完全解説します。


この記事でわかること

  • phone-harness とは何か(何ができるのか)
  • なぜ「API なし・脱獄なし」で操作できるのか
  • セットアップ手順(公式のセットアッププロンプトつき)
  • 実際の使い方(コード例)
  • できないこと・注意点

phone-harness とは?

phone-harness は、LLM(AI エージェント)をあなたの本物の iPhone に直接接続するための薄いハーネス(制御層)です。

主な特徴

  • iOS アプリを人間のように自動操作できる
  • ネイティブ iPhone 制御 → API 不要・脱獄不要
  • 一度接続すれば、いつでも操作可能
  • セットアップはプロンプト1つで完了

開発者は Shawn Pana(@shawn_pana)。MIT ライセンスのオープンソースで、GitHub で公開されています。


なぜ「APIなし・脱獄なし」で操作できるのか

秘密は macOS の「iPhone ミラーリング」機能にあります。

macOS Sequoia 以降の iPhone ミラーリングは、iPhone の画面を Mac のウィンドウとして表示し、Mac からのマウス・キーボード入力を iPhone のタッチ操作として転送します。

phone-harness はこの仕組みをそのまま利用します。

AIエージェントClaude Code / Codex「天気アプリを開いて」iPhone実際のアプリを操作タップ・スワイプ・入力iPhone ミラーリングMac のウィンドウとして表示入力をタッチとして転送phone-harness の3ステップ① 見る(screencapture + Vision OCR)② 操作する(CGEvent でタップ等)③ 確認する(再スクショ)

3つの基本動作

動作仕組み
見る(See)ミラーリングウィンドウをキャプチャし、AppleのVisionフレームワークのOCRで画面上の文字と座標を取得。いわば「貧乏人のDOM」
操作する(Act)HIDレベルのCGEventを送信。タップ・長押し・ドラッグ・フリック・スクロール・文字入力が可能
確認する(Verify)操作後に再度スクリーンショット。DOMがない世界では「キャプチャこそが真実」

セットアップ手順(プロンプト1つで完了)

ステップ1:セットアッププロンプトを貼り付ける

Claude Code(または Codex)に、以下のプロンプトをそのまま貼り付けます。

Set up phone-harness for me. Clone https://github.com/ShawnPana/phone-harness
into ~/.phone-harness (its canonical home) and read `install.md` first to install
it and connect it to my real iPhone
through the macOS iPhone Mirroring app — install it so `phone-harness` is a
command on my PATH, and register it as an agent skill named phone-harness using
`phone-harness skill` as the body, so you reach for it automatically. Then read
`SKILL.md` for normal usage, and always read `src/phone_harness/helpers.py`
because that is where the functions are. Whenever you capture or verify the
screen, activate the iPhone Mirroring window so I can see what you're doing on
the phone.

Setup needs two things only I can do: pairing iPhone Mirroring with my phone
once, and granting the terminal Accessibility + Screen Recording in System
Settings — walk me through those and wait for me. Verify with
`./phone-harness --doctor`.

After it's installed, as a quick demo that interaction works, go to my Home
Screen and — if the phone is connected and unlocked — ask me whether you should
open the Weather app as a harmless test; only open it if I say yes. If the
session is paused or the phone is locked, just tell me the doctor status instead.

ステップ2:自分だけができる2つの設定

エージェントが自動でやってくれますが、この2つだけは物理的な操作が必要です。

設定内容
iPhone ミラーリングのペアリング初回のペアリングは実機のiPhoneでの操作が必要
ターミナルの権限付与システム設定 → プライバシーとセキュリティ で「アクセシビリティ」と「画面収録」を許可
  • アクセシビリティ: タップ・キー入力に必要(即時反映)
  • 画面収録: 画面を見るために必要(ターミナル再起動後に有効

ステップ3:動作確認

./phone-harness --doctor

すべての権限・接続が正常か自動チェックしてくれます。


使い方

基本的な操作例

phone-harness は、Python スクリプトを標準入力から実行する CLI です。ヘルパー関数があらかじめ組み込まれています。

./phone-harness <<'PY'
open_app("Notes")
tap_text("New Note")
type_text("hello from the harness")
print([o["text"] for o in ocr()][:10])
PY

この例では、メモアプリを開いて → 新規メモをタップして → 文字を入力 → 画面の文字を読み取る、までを自動実行します。

日常のワークフロー

日常的には、SKILL.md がエージェントスキルとして登録されるので、Claude Code が自動的に phone-harness を呼び出してくれます。

エージェントの作業イメージ:

● agent: wants to open Weather
│
● ocr() → "Weather" at (400, 468)
│
● tap(400, 468) → wait_stable() → ocr() confirms the forecast
✓ done

「見る → 操作する → 確認する」 のループを、エージェントが自律的に回します。


アーキテクチャ(中身の構成)

ファイル役割
SKILL.md
install.md
src/phone_harness/mirror.py
src/phone_harness/ocr.py
src/phone_harness/helpers.py
src/phone_harness/admin.py
agent-workspace/agent_helpers.py

ミラー転送はステートレス(毎回ウィンドウ座標・キャプチャを取り直す)なので、デーモンは不要。1回の実行が自己完結しています。


できないこと・注意点(正直なところ)

  • 1台のiPhone・1セッション限定: 物理 iPhone のロックを解除するとミラーリングが一時停止する
  • マルチタッチ非対応: ピンチ操作は不可
  • カメラ・Face ID フロー非対応: 顔認証が必要な操作はできない
  • DRM 動画は黒画面: 著作権保護されたコンテンツは映らない
  • OCR は「文字」しか見えない: ラベルのないアイコンは、スクリーンショット + ビジョンモデルが必要
  • macOS Sequoia 以降が必要: iPhone ミラーリングが使える環境が前提
  • 開発初期のプロジェクト: v0 段階。実際の利用では自分で調整・テストが必要

まとめ

phone-harness は、「AI エージェントが自分の iPhone を操作する」 という未来を、脱獄なし・API なしで実現したプロジェクトです。

  • iPhone ミラーリング + OCR + CGEvent という macOS 標準機能の組み合わせ
  • セットアップはプロンプト1つ(ペアリングと権限だけ自分でやる)
  • 見る → 操作する → 確認する のループで自律操作
  • GitHub で MIT ライセンス公開(github.com/ShawnPana/phone-harness
  • Android 版はまだ無い(コメントでも要望が出ている)

「Claude Code に iPhone の操作まで任せたい」という人には、まさに待望のツールです。まずは公式のセットアッププロンプトを Claude Code に貼り付けて、天気アプリを開くテストから始めてみてください。