UltraGX Manual do UltraGX Baixar PDF

Linha de comando

Tudo o que o aplicativo faz é executado pelo motor, ultragx-engine, que também pode ser usado diretamente em um terminal: para automatizar a documentação de várias KBs, agendá-la em um servidor ou integrá-la a um processo de integração contínua. Ele usa a mesma licença do aplicativo.

Onde está o motor

SistemaCaminho
Windows (instalador)%LOCALAPPDATA%\Programs\UltraGX\ultragx-engine.exe
Linux (deb / rpm)/opt/ultragx/ultragx-engine
Linux (AppImage)./UltraGX-<versão>-x86_64.AppImage engine <comando> …
macOS/Applications/UltraGX.app/Contents/MacOS/ultragx-engine

Nos exemplos é usado ultragx-engine; substitua pelo caminho correspondente ou adicione a pasta ao PATH.

Comandos

version e machine-id

ultragx-engine version       # versão do motor
ultragx-engine machine-id    # id da máquina, para pedir uma licença vinculada a ela

license

ultragx-engine license                                   # status da licença, em JSON
ultragx-engine license activate --code ULGX-XXXX-XXXX    # ativa uma licença com um código

A demo também pode ser pedida sem o aplicativo, em duas etapas:

ultragx-engine license register --first-name Ana --last-name Souza --company "Minha Empresa Ltda." \
    --email ana.souza@minhaempresa.com.br --gx-version 18 --kb-size 3000 --lang pt-BR
ultragx-engine license confirm --email ana.souza@minhaempresa.com.br --code 123456

pipeline

Documenta uma KB a partir de um export.

ultragx-engine pipeline --source xpz --input C:/exports/MinhaKB.xpz --out D:/ultragx/MinhaKB --lang pt-BR
ultragx-engine pipeline --source gxtext --input D:/exports/MinhaKB_texto --out D:/ultragx/MinhaKB --lang pt-BR --no-ref
OpçãoDescrição
--sourcexpz (arquivo .xpz ou .xml) ou gxtext (pasta com src/ e ref/)
--inputarquivo ou pasta de entrada
--outpasta do projeto (é criada se não existir)
--langidioma dos documentos: en, es ou pt-BR
--no-refcom gxtext, ignora os objetos de módulos referenciados
--no-viewernão gera o visualizador (mais rápido; pode ser gerado depois)

O progresso é escrito na saída de erro e, ao terminar, o resumo da execução sai em JSON na saída padrão.

export

Abre uma KB com o GeneXus instalado (somente Windows, com o conector), a exporta para texto e executa o pipeline.

ultragx-engine export --kb-path "C:/Models/MinhaKB" --kb MinhaKB --out D:/ultragx/MinhaKB --lang pt-BR
OpçãoDescrição
--kb-pathpasta da KB (a que contém o .gxw)
--kbnome curto da KB
--outpasta do projeto
--gx-versionforça uma instalação do GeneXus (18, 17, XEv3…); por padrão é deduzida da KB
--namesexporta só alguns objetos: nomes ou seletores como type:Transaction
--no-referenceignora os módulos referenciados
--skip-pipelinesó exporta, sem documentar
--timeouttempo máximo da exportação em segundos (3600 por padrão)
--lang, --no-viewerigual a pipeline

viewer

Regenera o visualizador de um projeto sem analisar a KB de novo.

ultragx-engine viewer --out D:/ultragx/MinhaKB --lang pt-BR

narrative

Executa a narrativa com IA sobre um projeto já documentado. Na linha de comando, as credenciais são obtidas de variáveis de ambiente: ANTHROPIC_API_KEY para a Anthropic, OPENAI_API_KEY (e OPENAI_BASE_URL para outro servidor) para os provedores compatíveis com OpenAI, incluindo Gemini, OpenRouter e os modelos locais.

export OPENAI_API_KEY=...        # no PowerShell: $env:OPENAI_API_KEY = "..."
ultragx-engine narrative run --out D:/ultragx/MinhaKB --provider openai \
    --base-url https://generativelanguage.googleapis.com/v1beta/openai/ --model gemini-3.8-flash \
    --lang pt-BR --concurrency 8
OpçãoDescrição
--provideranthropic, openai (qualquer servidor compatível) ou mock
--model, --base-urlmodelo e URL do servidor
--langidioma da prosa
--concurrencyobjetos em paralelo (4 por padrão)
--typessó estes tipos, separados por vírgula
--all-typesinclui também as declarações (atributos, domínios, SDTs…)
--onlysó estes objetos, por <Tipo>.<Nome> separados por vírgula
--limitquantidade máxima de objetos
--no-resumeprocessa novamente objetos já narrados
--max-doc-charscaracteres do documento enviados (60.000 por padrão; 16.000 com um servidor local se não for indicado)
--no-sourcenão envia o código GeneXus original ao modelo
--timeoutsegundos de espera por resposta (300 por padrão)
--viewer-everysegundos entre regenerações do visualizador durante a execução (600 por padrão; 0 = só no final)

notes

Adiciona ou exclui notas do usuário sem o aplicativo.

ultragx-engine notes add    --out D:/ultragx/MinhaKB --json nota.json
ultragx-engine notes delete --out D:/ultragx/MinhaKB --stem Procedure.CalcularDescuento --id n171234567890000
ultragx-engine notes apply  --out D:/ultragx/MinhaKB

nota.json tem o formato {"stems": ["Procedure.CalcularDescuento"], "text": "…", "author": "Ana"}. apply reincorpora todas as notas aos documentos.

Códigos de saída

CódigoSignificado
0terminou bem
1a narrativa terminou com objetos em error
2uso incorreto (comando ou opções inválidos) ou, em export, não foi possível abrir a KB
3licença ausente, inválida, vencida ou revogada

Exemplo: documentar todas as KBs de uma pasta

$engine = "$env:LOCALAPPDATA\Programs\UltraGX\ultragx-engine.exe"
Get-ChildItem D:\exports\*.xpz | ForEach-Object {
    & $engine pipeline --source xpz --input $_.FullName --out "D:\ultragx\$($_.BaseName)" --lang pt-BR
    if ($LASTEXITCODE -ne 0) { Write-Warning "$($_.Name) terminou com código $LASTEXITCODE" }
}