Paquete NPM: API de programación

Referencia de TypeScript/API de JavaScript para @microsoft/winappcli. Cada comando de la interfaz de línea de comandos (CLI) está disponible como una función asincrónica que captura stdout/stderr y devuelve un resultado con tipo. También se exportan las utilidades auxiliares para la identidad MSIX, la identidad de depuración de Electron y las herramientas de compilación.

Installation

npm install @microsoft/winappcli

Inicio rápido

import { init, packageApp, certGenerate } from '@microsoft/winappcli';

// Initialize a new project with defaults
await init({ useDefaults: true });

// Generate a dev certificate
await certGenerate({ install: true });

// Package the built app
await packageApp({ inputFolder: './dist', cert: './devcert.pfx' });

Tipos comunes

Cada contenedor de comandos de la CLI acepta un objeto options que extiende CommonOptions y devuelve Promise<WinappResult>.

CommonOptions

Opciones base compartidas por la mayoría de los comandos.

Propiedad Tipo Obligatorio Description
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

WinappResult

Resultado devuelto por cada envoltorio de comandos.

Propiedad Tipo Obligatorio Description
exitCode number Código de salida del proceso (siempre 0 en caso de éxito – distinto de cero en caso de error).
stdout string Salida estándar capturada.
stderr string Error estándar capturado.

Envolventes de comandos de la CLI

Estas funciones encapsulan comandos nativos winapp de la CLI. Todas aceptan CommonOptions (quiet, verbose, cwd).

certGenerate()

Cree un certificado autofirmado solo para pruebas locales. El publicador debe coincidir con el manifiesto (inferido automáticamente si se proporciona --manifest o si Package.appxmanifest está en el directorio de trabajo). Salida: devcert.pfx (contraseña predeterminada: 'password'). Para el entorno de producción, obtenga un certificado de una entidad de certificación de confianza. Use "cert install" para confiar en esta máquina.

