Skip to content
所有分類

ai

1274 篇文章
aideep-dive沙箱系列

Amazon Bedrock AgentCore 與 Alibaba OpenSandbox

沙箱系列的雲端深入篇(order 13)。AWS Bedrock AgentCore 與阿里雲 OpenSandbox 兩大雲端原生沙箱服務的架構、多語言 SDK、BYOC 模式、與其他供應商的取捨。

Cloudflare Agent Memory 怎麼用:把 agent 記憶和 RAG 文件分開

Agent Memory 是 Cloudflare 的 private beta 服務,用來讓 agent 跨對話記住使用者、團隊、專案與任務脈絡。它適合存 facts、events、instructions、tasks;RAG 文件、產品資料、檔案和 audit log 仍應該放在 AI Search、Vectorize、D1 或 R2。

Cloudflare Agents 怎麼用:durable agent runtime、工具與即時連線

Cloudflare Agents 把 agent session 做成 durable runtime:每個 agent instance 有穩定 identity、local SQLite、WebSocket、scheduled work、recoverable execution 和 tools。它不只是聊天範例;真正處理的是怎麼把 Workers、Durable Objects、AI model、Browser、Sandbox、AI Search、MCP 接成可部署的 agent app。

Cloudflare AI app 資料怎麼放:D1、R2、Durable Objects 的分工

AI app 不該把 conversation、artifact、memory、retrieval document、lock、eval trace 全塞進同一個 storage。D1 適合查詢與產品資料,R2 適合大型檔案與 artifact,Durable Objects 適合具名協調、WebSocket、per-session state;Agent Memory / AI Search / Vectorize 則分別處理記憶與檢索。

Cloudflare AI Gateway 怎麼用:Logging、Cache、Rate Limit 與 Fallback

AI Gateway 解的是 AI 呼叫的控制問題:同一層處理 logs、analytics、cache、rate limit、retry/fallback、BYOK 與 Unified Billing。Workers 內可用 env.AI.run(..., { gateway }),外部 SDK 則改 baseURL 或 provider-native endpoint。

Cloudflare AI Stack 導讀:在 Workers 上做 AI、RAG 和 agent

Cloudflare AI Stack 這條系列回答 AI app 的基礎設施問題:模型怎麼跑、gateway 怎麼控、RAG 怎麼做、agent 怎麼持續執行、memory 怎麼治理、browser/sandbox/secrets 怎麼接進產品。

Cloudflare Secrets Store 怎麼用:Workers secret reuse 與 AI Gateway BYOK

Secrets Store 是 Cloudflare 的 open beta account-level secret store,目前整合 Workers 和 AI Gateway。它適合把 provider API keys、BYOK key、跨 Worker 共用 secret 集中管理;per-Worker secret 仍可用,但治理範圍不同。

Cloudflare Vectorize 怎麼用:自己掌控 RAG Retrieval 的時候

Vectorize 是 Cloudflare 的向量資料庫。AI Search 適合先把 RAG pipeline 交給平台;Vectorize 適合你要自己控制 chunking、embedding、metadata filter、hybrid retrieval、重新索引與降級策略。

跟成熟 coding agent 學設計(38):Agent as a Service——把 loop 包成別的程式可以呼叫的服務

looplane 已有 Cloudflare Durable Object run resource:非同步建立、狀態/取消/artifact、live NDJSON 與支援 Last-Event-ID 的 SSE;遠端 approval 走獨立短效 capability。Python 另有 attach client 與 stateful conversation WebSocket。production deploy、跨 runtime parity 與完整多租戶 hardening 尚未驗證。

跟成熟 coding agent 學設計(4):Approval 分級與 audit trail

Looplane 的 effect 已有 read/modify/modify_execute/execute 四級,未分類工具 fail closed;native MCP tool 預設 execute,只有可信 read-only annotation 才降級。審批仍先進 events.jsonl,grant 可精確到同一組變更或 backend;一般化 command 規則與全 runtime sandbox coupling 仍未完成。

跟成熟 coding agent 學設計(37):Code mode——把工具呼叫編譯成程式碼批次執行

looplane 已先做 bounded tool-program DSL:唯讀程式支援 list/read/search/diff、repeat 與 if_contains;modify/check transaction 會經整體 approval,失敗時回滾 touched paths。它還不是任意 JavaScript/Python code mode,也沒有平行 transaction execution。

