PIL

官方

將您的Instagram收藏貼文轉變為可搜尋的個人知識庫 — 本地SQLite,唯讀MCP伺服器

你可以用 PIL MCP 做什麼?

  • 搜尋已儲存的貼文 — 請您的助理透過文字在說明文字與 AI 擷取的知識中尋找貼文,並可透過 search_posts 選擇資料夾或標籤篩選條件。
  • 取得完整貼文詳細資料 — 使用 get_post 取得任何已儲存貼文的完整紀錄,包括摘要、重點、操作步驟、連結、資料夾與標籤。
  • 瀏覽收藏與標籤 — 透過 list_folders 與 list_tags 列出您已儲存的 Instagram 收藏(含索引計數),或依使用情況檢視標籤。
  • 檢查收藏庫涵蓋範圍 — 使用 library_stats 檢視整個已儲存貼文收藏庫的總數與深度閱讀完成統計。

文件

PIL logo

你儲存的 Instagram 貼文 — 由 AI 深度閱讀、永久可搜尋,且完全保存在你的裝置上。

License: MIT PRs Welcome Stars

Claude Code Cursor Claude Desktop

開始使用 · 運作方式 · 其他 AI 工具 · 內容總覽

mcp-name: io.github.pjpoulose/pil


三步驟取得 PIL

1. 將以下內容複製貼上到 Muse:

    將 https://github.com/pjpoulose/PIL 複製到你的工作區,並依照其中的
    SKILL.md 設定我的個人 Instagram 圖書館。逐步完成 —
    安裝、從我儲存的貼文建立圖書館,然後將可安裝的應用程式交給我。

2. 當它要求時,在瀏覽器中一鍵連結你的 Instagram。

3. 下載它傳送給你的應用程式檔案 → 解壓縮 → 雙擊 Start PIL → 點擊 Install。

就是這樣。你的 Muse 會負責設定、閱讀和建置。 也想在手機上使用嗎?直接告訴你的 Muse — 它也能處理。

想自己動手?一條指令即可完成所有設定。
  • Mac / Linux:curl -fsSL https://raw.githubusercontent.com/pjpoulose/PIL/master/bootstrap.sh | bash
  • Windows(PowerShell):irm https://raw.githubusercontent.com/pjpoulose/PIL/master/bootstrap.ps1 | iex

然後使用手動設定中的指令建立你的圖書館。


每天你都會儲存一些再也找不到的貼文。**PIL(個人 Instagram 圖書館)**將你儲存的 Instagram 收藏轉變為你裝置上的私人知識庫:每則貼文都由視覺 AI 深度閱讀 — 敘述摘要、重點、操作步驟、提到的連結、自動標籤 — 幾秒內即可搜尋,並可從你的 AI 編碼工具即時查詢。

程式碼共享,資料留在家中。 此儲存庫僅包含程式碼、資料庫結構、設定範例和文件。你儲存的貼文、說明文字和帳戶詳細資料絕不會離開你的電腦 — 匯入、擷取、搜尋和 MCP 伺服器全部在本機執行。.gitignore 會阻止資料庫、設定和匯出內容被提交。

PIL dashboard concept — gallery of deep-read saved posts with a synthesized answer

使用範例資料的概念模擬 — 你的圖書館看起來就像這樣,包含你的貼文。

希望你的 Claude、Codex 或 Cursor 也能存取?

連接唯讀 MCP 伺服器,你的其他 AI 工具就能即時查詢你的圖書館 — 永遠保持最新狀態,無需重新上傳。你的 Muse 可以幫你完成設定。 如何連接 →

運作方式

flowchart LR
    A["Instagram saved posts"] -->|"ingest"| B["Local SQLite on your machine"]
    B -->|"vision AI<br/>deep read"| C["Summaries, key points, how-tos, links, tags"]
    C --> D["Query two ways"]
    D --> E["MCP server — Cursor, Claude Code, Desktop"]
    D --> F["Static JSON export — any AI tool"]

手動設定(自行操作)

展開 — 僅在跳過上方三步驟 Muse 流程時才需要。

前置需求: python3(3.11+)和已連結 Instagram 帳戶的 instagram-cli(執行 instagram-cli accounts — 它必須列出你的帳戶)。頁面頂部的單行安裝程式會為你處理所有這些。

# 1a. Install from PyPI (recommended — no clone needed)
pip install personal-instagram-library
# gives you: pil-mcp pil-ingest pil-extract pil-tag
#            pil-export-web pil-export-html pil-export-pwa pil-publish-pwa

