
Laboratoire d'évaluation comportementale (Quorum) pour le projet superpowers qui pilote des CLI d'agents de codage réels (Claude, Codex, Gemini, Kimi et plus) via un agent QA et les évalue en fonction de la conformité des flux de travail par rapport aux critères de scénario et aux vérifications postérieures déterministes.
Laboratoire d'évaluation comportementale pour superpowers. Quorum pilote les CLIs d'agents de codage réels (Claude, Codex, Antigravity, Gemini, Kimi, OpenCode, Pi et Copilot) via un agent QA Gauntlet et les évalue par rapport aux critères d'acceptation des scénarios et à des vérifications postérieures déterministes.
Le code, la CLI, les chemins et la prose en ligne utilisent tous le quorum en minuscules ;
la forme capitalisée Quorum apparaît dans les titres et le tableau des acteurs.
Ceci n'est pas une suite de benchmarks générique. Il s'agit d'un laboratoire d'évaluation pour la conformité des workflows : déclenchement de compétences, comportement de l'arbre de travail, coordination des sous-agents, réflexes de vérification, qualité de la revue et modèles de façonnage des coûts.
quorum possède deux modes d'exécution très différents :
biome, tsc et bun test. Elles n'appellent pas d'API de modèles et ne lancent pas de
CLI d'agents.L'IC publique doit rester du côté des vérifications statiques/unitaires de cette ligne.
N'ajoutez jamais de clés API, d'invocations quorum run … en direct ou de lancements d'agents
en mode dangereux à l'IC publique.
Les évaluations en direct exécutent l'agent de codage testé avec un large pouvoir d'exécution :
--dangerously-skip-permissions.--dangerously-bypass-approvals-and-sandbox.--dangerously-skip-permissions et repose sur l'authentification locale
par navigateur/trousseau pour agy.--skip-trust --approval-mode=yolo ; l'authentification par clé API est par
défaut, avec authentification OAuth facultative pour les exécutions locales de confiance.--yolo.--dangerously-skip-permissions.--allow-all.quorum fixe le HOME de chaque agent de codage (plus les répertoires de base XDG et TMPDIR)
à un répertoire personnel jetable par exécution à <run>/home — le lanceur insère le jeton
$QUORUM_HOME_ENV construit par src/agents/home-env.ts (xdgHomeEnv, la source unique de
vérité). Le répertoire de configuration de chaque agent est réduit sous ce répertoire
personnel (Claude .claude, Codex .codex, Gemini ., OpenCode ., Antigravity .,
Copilot .copilot, Kimi .kimi-code, Pi .pi/agent), de sorte que l'agent de codage trouve
sa configuration via sa propre valeur par défaut $HOME et ne voit jamais le
~/.claude, ~/.codex, ~/.gemini, ~/.kimi-code, ~/.pi, ~/.copilot, ~/.config
réel de l'hôte, ni d'autres états relatifs au répertoire personnel, plugins installés ou
sessions précédentes. Le provisionnement insère la configuration — et les identifiants OAuth
de l'hôte dont chaque agent a besoin — dans ce répertoire personnel jetable avant le lancement,
de sorte qu'il n'y a pas de connexion au moment de l'exécution. Copilot déploie également le
plugin local Superpowers sous le répertoire personnel isolé, utilise un environnement externe
autorisé et écrit un .copilot-env contenant un secret avec chmod 0600 dans le répertoire
d'exécution. Cela réduit le rayon d'explosion mais ce n'est pas un bac à sable. Les lanceurs
OpenCode et Copilot utilisent également des environnements autorisés, mais les agents de
codage en direct s'exécutent toujours avec un large accès au système de fichiers et des
capacités d'exécution de commandes.
Exécutez les évaluations en direct uniquement depuis un environnement local de confiance :
results/, les journaux de session bruts, les artefacts d'état de session/appels
d'outils et les entrées de l'agent Gauntlet comme sensibles.Installez et exécutez les vérifications statiques :```bash bun install bun run check bun run quorum check
Exécutez un scénario local ou d'urgence en dehors du conteneur:```bash
export SUPERPOWERS_ROOT=/path/to/superpowers
export ANTHROPIC_API_KEY=...
bun run quorum run scenarios/triggering-writing-plans --coding-agent claude
bun run quorum show <run-dir>
L'agent Gauntlet (driver QA) s'authentifie auprès d'Anthropic avec ANTHROPIC_API_KEY
par défaut. Pour l'utiliser à partir d'un abonnement Claude connecté à la place, définissez
CLAUDE_CODE_OAUTH_TOKEN (obtenu via claude setup-token) dans l'environnement (par ex.
.env); le harnais le transmet et gauntlet le préfère à la clé API.
Remarque : un abonnement a des limites d'utilisation adaptées à une utilisation interactive — les lots
run-all à haute concurrence peuvent les atteindre, donc la clé API reste le meilleur choix pour une charge lourde.
Les noms d'agents sont claude, codex, antigravity, gemini, kimi,
opencode, pi et copilot. Tous les scénarios ne sont pas valides pour tous les agents.
BREAKING (axe des identifiants) : claude-haiku et claude-sonnet ne sont plus
des noms d'agents distincts. Pour exécuter le harnais Claude contre Sonnet ou Haiku :```bash
bun run quorum run scenarios/ --coding-agent claude --credential sonnet
bun run quorum run scenarios/ --coding-agent claude --credential haiku
Le mot de passe par défaut de l'agent `claude` est `opus`.
## Appliance d'évaluation partagée
Les évaluations en direct distantes partagées sont conçues pour être exécutées à partir d'un hôte appliance de confiance avec un seul ensemble d'identifiants approuvés, une provenance exacte de dépôt/référence, des verrous d'hôte et des enregistrements de tâches récupérables. Les agents doivent utiliser l'assistant appliance une fois qu'il existe sur l'hôte configuré :```bash
evals-appliance doctor --json
evals-appliance prepare --json --superpowers-ref <branch-tag-or-sha>
evals-appliance run-all --json --detach \
--superpowers-ref <branch-tag-or-sha> \
-- --tier sentinel \
--coding-agents claude,codex,kimi \
--jobs 4
evals-appliance status --json <job-id>
evals-appliance show --json <job-id>
evals-appliance costs --json <job-id>
evals-appliance cancel --json <job-id>
L'interface cible et les règles d'exploitation sont dans
docs/appliance-runbook.md, soutenues par
docs/superpowers/specs/2026-06-18-shared-eval-appliance-design.md.
doctor est en lecture seule. prepare renvoie lock_busy plutôt que de modifier les références
pendant qu'un travail actif est en cours.
L'accès à l'hôte et les procédures de contournement spécifiques au fournisseur sont intentionnellement tenus
à l'écart de ce dépôt public ; utilisez le runbook opérationnel privé pour ces détails.
Les commandes brutes bun run quorum ... et scripts/evals-container exec quorum ... restent
des workflows locaux ou de contournement de confiance pour les évaluations partagées en direct.