Lchiki-Lab
arrow_backBack to Archive

iPhoneからObsidianへ1秒で転送!GitHub APIとショートカットで作る「入力特化」の同期環境

calendar_today2026.04.03folderTechnology
Cookie Cat

iCloudなどのクラウドストレージを使わずに、iPhoneとObsidianをスムーズに連携させる方法を紹介します。

今回は、クラウドストレージを使わずに無料でできる「iOSショートカット」を活用した手法です。


1. ​はじめに​:設計思想

ObsidianはPCでの思考整理に不可欠なツールですが、外出先でふと思いついたアイデアや、後で読みたいWebサイトをサッとメモしたい時、「スマホですぐに入力できたら」と思うことが多々あります。
多機能さは求めず、シンプルに「スマホからObsidianにデータを送り、メモやWebクリップを確実に残す」こと。

しかし、この「ただメモを送るだけ」のことが、Obsidianがローカル管理を基本とする特性上、同期の面で課題となってしまいます。

1.1. クラウドストレージ同期と​いう​課題

iCloud Driveなどのクラウドストレージを使う方法は一般的ですが、Windows環境での動作が不安定だったり、モバイル通信環境下で同期完了を待つ必要があったりと、ストレスを感じる場面が少なくありません。また、公式のObsidian Syncは非常に高機能ですが、有料プランが必要なため、まずはコストを抑えて自分好みのフローを試してみたいという方も多いはずです。さらに、クラウドストレージは無料枠の容量を常に気にする必要があり、ノートや添付ファイルが増えるにつれてストレージ不足がネックになることもあります。

特徴Obsidian SynciCloud DriveGoogle DriveGit (GitHub等)
コスト有料無料〜無料〜無料〜
初期容量10GB〜5GB15GB無制限
(実質的)
モバイル親和性公式◎iOSアプリ◎外部アプリ〇設定難△

1.2. ​「入力に​全振り」する​割り切り

もともと私はObsidianを使う前、EvernoteやOneNoteなど様々なノートアプリを渡り歩いてきましたが、自身の使い方を振り返ると、実はスマホで過去のノートをじっくり読み返すことはほとんどありませんでした。結局のところ、外出先でスマホを手に取る目的の大半は、その場の思いつきや情報を「メモする」ことだったのです。

こうした背景から今回提案するのが、「iPhoneからの閲覧・編集機能を完全に切り捨てる」という割り切りです。iPhoneをノート全体を管理する場所ではなく、あくまで「Obsidianへ情報を流し込むための専用インターフェース」と定義し直します。閲覧と整理はPCで行うと決めてしまうことで、既存の同期システムの制約から解放された、シンプルで快適なフローが手に入ります。


1.3. 本記事で​実現する​こと

Quick Memo Preview

本記事では、iOSショートカットを活用して以下の2つの機能を持つ「入力システム」を構築します。

  • クイックメモ保存: 起動してすぐに入力画面を表示。思いついたアイデアを即座にObsidianのInboxフォルダへ送信します。
  • Webクリップ: Safariなどで閲覧中の記事URLを、タイトルやタグを自動付与した状態でObsidianへ保存。後でじっくり読むためのストックを瞬時に作成します。

2. 事前準備​(GitHubの​設定)

2.1. リポジトリの​作成

まずは、自分のObsidian環境をまるごと管理するためのリポジトリをGitHubに作成します。すでにPCでObsidianを利用している方は、その保管庫(Vault)フォルダをGitHubのリポジトリとして新しく作成、またはアップロードするだけで準備完了です。これが、iPhoneから送られてくるメモを受け取るための「オンライン上の格納庫」になります。

この際、セキュリティの観点から必ず「Private(非公開)リポジトリ」として作成するように注意してください。Publicに設定してしまうと、全世界からノートの中身が閲覧できてしまう可能性があるため、ここだけは忘れずにチェックしておきましょう。


2.2. 個人アクセストークン​(PAT)の​発行と​権限設定

GitHub Token Settings へアクセスし、Personal access tokenを作成します。

GitHub PAT Setting

設定時のポイントは以下の通りです:

  • Token name: 「Obsidian iPhone Sync」など分かりやすい名前を付けます。
  • Expiration: 好みの有効期限を設定します。(セキュリティを考慮して定期的な更新をお勧めします)
  • Repository access: Only select repositories を選び、先ほど作成したリポジトリのみを対象に設定しましょう。

権限(Repository permissions)の設定では、Contents: Read and write を選択してください。Metadataは自動的に Read-only に設定されます。

GitHub PAT Permissions
注意点

GitHubトークン(PAT)は一度発行すると再表示されません。必ず安全な場所にメモしてください。これがないとショートカットからの正確な通信が行えません。