跟成熟 coding agent 學設計(26):Context 壓縮與 compaction——從缺口到可審計 baseline

五家成熟 agent 的 compaction 都要處理觸發、完整 turn 切點與失敗恢復。looplane 已補上 85% high-watermark、自動 compaction、原生 loop 的 deterministic fallback summary、checkpoint 落盤與 workspace context 重新注入;目前仍缺跨 runtime 等價 fallback、模型品質摘要,以及真實 provider 的長 session 驗證。

跟成熟 coding agent 學設計(27):跨 session 記憶——從 explicit remember 到 semantic recall

omp 與 claude-code 都有跨 session 記憶,其他參考專案主要靠 instruction files。looplane 已落地明確的 remember/list/inject baseline:型別化 JSONL 記憶可跨 session 注入 prompt,但目前只按 scope 與近期排序,還沒有語意檢索、去重、遺忘指令或自動萃取。

跟成熟 coding agent 學設計(28):危險指令攔截與 shell escalation——在白名單和每次都問之間

五家對自由 shell 的風險處理都包含放行/詢問/拒絕、複合指令檢查與 fail-closed。looplane 已補上 deny-first command classifier、critical floor、複合 shell 分段、timeout-deny、設定式 allow/deny rule 與可見的 policy reason;仍需擴大語法涵蓋與真實互動流程驗證。

跟成熟 coding agent 學設計:系列總覽——拆五個專案的原始碼,蓋自己的 agent

我在寫自己的 Python coding agent「looplane」,這個系列把 pi、oh-my-pi、opencode、codex、claude-code 五個成熟專案的原始碼逐題對照,也對照 Looplane 現在已經落地的 TUI、外部 CLI runtime、local gateway、usage/OTel/session 工具與 Cloudflare 切片。每篇固定走「設計問題→五家做法→looplane 選擇→學術依據→改善路線」五段,證據一律給到 file#symbol 層級。

Hooks/Skills/Plugins:成熟 coding agent 的三層擴展機制

Hooks 管控制流、skills 注入知識、plugins 負責打包。looplane 已有 opt-in deny-only project hooks、bounded SKILL.md loader、exact enabled_skills 選擇、plugin manifest/install/list 與 external runtime projection;仍缺 hook input rewrite、完整 lifecycle、遠端 registry 與成熟 marketplace。

跟成熟 coding agent 學設計(36):LSP 整合——把編譯器診斷推進 agent context

looplane 已能把 repo 內 diagnostics 與 open-file 狀態注入下一個 model turn,也有 typed WebSocket IDE context push、可封裝的 VS Code bridge,以及管理長駐 LSP subprocess 的 ManagedLspServer。剩下的是各語言 initialize/didOpen/didChange adapter 的打磨與 live editor 驗證。

跟成熟 coding agent 學設計(30):MCP 整合——工具生態的標準插座

MCP client 要同時處理 transport、工具刷新、approval 與 credential 邊界。looplane 已支援 allowlisted stdio、Streamable HTTP/SSE、tools/resources/prompts、tools/list_changed、OAuth metadata/PKCE 與 0600 credential store;尚缺真實 authorization server E2E 與 MCP 專用確認 UX。

跟成熟 coding agent 學設計(35):Model catalog 與 per-role 多 provider 路由——looplane 的 role alias 與 reviewer lane

looplane 已有 ModelRole/ModelRoute 靜態候選表、--model @cheap 等 opt-in alias、跨 provider fallback,以及驗證完成後才啟動的 no-tool reviewer lane;下一步是補 role inheritance/override 規則,並決定 summarizer、parser、scout 是否自動路由。

跟成熟 coding agent 學設計(6):ModelProvider 抽象——為什麼不能直接包 SDK 就好

直接包 SDK 三個月就會後悔:每家的 usage 欄位、tool call 格式、錯誤語意都不一樣,換模型等於重寫迴圈。五家參考專案都把「wire protocol」從「provider 身分」裡拆出來當獨立維度;looplane 更進一步,用 pydantic canonical contract(Message/ToolCall/Usage/ModelTurn)加六種 protocol adapter,把 OpenAI SDK 的內建 retry 關到 0,所有錯誤先分類成 ProviderErrorKind 再交給統一的重試政策。provider 表本身是跟 pi 的 packages/ai 對著抄的——這是血統,不是巧合。