Voice Iterate-widget (preview)
Repositoryet indeholder en indlejret Web Component, der registrerer en indtastet eller browser-transkriberet instruktion, sender den til en OpenFactory-app, du ejer, og poller det resulterende repair ticket. Integrationen er kun preview.
Pakkekilden ligger i tools/voice-iterate i OpenFactory-monorepoet. Antag ikke, at
@openfactory/voice-iterate eller dets CDN bundle er offentligt udgivet; byg og pin
en gennemgået artifact fra repositoryet, indtil en release eksplicit står i package
registry.
Nuværende grænse
Endpointet accepterer en instruktion for en app med Git-kilde og starter den delte repair
workflow. Stage 0 ændrer den deployede sandbox-kopi og kan redeploye preview. Det
garanterer ikke, at ændringen committes til upstream repository. Et ticket markeret
done beviser kun det registrerede agent task outcome; gennemgå resultatet og
verificer appen selv.
Tjenesten tillader højst to igangværende iterationer pr. app. Yderligere anmodninger
returnerer 429, indtil et ticket når terminal state.
Forudsætninger
- En OpenFactory-app, du ejer, med
source.git_url. - En rigtig konto; guest sessions kan ikke starte autonome kodeændringer.
- En
of_mcp_account key på en server, aldrig i browser JavaScript. - HTTPS eller localhost development origin, hvis mikrofon bruges.
Byg widgeten fra kilde
Fra monorepoet:
cd tools/voice-iterate
npm ci
npm test
npm run lint
npm run buildVendor den resulterende versioned bundle, eller installer den fra dit eget kontrollerede registry. Notér source commit og checksum, som din applikation bruger.
Brug en same-origin-proxy
Widgeten i browseren kalder:
POST {endpoint}/iterate
GET {endpoint}/agent-status
GET {endpoint}/agent-status?thread_id={thread_id}Din server skal pinne mål-app-ID og videresende disse kald til:
POST https://console.openfactory.tech/api/apps/{APP_ID}/iterate
GET https://console.openfactory.tech/api/apps/{APP_ID}/agent-statusVedhæft Authorization: Bearer <of_mcp_key> kun på serveren. Autentificér og
rate-limit dine egne proxybrugere; ellers kan enhver besøgende, der når ruten,
bruge din kontos authority på ændringer i den pinnede app. Tillad kun de tre stier
og to metoder ovenfor, håndhæv grænser for request-størrelse, og videresend ikke
vilkårlige headers eller app-ID’er.
Monter det lokalt byggede modul 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 dets styles kører i Shadow DOM. Standard text fallback kan stadig bruges, når browser speech recognition ikke er tilgængelig. Browser speech services og privatlivsadfærd varierer efter browser og deployment; indhent samtykke og test det præcise understøttede browsersæt. OpenFactory modtager den resulterende tekst på denne sti, mens browseren eller en konfigureret speech service kan behandle lyd for sig.
Accepttest
- Send en harmløs, reversibel ændring mod en non-production-app.
- Bekræft, at proxyen ikke kan målrette andre apps og afviser uautentificerede callers.
- Følg
queued/workingtil terminaldone,failed,lostellerstalestate. - Inspicér task result og preview manuelt.
- Bekræft, at upstream Git repository er uændret, medmindre et separat, gennemgået source-persistence workflow rapporterer commit eller pull request.
- Tilbagefør eller genopbyg sandbox fra den kanoniske kilde.
Se Prompt-assisteret app-implementering og App-implementering for de samme persistence- og promotionsgrænser.