全部場數

032 · 用模擬讓 agent 從建置走向設計

Resonate 創辦人說明如何用確定性模擬環境,讓 agent 從建置系統進化到真正參與系統設計。

2026-06-2917:33Dominik Tornow(Resonate HQ)Agent開發工具研究看原片

原標題:The Prompt is the Platform - Dominik Tornow, Resonate HQ

重點摘要

  • 從重用實作到重用規格軟體工程正在往一個方向走,通用的 library、framework、platform 會被按需生成的客製實作取代,重用的對象換成規格本身。當實作能被生成出來,公司的價值也跟著從實作移向規格與協議。
  • 產品重新定義成規格Resonate 把自己定位成規格與協議,再從同一份規格衍生出多種伺服器實作,官方參考實作之外,其餘由基礎設施夥伴一起打造。問題也從「能不能蓋出伺服器」變成「能不能反覆合成出可信賴的伺服器」。
  • 抽象規格是關鍵前提要從單一規格衍生出多個 target-specific 實作,規格就不能碰任何實作細節,不能假設資料庫 schema、索引或一致性模型。第一次直接讓 agent 依抽象規格生產 Rust 加 Postgres 的實作就失敗了,只做出能過基本測試的雛型,遇到並行、當機、網路失敗全都出包。
  • 插入具體規格,人主導設計團隊在抽象規格與具體實作之間加了具體規格這個中介產物,由人把 schema、SQL 查詢、交易邊界寫清楚,agent 才做得出上線等級的系統,但這一步 agent 只負責建置,沒有參與設計。
  • 用確定性模擬讓 agent 參與設計改用 Nats.io 之後,團隊先給 agent 一個確定性模擬環境,讓它先做模擬實作探索正確演算法,再導出具體規格與具體實作,agent 這次真正成為設計的推手,關鍵在 minimalism 與 simplicity 兩個核心價值。
  • 模擬環境讓錯誤看得見原因模擬的 key value store 能刻意製造 stale read,還能記錄正式環境藏起來的資訊,讓 agent 不只知道系統錯了,還能看到錯在哪個決策點,進而修好演算法。

時間軸

時碼點下去會跳到影片的那一段。

時碼段落重點
00:00開場:講者與論點Dominik Tornow 是 Resonate 的創辦人兼 CEO,開場丟出核心論點:2026 年,coding agent 會悄悄淘汰自己的第一個軟體平台,不是因為平台不好,而是根本不再需要。
00:40通用轉向客製實作軟體工程正走向一個方向:通用的 library、framework、platform 會漸漸被按需生成的客製實作取代,重用的對象從實作換成規格。
01:45價值從實作移向規格如果實作本身能被生成出來,公司的價值就不再落在實作,而是落在規格與協議本身。
02:07規格才是產品Resonate 把自己重新定位成規格與協議,再從同一份規格衍生出多種伺服器實作,官方參考實作之外,其餘由基礎設施夥伴一起打造。
02:44問題重新框定問題不再是「能不能蓋出一個伺服器」,而是「能不能從同一份規格反覆合成出值得信賴的伺服器」,這場也把焦點放在規格本身,而非驗證。
03:53抽象規格的要求一般的心智模型是規格生出一個實作就夠了,但這裡要從單一規格衍生出多個 target-specific 實作,因此規格必須完全抽象,不能假設任何資料庫 schema、索引或一致性模型。
05:04首次嘗試落空團隊先請 agent 直接依抽象規格在 Postgres 上用 Rust 寫出 Resonate server,結果只做出能通過基本測試的雛型,遇到並行、當機、網路失敗全都出包。
05:56插入具體規格團隊在抽象規格與具體實作之間插入具體規格這個中介產物,由人主導把 schema、索引、SQL 查詢、交易邊界寫清楚,agent 才做得出能上線的系統,但這一步 agent 只是幫忙建置,沒有參與設計。
07:22轉向模擬先行改用 Nats.io 之後,團隊把問題換成「agent 需要什麼才能先設計、後建置」,於是給 agent 一個確定性模擬環境,先做的不是正式系統,而是模擬實作。
08:15新流程與核心價值流程變成抽象規格、模擬實作、具體規格、具體實作四步,agent 這次成為設計的主要推手,讓這件事成立的兩個關鍵是 minimalism 與 simplicity。
09:50KV store 的讀取落差以 NATS 的 key value store 為例:多數讀取都拿到最新版本,但也可能讀到舊版本,這種 stale read 不是錯誤,而是目標平台一致性模型下合法的結果。
12:11打造模擬測試環境agent 需要明確又能解釋因果的回饋,團隊因此用 Python 打造確定性模擬測試環境,模擬 key value store 保留完整版本歷史,並用樂觀並行控制決定寫入成敗。
13:53揭露隱藏資訊正式環境不會告訴 agent 一次讀取究竟是新是舊,但模擬環境可以記錄下這個資訊,讓 agent 不只知道系統錯了,還能看到錯在哪個決策點。
16:22agent 補上落差有了這些線索,agent 補上了原本的落差:先在模擬器裡做出通過測試驗證的概念驗證,再從中導出具體規格,最後才產出具體實作。
17:12結語:prompt 即平台結語呼應標題:prompt 已經是平台,規格才是真正的產品。

值得記的話

名詞與人物

Resonate講者創辦的 durable execution 平台,這場演講的主角產品
durable execution讓程式執行狀態能撐過當機、網路失敗等意外,是 Resonate 訴求的核心能力
Nats.io(NATS)開源訊息系統,用來打造現代分散式系統,這場後半段的實作案例都建立在它上面
SynadiaNATS.io 背後的公司,這場提到與 Resonate 合作把 durable execution 原生整合進其技術堆疊
durable promise / durable taskResonate 協議裡的兩個核心物件,是整個系統一路簡化到最小之後留下的結果
deterministic simulation讓 agent 能重現同一次失敗、逐步除錯的測試環境,是這場後段 agent 能參與系統設計的關鍵工具
optimistic concurrency只有讀到的版本仍是最新版本時,寫入才會成功,否則就丟出錯誤

延伸

  • 講者提到 Resonate 已經有 TypeScript、Python、Rust、Go、Java 五種語言的 SDK 實作,但沒有進一步說明各語言版本的差異。
  • 結尾提到可以在 Resonate 的 Discord 找到講者發問,但沒有進一步說明社群的其他細節。