Referência

CLI e verificação no CI

O promptflow roda o motor offline com contagens exatas de tokens da OpenAI. Todo comando lê um arquivo ou a entrada padrão (-) e aceita --json para saída legível por máquina.

Instalação

O pacote npm @promptflow/cli ainda não foi publicado. Compile-o a partir de uma cópia do repositório do PromptFlowEngine:
shell
# from the root of your PromptFlowEngine checkout
corepack enable && pnpm install
pnpm --filter @promptflow/engine build && pnpm --filter @promptflow/cli build
alias promptflow="node $PWD/packages/cli/dist/cli.js"

Comandos

ComandoO que fazCódigo de saída
analyze <file>Qualidade, dimensões, achados, tokens, intenção0
optimize <file>Otimização verificada. --mode, --goal, --budget, --write0
validate <file>Somente achados1 em qualquer achado crítico
compare <a> <b>Diferença de tokens, qualidade e achados0
tokens <file>Contagem e custo de entrada estimado (--model)0
scan <file>Risco de injeção, dados sensíveis, variáveis sem delimitação1 em um achado de segurança crítico
sanitize <file>Imprime o texto com os valores sensíveis substituídos0
check <glob…>Verificação de CI sobre arquivos de prompts1 se algum arquivo falhar
modelsCatálogo de modelos e preços de referência0

A verificação check

Um arquivo falha quando sua qualidade está abaixo de --min-score, seus tokens passam de --max-tokens ou ele tem um achado igual ou acima de --fail-on (padrão critical, então chaves vazadas sempre falham). As configurações podem ficar em .promptflowrc.json na raiz do repositório:

.promptflowrc.json
{
  "include": ["prompts/**/*.md", "src/**/*.prompt.txt"],
  "model": "gpt-4.1",
  "minScore": 70,
  "maxTokens": 2000,
  "failOn": "critical",
  "ignore": ["missing_length_guidance"]
}
.github/workflows/prompts.yml
name: Prompt quality
on: [pull_request]
jobs:
  prompts:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 22 }
      # Until @promptflow/cli is on npm, make the built CLI available to the job
      # (see Install above), for example as a vendored copy in tools/promptflow.
      - run: node tools/promptflow/cli.js check

Os globs são resolvidos em relação ao diretório de trabalho e ignoram node_modules, .git e a saída de build.