Shass27/stem-notes

Génération de notes supplémentaires pour les matières STEM. Transforme des diapositives de cours, des chapitres de manuels, des feuilles de problèmes scannées, des images (png/jpg) ou des fichiers PowerPoint/Word en feuilles de formules/définitions en LaTeX, solutions complètes de problèmes et notes de synthèse. À utiliser lorsque l'utilisateur demande des notes, une feuille de formules, une antisèche, des solutions détaillées ou du matériel de révision à partir de fichiers de référence/source.

Qu'est-ce que stem-notes ?

Cette compétence permet de générer automatiquement des notes d'étude au format LaTeX à partir de documents sources STEM (PDF, images, PowerPoint/Word). Elle analyse le contenu, pose des questions à choix multiples à l'utilisateur pour personnaliser le résultat (type de notes, compilation ou non), puis produit des fichiers .tex avec des feuilles de formules, des solutions de problèmes détaillées ou des notes de synthèse. Elle vérifie les calculs via des scripts Python, signale les divergences avec les réponses imprimées et peut compiler le PDF final si demandé. Fonctionne avec des outils comme Tectonic, MacTeX, pdftotext, et nécessite des interactions via des questions à l'utilisateur.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Shass27/stem-notes/tree/main

Installed? Explore more Recherche et analyse de données skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · 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

Notes supplémentaires STEM (LaTeX)

Générez du matériel d'étude sous forme de fichiers .tex à partir de tout document source STEM. L'utilisateur guide chaque choix via des questions à choix multiples (AskUserQuestion), alors demandez avant de construire.

Fichiers de support (lisez-les lorsque vous atteignez l'étape correspondante) :

  • references/tooling.md : logiciels, commandes d'installation et tailles, commandes de conversion
  • references/questions.md : la banque de questions QCM (cycles de collecte, y compris la question de compilation)
  • references/style-guide.md : mise en page, étiquetage, format de solution, vérification et règles de divergence
  • templates/formula_sheet.tex, templates/solutions.tex, templates/summary_notes.tex : préambules à copier

Flux de travail

1. Inventaire des sources

  • Listez les fichiers pointés par l'utilisateur (dossier ou chemins @). Acceptez PDF, PNG/JPG, PPTX/DOCX.
  • Pour chaque PDF, exécutez pdfinfo (nombre de pages) et pdftotext -layout dans le bloc-notes de session, puis comptez les mots. Moins d'environ 50 mots par page signifie un fichier scanné ou riche en images : lisez chaque page comme une image ; l'extraction de texte est inutile.
  • Les diaporamas contiennent souvent des équations et des figures uniquement sous forme d'images. Même lorsque du texte existe, visualisez quand même les pages.

2. Vérification des outils (lecture seule d'abord)

Exécutez which pdfinfo pdftotext pdftoppm soffice tectonic pdflatex. Tout élément manquant nécessaire sera inclus dans le premier cycle QCM, avec sa taille (voir references/tooling.md). N'installez jamais sans réponse QCM. LibreOffice n'est nécessaire qu'en présence de fichiers Office. Si l'utilisateur répond à une question par une question (par exemple "combien de stockage ?"), répondez-y, puis reposez la question.

3. QCM de collecte

Posez les cycles dans references/questions.md, au maximum 4 questions par appel AskUserQuestion. Mettez l'option recommandée en premier et marquez-la "(Recommandé)". Ne posez les groupes de questions que pour les sorties sélectionnées par l'utilisateur. La question de compilation est toujours posée, en dernier. Lisez les réponses littéralement : les réponses en texte libre remplacent les options.

4. Lire tout

  • PDF : utilisez l'outil Lire avec pages (maximum 20 pages par appel, donc divisez les grandes plages) et émettez toutes les lectures de plages de pages pour tous les fichiers dans un seul lot parallèle. L'outil Lire nécessite pdftoppm de poppler.
  • Images : lisez-les directement.
  • PPTX/DOCX : convertissez en PDF dans le bloc-notes (soffice --headless --convert-to pdf --outdir <scratchpad> fichier), puis lisez comme un PDF.
  • Notez pour chaque question ou exemple : fichier source, diapositive/page, numéro de problème, si la source le résout déjà (complètement ou partiellement), et toute réponse imprimée.

5. Résoudre et vérifier

  • Traitez chaque problème dans le périmètre. Pour tout ce qui n'est pas trivial (ajustements de courbes, intégrales, équilibres de moments, calculs numériques multi-étapes), vérifiez les nombres avec un court script python3 dans le bloc-notes.
  • Comparez avec les réponses imprimées. En cas de désaccord, revérifiez, puis signalez la divergence dans le document et à l'utilisateur. Ne modifiez jamais le travail pour correspondre à une réponse imprimée.
  • Signalez les coquilles de la source (mauvais signes, mauvais termes, données incohérentes) dans une note de bas de page ou une note "Pourquoi c'est ici".

6. Écrire les fichiers .tex

  • Commencez par le modèle correspondant dans templates/ : conservez son préambule et remplacez les espaces réservés %% TODO.
  • Suivez references/style-guide.md : étiquetez chaque élément avec source · diapositive/page · numéro de problème, ajoutez un tableau de couverture, reformulez chaque question en entier, encadrez les réponses.
  • Utilisez uniquement du texte ASCII. Les commentaires sont des commentaires sur une seule ligne % uniquement, jamais de commentaires multi-lignes en bannière.
  • Le dossier de sortie par défaut est latex/ à côté des sources, sauf si l'utilisateur choisit autre chose.

7. Compiler uniquement si l'utilisateur a choisi

  • tectonic : tectonic -X compile fichier.tex. MacTeX : latexmk -pdf fichier.tex. Corrigez les erreurs et recompilez jusqu'à ce que ce soit propre.
  • Si l'utilisateur dit stop, arrêtez immédiatement la tâche (TaskStop) et ne réessayez pas.

8. Rapport

Listez brièvement : les fichiers écrits, ce que chacun couvre, les questions ignorées (déjà résolues dans la source), les divergences trouvées et le statut de compilation. Si vous n'avez pas compilé, dites-le clairement.

Skills associés