# 1b. Or get the code
git clone https://github.com/pjpoulose/PIL.git pil && cd pil

# 2. Configure (your data lives in data_dir, default ~/.local/share/pil)
cp pil.config.example.json ~/.config/pil/pil.config.json
# edit it: set account_id to your user_fbid from `instagram-cli accounts`

# 3. MCP server dependency
pip install "mcp<2"

建立你的圖書館(每個步驟都可安全恢復 — 隨時可重新執行):

cd bin
python3 ingest_saved.py      # collections + saved posts
python3 extract_content.py   # vision-AI deep read (batches of 25)
python3 tag_all.py           # programmatic tags for untagged posts
python3 export_web.py        # static JSON export -> <data_dir>/web_data.json
python3 export_html.py       # searchable HTML dashboard -> <data_dir>/pil_library.html
python3 export_pwa.py        # installable PWA bundle -> <data_dir>/pwa/

詢問任何問題 — 透過即時 MCP 伺服器或靜態匯出:

python3 bin/mcp_server.py    # read-only, stdio — Ctrl-C to stop

就是這樣。每當你儲存新貼文時重新執行 ingest_saved.py;extract_content.py 只會處理它尚未看過的貼文。

應用程式: 請你的 Muse 建置並傳送 — 請參閱將你的圖書館變成應用程式。

為什麼不直接捲動你的儲存分頁?

Instagram 儲存分頁PIL
找到兩年前的貼文無止盡地捲動幾秒內全文搜尋
記得貼文實際說了什麼重新觀看/重新閱讀AI 摘要、重點、操作步驟
貼文提到的連結除非你另外儲存,否則消失已擷取且可點擊
在你的 AI 工具中使用截圖和重新輸入MCP 伺服器或 JSON 匯出
你的資料存放位置Meta 的伺服器你的電腦、SQLite

從其他 AI 工具查詢你的圖書館

即時(建議):MCP。 將任何相容 MCP 的助手指向唯讀伺服器,每個問題都會讀取你目前的資料庫 — 永遠最新、無需匯出、無需重新上傳:

python3 /path/to/pil/bin/mcp_server.py    # stdio; Ctrl-C to stop

Claude Code、Claude Desktop 和 Cursor 的設定方式: references/mcp_clients.md。任何相容 MCP 的用戶端都可以使用 — 如果你不想碰設定檔,你的 Muse 也可以幫你連接。可用工具:

工具功能
search_posts在說明文字和深度閱讀知識上進行文字搜尋,可選資料夾/標籤篩選
get_post單則貼文的完整記錄:摘要、重點、操作步驟、連結、資料夾、標籤
list_folders你儲存的收藏集及索引計數
list_tags依使用情況分類的標籤
library_stats總數及各欄位的深度閱讀覆蓋率

伺服器以 SQLite mode=ro 開啟資料庫,並僅提供 SELECT 工具 — 無法修改你的圖書館。(已通過攻擊測試:SQL 注入、寫入嘗試和限制濫用均已驗證封鎖。)

快照:檔案上傳。 請你的 Muse 傳送 web_data.json 檔案(使用 export_web.py 建置):每則貼文及其深度閱讀知識都在一個檔案中。將它附加到任何 AI 聊天(Claude、ChatGPT…)並像任何文件一樣提問。它在匯出時是凍結的 — 是快照而非即時連線 — 因此在你儲存新貼文後,請你的 Muse 提供新的副本。

直接存取(進階)。 資料庫是位於 <data_dir>/pil.sqlite 的純 SQLite(結構在 schema.sql)。使用任何 SQLite 工具以唯讀模式開啟。

這些檔案包含你的個人 Instagram 資料 — 請將它們保存在你自己的裝置上,只與你信任的工具分享。

將你的圖書館變成應用程式

你的 Muse 會為你建置應用程式並傳送給你 — 適用於你的電腦和手機。只要詢問:

  • 「傳送我的 PIL 應用程式給我」 — 下載它傳送的檔案、解壓縮、雙擊 Start PIL、點擊 Install。它就像其他應用程式一樣存在於你的電腦上,且完全離線運作。
  • 「把 PIL 放到我的手機上」 — 它會處理發布並給你一個 QR code 掃描。點擊 Install(Android)或 Share → Add to Home Screen(iPhone)。

無需指令、無需主機設定、無需終端機 — 你的 Muse 會處理所有這些。

Signal Deck — 視覺化儀表板(v1.2.0)