3. iOSショートカットの​構築

3.1. 入力判定と​保存先の​分岐ロジック

まず、入力を「Webクリップ(URL等)」か「テキストメモ」かに振り分け、保存先ディレクトリ(TargetDir)を決定します。

なお、以下のディレクトリ設定はあくまで私の一例です。ご自身のObsidianの運用ルールに合わせて、好きなフォルダを指定してください。

  • Webクリップ: 素材用フォルダへ(例:Zettelkasten/02_LiteratureNote
  • メモ: 断片的な記録用フォルダへ(例:Daily/MobileMemo

手順の第一歩として、共有シート経由か直接起動かを判定するロジックを組みます。

  1. 「もし(If)」アクションを追加:
    条件を「ショートカットの入力」に「値がある」に設定します。

  2. 詳細設定(共有シートへの表示):
    ショートカットの編集画面にある「i」マークから「共有シートに表示」をオンにします。 共有シートの入力タイプは「テキスト」「URL」に設定しておきましょう。

  3. Shortcut Logic BranchShortcut Logic True
  4. 真の場合(共有シート経由):
    • 「テキスト」アクションで保存先フォルダ名(例:Zettelkasten/02_LiteratureNote)を記述します。
    • 「変数を設定」アクションで、上記のテキストを変数 TargetDir にセットします。
    • 「テキストを置き換え」アクションで、Web Clipperが自動挿入する不要なフッター行を削除します。使用する正規表現は以下の通りです:
    • (?m)^Shared from Obsidian Web Clipper.*$
      
      ポイント

      この処理を挟むことで、Web Clipper経由の不要なゴミデータがObsidianへ入り込むのを防ぎ、常にクリーンな状態で情報をストックできるようになります。

    • 処理後のテキストを変数 FinalText にセットしておきます。

  5. 偽の場合(直接起動):
    Shortcut Logic False 1Shortcut Logic False 2
    • 「入力を要求」アクションで、メモを入力するためのダイアログを表示させます。
    • 「テキスト」アクションで、手動メモ用の保存先フォルダ名(例:Daily/MobileMemo)を指定します。
    • 「変数を設定」アクションで、上記のテキストを変数 TargetDir にセットします。
    • 「日付」「日付をフォーマット」を使い、Obsidianのプロパティ(YAML)に適した形式で日付を取得します。
    • 日付の書式は「カスタム」を選択し、yyyy-MM-dd HH:mm と指定するのがおすすめです。
    • 「テキスト」アクションに、フロントマターと入力内容を組み合わせて全体のフォーマットを作成し、変数 FinalText にセットします。

3.2. データ変換

Shortcut Base64 Encode

ここでは、GitHub APIへ送信するためのデータ準備として、以下の2つのアクションを設定します:

  1. 「日付をフォーマット」アクションで、先ほどと同じようにファイル名に使用するための日付形式(yyyy-MM-dd-HHmmss)を取得します。

  2. 「Base64エンコード」アクションで、FinalText をエンコードし、「行を分割」を「なし」に設定します。この結果が、後のAPI送信で実際に使われるデータ(Payload)になります。

おすすめ

GitHub APIとの通信を成立させるため、必ずBase64エンコードを行ってください。「行を分割」設定を「なし」にすることで、送信の安定性が向上します。


3.3. 通信層の​設定​(GitHub API / PUTリクエスト)

ショートカットの最後は、作成したデータをGitHubへ届ける「通信」の設定です。

  1. 「テキスト」アクションで、送信先となるAPIエンドポイントを組み立て、変数(例:API_URL)にセットします。

    https://api.github.com/repos/[ユーザー名]/[リポジトリ名]/contents/[TargetDir]/[フォーマット済み日付].md

    [ユーザー名] [リポジトリ名] はご自身のGitHub情報に書き換え、[TargetDir][フォーマット済み日付] はショートカット内の「変数」を選択してセットしてください。

  2. 「テキスト」アクションで、事前準備(2.2)で発行した「GitHubトークン(PAT)」を保存しておきます。

  3. 「URLの内容を取得」アクションを追加し、GitHub APIを叩くための詳細情報を入力して完了です。

API送信(PUT)の詳細設定

「URLの内容を取得」をクリックし、以下の通りパラメータを設定してください。

  • ・方法: PUT
  • ・ヘッダ:
    • Authorization: Bearer [あなたのGitHubトークン(PAT)]
    • Accept: application/vnd.github+json
    • X-GitHub-Api-Version: 2022-11-28
  • ・要求本文(JSON形式):
    • message: [任意のメッセージ](例:Add from iPhone など、分かりやすいもの)
    • content: [Base64エンコード済みテキスト]
    • branch: main
Cookie Cat

以上でショートカットの設定は完了です!お疲れ様でした。これでiPhoneからいつでもObsidianへ情報を飛ばせるようになりました。


4. Obsidian​(PC側)での​受け取り設定

4.1. GitHubからの​自動プル設定

PC側で起動中のObsidianに対し、Obsidian Git プラグインなどを用いて、リポジトリが自動的に Pull されるように設定します。

この「自動プル」を設定するかどうかは、ご自身の運用スタイルに合わせて選んでみてください。PCを開いた瞬間に外出先でメモした内容が届いていてほしい方や、同期の手間を意識したくない方には、5〜10分程度の間隔での設定がおすすめです。一方で、Gitの挙動をすべて自分でコントロールしたい場合や、1日の終わりにまとめて手動で整理するルーチンがある方には、設定は不要かもしれません。

コンフリクト​(競合)​への​不安に​ついて

「Gitを使うとコンフリクトが怖そう…」と感じるかもしれませんが、このシステムではその心配はほぼありません。

なぜなら、iPhone側からは常に「新しい日付・時刻のファイル名」で、完全に新規のファイルとしてデータが追加されるからです。PC側で編集中の既存ファイルを書き換えるわけではないため、データがぶつかる余地がありません。安心して「投げ込む」感覚で運用してください。


5. 運用ガイドと​メンテナンス

5.1. 思考を​妨げない​「クイックメモ」の​実践フロー

ショートカットを直接起動すると、すぐに入力ダイアログが表示されます。「あ、これメモしておこう」と思った瞬間に、アプリを開く手間なく、通知センターやホーム画面から1タップで入力を開始できるのが最大の強みです。

ホーム画面への追加がおすすめ

iPhoneのホーム画面にショートカットアイコンを配置しておけば、まさに「1秒でメモを開始」できる環境が整います。Obsidian本体を立ち上げて、ノートを探して…という手間を完全にショートカットできるため、アイデアが逃げる前にキャッチできます。

入力された内容は、あらかじめ設定したInboxフォルダ(例:Daily/MobileMemo)に、タイムスタンプ付きのファイルとして即座に保存されます。


5.2. 公式 Web Clipper を​起点とした​高機能な​情報ストック術

Webサイトの情報を効率的に取り込むためのフローは、以下の3つのステップで完結します。この連携を最大限に活かすためには、公式が提供しているブラウザ拡張機能「Obsidian Web Clipper」をあらかじめ準備しておくことが必須となります。

  1. 拡張機能の準備: SafariやChromeなどのブラウザに拡張機能をインストールします。
  2. クリップの実行: 保存したい記事でWeb Clipperを起動します。この時点ではまだ既存の同期設定に則った状態(何も起こらない状態)です。
  3. ショートカットへ渡す: Web Clipperの画面にある「共有ボタン」を押し、作成したショートカットを選択します。
Safari Web Clipper MenuSafari Web Clipper Detail
ここがポイント:共有ボタンからGitへ飛ばす

Web Clipperで整形された内容は、右上の共有ボタンから自作ショートカットに渡すことで、初めてGitHubへと自動送信されます。これにより、外出先での「後で読みたい」という直感的な操作が、PCを開いた時にはすでに指定フォルダ(例:Zettelkasten/02_LiteratureNote)に届いているという、シームレスな体験に繋がります。


5.3. AIアシスタントに​よる​定期的な​ファイル統合術​(Skills)

モバイルからのメモやWebクリップは「1回につき1ファイル」として独立して追加されるため、フォルダ内には情報の断片が次々とストックされていきます。この際、あえてファイル名などの細かな整理は行わず、まずは「入力のスピード」を最優先に設計しています。

Mobile Memo List

この散らばった断片情報を、より価値のある形にブラッシュアップするのが「Skills」の役割です。同一日のメモを1つのデイリーノートへ統合したり、クリップされた内容からタイトルを自動抽出してリネームしたりといった「整理の自動化」を Skills に任せることで、人間側は常に「書くこと(放り込むこと)」だけに集中できる環境を維持しています。

放り込む人間、片付けるAI

「入力環境(スマホ)は極限まで簡素に、整理プロセス(PC/AI)を強力に」という理想の役割分担こそが、このフローによって実現されています。


6. まとめ

iCloud や公式同期を使わずに、GitHub API とショートカットを組み合わせることで、iPhone を「情報を放り込む専用デバイス」として活用する仕組みを構築しました。

Cookie Cat

「閲覧・編集はPC、入力はスマホ」と役割を分担することが、同期トラブルに悩まされないためのコツです。

Skills による自動整理を味方に付けて、アイデアをどんどん Obsidian へストックしていきましょう!

関連記事