CommunityRédaction et éditiongithub.com

thebitanpaul/VERA

Réponse et recherche explicites par version – VERA répond aux questions d'un coordinateur d'essai clinique sur ce qu'exige actuellement un protocole, en utilisant uniquement la version en vigueur aujourd'hui, et s'abstient plutôt que de deviner si le protocole ne couvre pas la question.

Qu'est-ce que VERA ?

VERA est une compétence d'agent IA qui répond aux questions sur les protocoles d'essais cliniques en accédant localement à l'outil VERA (`python -m vera`). Son objectif principal est de garantir que les réponses proviennent exclusivement de la version actuelle du protocole, évitant ainsi les hallucinations ou l'utilisation de connaissances générales non autorisées. La compétence est conçue pour les agents fonctionnant dans des environnements comme Claude Code, Cursor ou Codex, et s'intègre à une base de données de protocoles ingérés. Lorsqu'un coordinateur pose une question (par exemple, sur les médicaments autorisés, les périodes de sevrage ou les changements de version), VERA détermine la version gouvernante, extrait les sections pertinentes et fournit une réponse avec des citations ou s'abstient si les preuves sont insuffisantes. En cas d'abstention, l'agent demande au coordinateur s'il souhaite escalader le problème via Azure DevOps (ou un fichier JSON local). La compétence insiste sur la transparence, en conservant toujours la version, la section et la date d'effet dans la réponse, et en divulguant tout changement entre les versions. Elle inclut également des mécanismes de repli (modèle déterministe par défaut, clé API Gemini ou Anthropic optionnelle).

Compatible avec✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add thebitanpaul/VERA

Installed? Explore more Rédaction et édition skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Q&R sur le protocole (VERA)

Cette compétence répond aux questions sur le protocole en exécutant l'outil local VERA (python -m vera). Vous ne devez pas répondre aux questions sur le protocole à partir de vos propres connaissances. Relayez uniquement ce que VERA renvoie. VERA lit les documents du protocole ingérés, détermine quelle version est actuellement en vigueur pour l'essai, extrait les sections pertinentes, et soit répond avec des citations, soit s'abstient.

Quand l'utiliser

Utilisez cette compétence lorsqu'un coordinateur pose une question comme :

  • « Le <médicament> est-il autorisé / permis / exclu pour l'essai ? »
  • « Quelle est la période de sevrage / la limite de dose / la fenêtre de visite ? »
  • « Qu'est-ce qui a changé entre les versions du protocole ? »
  • Toute question sur ce qu'exige actuellement le protocole.

Ne rédigez pas une réponse de protocole de votre propre chef et n'utilisez pas de connaissances médicales générales — acheminez toute question de ce type via VERA.

Comment l'exécuter

  1. Obtenez la question et le numéro de l'essai. Si le coordinateur n'a pas précisé de quel essai il s'agit, demandez-le. (Le jeu de données de démonstration contient l'Essai 412.)

  2. Exécutez VERA depuis la racine du projet avec l'outil Bash, toujours avec --no-escalate au premier passage (cela supprime l'invite de l'outil pour que vous puissiez gérer l'escalade dans la conversation à la place) :

    python -m vera "<la question du coordinateur, textuellement>" --trial <N> --no-escalate
    

    Passez la question exactement telle que posée, entre guillemets doubles. Ne la reformulez pas.

  3. Lisez la sortie de VERA et relayez-la (voir ci-dessous). Conservez chaque citation.

Comment lire et relayer le résultat

VERA affiche l'une des deux choses suivantes.

A. Une réponse

La sortie commence par la version en vigueur, puis une ligne [backend: ...], puis la réponse, un bloc Provenance: et une ligne Verifier: PASSED. Par exemple :

Trial 412: governing version v3.0 (effective 2025-03-01) as of 2026-07-24
[backend: mock]
Per Trial 412 v3.0 §5.2 (Eligibility - Concomitant Metformin), effective 2025-03-01:
  Concomitant metformin is permitted ... does not exceed 2000 mg/day ...
Change disclosure — this differs from the earlier Trial 412 v1.0 §5.2 ...
Provenance:
  [current]    Trial 412 v3.0 §5.2 ...
Verifier: PASSED — ...

Relayez-la au coordinateur en langage clair, et conservez toujours :

  • la réponse elle-même (par exemple « autorisé, jusqu'à 2000 mg/jour »),
  • la citation — essai, version, section et date d'effet,
  • toute divulgation de changement (« cela a changé par rapport à la version 1.0, qui l'excluait »).

Ne supprimez jamais la citation ou la version — savoir de quelle version provient la réponse est l'objectif principal.

B. Une abstention

Si la sortie contient :

INSUFFICIENT EVIDENCE — escalating

Reason: <pourquoi>

alors VERA n'a pas pu répondre de manière sûre. Cela se produit lorsque le sujet n'est pas dans la version actuelle du protocole, la confiance dans l'extraction est trop faible, ou la réponse n'a pas pu être ancrée dans un passage cité. Ne comblez pas le vide avec vos propres connaissances.

Dites au coordinateur, en langage clair, que la question ne peut pas trouver de réponse dans le protocole actuel et donnez la raison. Ensuite, demandez-lui :

« Je ne peux pas répondre à cette question à partir du protocole actuel. Souhaitez-vous que je la transmette à l'équipe du protocole pour qu'elle puisse assurer le suivi ? »

  • Si oui, réexécutez la même commande avec --escalate au lieu de --no-escalate :

    python -m vera "<même question>" --trial <N> --escalate
    

    Cela crée un élément de travail Azure DevOps (via le serveur MCP ADO en production, ou un fichier JSON sous var/escalations/ dans cette démo) résumant la question, l'essai et la raison. Confirmez au coordinateur que cela a été soumis.

  • Si non, ne faites rien de plus et confirmez que la question est restée sans réponse.

Demandez toujours avant d'escalader — cela évite un flot de tickets de faible valeur.

Notes

  • S'exécute par défaut sur un modèle factice déterministe (aucune configuration nécessaire). Pour utiliser un modèle réel, ajoutez une GEMINI_API_KEY (ou ANTHROPIC_API_KEY) dans un fichier .env ; voir .env.example. Le choix du backend ne change pas la façon dont vous utilisez cette compétence.
  • Si la sortie contient une ligne [warning] concernant le backend, le modèle réel était indisponible et le repli déterministe a répondu à sa place. La réponse est toujours ancrée dans le protocole — mentionnez la dégradation, ne la cachez pas.
  • Voir README.md pour des exemples de questions et les résultats attendus.

Skills associés