偏好瀏覽而非查詢?Signal Deck(dashboard/)會從你的本機 PIL 資料庫建立一個自包含的 HTML 儀表板:一個涵蓋你所有儲存內容的主題環形主視覺、搜尋 → 綜合摘要(The Brief)、來源側欄、固定索引和完整檔案庫網格。單一檔案、離線可用、你的資料絕不會離開你的裝置。

cd dashboard
PIL_DB=~/.local/share/pil/pil.sqlite python3 build-signal.py
# open pil-signal-deck.html in Chrome/Safari

詳情、PWA 說明和 QA 測試套件請參閱 dashboard/README.md。

內容總覽

pil/
├── assets/logo.svg          # the seal above
├── SKILL.md                 # skill definition (for Muse)
├── README.md                # this file
├── LICENSE                  # MIT
├── schema.sql               # the five tables: folders, posts, post_folders, knowledge, tags
├── pil.config.example.json  # copy to pil.config.json and set your account_id
├── bootstrap.sh             # one-line installer for Mac/Linux
├── bootstrap.ps1            # one-line installer for Windows
├── bin/
│   ├── pil_common.py        # config resolution + DB helpers
│   ├── ingest_saved.py      # step 1: ingest (resume-safe)
│   ├── extract_content.py   # step 2: vision-AI extraction (resume-safe)
│   ├── tag_all.py           # step 3: tagging
│   ├── export_web.py        # step 4: static export
│   ├── export_html.py       # step 5: self-contained HTML dashboard
│   ├── export_pwa.py        # step 6: installable PWA bundle (manifest + SW + icons)
│   ├── publish_pwa.py       # step 7: publish PWA to your own host for phone install
│   └── mcp_server.py        # read-only MCP server (stdio)
└── references/
    └── mcp_clients.md       # Cursor / Claude Code / Claude Desktop wiring

常見問題

我需要會寫程式嗎? 不需要。將此頁面頂部的提示複製貼上到 Muse — 它會與你一起完成所有事情。你只需要自己連結 Instagram(在瀏覽器中一鍵點擊)和下載它傳送的應用程式檔案。

我的 Instagram 資料會去哪裡? 哪裡都不會去。程式碼共享,資料留在家中: 你儲存的貼文、說明文字和帳戶詳細資料絕不會離開你的電腦。沒有什麼上傳給我們 — 也沒有「我們」;沒有伺服器、沒有帳戶、沒有雲端。

需要付費嗎? PIL 是免費且開源的(MIT)。沒有訂閱費用,也不需要建立帳戶。AI 深度閱讀步驟透過你自己的 Instagram/AI 設定執行。

應用程式可以離線運作嗎? 可以。安裝後,桌面和手機應用程式完全離線運作 — 搜尋、房間、標籤和答案在沒有網路的情況下都能使用。

支援哪些手機和電腦? 桌面應用程式支援 Windows、Mac 和 Linux;手機應用程式支援 iPhone 和 Android。在 Android 上,點擊 Chrome 中的 Install app;在 iPhone 上,使用 Safari 的 Share → Add to Home Screen。

我儲存了新貼文 — 如何加入? 只要告訴你的 Muse「我儲存了新貼文」。它只會擷取和深度閱讀新貼文,然後重新整理你的應用程式和檔案。

我可以與他人分享我的圖書館嗎? 你的圖書館是你裝置上的檔案 — 你可以將它們複製到別人的電腦上,但它們包含你的個人 Instagram 資料。請像對待任何私密內容一樣:不要發布或上傳到任何公開場所。

發生錯誤 — 怎麼辦? 告訴你的 Muse 你看到了什麼 — 它可以直接診斷和修復。(正在執行下方的手動設定?重新執行安裝程式 — 重複執行多少次都安全 — 並確認 python3 --version 是 3.11+。)

疑難排解

有問題嗎?告訴你的 Muse 發生了什麼 — 它可以自行診斷和修復大多數問題。

正在自行執行手動設定?

  • PIL account_id is not configured → 複製範例設定,並將 account_id 設定為你在 instagram-cli accounts 中的 user_fbid。
  • 大型圖書館的擷取速度較慢 — 它可安全恢復;只要重新執行即可。
  • 429 的速率限制已在腳本內部以退避機制處理。
  • MCP 伺服器需要執行它的 Python 中有 mcp<2(2.x 重新命名了 API)。

貢獻

歡迎提交 PR 和 issue — 更好的擷取提示、新的查詢用戶端、新的匯出格式。Fork 它、發布它、讓它成為你的。如果它讓你免於無止盡的捲動,一個星星可以幫助其他人找到它。

授權

MIT。由 Paul Poulose 建置。