KeyFrame內部研究專用

I Built A USEFUL AI Agent (3 months of learnings in 10 mins)

Chris Raroque·7月13日週一·10 min英文

三句話摘要

Boop開源AI代理的開發經驗分享:如何為iMessage代理添加Apple整合、瀏覽器功能、多SDK支援和桌面應用。 AI代理的能力天花板由你提供的工具與資料存取權限決定;完整的功能整合和消除摩擦的UX設計一樣重要。 本機資料庫整合:Apple不開放API,但iMessage、Notes、Reminders都儲存為裝置本機SQL資料庫,代理可直接查詢存取,代價是需要完整磁碟權限。

重點整理

重點
  • 1

    本機資料庫整合:Apple不開放API,但iMessage、Notes、Reminders都儲存為裝置本機SQL資料庫,代理可直接查詢存取,代價是需要完整磁碟權限。

  • 2

    瀏覽器自動化挑戰:Instagram、LinkedIn等網站封鎖AI瀏覽器,需使用Playwright修改版本(Patchrite)來繞過機器人檢測,同時採「人環模式」處理登入需求——代理打開瀏覽器請求使用者介入。

  • 3

    SDK無關架構設計:透過適配器模式將工具抽象化,使用者可在設定中選擇Claude或OpenAI SDK,系統自動路由流量,易於未來擴展其他提供商。

  • 4

    資料層與後端選擇:採用Convex資料庫因其提供開箱即用的實時同步、內置定時任務、代碼形式的後端(易於AI代理理解和修改),無需自建後端基礎設施。

實用技巧與重點

乾貨
  • 整合工具:Composio(已連接數百種工具)、Playwright、Puppeteer、Patchrite(Playwright機器人檢測繞過版本)
  • 資料庫:Convex(實時同步、定時任務、代碼優先)
  • SDK:Anthropic Agent SDK、OpenAI SDK、支援Vercel和PI等SDK
  • 本機資料庫路徑:iMessage、Apple Notes、Apple Reminders均為SQL資料庫
  • 權限需求:Apple整合需要完整磁碟存取權限
  • 登入模式:人環模式(Human-in-the-loop)
  • 功能新增:圖像支援、簡訊改變設置、自動後台運行、時區設定

結論

結論

AI代理的能力天花板由你提供的工具與資料存取權限決定;完整的功能整合和消除摩擦的UX設計一樣重要。

完整解析

詳細

Boop是一個基於iMessage的AI代理,兩個月開發週期內積累了大量功能。最核心的技術挑戰在於Apple服務缺乏官方API。講者發現這並非不可能,因為iMessage、Apple Notes和Apple Reminders實際上都儲存在裝置本機的SQL資料庫中。當使用者透過文字訊息詢問「媽媽問的水瓶牌子是什麼」時,Boop會構建SQL查詢從多年前的對話歷史中精確找到相關訊息。這種方法的代價是需要完整磁碟權限,這也促成了桌面應用程式的開發——通過Electron包裝Web控制面板,使用者可以直接授予應用權限,而不必授予終端完整存取權。

網頁瀏覽器功能的實現經歷了更複雜的演進。雖然Claude Agent SDK內建網頁工具,但Instagram、LinkedIn等平台直接封鎖AI瀏覽器,且無法存取登入牆後的內容。講者研究了Playwright和Puppeteer等自動化庫,最終採用Patchrite(Playwright的修改版)來有效繞過機器人檢測。為了處理登入需求,講者實施了「人環模式」:當代理需要登入時,它會打開裝置上的實際瀏覽器並提示使用者「我已打開瀏覽器,你能登入嗎?」完成後代理繼續執行任務。這種設計優雅地解決了安全性與功能性的平衡。

