Skills Agentes

Dashscope

Integración con DashScope (Alibaba Cloud Bailian / 阿里云百炼): generación de imágenes (qwen-image-2.0-pro), texto a voz (qwen3-tts-flash) y ASR con marcas de tiempo por palabra (qwen3-asr-flash-filetrans).

Estrellas
60.6k

en todo el repo

Actividad
52

0–100, la ruta de este skill

Actualizado
hace 3 meses

último commit aquí

Commits
1

últimos 90 días

Contexto
1.5k tok

82 tok en reposo

Paquete
1 archivo

6 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add calesthio/OpenMontage --skill dashscope --agent claude-code

Se instala solo en este repositorio.

Este skill makes network requests.

Qué hace

  • Integra DashScope (Alibaba Cloud Bailian / 阿里云百炼) en OpenMontage
  • Genera imágenes con qwen-image-2.0-pro, por selector o directamente
  • Sintetiza narración con qwen3-tts-flash
  • Transcribe con qwen3-asr-flash-filetrans y devuelve marcas de tiempo por palabra, útiles para subtítulos

Úsalo cuando

  • Generar imágenes con Qwen-Image
  • Narrar con Qwen-TTS
  • Transcribir con marcas de tiempo por palabra usando Qwen-ASR

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • “Genera esta imagen con Qwen-Image”
    • “Transcribe este audio con marcas por palabra”
    • “Ponle narración a este guion con Qwen-TTS”

    SKILL.md

    En inglés

    DashScope

    Requires DASHSCOPE_API_KEY in .env. Get one at https://dashscope.aliyun.com/.

    Current API

    CRITICAL: DashScope's /compatible-mode/v1/ only supports /chat/completions and /embeddings. Image generation, TTS, and ASR all use DashScope-native endpoints — not OpenAI-compatible paths.

    All three tools use Authorization: Bearer $DASHSCOPE_API_KEY.

    Image Generation

    POST https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation
    
    • Model: qwen-image-2.0-pro (default), qwen-image-max, wan2.7-image, z-image-turbo
    • Body: {model, input: {messages: [{role: "user", content: [{text: "prompt"}]}]}, parameters: {size: "W*H", n, prompt_extend, watermark}}
    • Size format uses asterisk: "1024*1024" not "1024x1024"
    • Response: output.choices[0].message.content[0].image (URL, valid ~24h) — must download separately

    Text-to-Speech

    POST https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation
    

    Same endpoint as image gen, different body.

    • Model: qwen3-tts-flash (default), qwen3-tts-instruct-flash, qwen-tts-2025-05-22
    • Body: {model, input: {text, voice: "Cherry", language_type: "Auto"}}
    • Response: output.audio.url (WAV, valid ~24h) — must download separately

    ASR with Word-Level Timestamps

    POST https://dashscope.aliyuncs.com/api/v1/services/audio/asr/transcription
    Header: X-DashScope-Async: enable
    
    • Model: qwen3-asr-flash-filetrans (NOT qwen3-asr-flash — the sync version has no word timestamps)
    • Body: {model, input: {file_url: "https://public-url/audio.mp3"}, parameters: {enable_words: true, language_hints: ["zh","en"]}}
    • Returns task_id → poll GET /api/v1/tasks/{task_id} until SUCCEEDED → download output.result.transcription_url → JSON with transcripts[].sentences[].words[]
    • Timestamps in begin_time/end_time are in milliseconds — the tool normalizes to seconds

    OpenMontage Usage

    Image via selector

    from tools.graphics.image_selector import ImageSelector
    
    result = ImageSelector().execute({
        "preferred_provider": "dashscope",
        "prompt": "一只猫坐在沙发上",
        "output_path": "projects/my-video/assets/images/cat.png",
    })
    

    TTS via selector

    from tools.audio.tts_selector import TTSSelector
    
    result = TTSSelector().execute({
        "preferred_provider": "dashscope",
        "text": "如果 AI 真的会改变未来,普通人到底该怎么参与?",
        "voice": "Cherry",
        "output_path": "projects/my-video/assets/audio/narration.wav",
    })
    

    ASR directly (word timestamps for subtitles)

    from tools.analysis.dashscope_asr import DashscopeAsr
    
    result = DashscopeAsr().execute({
        "audio_url": "https://example.com/narration.wav",
        "output_path": "projects/my-video/assets/audio/transcription.json",
    })
    
    # result.data["words"] is a flat list of {text, begin_time_seconds, end_time_seconds}
    

    Recommended Workflow

    1. Image: Generate a sample first. Check prompt_extend: true (default) — DashScope rewrites your prompt for better results. Disable if you need literal prompt adherence.
    2. TTS: Generate a 10-15 second sample before full narration. Approve voice and pacing before committing to full generation.
    3. ASR: Audio must be at a publicly accessible URL. Upload to any public host (S3, etc.) first. Local paths are rejected with a clear error.
    4. Subtitles: Build from result.data["words"] — each word has begin_time_seconds and end_time_seconds. Group words into caption phrases by language semantics, not fixed character count.

    Parameters

    Image (dashscope_image)

    • prompt (required): text prompt
    • model: default qwen-image-2.0-pro
    • size: default "1024*1024" — asterisk separator, not "x"
    • n: 1-6 images
    • negative_prompt: things to avoid (max 500 chars)
    • prompt_extend: default true — auto-rewrite prompt for better results
    • watermark: default false
    • seed: for reproducibility

    TTS (dashscope_tts)

    • text (required): text to synthesize (max 600 chars for qwen3-tts-flash)
    • model: default qwen3-tts-flash
    • voice: default "Cherry" — other voices: "Ethan", "Chelsie", etc.
    • language_type: default "Auto" — "Chinese", "English", "Japanese", "Korean"
    • instructions: natural language delivery instructions (only for qwen3-tts-instruct-flash)

    ASR (dashscope_asr)

    • audio_url (required): must be publicly accessible URL
    • model: qwen3-asr-flash-filetrans (only model that supports word timestamps)
    • language_hints: default ["zh", "en"]
    • enable_words: default true — required for word-level timestamps
    • poll_interval_seconds: default 5.0
    • timeout_seconds: default 300

    Troubleshooting

    • Image size error: Use "W*H" with asterisk, not "WxH". Example: "2048*2048".
    • TTS no audio URL: Check output.audio.url — if empty, the model name or voice may be wrong.
    • ASR "file not accessible": audio_url must be publicly reachable. DashScope servers fetch the file; local paths and auth-gated URLs don't work.
    • ASR poll timeout: Increase timeout_seconds (default 300). Long audio files take longer to transcribe.
    • ASR no word timestamps: Ensure enable_words: true and model is qwen3-asr-flash-filetrans (not the sync qwen3-asr-flash).
    • Auth error (401): Verify DASHSCOPE_API_KEY is set. Use Authorization: Bearer $KEY header.

    Safety

    Never print or write the API key to logs, metadata, patches, or project artifacts. .env.example should contain only empty variable names. The tool's _safe_error() method redacts the key from error messages.

    Reproducido de calesthio/OpenMontage bajo licencia AGPL-3.0. Leer esta página en markdown.

    Archivos

    1 archivo en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Necesita credenciales de DashScope (Alibaba Cloud Bailian).

    Detalles

    Creador
    calesthio
    Licencia
    AGPL-3.0
    Recursos incluidos
    Solo SKILL.md
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de calesthio/OpenMontage

    Este repo incluye 89 skills. Si instalas uno, normalmente ya tienes los demás. Ver el pack OpenMontage entero y su comando de instalación

    Comfyui

    60.6k

    Úsalo al trabajar con workflows de ComfyUI en OpenMontage: comfyui_image/video/music, workflows propios, selección de output_node, modelos que faltan, LoRAs, poca VRAM e importación de workflows de la comunidad.

    Costo de contexto al activarse
    1.9k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    diseno ui

    Genera vídeo cinematográfico de 4-30 s con ByteDance Seedance 2.5 por fal.ai, Volcengine Ark, Runway o ComfyUI. Cubre el contrato de prompt 2.5, cortes duros, locks de continuidad y voz.

    Costo de contexto al activarse
    3.2k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    el mes pasado
    video

    Genera narración expresiva y multilingüe con fish.audio (modelos S1 / S2) y reutiliza voces clonadas mediante reference_id.

    Costo de contexto al activarse
    1.4k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    diseno ui

    Genera y edita conversacionalmente vídeos cortos con Google Gemini Omni Flash: itera con ediciones en lenguaje natural, clips de 3-10s a 720p con audio y texto en pantalla, e imágenes de referencia por etiquetas.

    Costo de contexto al activarse
    2.1k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    Permisos
    video

    Genera vídeo con MiniMax H3 (Hailuo 3.0) por la API oficial v2, fal.ai, Runway, nodos partner de ComfyUI o pesos abiertos locales. Clips de 4-15s a 2K con animación de primer/último fotograma.

    Costo de contexto al activarse
    582 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    video

    Genera, reconstruye, inspecciona y enruta activos 3D de producción para mundos de OpenMontage con Atlas Cloud, fal.ai, catálogos con licencia y Blender.

    Costo de contexto al activarse
    1.2k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    el mes pasado
    diseno ui

    Skills relacionados

    Agents

    60.6k

    Construye agentes de voz con ElevenLabs. Úsalo al crear asistentes de voz, bots de atención al cliente, personajes de voz interactivos o cualquier conversación de voz en tiempo real.

    Costo de contexto al activarse
    2.5k tok
    Tamaño del paquete
    6 archivos
    Última actualización
    hace 6 meses
    desarrollo apis

    Bfl Api

    60.6k

    Guía de integración de la API BFL FLUX: endpoints, polling asíncrono, límites de tasa, manejo de errores, webhooks y endpoints regionales, con ejemplos en Python y TypeScript.

    Costo de contexto al activarse
    2.5k tok
    Tamaño del paquete
    10 archivos
    Última actualización
    hace 6 meses
    desarrollo apis

    Guía oficial de la API directa de Kling para los proveedores de OpenMontage. Úsala antes de llamar a kling_official_video, kling_official_image, kling_tts, kling_avatar o kling_lip_sync.

    Costo de contexto al activarse
    2.4k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 2 meses
    desarrollo apis