Skip to Content
TestingWidget Voice Iterate (anteprima)

Widget Voice Iterate (anteprima)

Il repository contiene Web Component incorporabile che cattura istruzione digitata o trascritta browser, la invia a un’app OpenFactory posseduta e fa polling del ticket repair risultante. L’integrazione è solo preview.

Il sorgente pacchetto è in tools/voice-iterate nel monorepo OpenFactory. Non assumere che @openfactory/voice-iterate o il bundle CDN sia pubblicato pubblicamente; builda e pin artefatto revisionato dal repository finché una release non è esplicitamente elencata nel registry pacchetti.

Confine attuale

L’endpoint accetta istruzione per app con sorgente Git e dispatcha workflow repair condiviso. Stage 0 cambia copia sandbox deployata e può redeployare quella preview. Non garantisce che il cambio sia committato nel repository upstream. Ticket marcato done prova solo esito task agent registrato; rivedi risultato e verifica app tu stesso.

Il servizio consente al massimo due iterazioni in-flight per app. Richieste aggiuntive restituiscono 429 finché ticket non raggiunge stato terminale.

Prerequisiti

  • App OpenFactory posseduta con source.git_url.
  • Account reale; sessioni guest non possono dispatchare edit codice autonomi.
  • Chiave account of_mcp_ tenuta su server, mai in JavaScript browser.
  • HTTPS o origin sviluppo localhost se si usa input microfono.

Build widget da sorgente

Dal monorepo:

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

Vendorizza bundle versionato risultante o installalo da registry controllato proprio. Registra commit sorgente e checksum usati dalla tua applicazione.

Usa proxy same-origin

Il widget browser-facing chiama:

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

Il server dovrebbe pin ID app target e inoltrare richieste a:

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

Allega Authorization: Bearer <of_mcp_key> solo sul server. Autentica e rate-limit utenti proxy propri; altrimenti ogni visitatore che raggiunge route può spendere autorità account su cambi all’app pin. Consenti solo tre path e due metodi sopra, applica limiti dimensione richiesta e non inoltrare header o ID app arbitrari.

Monta modulo buildato localmente con endpoint proxy:

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); }, });

Custom element e suoi stili girano in Shadow DOM. Fallback testo default resta utilizzabile quando riconoscimento vocale browser non è disponibile. Servizi speech browser e comportamento privacy variano per browser e deploy; ottieni consenso e testa set browser supportato esatto. OpenFactory riceve testo risultante su questo path, mentre browser o servizio speech configurato possono processare audio separatamente.

Test accettazione

  1. Invia cambio innocuo reversibile su app non produzione.
  2. Conferma che proxy non possa targetare altra app e rifiuti chiamanti non autenticati.
  3. Osserva queued/working fino a stato terminale done, failed, lost o stale.
  4. Ispeziona risultato task e preview manualmente.
  5. Conferma che repository Git upstream sia invariato salvo workflow persistenza sorgente separato revisionato che riporti commit o pull request.
  6. Revert o rebuild sandbox da sorgente canonica.

Vedi Agent prompt-to-app e App deployment per stessi confini persistenza e promozione.