架構層面的改革源於使用者對多SDK支援的強烈需求。原本系統完全基於Anthropic Agent SDK,但為支援OpenAI SDK(讓使用者可用其訂閱而非完全依賴Claude Code訂閱),講者進行了完全重寫。新架構透過適配器模式將所有工具從特定SDK中抽象,使用者在設定中選擇Claude或OpenAI後,系統自動路由到對應適配器。這個模式的優勢在於架構本身SDK無關,未來可輕鬆添加其他提供商。資料層則選擇Convex資料庫,因為它提供實時同步、內置定時任務、整個後端皆為代碼形式——對AI代理特別重要,因為代理可直接理解和修改後端邏輯,而無需複雜的配置。

桌面應用程式不僅是UI包裝,更解決了運營問題。原先使用者必須在終端持續運行Boop,若電腦重啟或終端崩潰就需手動重啟。桌面應用使其在背景自動運行,下拉選單可查看所有正在運行的程序。同時應用還支援透過簡訊改變設置(如「能用Codeex作為安全套嗎?」)、支援圖像輸入等生活品質改進。最令講者興奮的是開源後,社區對其進行修改、深入研究架構並基於學到的概念開發新產品,這種生態發展超越了工具本身的價值。

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「AI 技術」的內容

Between Two Nerds: Attribution is dead, long live attribution
32 min
AI 技術英文PODCAST8月25日

Between Two Nerds: Attribution is dead, long live attribution

Risky Business

  • 工具成本的破壞性下降 — 傳統上,攻擊者必須重複使用昂貴自製的惡意軟體或工具組,因為開發和維護成本極高。這種成本結構使得安全研究人員可以通過工具特徵和程式碼簽名來追蹤攻擊者。LLM 自動化了代碼生成與維護工作流,使得攻擊者可以輕易為每個目標生成新工具,或改用通用系統工具,導致傳統的工具特徵分析失效。
  • 所有取證證據都在攻擊者掌控之中 — 無論是使用的 IP 位址、惡意軟體類型或戰術流程,這些都是攻擊者的主動選擇。即使看似是隨機巧合,攻擊者仍有能力在事前決定留下什麼痕跡。因此,所有可恢復的取證證據本質上都是攻擊者願意暴露的信息。
  • LLM 削弱工具簽名但保留高階行為特徵 — LLM 經過公開駭客技術訓練,使不同使用者產生相似的攻擊模式。然而,勒索軟體集團、國家級行為者的受害者選擇、贖金要求方式或目標模式等高階特徵仍具有識別價值。例如,鎖定加密交易所的攻擊幾乎只能指向朝鮮。
Everything Goldman Sachs Taught Me About AI (In 10 minutes)
AI 技術英文8月24日

Everything Goldman Sachs Taught Me About AI (In 10 minutes)

Nate Herk

  • 驗證優於相信:看起來完整的AI輸出不等於正確答案,需在提示中要求模型重新檢查數字、引用來源,並對無把握的部分標記。
  • 區分AI與自動化:確定步驟且答案已知的任務用傳統自動化更便宜快速;只在需要判斷力、靈活性或處理複雜資訊時才用AI,兩者結合效果最佳。
  • 以問題驅動選型:先寫清楚「要解決的問題是什麼、成功的樣子是什麼」,再決定用什麼工具,許多失敗項目是從技術而非問題出發。
Mu: a self-hosted personal agent where the interface is an email address you can write to
AI 技術英文8月23日

Mu: a self-hosted personal agent where the interface is an email address you can write to

GitHub Awesome

  • Mu 是自主代理人系統,具有實際網址與獨立伺服器,用戶可透過多種方式與其互動——網頁應用、電子郵件或程式化介面。
  • 架構完整覆蓋日常工作流程的多個層面,整合郵件收發(SMTP/IMAP)、檔案管理、行事曆、新聞聚合、市場數據與搜尋功能於一個 Go 伺服器內。
  • 支援自帶模型與多種通訊協定,用戶可選擇不同的 AI 模型,並透過 MCP、HTTP API 或命令列工具整合到其他系統。