エコシステム連携
ClipboxAI はクリップボードのハブです。しかし、ファイル圧縮、画像最適化、PDF 処理といった本格的な処理は、専門の姉妹アプリに任せるほうが適しています。アクションマーケットプレイス にはすでに サードパーティ製ソフトウェア カテゴリーが用意されており、そこではアクションがユーザーがすでにインストール済みのアプリに直接処理を委譲します(NueZip、Nicasa、…)。
このページでは、その連携がどう機能するか、そして あなたの アプリを参加させる方法を説明します。
仕組み(送信側の委譲)
エコシステムアクションとは、プロンプトの代わりに execution 記述子を持つマーケットプレイスのエントリにすぎません。
json
{
"id": "nuezip-compress-zip",
"name": "Compress to ZIP",
"category": "ecosystem",
"author": "NueZip",
"appIcon": "icons/nuezip.png",
"execution": {
"kind": "externalApp",
"scheme": "nuezip",
"urlTemplate": "nuezip://quickCompress?files={{files}}&extra=zip"
}
}ユーザーが Install をクリックすると、ClipboxAI はそのアクションをローカルに登録します。クリップボード項目に対してそれを実行すると、アプリはテンプレートを埋め込み、NSWorkspace.open(_:) を通じて対象アプリを開きます。
— 現在のクリップボード項目の絶対ファイルパス(複数ファイルの場合は改行区切り)。— プレーンテキストの内容。— 任意のclipboxai://callback?…リターン URL(x-callback-url スタイルの往復用。姉妹アプリが実装した場合に使用)。
対象アプリが インストールされていない 場合、ユーザーがインストールするまでそのアクションはパネルから非表示になります — 壊れたボタンは表示されません。
姉妹アプリ向けの URL スキーム契約
対象となるためには、あなたの macOS アプリで以下を行うだけで済みます。
Info.plist(CFBundleURLTypes)に URL スキームを登録する。- 受信した URL を処理する — クエリから
files/textを読み取り、それらに対して処理を行う。 - (任意)完了時に
returnURLを呼び出し、ClipboxAI が「<アプリ> で完了」というトーストを表示できるようにする。
これだけです。プライベート API も共有コードも不要 — ただのディープリンクです。NueZip と Nicasa の Finder 拡張機能は、参考になる実装例です。コピーして利用できます。
エコシステムに参加する
カタログは公開リポジトリで管理しているため、誰でもアクションを追加できます。
- 📦 アクションを提出する(またはアプリの追加をリクエストする)— clipboxAI/marketplace · Issues
- 🔀 または
clipboxai-marketplaceに対して、 あなたのアクションの JSON を追加するプルリクエストを作成する。
ガイドライン
- 明確な
authorとappIcon(正方形の PNG、約 256×256、透過可)を使用する。 urlTemplateは最小限に保ち、カスタムのクエリパラメータがあればドキュメント化する。- 公開前に、あなたのアプリを実際にインストールした状態で往復(round-trip)をテストする。
- ユーザーのプライバシーを尊重する — ユーザーが明示的に委譲したファイルだけを処理する。
なぜ参加するのか?
- 統合コストゼロ — ディープリンク 1 つ、SDK 不要。
- 配布 — あなたのアプリのアクションが、すべてのユーザーの ClipboxAI Marketplace に表示される。
- コンテキスト — アクションは、ユーザーがすでに作業しているクリップボード、Finder、その他どこからでも起動する。
