Synthèse automatique
Automatise l'ouverture d'une pull request sur le dépôt Meshtastic-Android en vérifiant d'abord la baseline, en rédigeant le corps selon le SOP interne et en intégrant les captures d'écran via des URLs brutes épinglées à un commit.
Points forts
- Impose l'exécution récente de la baseline complète (spotless, detekt, assembleDebug, tests) avant toute publication, ce qui évite les échecs CI répétés
- Rédige le corps de PR selon le fichier .github/copilot-pull-request-instructions.md : résumé orienté « pourquoi » et changements classés par catégories
- Gère les captures d'écran de façon fiable en les committant puis en les référençant par URL raw épinglée au SHA, pour un rendu immédiat dans la PR
- Contrôle l'état git (fichiers non désirés, .agent_memory/, PNG de screenshots modifiés accidentellement) avant le push
Limites
- Fortement couplé au dépôt Meshtastic-Android et à son fichier SOP interne, donc peu réutilisable tel quel ailleurs
- Suppose que la commande /baseline et le hook pre-push existent déjà dans l'environnement
- Ne couvre ni la revue de code, ni la fusion, ni le passage d'une PR en « ready » sans demande explicite
À utiliser lorsqu'un ensemble de modifications est prêt à être publié sous forme de pull request dans le dépôt Meshtastic-Android.
À éviter pour un dépôt sans fichier d'instructions PR ni commande /baseline, ou lorsqu'il s'agit simplement de committer du travail non terminé.
Analyse de sécurité
PrudenceThe skill automates pushing a branch and opening a draft PR using standard Git and GitHub CLI commands. There are no destructive, exfiltrating, or obfuscated actions, but it does interact with remote systems and can alter repository state, so it warrants caution rather than a completely safe rating.
- •Executes `git push` and `gh pr create`, which modify the remote repository and create pull requests — legitimate but has network and repository side effects.
- •Uses `git checkout -- docs/assets/screenshots` to discard local changes, but scoped to screenshot files and only after a status check.
Exemples
Push my current branch and open a draft PR against main for Meshtastic-Android.Ship this UI change as a draft PR — commit the new screenshots, push, and embed them with commit-pinned raw URLs in the body.Create the PR the repo way: run /baseline first if it hasn't run since my last change, then draft the body per the copilot pull request instructions.name: pr description: Push the current branch and open a draft PR for Meshtastic-Android the repo way — baseline verified first, body drafted per .github/copilot-pull-request-instructions.md (WHY-first, categorized changes), screenshots embedded via commit-pinned raw URLs. Use whenever work is ready to go up as a PR. disable-model-invocation: true
pr
Opens a PR the way this repo expects. The SOP lives in .github/copilot-pull-request-instructions.md — read it now and follow it; this skill only adds the steps around it.
1. Pre-flight
- Target branch is
mainunless told otherwise. - On the default branch? Create a feature branch first.
- Baseline must be green this session (
spotlessApply spotlessCheck detekt assembleDebug test allTests). If it hasn't run since the last code change, run/baselinefirst — CI has failed repeatedly on skipped local checks. (The pre-push hook only gates detekt.) git status: nothing unintended staged. Never commit.agent_memory/. Ifdocs/assets/screenshots/*.pngare dirty from a test run (not an intentional UI change), restore them:git checkout -- docs/assets/screenshots.
2. Body
Draft per the SOP file (WHY-first summary, then changes under the 🌟 Features / 🛠️ Improvements / 🐛 Bug Fixes / 🧹 Chores categories that apply, Testing Performed section when tests were added/changed).
Screenshots (UI changes want them): commit the PNGs on the branch, push, then embed with commit-pinned raw URLs so they render in the PR body immediately:
https://raw.githubusercontent.com/<owner>/<repo>/<full-commit-sha>/<path/to/img.png>
Pin to the SHA that contains the image, not the branch name.
3. Push and open
git push -u origin HEAD
gh pr create --draft --base <target> --title "<type>: <summary>" --body-file <(printf '%s' "$BODY")
--baseis the target branch chosen in pre-flight (mainunless told otherwise) — always pass it explicitly; omitting it silently uses the repo default.- Draft by default; only
--readyif explicitly asked. - End the body with:
🤖 Generated with [Claude Code](https://claude.com/claude-code) - Report the PR URL as a markdown link.
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/open-draft-pr-for-meshtastic-android-mrzxurao/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/open-draft-pr-for-meshtastic-android-mrzxurao' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/open-draft-pr-for-meshtastic-android-mrzxurao/download' --output '.skill-downloads/open-draft-pr-for-meshtastic-android-mrzxurao/SKILL.md.part' && mv '.skill-downloads/open-draft-pr-for-meshtastic-android-mrzxurao/SKILL.md.part' '.skill-downloads/open-draft-pr-for-meshtastic-android-mrzxurao/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
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/open-draft-pr-for-meshtastic-android-mrzxurao/SKILL.md' && test -s '.skill-downloads/open-draft-pr-for-meshtastic-android-mrzxurao/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/pr' && cp -R '.skill-downloads/open-draft-pr-for-meshtastic-android-mrzxurao' '.claude/skills/pr'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/open-draft-pr-for-meshtastic-android-mrzxurao'openskills read 'open-draft-pr-for-meshtastic-android-mrzxurao'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode 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/open-draft-pr-for-meshtastic-android-mrzxurao/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.
Bonnes pratiques React Hook Form
Developpement
Maîtrisez React Hook Form : évitez les anti-patterns, gérez les abonnements, et traitez correctement reset, dirty state et entrées contrôlées.
Migration Emotion vers Mantine
Developpement
Migrer les styled-components Emotion vers des composants Mantine avec style props et modules CSS. Pour convertir .styled.tsx ou supprimer les imports @emotion.
Détecteur de dérive de périmètre
Developpement
Analyse les diffs git par rapport à une intention pour détecter la dérive de périmètre, fichiers non liés et PR trop larges, puis suggère de garder, diviser ou justifier.