【城武觀點】peerd — 瀏覽器就是最好的 AI agent runtime?這個賭注比你想像的更大

如果你對 AI agent 的印象還停留在「terminal 裡跑 claude code」或「雲端開一個 headless browser 來自動填表」,那 peerd 可能會讓你從新思考 agent 的姿態應該長什麼樣子。它是一個 Chrome/Firefox extension,把你的瀏覽器直接變成 agent workstation——不需要 sidecar、不需要雲端伺服器、不需要開一個 headless 實例。所有東西跑在 client 端,用的是你原本的登入 session、你原本的分頁、你原本的 cookie。
但 peerd 最有趣的地方不是它「能做什麼」,而是它「賭了什麼」。
專案
peerd 是一個瀏覽器 extension,以 vanilla JS 寫成、無 build step,將使用者現有的瀏覽器轉變為 AI agent 工作站。五項 agent 原語:Act(透過中介瀏覽器工具操作分頁、session、web app)、Think(路由模型、產出 subagent、規劃、審查)、Compute(在 JS notebook、worker、sandbox 中運算,甚至透過 CheerpX/WASM 跑完整 Linux VM)、Build(產出 artifact、本地 app、可重複使用的工作流)、Share(透過 WebRTC 建立 P2P agent-to-agent 連線)。
作者 NotASithLord 刻意劃清界線:這不是 AI 瀏覽器(Comet、Atlas、Dia),而是你既有瀏覽器的 extension;不是 browser-automation service(Playwright MCP、Browserbase),而是驅動你真正的瀏覽器、不是 headless;不是 MCP gateway,沒有雲端 broker;不是 terminal coding agent(Claude Code、OpenCode、Aider),它可以看見頁面、填表格、用你的登入 session。
安全模型是 peerd 最用力宣傳的亮點。零行自訂加密、sandbox、或行程隔離程式碼——直接繼承瀏覽器三十年來對抗 hostile content 的安全模型。五項結構承諾:每分頁行程隔離、同源政策、site isolation、CSP;sandbox 光譜從 V8 isolate(agent 腳本)到 opaque iframe(第三方程式碼)到 WASM Linux VM(POSIX 程式);致命三重奏被打破——main agent 永不讀取 raw page content,由 disposable runner 代讀,輸出標記為 <untrusted_web_content> 和 <untrusted_runner_summary>,prompt injection 需要逃脫兩層;單一出口閘道,所有網路流量通過可審計的統一路徑,provider 流量走 allowlist(Anthropic、OpenAI、OpenRouter、local Ollama),開放網路流量走 denylist;模型金鑰永遠不離開 service worker,僅在記憶體中解密用於 Authorization header。
架構正在大改:舊架構的分頁是 global object,任何 chat session 都能操作任何分頁;新架構下每個分頁由一個 resident agent 擁有,其他 agent 透過 message passing 溝通,編排 agent 沒有低階分頁操作工具。
P2P agent-to-agent(A2A)是目前最遠的願景:WebRTC 為基礎的 p2p 網路,Ed25519 did:key、content-addressed peerd:// bundle、N-peer mesh、私有 1:1 訊息、Kademlia DHT。長遠目標是去中心化 web app(dwapps)。
HN 討論中的關鍵交鋒:選擇 vanilla JS + JSDoc 而非 TypeScript——無 build step、開箱即用、易於審計。安全性質疑:「講這麼多安全,直接給它一個 Linux user 就好啦?」作者反駁:瀏覽器對非技術使用者和合規環境更友善。prompt injection 的二層防禦是討論焦點。但也有人點出可永續性隱憂——solo developer 的 part-time 專案,tab ownership model 的重構野心極大。
已知限制:extension 尚未通過 Chrome Web Store/AMO 審核;Linux VM 依賴 CheerpX(非開源、有商業限制);tab ownership model 仍在實作中;文件以經被認為太過冗長(作者自嘲「markdown hoarding」)。
城武觀點
peerd 的賭注很明確:瀏覽器就是最好的 agent runtime。這個論點有結構性的說服力——瀏覽器花了三十年對抗 hostile content/code/users,它的 sandbox 確實比任何新創寫的 container 都硬。但問題不在 sandbox 強不強,在威脅模型變了。傳統瀏覽器防的是「惡意網站逃逸到你的系統」,agent 的威脅卻是「agent 被騙去做不該做的事」。當 agent 住在瀏覽器裡,它能存取你所有的登入 session、cookie、分頁內容。peerd 的 two-layer prompt injection 防禦是聰明的設計,但「安全的瀏覽器 sandbox」和「安全的 agent 行為」是兩個完全不同的問題。前者防止程式碼逃逸,後者防止 agent 被騙去點不該點的連結。它的威脅模型還缺了 social engineering 這一層——當 agent 看得到你的銀行餘額時,prompt injection 不需要逃逸 sandbox,只需要讓 agent 誤解一個數字。
「零行自訂加密/sandboxing 程式碼」是強力的 marketing line,但也是雙面刃。繼承瀏覽器的安全模型,就等於繼承瀏覽器的 attack surface。peerd 不寫自己的安全碼是對的,但這不代表沒有安全風險——它只是把風險轉嫁給了瀏覽器引擎,然後在 extension 層疊加自己的控制平面。對一般使用者這是好的取捨,但一旦 extension 拿到 <all_urls> 權限,它能接觸的攻擊面比任何 terminal-based agent 都廣——因為它能看到的不只是你的程式碼,而是你整個網路生活。
現實面:solo developer 的 part-time 專案,架構願景很大但還在 v0.x,extension 沒上 Chrome Web Store。CheerpX 不是開源的、有商業限制——跟「Apache 2.0、BYOK、no backend」的敘事之間存在張力。peerd 在產品化和願景之間的距離,比程式碼行數更長。
而 P2P A2A 是最有趣的未實現承諾。當前的 AI agent 生態完全被雲端平台主導——OpenAI Operator、Anthropic Claude Code、Google Gemini——agent 通訊得經過平台伺服器。peerd 的 WebRTC p2p 模型如果做成了,等於在 agent 層級實現了去中心化:你的 agent 不需要透過 OpenAI 才能跟另一個 agent 講話。這不只是技術選擇,這是權力結構的選擇。當 agent 越來越成為我們數位生活的代理人,agent 之間的通訊協議會變成新一代的網路基礎設施——就像 HTTP 之於網頁、SMTP 之於郵件。peerd 選擇 p2p,就是在賭這個管線不應該被任何一家雲端公司擁有。
城武的未解檔案——最安全的 sandbox 是瀏覽器,最危險的 agent 是能登入你所有帳號的那個。peerd 解決了前者,後者的本質是信任,而信任沒有 hotfix。
-
原文:Show HN: peerd – AI agent harness that runs entirely in your browser(NotASithLord, HN, 2026-06-25) peerd.ai GitHub