Synthèse automatique
Resynchronise tous les skills d'audit (.claude/commands/audit-*/SKILL.md) avec le code apparu depuis la dernière synchronisation, via une étape de préparation déterministe puis une répartition en agents parallèles.
Points forts
- Étape de préparation scriptée et déterministe (prep.sh) qui produit des artefacts exploitables : issues ouvertes, issues fermées depuis la base, carte des issues citées, poids par groupe
- Guidage explicite sur le rééquilibrage des groupes à partir des poids imprimés, avec返回 d'expérience chiffré sur les runs précédents
- Séparation nette des responsabilités : les bugs réels découverts sont signalés à l'utilisateur, jamais corrigés par la synchronisation
- Traçabilité par commit de référence (BASELINE) et consigne explicite de ne pas lancer de sous-agents pour éviter les notifications perdues
Limites
- Fortement couplé à une arborescence précise (BASELINE, groups.txt, _audit-owners.md, shims .agents/skills) : inutilisable tel quel hors de ce dépôt
- Ne décrit que les phases préparation, fan-out et collecte : aucune étape de vérification finale, de commit ou de mise à jour de BASELINE n'est spécifiée
- Suppose de nombreux commits et un lancement massif d'agents en arrière-plan, ce qui est coûteux sur un petit dépôt
À lancer après une série de commits de correction, quand les skills d'audit risquent de décrire des issues encore ouvertes ou des structures obsolètes.
À ne pas utiliser pour auditer du code ou corriger des bugs, ni dans un dépôt dépourvu de la structure audit-suite décrite.
Analyse de sécurité
PrudenceNo destructive, exfiltration or obfuscation patterns: no curl|sh, no rm -rf, no credential handling, no disabled safety checks, and no instruction-hijacking text. The risk profile is that of a powerful maintenance workflow — executing an unreviewed local prep script, mass-editing agent-instruction files with parallel sub-agents, and committing — so 'caution' rather than 'safe', but nothing here justifies 'risky'.
- •Phase 1 executes a repo-local script `.claude/commands/audit-sync/prep.sh` whose contents are not included in the reviewed material, so its actual behavior (git calls, file writes into the scratchpad) cannot be verified here.
- •The skill drives wide, automated rewrites of `.claude/commands/**`, `.agents/skills/*` shims and `.claude/agents/*.md`, then a `git commit` — mutation of agent-instruction files at scale, gated only by a textual 'commit only when the user asks' rule.
- •Phase 2 fans out many background `general-purpose` sub-agents with file-write authority in parallel, with a correctness rule ('never edit a file whose owning agent is still running') enforced only by the orchestrator's discipline.
- •Runs `cargo test` / `_audit-validate.sh` and `git` commands via bash; legitimate but powerful tooling.
- •Executes repo-local scripts whose contents are not shipped with this file (`prep.sh`, `_audit-validate.sh`, `_audit-route.sh`); the auditor must review those scripts separately since their behavior cannot be verified from the skill text alone.
- •Spawns one background `general-purpose` agent per group with write access to `.claude/commands/audit-*` files; broad autonomous fan-out editing many instruction files is powerful and only gated by a later `git diff` review.
- •Shell usage (`bash`, `cargo test`, `git diff/commit`, `rustup which`, PATH manipulation) and an optional user-requested `git commit` are present, but all are scoped to the repository and non-destructive.
- •No evidence of destructive commands, network exfiltration, credential handling, base64/obfuscated payloads, or attempts to disable safety checks.
Exemples
Run the audit-skill sync: call prep.sh with the current BASELINE, print the per-group weights, split any group over twice the median, then fan out one agent per group and collect the proposals.Re-sync all audit skills since commit 9f3c2ab (--base 9f3c2ab) and tell me which cited issues were closed in that window.I just added .claude/commands/audit-netcode — add it to groups.txt under a sensible group and run a full audit-skill sync so it gets caught up with HEAD.description: "Re-sync every audit skill against the code that landed since the last sync — closed-issue sweep, delta read, premise re-measure, owner-map fold-in" argument-hint: "[--base <rev>]"
Audit-Skill Sync
Audit skills describe the code: struct sizes, counts, test names, known-open issues. Fix commits change the code without touching those files, so the skills go stale. In every sync so far, most of the rot has been closed issues still described as open. This skill brings every .claude/commands/audit-*/SKILL.md and the shared _audit-* files back in line with HEAD. It does not audit the code and does not fix it: real bugs that surface are reported to the user, not fixed.
Files in this directory:
.claude/commands/audit-sync/prep.sh: the deterministic preparation step.brief.tmpl: the instructions every agent reads.groups.txt: which agent owns which skills.BASELINE: the commit the last sync matched.
Phase 1: Prep
SCRATCH=<session scratchpad>/audit-sync
.claude/commands/audit-sync/prep.sh "$SCRATCH" # base = BASELINE; override with --base <rev>
The script writes the following into $SCRATCH:
- BRIEF.md
- open.txt
- closed_since.tsv
- cited_closed_recent_map.txt
- weights.tsv
- an empty proposals.md
It also prints each group's weight: the changed files routed to it through _audit-owners.md, and the cited issues closed since the base. It exits non-zero if groups.txt misses an audit-* directory or lists one twice. A newly added audit skill must go into a group first.
Look at the printed weights. If one group carries well over ~2× the median of either number, split it in groups.txt before fanning out. Ten groups was the right size for ~300 commits; the per-game audits each get their own group when their routed counts dwarf the rest (the 2026-10-12 run used fourteen for 239 commits, with fo3 and oblivion split out of the old fo3-oblivion pair; the 2026-10-15 run used sixteen for 337 commits, splitting scripting (157 routed files, 22 cited-closed: the M47.2 VM wave) from papyrus-character and fo4 from starfield; the 2026-10-20 run used seventeen for 379 commits, giving performance its own group apart from renderer). Two skills' routed counts are inflated by churn, not code: regression (every .claude/issues/ note) and tech-debt (the docs/audits/ reports, other docs/ edits, .claude/commands/). Discount those two before splitting.
Phase 2: Fan out
Launch one background general-purpose agent per groups.txt line, all in a single message. Each prompt contains:
- an instruction to read
$SCRATCH/BRIEF.mdfirst and follow it exactly; - the exact files the agent owns (
.claude/commands/audit-<skill>/SKILL.mdplus any helper scripts in that directory); - the main delta paths for its skills (crates and
byroredux/srcmodules from_audit-owners.md); - any skill-specific hot spots: issues from
cited_closed_recent_map.txt, or a session closeout in HISTORY.md that touched the area.
The meta group also owns the following, and should check that every shim's description still matches its skill:
_audit-common.md,_audit-owners.md,_audit-severity.md,_audit-validate.sh,_audit-route.sh;- the
.agents/skills/source-command-*shims, which are thin pointers to the canonical command; - the
.claude/agents/*.mdspecialists: they rotted for five months because no sync group and no validator glob reached them; 88ea1a2f6 (#5839) added them to the validator corpus and this group, and their layout facts must point at CLAUDE.md / docs/engine (or a livels/grep) instead of hand-typed trees or file lists.
Agents must not start sub-agents. A nested agent's completion notice never reaches its parent (see /audit-suite, orchestration hazard).
Phase 3: Collect
As each report arrives:
- Append its "proposed edits to files I don't own", code gaps and fixed-but-open issues to
$SCRATCH/proposals.md. Keep a heading per group. - Once that agent is finished, fold any proposal aimed at another agent's skill into that skill yourself. Never edit a file whose owning agent is still running. Check each claim against the code before you write it: an agent's proposal is a lead, not a fact.
After the meta agent finishes, fold in all the _audit-owners.md row proposals:
- Rows are first-match prefixes, so a specific row goes above the general row it narrows.
- Never drop an owner that the general row gave the path, unless the proposal says why.
- Check each new row with
printf '%s\n' <path> | .claude/commands/_audit-route.sh.
Phase 4: Verify
bash .claude/commands/_audit-validate.sh 2>&1 | grep -E 'FAIL|STALE|OK:'
git diff --stat -- .claude .agents
Skill-reading tests: rerun any whose matched text was touched.
| Test | Reads | Run |
|---|---|---|
| gpu_material_size_claims (4 tests) | every .claude/commands file | cargo test -p byroredux-renderer --lib gpu_material_size_claims |
| the_audit_skill_does_not_claim_the_rt_integrity_chain_is_unread | audit-renderer | bin crate, below |
| documented_texture_role_list_matches_the_struct | audit-nifal, audit-fo4, _audit-common.md | bin crate, below |
To re-derive the list: git grep -n '\.claude/commands' -- '*.rs', keeping the non-comment hits. The skin_offsets_hasher_tests.rs guards pin _audit-common.md's hot-path rule in code but never read the file.
The bin crate needs rustc ≥ 1.96 (wasmtime 49's MSRV since 15a6b1d2d; #4466 set the earlier 1.94 floor):
TC=$(rustup which --toolchain 1.96.0 cargo); PATH="$(dirname "$TC"):$PATH" "$TC" test -p byroredux --bin byroredux -- <filter>.
Phase 5: Close
- Write the HEAD that prep reported (
<short-hash> <YYYY-MM-DD>) intoBASELINE. That is the commit the agents synced against, not a later HEAD. - Report to the user:
- one line per skill on what was wrong and what changed;
- real code gaps or bugs to file, after checking each one yourself;
- issues fixed in code but still open, with their fixing commits. A
Fix #A, #Bsubject auto-closes only#A.
- Commit only when the user asks:
docs(audit): re-sync audit skills against <base>..<head>.
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/audit-skill-sync-mvhm5m12/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/audit-skill-sync-mvhm5m12' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/audit-skill-sync-mvhm5m12/download' --output '.skill-downloads/audit-skill-sync-mvhm5m12/SKILL.md.part' && mv '.skill-downloads/audit-skill-sync-mvhm5m12/SKILL.md.part' '.skill-downloads/audit-skill-sync-mvhm5m12/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Le fichier ne fournit pas un en-tête name/description exploitable pour cette procédure native. Le téléchargement reste disponible pour lecture ; utilisez le mode manuel ci-dessous.
Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/audit-skill-sync-mvhm5m12/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Rédaction de docs Supabase
Documentation
Rédigez, éditez et révisez le contenu de la documentation Supabase : guides, tutoriels, références et partiels. Suivez les guides de style et les règles de validation MDX/TOML.
Créer un enregistrement de décision d'architecture
Documentation
Créer un nouveau ADR avec numérotation séquentielle, l'enregistrer dans le graphe AgentDB et le lier aux ADR associés.
Mise à jour de plan avec recherche approfondie
Documentation
Met à jour un document de plan en lançant des sous-agents en parallèle pour analyser un sujet sur tous les passes du compilateur, puis consolide les résultats.