function certGenerate(options?: CertGenerateOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
exportCer boolean \| undefined No Exportar un archivo .cer (solo clave pública) junto con el archivo .pfx
ifExists IfExists \| undefined No Comportamiento cuando existe un archivo de salida: 'error' (error, valor predeterminado), 'skip' (mantener existente) o 'overwrite' (reemplazar)
install boolean \| undefined No Instale el certificado en el almacén del equipo local después de generarlo
json boolean \| undefined No Dar formato a la salida como JSON
manifest string \| undefined No Ruta de acceso al archivo Package.appxmanifest o appxmanifest.xml para extraer información del publicador
output string \| undefined No Ruta de acceso de salida para el archivo PFX generado
password string \| undefined No Contraseña del archivo PFX generado
publisher string \| undefined No Nombre del editor para el certificado generado. Si no se especifica, se deducirá del manifiesto.
validDays number \| undefined No Número de días que el certificado es válido

También acepta CommonOptions (quiet, verbose, cwd).


certInfo()

Mostrar los detalles del certificado (asunto, huella digital, expiración). Resulta útil para comprobar que un certificado coincide con el manifiesto antes de firmarlo.

function certInfo(options: CertInfoOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
certPath string Ruta de acceso al archivo de certificado (PFX)
json boolean \| undefined No Dar formato a la salida como JSON
password string \| undefined No Contraseña del archivo PFX

También acepta CommonOptions (quiet, verbose, cwd).


certInstall()

Confíe en un certificado en esta máquina (requiere administrador). Ejecute antes de instalar paquetes MSIX firmados con certificados de desarrollo. Ejemplo: winapp cert install ./devcert.pfx. Solo se necesita una vez por certificado.

function certInstall(options: CertInstallOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
certPath string Ruta de acceso al archivo de certificado (PFX o CER)
force boolean \| undefined No Forzar la instalación incluso si el certificado ya existe
password string \| undefined No Contraseña del archivo PFX

También acepta CommonOptions (quiet, verbose, cwd).


createDebugIdentity()

Habilite la identidad del paquete para depuración sin crear un paquete MSIX completo. Necesario para probar Windows API (notificaciones push, destino de recurso compartido, etc.) durante el desarrollo. Ejemplo: winapp create-debug-identity ./myapp.exe. Requiere Package.appxmanifest o appxmanifest.xml en el directorio actual o se pasa a través de --manifest. Vuelva a ejecutarse después de cambiar el manifiesto o Activos/.

function createDebugIdentity(options?: CreateDebugIdentityOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
entrypoint string \| undefined No Ruta de acceso al archivo .exe que deberá ejecutarse con identidad o como un script de punto de entrada.
keepIdentity boolean \| undefined No Mantenga la identidad del paquete del manifiesto as-is, sin anexar '.debug' al nombre del paquete y al identificador de la aplicación.
manifest string \| undefined No Ruta de acceso a Package.appxmanifest o appxmanifest.xml
noInstall boolean \| undefined No No instale el paquete después de la creación.

También acepta CommonOptions (quiet, verbose, cwd).


createExternalCatalog()

Genera un archivo de catálogo CodeIntegrityExternal.cat con hashes de archivos ejecutables a partir de directorios especificados. Se usa con la marca TrustedLaunch en manifiestos de paquete disperso MSIX (AllowExternalContent) para permitir la ejecución de archivos externos no incluidos en el paquete.

function createExternalCatalog(options: CreateExternalCatalogOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
inputFolder string Lista de carpetas de entrada con archivos ejecutables que se van a procesar (separados por punto y coma)
computeFlatHashes boolean \| undefined No Incluir hashes planos cuando se genere el catálogo
ifExists IfExists \| undefined No Comportamiento cuando el archivo de salida ya existe
output string \| undefined No Ruta de acceso del archivo de catálogo de salida. Si no se especifica, se usa el nombre de CodeIntegrityExternal.cat predeterminado.
recursive boolean \| undefined No Incluir archivos de subdirectorios
usePageHashes boolean \| undefined No Incluir hashes de página al generar el catálogo

También acepta CommonOptions (quiet, verbose, cwd).


getWinappPath()

Imprima la ruta de acceso al directorio .winapp. Use --global para la ubicación de caché compartida o omita para la carpeta .winapp local del proyecto. Resulta útil para los scripts de compilación que necesitan hacer referencia a paquetes instalados.

function getWinappPath(options?: GetWinappPathOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
global boolean \| undefined No Obtener el directorio .winapp global en lugar de local

También acepta CommonOptions (quiet, verbose, cwd).


init()

Comience aquí para inicializar una aplicación de Windows con la configuración necesaria. Configura todo lo necesario para el desarrollo de aplicaciones de Windows: crea Package.appxmanifest con recursos predeterminados, descarga Windows SDK y paquetes de SDK de Aplicaciones para Windows y genera proyecciones. Cuando los paquetes del SDK se administran (--setup-sdks stable/preview/experimental), también crea winapp.yaml para anclar versiones para "restore"/"update"; con --setup-sdks none (por ejemplo, para proyectos de Rust/Tauri que traigan sus propios enlaces de SDK), no se crea ningún winapp.yaml. Interactivo de forma predeterminada (use --use-defaults para omitir mensajes). Use "restore" en su lugar si ha clonado un repositorio que ya tiene winapp.yaml. Use "manifest generate" si solo necesita un manifiesto o "cert generate" si necesita un certificado de desarrollo para la firma de código.

function init(options?: InitOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
baseDirectory string \| undefined No Directorio raíz o base para el espacio de trabajo de winapp, para su consumo o instalación.
configDir string \| undefined No Directorio para leer o almacenar la configuración (valor predeterminado: directorio actual)
configOnly boolean \| undefined No Controle solo las operaciones del archivo de configuración (cree si falta, valide si existe). Omita la instalación del paquete y otros pasos de configuración del área de trabajo.
ignoreConfig boolean \| undefined No No use el archivo de configuración para la administración de versiones
noGitignore boolean \| undefined No No actualice el archivo .gitignore
setupSdks SdkInstallMode \| undefined No Modo de instalación del SDK: "estable" (valor predeterminado), "versión preliminar", "experimental" o "none" (omitir la instalación del SDK)
useDefaults boolean \| undefined No No solicitar y usar la configuración predeterminada de todas las indicaciones

También acepta CommonOptions (quiet, verbose, cwd).


manifestAddAlias()

Agregue un alias de ejecución (uap5:AppExecutionAlias) a Package.appxmanifest. Esto permite iniciar la aplicación empaquetada desde la línea de comandos escribiendo el nombre del alias. De forma predeterminada, el alias se deduce del atributo Ejecutable (por ejemplo, $targetnametoken$.exe se convierte en $targetnametoken$.exe alias).

function manifestAddAlias(options?: ManifestAddAliasOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
appId string \| undefined No Identificador de la aplicación al cual agregar el alias (valor predeterminado: primer elemento Aplicación)
manifest string \| undefined No Ruta de acceso al archivo Package.appxmanifest o appxmanifest.xml (valor predeterminado: buscar directorio actual)
name string \| undefined No Nombre de alias (por ejemplo, "myapp.exe"). Valor predeterminado: se deduce del atributo Ejecutable en el manifiesto.

También acepta CommonOptions (quiet, verbose, cwd).


manifestGenerate()

Cree Package.appxmanifest sin configuración completa del proyecto. Úselo cuando solo necesite un manifiesto y recursos de imagen (sin SDK, sin certificado). Para la configuración completa, use "init" en su lugar. Plantillas: "empaquetadas" (MSIX completa), "dispersas" (aplicación de escritorio que necesita Windows API).

function manifestGenerate(options?: ManifestGenerateOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
directory string \| undefined No Directorio en el que se va a generar el manifiesto
description string \| undefined No Descripción comprensible de la aplicación que se muestra durante la instalación y en la Configuración de Windows
executable string \| undefined No Ruta de acceso al archivo ejecutable de la aplicación. Valor predeterminado: <nombre-paquete>.exe
ifExists IfExists \| undefined No Comportamiento cuando existe un archivo de salida: 'error' (error, valor predeterminado), 'skip' (mantener existente) o 'overwrite' (reemplazar)
logoPath string \| undefined No Ruta de acceso al archivo de imagen de logotipo
packageName string \| undefined No Nombre del paquete (valor predeterminado: nombre de carpeta)
publisherName string \| undefined No Publisher CN (valor predeterminado: CN=< usuario actual>)
template ManifestTemplates \| undefined No Tipo de plantilla de manifiesto: "empaquetado" (aplicación MSIX completa, predeterminada) o "dispersa" (aplicación de escritorio con identidad de paquete para Windows API)
version string \| undefined No Versión de la aplicación en formato Major.Minor.Build.Revision (por ejemplo, 1.0.0.0).

También acepta CommonOptions (quiet, verbose, cwd).


manifestUpdateAssets()

Genere nuevos recursos para las imágenes a las que se hace referencia en package.appxmanifest a partir de una sola imagen de origen. La imagen de origen debe tener al menos 400 x 400 píxeles.

function manifestUpdateAssets(options: ManifestUpdateAssetsOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
imagePath string Ruta de acceso al archivo de imagen de origen (SVG, PNG, ICO, JPG, BMP, GIF)
lightImage string \| undefined No Ruta de acceso a la imagen de origen para variantes de tema claro (SVG, PNG, ICO, JPG, BMP, GIF)
manifest string \| undefined No Ruta de acceso al archivo Package.appxmanifest o appxmanifest.xml (valor predeterminado: buscar directorio actual)

También acepta CommonOptions (quiet, verbose, cwd).


packageApp()

Cree el instalador de MSIX a partir de la aplicación compilada. Ejecute después de completar la construcción de la aplicación. Se requiere un manifiesto (Package.appxmanifest o appxmanifest.xml) para el empaquetado; debe estar en el directorio de trabajo actual, pasado como --manifest o estar en la carpeta de entrada. Use --cert devcert.pfx para firmar las pruebas. Ejemplo: paquete winapp ./dist --manifest Package.appxmanifest --cert ./devcert.pfx

function packageApp(options: PackageOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
inputFolder string Carpeta de entrada con estructura de paquete
cert string \| undefined No Ruta de acceso al certificado de firma (se firmará automáticamente si se proporciona)
certPassword string \| undefined No Contraseña de certificado (valor predeterminado: contraseña)
executable string \| undefined No Ruta de acceso al archivo ejecutable en relación con la carpeta de entrada.
generateCert boolean \| undefined No Generación de un nuevo certificado de desarrollo
installCert boolean \| undefined No Instalación del certificado en la máquina
manifest string \| undefined No Ruta de acceso al archivo de manifiesto appX (valor predeterminado: detección automática desde la carpeta de entrada o el directorio actual)
name string \| undefined No Nombre del paquete (valor predeterminado: del manifiesto)
output string \| undefined No Nombre de archivo msix de salida para el paquete generado (el valor predeterminado es <nombre><versión><arch>.msix, volviendo a <nombre><versión>.msix, <nombre><arch>.msix o <nombre>.msix cuando no se puede determinar versión/arch)
publisher string \| undefined No nombre de Publisher para la generación de certificados
selfContained boolean \| undefined No Incluir SDK de Aplicaciones para Windows runtime para la implementación autocontenida
skipPri boolean \| undefined No Omitir la generación de archivos PRI

También acepta CommonOptions (quiet, verbose, cwd).


restore()

Use después de clonar un repositorio o cuando falta la carpeta .winapp/. Reinstala los paquetes del SDK de winapp.yaml existentes sin cambiar las versiones. Requiere winapp.yaml (creado por "init"). Para comprobar si hay versiones más recientes del SDK, use "update" en su lugar.

function restore(options?: RestoreOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
baseDirectory string \| undefined No Directorio base o raíz para el área de trabajo de winapp
configDir string \| undefined No Directorio desde el que se va a leer la configuración (valor predeterminado: directorio actual)

También acepta CommonOptions (quiet, verbose, cwd).


run()

Crea un diseño empaquetado, registra la aplicación e inicia la aplicación empaquetada.

function run(options: RunOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
inputFolder string Carpeta de entrada que contiene la aplicación que se va a ejecutar
args string \| undefined No Argumentos de línea de comandos para pasar a la aplicación
clean boolean \| undefined No Quite los datos de aplicación del paquete existente (LocalState, settings, etc.) antes de volver a implementarlos. De forma predeterminada, los datos de la aplicación se conservan a través de las implementaciones repetidas.
debugOutput boolean \| undefined No Capture los mensajes OutputDebugString y las excepciones de primera oportunidad de la aplicación iniciada. Solo un depurador puede asociarse a un proceso a la vez, por lo que no se pueden usar simultáneamente otros depuradores (Visual Studio, VS Code). Use --no-launch en su lugar si necesita adjuntar un depurador diferente. No se puede combinar con --no-launch o --json.
detach boolean \| undefined No Inicie la aplicación y vuelva inmediatamente sin esperar a que salga. Resulta útil para la integración continua/automatización, donde se necesita interactuar con la aplicación después del inicio. Imprime el PID en stdout (o en JSON con --json).
json boolean \| undefined No Dar formato a la salida como JSON
manifest string \| undefined No Ruta de acceso al Package.appxmanifest (valor predeterminado: detección automática desde la carpeta de entrada o el directorio actual)
noLaunch boolean \| undefined No Cree solo la identidad de depuración y registre el paquete sin iniciar la aplicación.
outputAppxDirectory string \| undefined No Directorio de salida del paquete de diseño flexible. Si no se especifica, se usará un directorio denominado AppX dentro del directorio input-folder.
symbols boolean \| undefined No Descargue símbolos de Microsoft Servidor de símbolos para obtener un análisis de bloqueo nativo más completo. Solo se usa con --debug-output. En primer lugar, se descargan símbolos y se almacenan en caché localmente; Las ejecuciones posteriores usan la memoria caché.
unregisterOnExit boolean \| undefined No Anule el registro del paquete de desarrollo después de que se cierre la aplicación. Solo quita los paquetes registrados en modo de desarrollo.
withAlias boolean \| undefined No Inicie la aplicación con su alias de ejecución en lugar de la activación de AUMID. La aplicación se ejecuta en el terminal actual con stdin/stdout/stderr heredado. Requiere un uap5:ExecutionAlias en el manifiesto. Use "winapp manifest add-alias" para agregar un alias de ejecución al manifiesto.

También acepta CommonOptions (quiet, verbose, cwd).


sign()

Firma de código de un paquete MSIX o ejecutable. Ejemplo: winapp sign ./app.msix ./devcert.pfx. Use --timestamp para las compilaciones de producción para que permanezcan válidos después de que expire el certificado. El comando "package" puede firmar automáticamente con --cert.

function sign(options: SignOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
filePath string Ruta de acceso al archivo o paquete que se va a firmar
certPath string Ruta de acceso al archivo de certificado (formato PFX)
password string \| undefined No Contraseña de certificado
timestamp string \| undefined No Dirección URL del servidor de marca de tiempo

También acepta CommonOptions (quiet, verbose, cwd).


store()

Ejecute un comando de la CLI para desarrolladores de Microsoft Store. Este comando descargará la CLI para desarrolladores de Microsoft Store si aún no se ha descargado. Obtenga más información sobre la CLI para desarrolladores de Microsoft Store aquí: https://aka.ms/msstoredevcli

function store(options?: StoreOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
storeArgs string[] \| undefined No Argumentos que se pasan a la CLI del desarrollador de Microsoft Store.

También acepta CommonOptions (quiet, verbose, cwd).


tool()

Ejecute las herramientas del SDK de Windows directamente (makeappx, signtool, makepri, etc.). Descarga automáticamente las herramientas de compilación si es necesario. Para la mayoría de las tareas, prefiere comandos de nivel superior, como "package" o "sign". Ejemplo: winapp tool makeappx pack /d ./folder /p ./out.msix

function tool(options?: ToolOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
toolArgs string[] \| undefined No Argumentos para pasar a la herramienta SDK, p. ej., ['makeappx', 'pack', '/d', './folder', '/p', './out.msix'].

También acepta CommonOptions (quiet, verbose, cwd).


uiClick()

Simule el uso del mouse para hacer clic en un elemento mediante un slug o la búsqueda de texto. Funciona en elementos que no admiten InvokePattern (por ejemplo, encabezados de columna, elementos de lista). Use --double para hacer doble clic, --right para hacer clic con el botón derecho.

function uiClick(options?: UiClickOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
double boolean \| undefined No Realizar un doble clic en lugar de un solo clic
json boolean \| undefined No Dar formato a la salida como JSON
right boolean \| undefined No Realizar un clic derecho en lugar de un clic izquierdo
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiFocus()

Mueva el foco del teclado al elemento especificado mediante UIA SetFocus.

function uiFocus(options?: UiFocusOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiGetFocused()

Muestra el elemento que actualmente tiene el foco de teclado en la aplicación de destino.

function uiGetFocused(options?: UiGetFocusedOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiGetProperty()

Lee los valores de las propiedades de UIA desde un elemento. Especifique --property para especificar una sola propiedad u omítalo para todas.

function uiGetProperty(options?: UiGetPropertyOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o automationId
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
property string \| undefined No Nombre de propiedad para leer o filtrar
window number \| undefined No Ventana de destino mediante HWND (identificador estable del resultado de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiGetValue()

Lea el valor actual de un elemento. Intenta TextPattern (RichEditBox, Document), ValuePattern (TextBox, ComboBox, Slider) y luego Name (etiquetas). Uso: winapp ui get-value <selector> -a <app>

function uiGetValue(options?: UiGetValueOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o AutomationId
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiInspect()

Vea el árbol de elementos de la interfaz de usuario con identificadores semánticos, tipos de elementos, nombres y límites.

function uiInspect(options?: UiInspectOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-mini-d1a0) o texto para buscar por nombre o automationId
ancestors boolean \| undefined No Subir el árbol desde el elemento especificado hasta la raíz
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
depth number \| undefined No Profundidad de inspección de árbol
hideDisabled boolean \| undefined No Ocultar elementos deshabilitados de la salida
hideOffscreen boolean \| undefined No Ocultar elementos fuera de pantalla de la salida
interactive boolean \| undefined No Mostrar solo elementos interactivos o invocables (botones, vínculos, entradas, elementos de lista). Aumenta la profundidad predeterminada a 8.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiInvoke()

Active un elemento por slug o búsqueda de texto. Intenta InvokePattern, TogglePattern, SelectionItemPattern y ExpandCollapsePattern en orden.

function uiInvoke(options?: UiInvokeOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiListWindows()

Enumere todas las ventanas visibles con su HWND, título, proceso y tamaño. Use -a para filtrar por nombre de aplicación. Use el HWND con -w para tener como destino una ventana específica.

function uiListWindows(options?: UiListWindowsOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON

También acepta CommonOptions (quiet, verbose, cwd).


uiScreenshot()

Capture la ventana o elemento de destino como una imagen PNG. Cuando existen varias ventanas (por ejemplo, diálogos), captura cada una en un archivo independiente. Con --json, devuelve la ruta de acceso y las dimensiones del archivo. Use --capture-screen para superposiciones de ventanas emergentes.

function uiScreenshot(options?: UiScreenshotOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o automationId
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
captureScreen boolean \| undefined No Captura desde la pantalla (incluye elementos emergentes o superposiciones) en lugar de la representación de ventanas. Lleva primero la ventana al primer plano.
json boolean \| undefined No Dar formato a la salida como JSON
output string \| undefined No Guardar el resultado en la ruta del archivo (por ejemplo, captura de pantalla)
window number \| undefined No Ventana de destino mediante HWND (identificador estable desde la salida de lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiScroll()

Desplazar un elemento contenedor utilizando el método ScrollPattern. Use --direction para desplazarse incrementalmente o --to para ir a la parte superior o inferior.

function uiScroll(options?: UiScrollOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o automationId
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
direction string \| undefined No Dirección del desplazamiento: arriba, abajo, izquierda, derecha
json boolean \| undefined No Dar formato a la salida como JSON
to string \| undefined No Desplácese hasta la posición: superior, inferior
window number \| undefined No Ventana de destino mediante HWND (identificador estable a partir de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiScrollIntoView()

Desplácese el elemento especificado en el área visible mediante UIA ScrollItemPattern.

function uiScrollIntoView(options?: UiScrollIntoViewOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o por automationId.
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino mediante HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiSearch()

Busque en el árbol de elementos elementos que coincidan con una consulta de texto. Devuelve todas las coincidencias con "slugs" semánticos.

function uiSearch(options?: UiSearchOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o automationId
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
max number \| undefined No Resultados máximos de búsqueda
window number \| undefined No Ventana de destino por identificador HWND estable (procedente de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiSetValue()

Establezca un valor en un elemento mediante UIA ValuePattern. Funciona para TextBox, ComboBox, Slider y otros controles editables. Uso: winapp ui set-value <selector><valor> -a <app>

function uiSetValue(options?: UiSetValueOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-mini-d1a0) o texto para buscar por nombre o automationId
value string \| undefined No Valor que se va a establecer (texto para TextBox/ComboBox, número para Slider)
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiStatus()

Conéctese a una aplicación de destino y muestre la información de conexión.

function uiStatus(options?: UiStatusOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


uiWaitFor()

Espere a que un elemento aparezca, desaparezca o haga que una propiedad alcance un valor de destino. Sondea a intervalos de 100 ms hasta que se cumpla la condición o se agote el tiempo de espera.

function uiWaitFor(options?: UiWaitForOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
contains boolean \| undefined No Utiliza coincidencia parcial para --value en lugar de coincidencia exacta
gone boolean \| undefined No Espere a que el elemento desaparezca en lugar de aparecer
json boolean \| undefined No Dar formato a la salida como JSON
property string \| undefined No Nombre de propiedad para leer o filtrar
timeout number \| undefined No Tiempo de espera en milisegundos
value string \| undefined No Espere a que el valor del elemento sea igual a esta cadena. Usa recuperación inteligente (TextPattern -> ValuePattern -> Name). Combine con --property para comprobar una propiedad específica en su lugar.
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.

También acepta CommonOptions (quiet, verbose, cwd).


unregister()

Anula el registro de un paquete de desarrollo cargado lateralmente. Solo quita los paquetes registrados en modo de desarrollo (por ejemplo, a través de "winapp run" o "create-debug-identity").

function unregister(options?: UnregisterOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
force boolean \| undefined No Omita la comprobación del directorio install-location y anule el registro incluso si el paquete se registró desde un árbol de proyecto diferente
json boolean \| undefined No Dar formato a la salida como JSON
manifest string \| undefined No Ruta de acceso a Package.appxmanifest (valor predeterminado: detección automática desde el directorio actual)

También acepta CommonOptions (quiet, verbose, cwd).


update()

Busque e instale versiones más recientes del SDK. Actualiza winapp.yaml con las versiones más recientes y vuelve a instalar paquetes. Requiere winapp.yaml existente (creado por "init"). Use la versión preliminar de --setup-sdks para los SDK de versión preliminar. Para volver a instalar las versiones actuales sin actualizar, use "restore" en su lugar.

function update(options?: UpdateOptions): Promise<WinappResult>

Opciones:

Propiedad Tipo Obligatorio Description
setupSdks SdkInstallMode \| undefined No Modo de instalación del SDK: "estable" (valor predeterminado), "versión preliminar", "experimental" o "none" (omitir la instalación del SDK)

También acepta CommonOptions (quiet, verbose, cwd).


Funciones de utilidad

execWithBuildTools()

Ejecute un comando con la ruta de acceso del bin de BuildTools agregada al entorno PATH.

function execWithBuildTools(command: string, options?: ExecSyncOptions): string | Buffer<ArrayBufferLike>

Parámetros:

Parámetro Tipo Obligatorio Description
command string El comando para ejecutar
options ExecSyncOptions No Opciones para pasar a execSync (opcional)

Devuelve: Salida de execSync


addMsixIdentityToExe()

Agrega información de identidad de paquete de un archivo appxmanifest.xml al manifiesto incrustado de un archivo ejecutable

function addMsixIdentityToExe(exePath: string, appxManifestPath?: string | undefined, options?: MsixIdentityOptions): Promise<MsixIdentityResult>

Parámetros:

Parámetro Tipo Obligatorio Description
exePath string Ruta de acceso al archivo ejecutable
appxManifestPath string \| undefined No Ruta de acceso al archivo de appxmanifest.xml que contiene los datos de identidad del paquete
options MsixIdentityOptions No Configuración opcional

addElectronDebugIdentity()

Agrega la identidad del paquete al proceso de depuración de Electron.

function addElectronDebugIdentity(options?: MsixIdentityOptions): Promise<ElectronDebugIdentityResult>

Parámetros:

Parámetro Tipo Obligatorio Description
options MsixIdentityOptions No Opciones de configuración

clearElectronDebugIdentity()

Borra o quita la identidad del paquete del proceso de depuración de Electron restaurando desde la copia de seguridad.

function clearElectronDebugIdentity(options?: MsixIdentityOptions): Promise<ClearElectronDebugIdentityResult>

Parámetros:

Parámetro Tipo Obligatorio Description
options MsixIdentityOptions No Opciones de configuración

getGlobalWinappPath()

Obtener la ruta de acceso al directorio .winapp global

function getGlobalWinappPath(): string

Devuelve: La ruta completa de acceso al directorio global .winapp


getLocalWinappPath()

Obtener la ruta de acceso al directorio .winapp local

function getLocalWinappPath(): string

Devuelve: La ruta de acceso completa al directorio .winapp del sistema local


comandos de la CLI de Node.js

Estos comandos están disponibles exclusivamente a través de npx winapp node <subcommand> y no se exportan como funciones programáticas.

node create-addon

Generar archivos de add-on nativos para un proyecto Electron. Admite plantillas de C++ (node-gyp) y C# (node-api-dotnet).

npx winapp node create-addon [options]

Opciones:

Flag Description
--name <name> Nombre del complemento (el valor predeterminado depende de la plantilla)
--template <type> Plantilla de complemento: cpp o cs (valor predeterminado: cpp)
--verbose Habilitar salida detallada

Nota: Debe ejecutarse desde la raíz de un proyecto electron (directorio que contiene package.json).

Ejemplos:

npx winapp node create-addon
npx winapp node create-addon --name myAddon
npx winapp node create-addon --template cs --name MyCsAddon

node add-electron-debug-identity

Agregue la identidad del paquete al proceso de depuración de Electron utilizando el empaquetado disperso. Crea una copia de seguridad de electron.exe, genera un manifiesto MSIX disperso, agrega identidad al ejecutable y registra el paquete disperso. Requiere un Package.appxmanifest (cree uno con winapp init o winapp manifest generate).

npx winapp node add-electron-debug-identity [options]

Opciones:

Flag Description
--manifest <path> Ruta de acceso personalizada a Package.appxmanifest (valor predeterminado: Package.appxmanifest en el directorio actual)
--no-install No instale el paquete después de la creación
--keep-identity Mantenga la identidad del manifiesto tal como está, sin anexar el sufijo .debug
--verbose Habilitar salida detallada

Nota: Debe ejecutarse desde la raíz de un proyecto electron (directorio que contiene node_modules/electron). Para deshacer, use npx winapp node clear-electron-debug-identity.

Ejemplos:

npx winapp node add-electron-debug-identity
npx winapp node add-electron-debug-identity --manifest ./custom/Package.appxmanifest

node clear-electron-debug-identity

Elimine la identidad del paquete en el proceso de depuración de Electron. Restaura electron.exe a partir de la copia de seguridad creada por add-electron-debug-identity y elimina los archivos de copia de seguridad.

npx winapp node clear-electron-debug-identity [options]

Opciones:

Flag Description
--verbose Habilitar salida detallada

Nota: Debe ejecutarse desde la raíz de un proyecto electron (directorio que contiene node_modules/electron).

Ejemplos:

npx winapp node clear-electron-debug-identity

Referencia de tipos

ExecSyncOptions

Se ha vuelto a exportar desde Node.js para mayor comodidad. Consulte Node.js documentos.

MsixIdentityOptions

Propiedad Tipo Obligatorio Description
verbose boolean \| undefined No
noInstall boolean \| undefined No
keepIdentity boolean \| undefined No
manifest string \| undefined No

MsixIdentityResult

Propiedad Tipo Obligatorio Description
success boolean

ElectronDebugIdentityResult

Propiedad Tipo Obligatorio Description
success boolean
electronExePath string
backupPath string
manifestPath string
assetsDir string

ClearElectronDebugIdentityResult

Propiedad Tipo Obligatorio Description
success boolean
electronExePath string
restoredFromBackup boolean

CallWinappCliOptions

Propiedad Tipo Obligatorio Description
exitOnError boolean \| undefined No

CallWinappCliResult

Propiedad Tipo Obligatorio Description
exitCode number

CallWinappCliCaptureOptions

Propiedad Tipo Obligatorio Description
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd())

CallWinappCliCaptureResult

Propiedad Tipo Obligatorio Description
exitCode number
stdout string
stderr string

GenerateCppAddonOptions

Propiedad Tipo Obligatorio Description
name string \| undefined No
projectRoot string \| undefined No
verbose boolean \| undefined No

GenerateCppAddonResult

Propiedad Tipo Obligatorio Description
success boolean
addonName string
addonPath string
needsTerminalRestart boolean
files string[]

GenerateCsAddonOptions

Propiedad Tipo Obligatorio Description
name string \| undefined No
projectRoot string \| undefined No
verbose boolean \| undefined No

GenerateCsAddonResult

Propiedad Tipo Obligatorio Description
success boolean
addonName string
addonPath string
needsTerminalRestart boolean
files string[]

IfExists

Valores IfExists.

type IfExists = "error" | "overwrite" | "skip"

SdkInstallMode

Valores de SdkInstallMode.

type SdkInstallMode = "stable" | "preview" | "experimental" | "none"

ManifestTemplates

Valores de ManifestTemplates.

type ManifestTemplates = "packaged" | "sparse"

CertGenerateOptions

Propiedad Tipo Obligatorio Description
exportCer boolean \| undefined No Exportar un archivo .cer (solo clave pública) junto con el archivo .pfx
ifExists IfExists \| undefined No Comportamiento cuando existe un archivo de salida: 'error' (error, valor predeterminado), 'skip' (mantener existente) o 'overwrite' (reemplazar)
install boolean \| undefined No Instale el certificado en el almacén del equipo local después de generarlo
json boolean \| undefined No Dar formato a la salida como JSON
manifest string \| undefined No Ruta de acceso al archivo Package.appxmanifest o appxmanifest.xml para extraer información del publicador
output string \| undefined No Ruta de acceso de salida para el archivo PFX generado
password string \| undefined No Contraseña del archivo PFX generado
publisher string \| undefined No Nombre del editor para el certificado generado. Si no se especifica, se deducirá del manifiesto.
validDays number \| undefined No Número de días que el certificado es válido
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

CertInfoOptions

Propiedad Tipo Obligatorio Description
certPath string Ruta de acceso al archivo de certificado (PFX)
json boolean \| undefined No Dar formato a la salida como JSON
password string \| undefined No Contraseña del archivo PFX
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

CertInstallOptions

Propiedad Tipo Obligatorio Description
certPath string Ruta de acceso al archivo de certificado (PFX o CER)
force boolean \| undefined No Forzar la instalación incluso si el certificado ya existe
password string \| undefined No Contraseña del archivo PFX
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

CreateDebugIdentityOptions

Propiedad Tipo Obligatorio Description
entrypoint string \| undefined No Ruta de acceso al .exe que deberá ejecutarse con una identidad o mediante un script de punto de entrada.
keepIdentity boolean \| undefined No Mantenga la identidad del paquete del manifiesto as-is, sin anexar '.debug' al nombre del paquete y al identificador de la aplicación.
manifest string \| undefined No Ruta de acceso a Package.appxmanifest o appxmanifest.xml
noInstall boolean \| undefined No No instale el paquete después de la creación.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

CreateExternalCatalogOptions

Propiedad Tipo Obligatorio Description
inputFolder string Lista de carpetas de entrada con archivos ejecutables que se van a procesar (separados por punto y coma)
computeFlatHashes boolean \| undefined No Incluir hashes planos al generar el catálogo
ifExists IfExists \| undefined No Comportamiento cuando el archivo de salida ya existe
output string \| undefined No Ruta de acceso del archivo de catálogo de salida. Si no se especifica, se usa el nombre de CodeIntegrityExternal.cat predeterminado.
recursive boolean \| undefined No Incluir archivos de subdirectorios
usePageHashes boolean \| undefined No Incluir hashes de página al generar el catálogo
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

GetWinappPathOptions

Propiedad Tipo Obligatorio Description
global boolean \| undefined No Obtener el directorio .winapp global en lugar de local
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

InitOptions

Propiedad Tipo Obligatorio Description
baseDirectory string \| undefined No Directorio base o raíz para el área de trabajo de winapp, para su consumo o instalación.
configDir string \| undefined No Directorio para leer o almacenar la configuración (valor predeterminado: directorio actual)
configOnly boolean \| undefined No Solo maneje las operaciones del archivo de configuración (crear si falta, validar si existe). Omita la instalación del paquete y otros pasos de configuración del área de trabajo.
ignoreConfig boolean \| undefined No No use el archivo de configuración para la administración de versiones
noGitignore boolean \| undefined No No actualice el archivo .gitignore
setupSdks SdkInstallMode \| undefined No Modo de instalación del SDK: "estable" (valor predeterminado), "versión preliminar", "experimental" o "none" (omitir la instalación del SDK)
useDefaults boolean \| undefined No No solicitar y usar la configuración predeterminada de todas las indicaciones
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

ManifestAddAliasOptions

Propiedad Tipo Obligatorio Description
appId string \| undefined No ID de aplicación al que agregar el alias (valor predeterminado: primer elemento de aplicación)
manifest string \| undefined No Ruta de acceso al archivo Package.appxmanifest o appxmanifest.xml (valor predeterminado: buscar directorio actual)
name string \| undefined No Nombre de alias (por ejemplo, "myapp.exe"). Valor predeterminado: se deduce del atributo Ejecutable en el manifiesto.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

ManifestGenerateOptions

Propiedad Tipo Obligatorio Description
directory string \| undefined No Directorio en el que se va a generar el manifiesto
description string \| undefined No Descripción legible de la aplicación que se muestra durante la instalación y en la Configuración de Windows.
executable string \| undefined No Ruta de acceso al archivo ejecutable de la aplicación. Valor predeterminado: <nombre-paquete>.exe
ifExists IfExists \| undefined No Comportamiento cuando existe un archivo de salida: 'error' (error, valor predeterminado), 'skip' (mantener existente) o 'overwrite' (reemplazar)
logoPath string \| undefined No Ruta de acceso al archivo de imagen de logotipo
packageName string \| undefined No Nombre del paquete (valor predeterminado: nombre de carpeta)
publisherName string \| undefined No Publisher CN (valor predeterminado: CN=< usuario actual>)
template ManifestTemplates \| undefined No Tipo de plantilla de manifiesto: "empaquetado" (aplicación MSIX completa, predeterminada) o "dispersa" (aplicación de escritorio con identidad de paquete para Windows API)
version string \| undefined No Versión de la aplicación en formato Major.Minor.Build.Revision (por ejemplo, 1.0.0.0).
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

ManifestUpdateAssetsOptions

Propiedad Tipo Obligatorio Description
imagePath string Ruta de acceso al archivo de imagen de origen (SVG, PNG, ICO, JPG, BMP, GIF)
lightImage string \| undefined No Ruta de acceso a la imagen de origen para variantes de tema claro (SVG, PNG, ICO, JPG, BMP, GIF)
manifest string \| undefined No Ruta de acceso al archivo Package.appxmanifest o appxmanifest.xml (valor predeterminado: buscar directorio actual)
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

PackageOptions

Propiedad Tipo Obligatorio Description
inputFolder string Carpeta de entrada con diseño de paquete
cert string \| undefined No Ruta de acceso al certificado de firma (se firmará automáticamente si se proporciona)
certPassword string \| undefined No Contraseña de certificado (valor predeterminado: contraseña)
executable string \| undefined No Ruta de acceso al archivo ejecutable en relación con la carpeta de entrada.
generateCert boolean \| undefined No Generación de un nuevo certificado de desarrollo
installCert boolean \| undefined No Instalación del certificado en la máquina
manifest string \| undefined No Ruta de acceso al archivo de manifiesto appX (valor predeterminado: detección automática desde la carpeta de entrada o el directorio actual)
name string \| undefined No Nombre del paquete (valor predeterminado: del manifiesto)
output string \| undefined No Nombre de archivo msix de salida para el paquete generado (el valor predeterminado es <name><version><arch>.msix, volviendo al <name><version>.msix, <name><arch>.msix o <name>.msix cuando no se puede determinar la versión/el archivo)
publisher string \| undefined No nombre de Publisher para la generación de certificados
selfContained boolean \| undefined No Incluir el entorno de ejecución de SDK de Aplicaciones para Windows para un despliegue autónomo
skipPri boolean \| undefined No Omitir la generación de archivos PRI
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

RestoreOptions

Propiedad Tipo Obligatorio Description
baseDirectory string \| undefined No Directorio base o raíz para el área de trabajo de winapp
configDir string \| undefined No Directorio desde el que se va a leer la configuración (valor predeterminado: directorio actual)
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

RunOptions

Propiedad Tipo Obligatorio Description
inputFolder string Carpeta de entrada que contiene la aplicación que se va a ejecutar
args string \| undefined No Argumentos de línea de comandos para pasar a la aplicación
clean boolean \| undefined No Quite los datos de aplicación del paquete existente (LocalState, settings, etc.) antes de volver a implementarlos. De forma predeterminada, los datos de la aplicación se conservan en las re-implementaciones.
debugOutput boolean \| undefined No Capture los mensajes OutputDebugString y las excepciones de primera oportunidad de la aplicación iniciada. Solo un depurador puede asociarse a un proceso a la vez, por lo que no se pueden usar simultáneamente otros depuradores (Visual Studio, VS Code). Utilice --no-launch en su lugar si necesita conectar un depurador diferente. No se puede combinar con --no-launch o --json.
detach boolean \| undefined No Inicie la aplicación y vuelva inmediatamente sin esperar a que salga. Resulta útil para CI/automatización dónde se necesita interactuar con la aplicación después de su lanzamiento. Imprime el PID en stdout (o en JSON con --json).
json boolean \| undefined No Dar formato a la salida como JSON
manifest string \| undefined No Ruta de acceso al Package.appxmanifest (valor predeterminado: detección automática desde la carpeta de entrada o el directorio actual)
noLaunch boolean \| undefined No Cree solo la identidad de depuración y registre el paquete sin iniciar la aplicación.
outputAppxDirectory string \| undefined No Directorio de salida del paquete de diseño flexible. Si no se especifica, se usará un directorio denominado AppX dentro del directorio input-folder.
symbols boolean \| undefined No Descargue símbolos desde Microsoft Symbol Server para un análisis más completo de fallos nativos. Solo se usa con --debug-output. En primer lugar, se descargan símbolos y se almacenan en caché localmente; Las ejecuciones posteriores usan la memoria caché.
unregisterOnExit boolean \| undefined No Anule el registro del paquete de desarrollo después de que se cierre la aplicación. Solo quita los paquetes registrados en modo de desarrollo.
withAlias boolean \| undefined No Inicie la aplicación con su alias de ejecución en lugar de la activación de AUMID. La aplicación se ejecuta en el terminal actual con stdin/stdout/stderr heredado. Requiere uap5:ExecutionAlias en el manifiesto. Use "winapp manifest add-alias" para agregar un alias de ejecución al manifiesto.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

SignOptions

Propiedad Tipo Obligatorio Description
filePath string Ruta de acceso al archivo o paquete que se va a firmar
certPath string Ruta de acceso al archivo de certificado (formato PFX)
password string \| undefined No Contraseña de certificado
timestamp string \| undefined No Dirección URL del servidor de marca de tiempo
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

StoreOptions

Propiedad Tipo Obligatorio Description
storeArgs string[] \| undefined No Argumentos que se pasan a la CLI del desarrollador de Microsoft Store.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

ToolOptions

Propiedad Tipo Obligatorio Description
toolArgs string[] \| undefined No Argumentos para pasar a la herramienta SDK, p. ej., ['makeappx', 'pack', '/d', './folder', '/p', './out.msix'].
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiClickOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o automationId
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
double boolean \| undefined No Realizar un doble clic en lugar de un solo clic
json boolean \| undefined No Dar formato a la salida como JSON
right boolean \| undefined No Realizar un clic derecho en lugar de un clic izquierdo
window number \| undefined No Ventana de destino con HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiFocusOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o por Id de automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable proveniente de la salida de lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiGetFocusedOptions

Propiedad Tipo Obligatorio Description
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino mediante HWND (identificador estable desde la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiGetPropertyOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para realizar búsquedas por nombre o por automationId
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
property string \| undefined No Nombre de propiedad para leer o filtrar
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiGetValueOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiInspectOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
ancestors boolean \| undefined No Subir el árbol desde el elemento especificado hasta la raíz
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
depth number \| undefined No Profundidad de inspección de árbol
hideDisabled boolean \| undefined No Ocultar elementos deshabilitados de la salida
hideOffscreen boolean \| undefined No Ocultar elementos fuera de pantalla de la salida
interactive boolean \| undefined No Mostrar solo elementos interactivos o invocables (botones, vínculos, entradas, elementos de lista). Aumenta la profundidad predeterminada a 8.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiInvokeOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiListWindowsOptions

Propiedad Tipo Obligatorio Description
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiScreenshotOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
captureScreen boolean \| undefined No Captura desde la pantalla (incluye elementos emergentes o superposiciones) en lugar de la representación de ventanas. Lleva primero la ventana al primer plano.
json boolean \| undefined No Dar formato a la salida como JSON
output string \| undefined No Guardar el resultado en la ruta del archivo (por ejemplo, captura de pantalla)
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiScrollOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
direction string \| undefined No Dirección del desplazamiento: arriba, abajo, izquierda, derecha
json boolean \| undefined No Dar formato a la salida como JSON
to string \| undefined No Desplácese hasta la posición: superior, inferior
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiScrollIntoViewOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiSearchOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
max number \| undefined No Resultados máximos de búsqueda
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiSetValueOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
value string \| undefined No Valor que se va a establecer (texto para TextBox/ComboBox, número para Slider)
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiStatusOptions

Propiedad Tipo Obligatorio Description
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
json boolean \| undefined No Dar formato a la salida como JSON
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UiWaitForOptions

Propiedad Tipo Obligatorio Description
selector string \| undefined No Slug semántico (por ejemplo, btn-minimize-d1a0) o texto para buscar por nombre o Id de Automatización
app string \| undefined No Aplicación de destino (nombre de proceso, título de ventana o PID). Muestra ventanas si son ambiguas.
contains boolean \| undefined No Utiliza coincidencia parcial para --value en lugar de coincidencia exacta
gone boolean \| undefined No Espere a que el elemento desaparezca en lugar de aparecer
json boolean \| undefined No Dar formato a la salida como JSON
property string \| undefined No Nombre de propiedad para leer o filtrar
timeout number \| undefined No Tiempo de espera en milisegundos
value string \| undefined No Espere a que el valor del elemento sea igual a esta cadena. Usa recuperación inteligente (TextPattern -> ValuePattern -> Name). Combine con --property para comprobar una propiedad específica en su lugar.
window number \| undefined No Ventana de destino por HWND (identificador estable de la salida de la lista). Tiene prioridad sobre --app.
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UnregisterOptions

Propiedad Tipo Obligatorio Description
force boolean \| undefined No Omita la comprobación del directorio install-location y anule el registro incluso si el paquete se registró desde un árbol de proyecto diferente
json boolean \| undefined No Dar formato a la salida como JSON
manifest string \| undefined No Ruta de acceso a Package.appxmanifest (valor predeterminado: detección automática desde el directorio actual)
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).

UpdateOptions

Propiedad Tipo Obligatorio Description
setupSdks SdkInstallMode \| undefined No Modo de instalación del SDK: "estable" (valor predeterminado), "versión preliminar", "experimental" o "none" (omitir la instalación del SDK)
quiet boolean \| undefined No Suprima los mensajes de progreso.
verbose boolean \| undefined No Habilite la salida detallada.
cwd string \| undefined No Directorio de trabajo para el proceso de la CLI (el valor predeterminado es process.cwd()).