Pedelec 的 TypeScript Runtime
Pedelec 預設以 Sandbox Workspace runtime 執行 JavaScript 與 TypeScript。Agent 或已核准的 Web App 都能主導執行。Runtime Module 是可選的、由開發者維護的可重用實作,兩條路徑都能使用。
| 誰主導? | 實作來源 | 機制 | 常見用途 |
|---|---|---|---|
| Agent | 一般 script | pedelec-ts-runtime |
Agent 臨時撰寫小型轉換 |
| Agent | Runtime Module | skills.runtimeModules 與 pedelec-ts-runtime |
Agent 呼叫穩定的開發者 API |
| Web App | 一般 script | workspace.run() |
App 直接執行已知的 Workspace 邏輯 |
| Web App | Runtime Module | workspace.run(..., { runtimeModules }) |
App 直接呼叫可重用的 Workspace 邏輯 |
工作需要 Agent 推理或動態規劃嗎?讓 Agent 選擇並執行程式碼。如果 App 已知道要做的確定性操作,就直接呼叫 workspace.run()。接著判斷短小、一次性的 script 是否足夠;重複或領域專用的實作適合包成 Runtime Module。
Agent 可執行一般 script,無須先建立 module。Session module 與 Workspace run 使用的 module 分屬不同範圍。
Runtime Module 還是 App Tool?
Section titled “Runtime Module 還是 App Tool?”針對 Workspace 資料執行 JavaScript/TypeScript 邏輯時,使用 Runtime Module。若 Agent 需要 UI state、Workspace 外的 App state、使用者互動、browser callback 或 App 專屬 RPC,使用 App Tool。Runtime Module 不能取代 App Tool。
- Agent Runtime 執行:一般 Agent script。
- Runtime Modules:可重用的實作。
- Workspace Runtime 執行:由 App 主導的執行。
- Runtime 與安全邊界:共用的限制。
- 精確契約請參閱 Tools API、PedelecWorkspace 與 Error Codes。