Skip to content

commande custom parametrables

vous pouvez utiliser le mot-clé spécial $ARGUMENTS dans vos commandes custom pour les rendre paramétrables.

exemple de fix-issue

pour celle-ci le pré-requis est d'avoir gh installé

créez .claude/commands/fix-issue.md et mettez ça dedans :

Analyse et corrige l'issue GitHub numéro : $ARGUMENTS

1. Utilise `gh issue view` pour récupérer les détails, assigne-toi cette issue

2. Cree une branche pour bosser sur cette issue, en la referancant

3. Comprends le problème décrit

4. Cherche les fichiers concernés dans le codebase

5. Implémente la correction

6. Assure-toi que la doc user et dev est à jour, modifie la au besoin

7. Écris et lance les tests

8. Vérifie que tout passe (lint, typecheck), reboucle entre les etapes 3 à 8 si probleme

9. Commit avec un message descriptif

10. Crée une PR qui référence l'issue

11. Demande a l'utilisateur une validation finale avant de faire le merge et detruire la branche

Et maintenant vous pouvez juste taper /fix-issue 1234 et Claude s’occupera de tout !

les environnements d'execution

besoin de pyfoundry

pour les commandes ayant besoin de python, cruft, pytest, mkdocs, il faut d'abord se placer dans l'environnement conda/mamba pyfoundry qui est disponible et a été créé ainsi

mamba create -y -n pyfoundry -c conda-forge python=3.11 --yes
mamba activate pyfoundry
mamba install nb_conda_kernels cruft mkdocs-material pytest pytest-cookies pytest-cov pre-commit ruff mypy --yes

règle R1.1 - pytest

il faut donc appeler pytest de cette façon

# Initialize conda and run tests in pyfoundry environment
eval "$(conda shell.bash hook)" && conda activate pyfoundry && pytest tests -v

règle R1.2 - ruff

il faut donc appeler ruff de cette façon

# Run ruff linting in pyfoundry environment on non-template files and fix issues
eval "$(conda shell.bash hook)" && conda activate pyfoundry && ruff check tests/ docs/ --fix

tester localement

# avec les valeurs par defaut sauf une
# creation du projet sous /tmp
mamba activate pyfoundry && \
cd /tmp && \
rm -rf /tmp/mon-projet-data-science && \
cruft create /home/guillaume/git/PyFoundry --no-input --extra-context '{"use_node": "y"}' && \
code mon-projet-data-science

et ensuite un Rebuild and Reopen container depuis vscode