Skip to Content
TestingVoice Iterate-widget (preview)

Voice Iterate-widget (preview)

Repositoryet inneholder en innebyggbar Web Component som fanger en skrevet eller browser-transkribert instruksjon, sender den til en OpenFactory-app du eier, og poller det resulterende repair ticket. Integrasjonen er kun preview.

Pakkekilden ligger i tools/voice-iterate i OpenFactory-monorepoet. Ikke anta at @openfactory/voice-iterate eller CDN-bundelen er offentlig publisert; bygg og pin en gjennomgått artifact fra repositoryet til en release eksplisitt står i package registry.

Nåværende grense

Endepunktet tar imot en instruksjon for en app med Git-kilde og starter den delte repair workflow. Stage 0 endrer den deployede sandbox-kopien og kan redeploye preview. Det garanterer ikke at endringen committes til upstream repository. Et ticket merket done beviser bare det registrerte agent task outcome; gå gjennom resultatet og verifiser appen selv.

Tjenesten tillater høyst to pågående iterasjoner per app. Flere forespørsler returnerer 429 til et ticket når terminal state.

Forutsetninger

  • En OpenFactory-app du eier med source.git_url.
  • En ekte konto; guest sessions kan ikke starte autonome kodeendringer.
  • En of_mcp_ account key på en server, aldri i browser JavaScript.
  • HTTPS eller localhost development origin hvis mikrofon brukes.

Bygg widgeten fra kilde

Fra monorepoet:

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

Vendor den resulterende versioned bundle, eller installer den fra ditt eget kontrollerte registry. Noter source commit og checksum applikasjonen din bruker.

Bruk en same-origin-proxy

Widgeten i nettleseren kaller:

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

Serveren din bør pinne mål-app-ID og videresende disse kallene til:

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

Legg ved Authorization: Bearer <of_mcp_key> bare på serveren. Autentiser og rate-limit egne proxybrukere; ellers kan enhver besøkende som når ruten bruke kontoens authority på endringer i den pinnede appen. Tillat bare de tre stiene og to metodene over, håndhev grenser for request-størrelse, og videresend ikke vilkårlige headers eller app-ID-er.

Monter den lokalt bygde modulen med proxy-endpoint:

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 og stilene kjører i Shadow DOM. Standard text fallback fungerer fortsatt når browser speech recognition ikke er tilgjengelig. Browser speech services og personvern oppfører seg ulikt per nettleser og deployment; innhent samtykke og test nøyaktig hvilke nettlesere som støttes. OpenFactory mottar den resulterende teksten på denne stien, mens nettleseren eller en konfigurert speech service kan behandle lyd separat.

Akseptansetest

  1. Send en harmløs, reversibel endring mot en non-production-app.
  2. Bekreft at proxyen ikke kan målrette andre apper og avviser uautentiserte callers.
  3. Følg queued/working til terminal done, failed, lost eller stale state.
  4. Inspiser task result og preview manuelt.
  5. Bekreft at upstream Git repository er uendret med mindre en separat, gjennomgått source-persistence workflow rapporterer commit eller pull request.
  6. Tilbakestill eller bygg sandbox på nytt fra den kanoniske kilden.

Se Prompt-assistert app-implementering og App-implementering for de samme persistence- og promotingsgrensene.