ClaudeMods
☰
ZH-TW
● 0 人在線上 · 瀏覽 0 次
贊助提交作品
GitHub 儲存庫 · 發布者 mikhin

iphone-cam

一個 Claude Code 外掛,透過 Continuity Camera 從 iPhone 擷取畫面,並附加到下一則訊息。

已翻譯

關於這個 mod

Claude iPhone Cam 會在 Claude Code 提示列上方加入一個 📷 snap 按鈕。按下後,它會使用 ffmpeg/avfoundation 從 iPhone 相機擷取一個畫面(透過 Continuity Camera 以 Mac 網路攝影機提供),顯示附有重拍/丟棄控制項的縮圖;送出時,prompt.submit hook 會附加 JPEG 路徑,讓 Claude 將影像當作對話的一部分讀取。透過 /plugin marketplace add mikhin/claude-iphone-cam、/plugin install iphone-cam、/reload-plugins 安裝。需要 macOS Ventura+、iOS 16+、iPhone XR 或更新機型、ffmpeg,以及兩台裝置使用相同的 Apple ID。外掛會在本機執行 ffmpeg 來列出裝置並擷取畫面,將 frame-<n>.jpg/png 寫入 $TMPDIR/claude-cam/,而且不會建立網路連線。

安裝

請先查看作者 README,確認 marketplace 與外掛名稱;指令可能隨儲存庫結構而變動。

claude plugin marketplace add mikhin/claude-iphone-cam
claude plugin install iphone-cam
原文 / README

Claude iPhone Cam

A Claude Code mod that lets Claude see what your iPhone camera sees. Press 📷 snap above the prompt, check the thumbnail, type your question, send.

Claude iPhone Cam in action

The terminal in the demo is drawn, the pies are real: photos by Joe Dumas and Debby Hudson on Unsplash. The demo and its build script live in the demo branch, so installing the plugin doesn't download them.

No AirDrop, no Telegram-to-yourself, no saving files. The iPhone is already a Mac webcam through Continuity Camera; this mod grabs one frame from it.

Install

Inside Claude Code, run:

/plugin marketplace add mikhin/claude-iphone-cam
/plugin install iphone-cam
/reload-plugins

Requirements

  • macOS Ventura or later, iOS 16 or later, iPhone XR or newer
  • Both devices on the same Apple ID, Wi-Fi and Bluetooth on, iPhone locked and near the Mac
  • ffmpeg (brew install ffmpeg)
  • Camera access for your terminal app (macOS asks on the first snap)

What you see

[ 📷 snap ]
❯ _

After a snap:

╭──────────────╮ goes with the next message
│   (frame)    │ [ retake ]
│              │ [ drop ]
╰──────────────╯
❯ is my pie done?
  • retake snaps again, drop forgets the frame.
  • On send the frame goes with your message and the band clears.

How it works

  1. ffmpeg -f avfoundation -list_devices finds the device named … iPhone … Camera (Desk View is skipped).
  2. One ffmpeg run waits 1.5 s for exposure, then writes a full JPEG and a 640 px PNG thumbnail to $TMPDIR/claude-cam/.
  3. The band above the prompt draws the thumbnail with Claude Code's Image element.
  4. On send, a prompt.submit hook adds the JPEG's path to the message context, and Claude reads it.

A mod can only add text to a message, not image bytes, so Claude opens the frame with one Read call.

What it runs and sends

The mod runs only when you press snap, retake or drop, and when you send a message.

  • Programs it starts, all on your Mac:
    • ffmpeg -hide_banner -f avfoundation -list_devices true -i "" lists the cameras, to find the iPhone by name
    • ffmpeg … -i "<iPhone camera>" -ss 1.5 -frames:v 1 <frame>.jpg -ss 1.5 -frames:v 1 -vf scale=640:-2 <frame>.png takes one frame (the full command is captureArgs in hooks/camera.ts)
    • mkdir -p $TMPDIR/claude-cam makes the folder the frames go to
  • Files it reads and writes: it reads the TMPDIR environment variable, checks that /opt/homebrew/bin/ffmpeg exists, and writes frame-<n>.jpg and frame-<n>.png to $TMPDIR/claude-cam/. It never deletes them; macOS clears that folder.
  • What it adds to your messages: on prompt.submit, only for a message you typed, and only while a frame is waiting, it adds one line of context: the path of the JPEG and a request to read it. Nothing else in the message changes.
  • What it sends over the network: nothing. The mod opens no connections. The frame reaches Anthropic only when Claude reads it, as part of the conversation, like any file Claude reads.

License

MIT

更多類似作品