Video a partir de imagen de 哪都通 (Antigravity)
Utiliza el cliente Python independiente de este Skill para generar videos candidatos. El modelo predeterminado es seedance-2.5, que ha sido probado; el flujo de trabajo no depende de ningún proyecto en particular, otros árboles de trabajo o estado de despliegue.
Configuración local y punto de entrada de ejecución
- La credencial unificada es
NXTPATH_API_KEY, que se lee por defecto de la variable de entorno o de~/.config/nxtpath/env. La variable de entorno tiene prioridad;NXTPATH_ENV_FILEpuede especificar otra configuración privada. No leas tokens de chat de otras aplicaciones ni coloques la clave en la línea de comandos, Skill, informes o registros de tareas. - Los nuevos procesos zsh cargan la configuración local desde
~/.zshenv; si la GUI o procesos antiguos no heredan el entorno, el cliente aún puede leer directamente los archivos mencionados. Solo informa si la configuración existe, no muestres su contenido. - Localiza
scripts/nxtpath_video.pydesde el directorio del Skill cargado actualmente. Prioriza el uso de~/.config/nxtpath/venv/bin/python; si no existe, las imágenes de referencia HTTPS y la API de video pueden ejecutarse directamente con Python 3.9+. El alojamiento de imágenes locales también requiere boto3 descripts/requirements.txt. - En el proyecto de destino, primero lee los recursos aplicables y las convenciones de privacidad. Las tareas se colocan por defecto en la ruta ignorada del proyecto
tmp/artwork/generations/<run-id>/<asset-id>/<attempt-id>/; si no hay proyecto, se usa el directorio de salida seleccionado por el usuario. No sobrescribas intentos anteriores ni agregues candidatos automáticamente a la compilación o a los recursos formales.
Realizar una creación o reanudar una tarea existente
Cuando el usuario haya solicitado explícitamente generar un video, completa un candidato según esa solicitud, sin preguntar nuevamente por confirmaciones genéricas. Preguntar solo sobre ruta, configuración o uso del Skill no autoriza una generación paga. La cantidad en lote, el número de repeticiones y el rango de costos siguen lo acordado con el usuario en esta ocasión; si no se acordó, comienza con una, sin expandir automáticamente ni regenerar tareas fallidas.
- Ejecuta
doctor --check-apimedianterun_commandpara verificar las credenciales y los modelos disponibles. Esta es una solicitud de solo lectura, no genera video. - Confirma la imagen de referencia y la descripción de la acción (para imágenes de referencia locales, primero usa
read_filepara revisarlas). Define claramente la fase de acción, el encuadre, la composición, la duración y los personajes y accesorios que deben mantenerse; para muestras no especificadas, el valor predeterminado es 4 segundos / 480p, no tomes la muestra de baja resolución predeterminada como el resultado final formal. La velocidad de fotogramas nativa, la consistencia del personaje, las poses inicial/final y la transparencia se basan en el video real. - Guarda el prompt como un archivo UTF-8 y usa
preparepara establecer una entrada inmutable.--referencepuede repetirse para incluir imágenes locales PNG/JPEG/WebP o URLs de imágenes HTTPS; estas son imágenes de guía comunes, no se puede afirmar que la API haya bloqueado los fotogramas clave inicial y final. Para generar video a partir de texto, no es necesario pasar una imagen de referencia. - Cuando existan imágenes locales, ejecuta
hostpara cargar o reutilizar las instantáneas de entrada en un bucket R2 privado ya configurado, emite un GET de 24 horas y verifica el hash de descarga. Esta operación transmitirá la imagen de referencia al servicio de alojamiento y al proveedor de video; debe realizarse dentro del alcance de los materiales solicitados por el usuario. Si falla el alojamiento, no envíes el video, no cambies automáticamente de cuenta, bucket público o servicio. Las imágenes de referencia HTTPS no necesitanhost. - Ejecuta
submitsolo una vez. Primero persiste un registro de envío exclusivo, luego realiza un POST pago. Después, consulta constatusindependiente y, si tiene éxito, obténvideo.mp4condownload; cada comando se ejecuta de forma independiente medianterun_command. No metas una encuesta de minutos en una sola llamada larga de shell y nunca usessleepde shell como temporizador. Cuando necesites esperar, usaschedule(DurationSeconds=...)para establecer un temporizador único y finaliza la ronda actual para esperar la activación, luego vuelve a ejecutarstatus. No regeneres la solicitud por tiempo de espera. - Al reanudar entre conversaciones, usa la ruta de trabajo original, primero
inspect, luegostatus/download. No se debe realizar un POST duplicado para intentos ya enviados, con resultados desconocidos o sin ID de tarea; si no hay ID de tarea, verifica con el proveedor según los registros de envío privados. Si falla la descarga, solo reintenta la descarga. Detén el envío en caso de errores 401/403, cuota insuficiente o modelo no disponible, e informa la razón; no cambies automáticamente de clave, modelo o interfaz.
Ejemplo de comandos (CLIENT se refiere al script real en el Skill; PY se refiere al Python local; JOB es el directorio de tarea recién creado):
"$PY" "$CLIENT" doctor --check-api
"$PY" "$CLIENT" prepare --job "$JOB" --prompt-file "$PROMPT_FILE" --reference "$REFERENCE_IMAGE" --duration 4 --resolution 480p --ratio 1:1
"$PY" "$CLIENT" host --job "$JOB"
"$PY" "$CLIENT" submit --job "$JOB"
"$PY" "$CLIENT" status --job "$JOB"
"$PY" "$CLIENT" download --job "$JOB"
Entrega y límites
Entrega el video local reproducible y la ruta de trabajo, usando el enlace [video.mp4](file:///ruta/absoluta/al/video.mp4) para mostrar el video, e indica que es un candidato y el contenido que realmente se ha verificado. Cuando sea necesario revisar el resultado final, utiliza la herramienta read_file de Antigravity para leer el video.mp4 descargado (soporta de forma nativa la lectura multimodal de video), verifica la velocidad original, las acciones clave y las poses inicial y final; no consideres que el éxito HTTP equivalga a que la acción o el arte estén aprobados.
Los registros de tarea contienen el prompt, la instantánea de entrada, la solicitud exacta, el identificador de la tarea del proveedor, el resultado y el hash del archivo; los permisos por defecto son de solo lectura para el usuario actual. Estos registros pueden contener URLs firmadas temporales, no se pueden pegar completos en el chat ni enviar a Git. La consola solo muestra la huella del identificador de la tarea. La eliminación de fondo transparente, la integración con SVG y la conexión con la aplicación pertenecen a la producción posterior y se manejan según las herramientas y autorizaciones del proyecto de destino.
Solo lee la configuración y recuperación de fallos al cambiar de dispositivo, actualizar credenciales o cuando falla el alojamiento. La referencia de la interfaz está en Skill Seedance del proveedor.