Tools
Muziekgeneratie
Het music_generate-hulpmiddel laat de agent muziek of audio maken via de
gedeelde capaciteit voor muziekgeneratie met geconfigureerde providers — Google,
MiniMax en vandaag workflow-geconfigureerde ComfyUI.
Voor sessieondersteunde agentuitvoeringen start OpenClaw muziekgeneratie als een achtergrondtaak, houdt die bij in het taaklogboek en wekt de agent vervolgens weer wanneer de track klaar is, zodat de agent de gebruiker kan informeren en de afgewerkte audio kan bijvoegen. In groeps-/kanaalchats die zichtbare levering alleen via het berichtenhulpmiddel gebruiken, geeft de agent het resultaat door via het berichtenhulpmiddel. Als de voltooiingsagent alleen een privé-eindantwoord schrijft, valt OpenClaw terug op rechtstreeks verzenden via het kanaal met de gegenereerde media. De voltooiingswake waarschuwt de agent expliciet dat normale eindantwoorden in die routes privé zijn.
Snel aan de slag
Gedeeld, met providerondersteuning
Authenticatie configureren
Stel een API-sleutel in voor ten minste één provider — bijvoorbeeld
GEMINI_API_KEY of MINIMAX_API_KEY.
Een standaardmodel kiezen (optioneel)
{
agents: {
defaults: {
musicGenerationModel: {
primary: "google/lyria-3-clip-preview",
},
},
},
}
De agent vragen
"Genereer een opgewekte synthpoptrack over een nachtelijke rit door een neonstad."
De agent roept music_generate automatisch aan. Geen expliciete
toestemmingslijst voor hulpmiddelen nodig.
Voor directe synchrone contexten zonder sessieondersteunde agentuitvoering valt het ingebouwde hulpmiddel nog steeds terug op inline generatie en geeft het het uiteindelijke mediapad terug in het hulpmiddelresultaat.
ComfyUI-workflow
De workflow configureren
Configureer plugins.entries.comfy.config.music met een workflow-JSON
en prompt-/uitvoerknooppunten.
Cloudauthenticatie (optioneel)
Stel voor Comfy Cloud COMFY_API_KEY of COMFY_CLOUD_API_KEY in.
Het hulpmiddel aanroepen
/tool music_generate prompt="Warm ambient synth loop with soft tape texture"
Voorbeeldprompts:
Generate a cinematic piano track with soft strings and no vocals.
Generate an energetic chiptune loop about launching a rocket at sunrise.
Ondersteunde providers
| Provider | Standaardmodel | Referentie-invoer | Ondersteunde bedieningselementen | Authenticatie |
|---|---|---|---|---|
| ComfyUI | workflow |
Tot 1 afbeelding | Door workflow gedefinieerde muziek of audio | COMFY_API_KEY, COMFY_CLOUD_API_KEY |
lyria-3-clip-preview |
Tot 10 afbeeldingen | lyrics, instrumental, format |
GEMINI_API_KEY, GOOGLE_API_KEY |
|
| MiniMax | music-2.6 |
Geen | lyrics, instrumental, durationSeconds, format=mp3 |
MINIMAX_API_KEY of MiniMax OAuth |
Capaciteitsmatrix
Het expliciete moduscontract dat wordt gebruikt door music_generate,
contracttests en de gedeelde live-sweep:
| Provider | generate |
edit |
Bewerkingslimiet | Gedeelde live-lanes |
|---|---|---|---|---|
| ComfyUI | ✓ | ✓ | 1 afbeelding | Niet in de gedeelde sweep; gedekt door extensions/comfy/comfy.live.test.ts |
| ✓ | ✓ | 10 afbeeldingen | generate, edit |
|
| MiniMax | ✓ | — | Geen | generate |
Gebruik action: "list" om beschikbare gedeelde providers en modellen tijdens
runtime te inspecteren:
/tool music_generate action=list
Gebruik action: "status" om de actieve sessieondersteunde muziektaak te
inspecteren:
/tool music_generate action=status
Voorbeeld van directe generatie:
/tool music_generate prompt="Dreamy lo-fi hip hop with vinyl texture and gentle rain" instrumental=true
Hulpmiddelparameters
promptstringrequiredPrompt voor muziekgeneratie. Vereist voor action: "generate".
action"generate" | "status" | "list""status" geeft de huidige sessietaak terug; "list" inspecteert providers.
modelstringOverschrijving van provider/model (bijv. google/lyria-3-pro-preview,
comfy/workflow).
lyricsstringOptionele songtekst wanneer de provider expliciete songtekstinvoer ondersteunt.
instrumentalbooleanVraag uitvoer met alleen instrumenten aan wanneer de provider dit ondersteunt.
imagestringPad of URL naar één referentieafbeelding.
imagesstring[]Meerdere referentieafbeeldingen (tot 10 bij ondersteunende providers).
durationSecondsnumberDoelduur in seconden wanneer de provider duurhints ondersteunt.
format"mp3" | "wav"Hint voor uitvoerindeling wanneer de provider dit ondersteunt.
filenamestringtimeoutMsnumberAsynchroon gedrag
Sessieondersteunde muziekgeneratie draait als achtergrondtaak:
- Achtergrondtaak:
music_generatemaakt een achtergrondtaak aan, geeft onmiddellijk een gestart-/taakantwoord terug en plaatst de afgewerkte track later in een vervolgbericht van de agent. - Voorkomen van duplicaten: zolang een taak
queuedofrunningis, geven lateremusic_generate-aanroepen in dezelfde sessie de taakstatus terug in plaats van een nieuwe generatie te starten. Gebruikaction: "status"om dit expliciet te controleren. - Status opzoeken:
openclaw tasks listofopenclaw tasks show <taskId>inspecteert statussen in de wachtrij, actief en terminaal. - Voltooiingswake: OpenClaw injecteert een interne voltooiingsgebeurtenis terug in dezelfde sessie, zodat het model zelf het gebruikersgerichte vervolgbericht kan schrijven.
- Prompthint: latere gebruikers-/handmatige beurten in dezelfde sessie
krijgen een kleine runtime-hint wanneer er al een muziektaak actief is, zodat
het model
music_generateniet blind opnieuw aanroept. - Fallback zonder sessie: directe/lokale contexten zonder echte agentsessie draaien inline en geven het uiteindelijke audioresultaat in dezelfde beurt terug.
Taaklevenscyclus
| Status | Betekenis |
|---|---|
queued |
Taak aangemaakt, wacht tot de provider deze accepteert. |
running |
Provider verwerkt de taak (meestal 30 seconden tot 3 minuten, afhankelijk van provider en duur). |
succeeded |
Track klaar; de agent wordt gewekt en plaatst deze in het gesprek. |
failed |
Providerfout of time-out; de agent wordt gewekt met foutdetails. |
Controleer de status via de CLI:
openclaw tasks list
openclaw tasks show <taskId>
openclaw tasks cancel <taskId>
Configuratie
Modelselectie
{
agents: {
defaults: {
musicGenerationModel: {
primary: "google/lyria-3-clip-preview",
fallbacks: ["minimax/music-2.6"],
},
},
},
}
Volgorde voor providerselectie
OpenClaw probeert providers in deze volgorde:
model-parameter uit de hulpmiddelaanroep (als de agent er een opgeeft).musicGenerationModel.primaryuit de configuratie.musicGenerationModel.fallbacksop volgorde.- Automatische detectie met alleen authenticatieondersteunde providerstandaarden:
- huidige standaardprovider eerst;
- resterende geregistreerde providers voor muziekgeneratie op provider-id-volgorde.
Als een provider faalt, wordt de volgende kandidaat automatisch geprobeerd. Als ze allemaal falen, bevat de fout details van elke poging.
Stel agents.defaults.mediaGenerationAutoProviderFallback: false in om alleen
expliciete model-, primary- en fallbacks-items te gebruiken.
Providernotities
ComfyUI
Workflowgestuurd en afhankelijk van de geconfigureerde graaf plus
knooppuntmapping voor prompt-/uitvoervelden. De gebundelde comfy Plugin
sluit aan op het gedeelde music_generate-hulpmiddel via het providerregister
voor muziekgeneratie.
Google (Lyria 3)
Gebruikt Lyria 3-batchgeneratie. De huidige gebundelde flow ondersteunt prompt, optionele songtekst en optionele referentieafbeeldingen.
MiniMax
Gebruikt het batch-eindpunt music_generation. Ondersteunt prompt,
optionele songtekst, instrumentale modus, duursturing en mp3-uitvoer via
minimax API-sleutelauthenticatie of minimax-portal OAuth.
Het juiste pad kiezen
- Gedeeld, met providerondersteuning wanneer je modelselectie, providerfailover en de ingebouwde asynchrone taak-/statusflow wilt.
- Plugin-pad (ComfyUI) wanneer je een aangepaste workflowgraaf nodig hebt of een provider die geen deel uitmaakt van de gedeelde gebundelde muziekcapaciteit.
Als je ComfyUI-specifiek gedrag debugt, zie ComfyUI. Als je gedeeld providergedrag debugt, begin dan met Google (Gemini) of MiniMax.
Provider-capaciteitsmodi
Het gedeelde contract voor muziekgeneratie ondersteunt expliciete modusdeclaraties:
generatevoor generatie met alleen een prompt.editwanneer het verzoek een of meer referentieafbeeldingen bevat.
Nieuwe providerimplementaties moeten bij voorkeur expliciete modusblokken gebruiken:
capabilities: {
generate: {
maxTracks: 1,
supportsLyrics: true,
supportsFormat: true,
},
edit: {
enabled: true,
maxTracks: 1,
maxInputImages: 1,
supportsFormat: true,
},
}
Verouderde platte velden zoals maxInputImages, supportsLyrics en
supportsFormat zijn niet genoeg om bewerkingsondersteuning aan te geven.
Providers moeten generate en edit expliciet declareren, zodat live tests,
contracttests en het gedeelde music_generate-hulpmiddel modusondersteuning
deterministisch kunnen valideren.
Live tests
Opt-in live-dekking voor de gedeelde gebundelde providers:
OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/music-generation-providers.live.test.ts
Repo-wrapper:
pnpm test:live:media music
Dit live-bestand laadt ontbrekende provideromgevingsvariabelen uit ~/.profile,
geeft standaard de voorkeur aan live-/env-API-sleutels boven opgeslagen
authenticatieprofielen en voert zowel generate-dekking als gedeclareerde
edit-dekking uit wanneer de provider de bewerkingsmodus inschakelt. Dekking
vandaag:
google:generatepluseditminimax: alleengeneratecomfy: afzonderlijke Comfy-live-dekking, niet de gedeelde providercontrole
Optionele live-dekking voor het gebundelde ComfyUI-muziekpad:
OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts
Het Comfy-livebestand behandelt ook Comfy-workflows voor afbeeldingen en video's wanneer die secties zijn geconfigureerd.
Gerelateerd
- Achtergrondtaken — taaktracering voor losgekoppelde
music_generate-runs - ComfyUI
- Configuratiereferentie —
musicGenerationModel-configuratie - Google (Gemini)
- MiniMax
- Modellen — modelconfiguratie en failover
- Toolsoverzicht