Aller au contenu
An abstract 8-bit style illustration depicts a colorful terminal window featuring a simple gear, a cloud, and a document icon, all rendered in bold, flat geometric shapes. Multiple file icons with glowing outlines overlap each other, accompanied by a small branching arrow symbolizing a pipeline, and a stylized folder icon. The color palette uses five distinct, bold corporate colors, and the image is strictly 2D, without background, text, shadows, or gradients. The layout is compact, sized at 128 by 128 pixels.

Exécuter

AI generated translation.

Exécute un script sur des fichiers et transmet la sortie du LLM vers stdout ou un dossier à partir de la racine de l’espace de travail.

Fenêtre de terminal
npx genaiscript run <script> "<files...>"

<script> est l’identifiant ou le chemin du fichier de l’outil à exécuter, et <files...> est le nom du fichier de spécification sur lequel l’exécuter.

Les fichiers peuvent également inclure des motifs glob.

Fenêtre de terminal
npx genaiscript run code-annotator "src/*.ts"

Si plusieurs fichiers sont spécifiés, tous les fichiers sont inclus dans env.files.

Fenêtre de terminal
npx genaiscript run <script> "src/*.bicep" "src/*.ts"

run accepte un ou plusieurs motifs glob pour faire correspondre les fichiers dans l’espace de travail.

Fenêtre de terminal
npx genaiscript run <script> "**/*.md" "**/*.ts"

GenAIScript gérera et résoudra automatiquement certains motifs d’URI spécifiques.

  • file:// - fichier local
  • https://github.com/<owner>/<repo>/blob/<branch>/<path> - fichier GitHub
  • https://github.com/<owner>/<repo>.git/<file glob> - dépôt GitHub et motif de fichiers
  • gist://id/<file glob> - GitHub Gist et motif de fichiers
  • https://gist.github.com/<owner>/<id>/<file glob> - GitHub Gist et motif de fichiers
  • git://<owner>/<repo>.git/<file glob> - dépôt Git et motif de fichiers

run prend le contenu de stdin et le convertit en fichier stdin.
La sortie du LLM est envoyée vers stdout, tandis que le reste des journaux est envoyé vers stderr.

Fenêtre de terminal
cat README.md | genaiscript run summarize > summary.md

Exclut les fichiers spécifiés de l’ensemble de fichiers.

Fenêtre de terminal
npx genaiscript run <script> <files> --excluded-files <excluded-files...>

Exclut les fichiers ignorés par le fichier .gitignore à la racine de l’espace de travail.

Fenêtre de terminal
npx genaiscript run <script> <files> --exclude-git-ignore

Configure l’alias du modèle par défaut ou large. Utilisez echo pour une exécution à blanc et retourner les messages au lieu d’appeler un fournisseur LLM.

Charge un ensemble d’alias de modèles pour le fournisseur LLM donné.

Remplit les valeurs dans la carte env.vars qui peuvent être utilisées lors de l’exécution de l’invite.

Sauvegarde les résultats dans un fichier JSON, ainsi que les fichiers markdown de la sortie et de la trace.

Fenêtre de terminal
npx genaiscript run <script> <files> --out out/res.json

Si file ne se termine pas par .json, le chemin est considéré comme un chemin de répertoire.

Fenêtre de terminal
npx genaiscript run <script> <files> --out tmp

Sort la réponse complète au format JSON vers stdout.

Enregistre la trace en markdown dans le fichier spécifié.

Fenêtre de terminal
npx genaiscript run <script> <files> --out-trace file

Dans un workflow GitHub Actions, vous pouvez utiliser cette fonction pour sauvegarder la trace comme résumé d’étape (GITHUB_STEP_SUMMARY) :

.github/workflows/genaiscript.yml
- name: Run GenAIScript tool on spec
run: |
genaiscript run <script> <files> --out-trace $GITHUB_STEP_SUMMARY

Dans Azure DevOps, vous pouvez utiliser la task.uploadSummary dans votre pipeline pour téléverser la trace en tant que résumé.

genaiscript.pipeline.yml
- script: npx --yes genaiscript run poem --out-trace $(System.DefaultWorkingDirectory)/trace.md
displayName: "Run GenAIScript tool"
continueOnError: true
- script: echo "##vso[task.uploadsummary]$(System.DefaultWorkingDirectory)/trace.md"
displayName: "append readme to pipeline report"

Émet les annotations dans le fichier spécifié comme un tableau JSON, JSON Lines, SARIF ou un fichier CSV si le fichier se termine par .csv.

Fenêtre de terminal
npx genaiscript run <script> <files> --out-annotations diags.csv

Utilisez JSON lines (.jsonl) pour agréger les annotations de plusieurs exécutions dans un seul fichier.

Fenêtre de terminal
npx genaiscript run <script> <files> --out-annotations diags.jsonl

Émet les données analysées au format JSON, YAML ou JSONL. Si un schéma JSON est spécifié et disponible, le résultat de la validation JSON est également enregistré.

Fenêtre de terminal
npx genaiscript run <script> <files> --out-data data.jsonl

Émet les journaux des modifications dans le fichier spécifié en texte.

Fenêtre de terminal
npx genaiscript run <script> <files> --out-changelogs changelogs.txt

Demandes de tirage et problèmes Le CLI peut mettre à jour la description et les commentaires d’une demande de tirage/problème lorsqu’il s’exécute dans une action GitHub ou un pipeline Azure DevOps.

Section intitulée « Demandes de tirage et problèmes Le CLI peut mettre à jour la description et les commentaires d’une demande de tirage/problème lorsqu’il s’exécute dans une action GitHub ou un pipeline Azure DevOps. »

La CLI peut mettre à jour une description et des commentaires de pull request/issue lorsqu’elle est exécutée dans un GitHub Action ou un pipeline Azure DevOps.

Mettez à jour votre configuration de workflow pour inclure ce qui suit :

  • ajoutez la permission pull-requests: write au workflow/étape
permissions:
pull-requests: write
  • définissez le secret GITHUB_TOKEN dans env lors de l’exécution de la CLI
- run: npx --yes genaiscript run ... --pull-request-comment --out-trace $GITHUB_STEP_SUMMARY
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
... # LLM secrets
  • ajoutez <votre nom de projet> Build Service dans le rôle Collaborateur au dépôt
  • passez les secrets aux scripts, y compris System.AccessToken
- script: npx genaiscript run ... --pull-request-description
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
... # LLM secrets

Lorsqu’il est exécuté dans un GitHub Action ou un pipeline Azure DevOps sur une pull request, la CLI insère la sortie du LLM dans la description de la pull request (exemple)

Fenêtre de terminal
npx genaiscript run ... --pull-request-description

Le paramètre tag est un identifiant unique utilisé pour différencier les descriptions générées par différentes exécutions. La valeur par défaut est l’identifiant du script.

Met à jour ou ajoute un commentaire sur la pull request/issue avec la sortie du LLM (exemple)

Fenêtre de terminal
npx genaiscript run ... --pull-request-comment

Le paramètre tag est un identifiant unique utilisé pour différencier les descriptions générées par différentes exécutions. La valeur par défaut est l’identifiant du script.

Crée des commentaires de revue de pull request à partir de chaque annotation (exemple).

Fenêtre de terminal
npx genaiscript run ... --pull-request-reviews

La liste complète des options est disponible dans la référence CLI.