Skip to Content
TestingVoice Iterate-widget (preview)

Voice Iterate-widget (preview)

De repository bevat een inbedbare Web Component die een getypte of door de browser getranscribeerde instructie vastlegt, die naar een OpenFactory-app van u stuurt en het resulterende repair ticket pollt. De integratie is alleen preview.

De packagebron staat in tools/voice-iterate in het OpenFactory-monorepo. Ga er niet van uit dat @openfactory/voice-iterate of de CDN-bundle openbaar gepubliceerd is; bouw en pin een beoordeeld artifact uit de repository totdat een release expliciet in het package registry staat.

Huidige grens

Het endpoint accepteert een instructie voor een app met een Git-bron en start de gedeelde repair workflow. Stage 0 wijzigt de gedeployde sandbox-kopie en kan die preview opnieuw deployen. Het garandeert niet dat de wijziging in de upstream repository is gecommit. Een ticket met status done bewijst alleen de vastgelegde agent task outcome; controleer het resultaat en verifieer de app zelf.

De service staat maximaal twee lopende iteraties per app toe. Extra verzoeken geven 429 totdat een ticket een terminal state bereikt.

Vereisten

  • Een OpenFactory-app van u met source.git_url.
  • Een echt account; guest sessions kunnen geen autonome code-edits starten.
  • Een of_mcp_ account key op een server, nooit in browser JavaScript.
  • HTTPS of een localhost development origin als microfooninput wordt gebruikt.

De widget uit bron bouwen

Vanuit het monorepo:

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

Neem de resulterende versioned bundle op in uw build of installeer die uit uw eigen beheerde registry. Noteer de source commit en checksum die uw applicatie gebruikt.

Same-origin proxy gebruiken

De widget in de browser roept aan:

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

Uw server moet de doel-app-ID vastzetten en die verzoeken doorsturen naar:

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

Voeg Authorization: Bearer <of_mcp_key> alleen op de server toe. Authenticeer en rate-limit uw eigen proxygebruikers; anders kan elke bezoeker die de route bereikt de authority van uw account besteden aan wijzigingen aan de vastgepinde app. Sta alleen de drie paden en twee methoden hierboven toe, handhaaf limieten op request-grootte en stuur geen willekeurige headers of app-ID’s door.

Mount de lokaal gebouwde module met het 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); }, });

Het custom element en de styles draaien in een Shadow DOM. De standaard text fallback blijft bruikbaar wanneer browser speech recognition niet beschikbaar is. Browser speech services en privacygedrag verschillen per browser en deployment; vraag toestemming en test de exacte ondersteunde browserset. OpenFactory ontvangt de resulterende tekst op dit pad, terwijl de browser of een geconfigureerde speech service audio apart kan verwerken.

Acceptatietest

  1. Dien een onschadelijke, omkeerbare wijziging in tegen een non-production app.
  2. Bevestig dat de proxy geen andere app kan targeten en niet-geauthenticeerde callers afwijst.
  3. Observeer queued/working tot een terminal done, failed, lost of stale state.
  4. Inspecteer het task result en de preview handmatig.
  5. Bevestig dat de upstream Git-repository ongewijzigd is, tenzij een aparte, beoordeelde source-persistence workflow een commit of pull request meldt.
  6. Zet de sandbox terug of herbouw die vanuit de canonieke bron.

Zie Prompt-ondersteunde app-implementatie en App-implementatie voor dezelfde persistence- en promotiegrenzen.