Tools
توليد الموسيقى
تتيح أداة music_generate للوكيل إنشاء موسيقى أو صوت من خلال
قدرة إنشاء الموسيقى المشتركة مع الموفرين المُكوَّنين، وهم اليوم Google
وMiniMax وComfyUI المُكوَّن عبر سير العمل.
بالنسبة لتشغيلات الوكيل المدعومة بالجلسات، يبدأ OpenClaw إنشاء الموسيقى كمهمة في الخلفية، ويتتبعها في سجل المهام، ثم يوقظ الوكيل مرة أخرى عندما يكون المقطع جاهزًا لكي يتمكن الوكيل من إخبار المستخدم وإرفاق الصوت النهائي. في محادثات المجموعات/القنوات التي تستخدم تسليمًا مرئيًا عبر أداة الرسائل فقط، يمرر الوكيل النتيجة عبر أداة الرسائل. إذا كتب وكيل الإكمال ردًا نهائيًا خاصًا فقط، يرجع OpenClaw إلى إرسال مباشر عبر القناة مع الوسائط المولدة. تنبيه الإكمال يحذر الوكيل صراحةً من أن الردود النهائية العادية تكون خاصة في تلك المسارات.
البدء السريع
Shared provider-backed
Configure auth
عيّن مفتاح API لموفر واحد على الأقل، على سبيل المثال
GEMINI_API_KEY أو MINIMAX_API_KEY.
Pick a default model (optional)
{
agents: {
defaults: {
musicGenerationModel: {
primary: "google/lyria-3-clip-preview",
},
},
},
}
Ask the agent
"Generate an upbeat synthpop track about a night drive through a neon city."
يستدعي الوكيل music_generate تلقائيًا. ليست هناك حاجة إلى
قائمة سماح للأداة.
بالنسبة للسياقات المتزامنة المباشرة من دون تشغيل وكيل مدعوم بجلسة، تظل الأداة المدمجة ترجع إلى الإنشاء المضمن وتعيد مسار الوسائط النهائي في نتيجة الأداة.
ComfyUI workflow
Configure the workflow
قم بتكوين plugins.entries.comfy.config.music باستخدام
JSON لسير العمل وعُقد الموجه/الإخراج.
Cloud auth (optional)
بالنسبة إلى Comfy Cloud، عيّن COMFY_API_KEY أو COMFY_CLOUD_API_KEY.
Call the tool
/tool music_generate prompt="Warm ambient synth loop with soft tape texture"
أمثلة على الموجهات:
Generate a cinematic piano track with soft strings and no vocals.
Generate an energetic chiptune loop about launching a rocket at sunrise.
الموفرون المدعومون
| الموفر | النموذج الافتراضي | المدخلات المرجعية | عناصر التحكم المدعومة | المصادقة |
|---|---|---|---|---|
| ComfyUI | workflow |
حتى صورة واحدة | موسيقى أو صوت يحدده سير العمل | COMFY_API_KEY, COMFY_CLOUD_API_KEY |
lyria-3-clip-preview |
حتى 10 صور | lyrics, instrumental, format |
GEMINI_API_KEY, GOOGLE_API_KEY |
|
| MiniMax | music-2.6 |
لا شيء | lyrics, instrumental, durationSeconds, format=mp3 |
MINIMAX_API_KEY أو MiniMax OAuth |
مصفوفة القدرات
عقد الوضع الصريح الذي تستخدمه music_generate واختبارات العقد
والمسح الحي المشترك:
| الموفر | generate |
edit |
حد التحرير | مسارات الحي المشتركة |
|---|---|---|---|---|
| ComfyUI | ✓ | ✓ | صورة واحدة | ليس ضمن المسح المشترك؛ تغطيه extensions/comfy/comfy.live.test.ts |
| ✓ | ✓ | 10 صور | generate, edit |
|
| MiniMax | ✓ | — | لا شيء | generate |
استخدم action: "list" لفحص الموفرين والنماذج المشتركة المتاحة في
وقت التشغيل:
/tool music_generate action=list
استخدم action: "status" لفحص مهمة الموسيقى النشطة المدعومة بالجلسة:
/tool music_generate action=status
مثال إنشاء مباشر:
/tool music_generate prompt="Dreamy lo-fi hip hop with vinyl texture and gentle rain" instrumental=true
معاملات الأداة
promptstringrequiredموجه إنشاء الموسيقى. مطلوب لـ action: "generate".
action"generate" | "status" | "list"يعيد "status" مهمة الجلسة الحالية؛ ويفحص "list" الموفرين.
modelstringتجاوز الموفر/النموذج (مثل google/lyria-3-pro-preview,
comfy/workflow).
lyricsstringكلمات اختيارية عندما يدعم الموفر إدخال كلمات صريحًا.
instrumentalbooleanاطلب إخراجًا آليًا فقط عندما يدعم الموفر ذلك.
imagestringمسار أو URL لصورة مرجعية واحدة.
imagesstring[]صور مرجعية متعددة (حتى 10 لدى الموفرين الداعمين).
durationSecondsnumberمدة مستهدفة بالثواني عندما يدعم الموفر تلميحات المدة.
format"mp3" | "wav"تلميح تنسيق الإخراج عندما يدعمه الموفر.
filenamestringtimeoutMsnumberالسلوك غير المتزامن
يعمل إنشاء الموسيقى المدعوم بالجلسة كمهمة في الخلفية:
- مهمة في الخلفية: تنشئ
music_generateمهمة في الخلفية، وتعيد استجابة بدء/مهمة فورًا، وتنشر المقطع النهائي لاحقًا في رسالة متابعة من الوكيل. - منع التكرار: بينما تكون المهمة
queuedأوrunning، تعيد استدعاءاتmusic_generateاللاحقة في الجلسة نفسها حالة المهمة بدلًا من بدء إنشاء آخر. استخدمaction: "status"للتحقق صراحةً. - البحث عن الحالة: يفحص
openclaw tasks listأوopenclaw tasks show <taskId>الحالات في قائمة الانتظار والجارية والنهائية. - تنبيه الإكمال: يحقن OpenClaw حدث إكمال داخليًا مرة أخرى في الجلسة نفسها حتى يتمكن النموذج من كتابة المتابعة الظاهرة للمستخدم بنفسه.
- تلميح الموجه: تحصل أدوار المستخدم/اليدوية اللاحقة في الجلسة نفسها
على تلميح وقت تشغيل صغير عندما تكون مهمة موسيقى قيد التنفيذ بالفعل،
حتى لا يستدعي النموذج
music_generateمرة أخرى بلا تمييز. - الرجوع عند عدم وجود جلسة: تعمل السياقات المباشرة/المحلية من دون جلسة وكيل حقيقية بشكل مضمن وتعيد نتيجة الصوت النهائية في الدور نفسه.
دورة حياة المهمة
| الحالة | المعنى |
|---|---|
queued |
أُنشئت المهمة، وتنتظر أن يقبلها الموفر. |
running |
الموفر يعالج الطلب (عادةً من 30 ثانية إلى 3 دقائق حسب الموفر والمدة). |
succeeded |
المقطع جاهز؛ يستيقظ الوكيل وينشره في المحادثة. |
failed |
خطأ من الموفر أو انتهاء المهلة؛ يستيقظ الوكيل مع تفاصيل الخطأ. |
تحقق من الحالة من CLI:
openclaw tasks list
openclaw tasks show <taskId>
openclaw tasks cancel <taskId>
التكوين
اختيار النموذج
{
agents: {
defaults: {
musicGenerationModel: {
primary: "google/lyria-3-clip-preview",
fallbacks: ["minimax/music-2.6"],
},
},
},
}
ترتيب اختيار الموفر
يحاول OpenClaw استخدام الموفرين بهذا الترتيب:
- معامل
modelمن استدعاء الأداة (إذا حدده الوكيل). musicGenerationModel.primaryمن التكوين.musicGenerationModel.fallbacksبالترتيب.- الاكتشاف التلقائي باستخدام افتراضيات الموفر المدعومة بالمصادقة فقط:
- الموفر الافتراضي الحالي أولًا؛
- الموفرون المسجلون المتبقون لإنشاء الموسيقى بترتيب معرف الموفر.
إذا فشل موفر، تتم تجربة المرشح التالي تلقائيًا. إذا فشل الجميع، يتضمن الخطأ تفاصيل كل محاولة.
عيّن agents.defaults.mediaGenerationAutoProviderFallback: false لاستخدام
إدخالات model وprimary وfallbacks الصريحة فقط.
ملاحظات الموفرين
ComfyUI
يعتمد على سير العمل ويتوقف على المخطط المُكوَّن إضافة إلى ربط العقد
لحقول الموجه/الإخراج. يتصل Plugin comfy المضمن بأداة
music_generate المشتركة من خلال سجل موفري إنشاء الموسيقى.
Google (Lyria 3)
يستخدم إنشاء الدُفعات في Lyria 3. يدعم التدفق المضمن الحالي الموجه ونص الكلمات الاختياري والصور المرجعية الاختيارية.
MiniMax
يستخدم نقطة النهاية الدُفعية music_generation. يدعم الموجه
والكلمات الاختيارية ووضع الموسيقى الآلية وتوجيه المدة وإخراج mp3
عبر مصادقة مفتاح API إما minimax أو OAuth لـ minimax-portal.
اختيار المسار المناسب
- مدعوم بموفر مشترك عندما تريد اختيار النموذج، والتبديل عند فشل الموفر، وتدفق المهمة/الحالة غير المتزامن المدمج.
- مسار Plugin (ComfyUI) عندما تحتاج إلى مخطط سير عمل مخصص أو إلى موفر ليس جزءًا من قدرة الموسيقى المشتركة المضمنة.
إذا كنت تصحح سلوكًا خاصًا بـ ComfyUI، فراجع ComfyUI. وإذا كنت تصحح سلوك موفر مشترك، فابدأ بـ Google (Gemini) أو MiniMax.
أوضاع قدرات الموفر
يدعم عقد إنشاء الموسيقى المشترك إعلانات أوضاع صريحة:
generateللإنشاء باستخدام الموجه فقط.editعندما يتضمن الطلب صورة مرجعية واحدة أو أكثر.
ينبغي لتطبيقات الموفرين الجديدة تفضيل كتل الأوضاع الصريحة:
capabilities: {
generate: {
maxTracks: 1,
supportsLyrics: true,
supportsFormat: true,
},
edit: {
enabled: true,
maxTracks: 1,
maxInputImages: 1,
supportsFormat: true,
},
}
الحقول المسطحة القديمة مثل maxInputImages وsupportsLyrics و
supportsFormat ليست كافية للإعلان عن دعم التحرير. ينبغي للموفرين
إعلان generate وedit صراحةً حتى تتمكن الاختبارات الحية، واختبارات
العقد، وأداة music_generate المشتركة من التحقق من دعم الأوضاع بشكل
حتمي.
الاختبارات الحية
تغطية حية اختيارية للموفرين المشتركين المضمنين:
OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/music-generation-providers.live.test.ts
غلاف المستودع:
pnpm test:live:media music
يحمّل هذا الملف الحي متغيرات بيئة الموفر المفقودة من ~/.profile،
ويفضل مفاتيح API الحية/البيئية على ملفات تعريف المصادقة المخزنة
افتراضيًا، ويشغّل تغطية كل من generate وedit المعلنة عندما يفعّل
الموفر وضع التحرير. التغطية اليوم:
google:generateبالإضافة إلىeditminimax:generateفقطcomfy: تغطية حية منفصلة لـ Comfy، وليست فحص المزوّدين المشترك
تغطية حية اختيارية لمسار موسيقى ComfyUI المضمّن:
OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts
يغطي ملف Comfy الحي أيضًا سير عمل الصور والفيديو في comfy عند تكوين تلك الأقسام.
ذات صلة
- المهام الخلفية — تتبّع المهام لتشغيلات
music_generateالمنفصلة - ComfyUI
- مرجع التكوين — تكوين
musicGenerationModel - Google (Gemini)
- MiniMax
- النماذج — تكوين النماذج وتجاوز الفشل
- نظرة عامة على الأدوات