Skip to Content
Testing語音迭代小工具(預覽)

語音迭代小工具(預覽)

此儲存庫包含一個可嵌入的 Web 元件,用於擷取鍵入的或 瀏覽器轉錄的指令,將其提交給擁有的 OpenFactory 應用程序,以及 輪詢產生的維修單。此整合僅限預覽。

軟體包源位於 OpenFactory monorepo 中的 tools/voice-iterate 中。做 不假設 @openfactory/voice-iterate 或其 CDN 套裝已公開發布; 從儲存庫建置並固定經過審查的工件,直到發佈為止 在包註冊表中明確列出。

目前邊界

端點接受具有 Git 來源的應用程式的指令並調度 共享修復工作流程。 Stage 0 更改已部署的沙箱副本,並且可以 重新部署該預覽。它不保證變更被承諾 上游儲存庫。標記為 done 的票據僅證明記錄的代理 任務結果;查看其結果並親自驗證該應用程式。

該服務允許每個應用程式最多進行兩次運行中迭代。附加 請求返回 429,直到票證達到最終狀態。

先決條件

  • 擁有 OpenFactory 應用程式與 source.git_url
  • 真實帳戶;來賓會話無法調度自主代碼編輯。
  • of_mcp_ 帳戶密鑰保存在伺服器上,而不是保存在瀏覽器 JavaScript 中。
  • HTTPS 或本地主機開發來源(如果使用麥克風輸入)。

從原始碼建立小部件

來自單一倉庫:

cd tools/voice-iterate npm ci npm test npm run lint npm run build

供應商產生的版本化捆綁包或從您自己控制的安裝它 註冊表。記錄應用程式使用的來源提交和校驗和。

使用同源代理

面向瀏覽器的小工具呼叫:

POST {endpoint}/iterate GET {endpoint}/agent-status GET {endpoint}/agent-status?thread_id={thread_id}

您的伺服器應固定目標應用程式 ID 並將這些請求轉發到:

POST https://console.openfactory.tech/api/apps/{APP_ID}/iterate GET https://console.openfactory.tech/api/apps/{APP_ID}/agent-status

僅在伺服器上附加 Authorization: Bearer <of_mcp_key>。認證 並對您自己的代理用戶進行速率限制;否則每個訪客都能夠到達 路線可以使用您帳戶的權限來更改固定的應用程式。允許 只有上面的三個路徑和兩個方法強制請求大小限制,並且執行 不轉發任意標頭或應用程式 ID。

使用代理端點掛載本地建置的模組:

import { createVoiceIterate } from './vendor/openfactory-voice-iterate/index.mjs'; const widget = createVoiceIterate({ appId: '550e8400-e29b-41d4-a716-446655440000', endpoint: '/api/voice-iterate', fallback: 'text', onStatusChange: ({ status, thread }) => { console.log(status, thread.taskResult); }, });

自訂元素及其樣式在 Shadow DOM 中運作。預設文字 當瀏覽器語音辨識不可用時,後備仍可使用。 瀏覽器語音服務和隱私行為因瀏覽器和部署而異; 取得同意並測試確切支援的瀏覽器集。 OpenFactory 收到 此路徑上的結果文本,而瀏覽器或配置的語音 服務可以單獨處理音訊。

驗收測試

  1. 針對非生產應用程式提交無害的、可逆的變更。
  2. 確認代理不能指向任何其他應用,並拒絕未經身份驗證的呼叫方。
  3. 觀察從 queued/working 到終止狀態 donefailedloststale 的過程。
  4. 檢查任務結果並手動預覽。
  5. 確認上游 Git 儲存庫未更改,除非有單獨的、 已審查的來源持久性工作流程報告提交或拉取請求。
  6. 從規範源恢復或重建沙箱。

請參閱 Prompt-to-app agentApp deployment 了解相同的持久性與提升邊界。