Laravel Altitude est un package signé Mischa Sigtermans (v0.2.0, mars 2026) qui apporte un ensemble d'agents Claude Code et de commandes de workflow spécialisés pour la stack TALL (Tailwind, Alpine, Livewire, Laravel), avec un support optionnel pour Filament, Flux UI, Laravel Reverb et Pest.
Ce n'est pas un package "utilitaire Laravel" classique, il ne touche pas au runtime de ton application. Son rôle est de configurer Claude Code pour qu'il comprenne vraiment la stack de ton projet et qu'il arrête de te proposer du code qui ne colle ni à tes versions ni à tes conventions.
Dans cet article :
- Le problème qu'Altitude résout
- Installation et syncing automatique
- Les agents fournis (toujours présents vs conditionnels)
- Les commandes de workflow
- L'intégration MCP avec Laravel Boost
- Les cas d'usage concrets
Le problème qu'Altitude résout
L'auteur résume bien le souci : "AI assistants need context about your stack to give good advice. But documentation changes between versions, and copy-pasting docs into prompts wastes tokens and goes stale."
Autrement dit : Claude Code tout nu ne sait pas que ton projet est en Livewire 4, Filament 5 ou Pest 4. Il va se baser sur ce qu'il a appris pendant son entraînement qui peut dater. Résultat : du code qui mélange les versions, des APIs qui n'existent plus, des patterns obsolètes.
Altitude sépare les responsabilités :
- Laravel Boost fournit la doc versionnée via son serveur MCP (
search-docs) - Altitude fournit les agents qui orientent l'architecture et le workflow
Les deux ensemble, tu as un assistant qui connaît ta stack et qui sait où chercher quand il a un doute.
Installation
1composer require mischasigtermans/laravel-altitude --dev1composer require mischasigtermans/laravel-altitude --dev
Une fois installé, Altitude détecte tes packages et synchronise les agents correspondants dans .claude/agents/. Pour maintenir ça à jour automatiquement à chaque composer update, ajoute ce hook dans ton composer.json :
1"scripts": {2 "post-update-cmd": [3 "@php artisan boost:update --quiet"4 ]5}1"scripts": {2 "post-update-cmd": [3 "@php artisan boost:update --quiet"4 ]5}
Pour un sync manuel :
1php artisan altitude:sync # ajoute uniquement les nouveaux agents2php artisan altitude:sync --force # écrase les agents existants1php artisan altitude:sync # ajoute uniquement les nouveaux agents2php artisan altitude:sync --force # écrase les agents existants
Tu peux désactiver le sync automatique avec ALTITUDE_AUTO_SYNC=false dans ton .env si tu préfères garder la main.
Les agents toujours publiés
Quatre agents sont présents sur tous les projets, quel que soit le contenu du composer.json :
- architect — décisions d'architecture, features multi-fichiers
- database — schémas, migrations, modèles Eloquent
- docs — recherche dans la doc via MCP
- security — audits de sécurité et checks de vulnérabilités
Tu les utilises en les invoquant directement dans Claude Code :
1@architect je veux ajouter un système de notifications en temps réel, propose-moi une archi1@architect je veux ajouter un système de notifications en temps réel, propose-moi une archi
Les agents conditionnels
Ceux-ci n'apparaissent que si le package associé est installé dans ton projet :
| Package détecté | Agents publiés |
|---|---|
livewire/livewire |
livewire, alpine |
livewire/flux |
flux |
filament/filament |
filament |
pestphp/pest |
pest |
laravel/reverb |
realtime |
L'idée : pas de pollution. Si tu n'as pas Filament, tu n'as pas d'agent filament qui traîne dans ton .claude/agents/.
Les commandes de workflow
Six slash commands sont toujours publiées :
1/ship # commit, push et crée une PR2/test # lance les tests Pest concernés par tes changements3/debug # debug en lisant les logs et l'état de l'app4/review # revue de code qualité et sécurité5/catchup # reprendre le contexte après une pause6/pint # formate le code avec Laravel Pint1/ship # commit, push et crée une PR2/test # lance les tests Pest concernés par tes changements3/debug # debug en lisant les logs et l'état de l'app4/review # revue de code qualité et sécurité5/catchup # reprendre le contexte après une pause6/pint # formate le code avec Laravel Pint
Exemple de workflow réel sur un projet :
1/catchup2@architect j'ai besoin d'un système de versioning sur les documents3@livewire crée le composant d'upload4/test5/review6/ship "Add document versioning"1/catchup2@architect j'ai besoin d'un système de versioning sur les documents3@livewire crée le composant d'upload4/test5/review6/ship "Add document versioning"
Tu passes de "je reprends le projet" à "PR créée" sans quitter Claude Code.
Intégration MCP avec Laravel Boost
Altitude s'appuie sur le MCP de Boost pour donner aux agents accès à la doc. L'outil central :
mcp__laravel-boost__search-docs— recherche versionnée dans la doc des packages installés
Si tu utilises Laravel Herd Pro, Altitude branche aussi :
mcp__herd__get-logs— logs applicatifsmcp__herd__get-dumps— sortie desdump()
Et si tu installes Laravel Telescope MCP (composer require lucianotonet/laravel-telescope-mcp --dev), la commande /debug devient beaucoup plus puissante grâce à :
mcp__laravel-telescope__requests— requêtes HTTP avec exceptionsmcp__laravel-telescope__queries— requêtes SQL lentes ou en erreurmcp__laravel-telescope__jobs— jobs en échecmcp__laravel-telescope__logs— logs applicatifsmcp__laravel-telescope__mail— emails envoyés
Sans Telescope MCP, /debug tombe en fallback sur la lecture de storage/logs/laravel.log — utile, mais moins précis.
Cas d'usage concrets
Reprendre un projet après deux semaines :
1/catchup1/catchup
Claude lit le git log, les derniers changements et te résume où tu en étais.
Débugger un 500 en prod sur la page de checkout :
1/debug "500 error on checkout page"1/debug "500 error on checkout page"
Développer une feature multi-composants :
1@architect je veux un système de commentaires imbriqués2@database propose le schéma3@livewire implémente le composant de thread4@pest écris les tests1@architect je veux un système de commentaires imbriqués2@database propose le schéma3@livewire implémente le composant de thread4@pest écris les tests
Configuration avancée
Pour personnaliser, publie la config :
1php artisan vendor:publish --tag=altitude-config1php artisan vendor:publish --tag=altitude-config
Tu peux alors dans config/altitude.php :
- activer/désactiver l'auto-sync (
auto_sync) - modifier le mapping package → agents (
agents) - changer la liste des agents et commandes toujours publiés (
always,always_commands)
Other highlights
- Package-aware publishing : les agents non pertinents ne sont pas publiés, ce qui garde
.claude/propre - Détection automatique : au premier run d'une commande console si
.claude/agents/n'existe pas - Intégration Boost native :
boost:installetboost:updatedéclenchent unaltitude:sync --force - Gestion des conflits : les agents avec des noms custom restent intacts, seuls ceux avec les noms réservés (
architect,database, etc.) sont écrasés au sync
Prérequis
- PHP 8.2+
- Laravel 11 ou 12
- Laravel Boost (installé automatiquement comme dépendance)
FAQ
Qu'est-ce qui différencie Laravel Altitude de Laravel Boost ?
Laravel Boost fournit la documentation versionnée via MCP (search-docs, database-schema, etc.). Laravel Altitude fournit les agents Claude Code et les commandes de workflow qui orientent l'architecture du code. Les deux sont complémentaires : Boost sait "ce qu'il faut savoir", Altitude oriente "comment travailler".
Laravel Altitude impacte-t-il la production ?
Non. Altitude ne touche pas au runtime de ton application. Il installe uniquement des fichiers de configuration pour Claude Code (.claude/agents/, .claude/commands/, .ai/guidelines/). Tu peux d'ailleurs l'installer en --dev pour qu'il ne parte pas sur les serveurs de prod.
Faut-il installer Altitude avant ou après Laravel Boost ?
Altitude installe Laravel Boost automatiquement comme dépendance. Tu peux donc démarrer directement avec Altitude. Si Boost est déjà installé dans ton projet, l'ordre n'a pas d'importance.
Quelles versions de Laravel sont supportées ?
Laravel Altitude requiert PHP 8.2+ et Laravel 11 ou 12. Pour les projets Laravel 13 comme laravel.cm, la compatibilité est à vérifier dans le composer.json du package avant installation.
Conclusion
Laravel Altitude est exactement le genre de package qu'on veut voir émerger autour de Claude Code : opinion claire, installation en une commande, zéro configuration par défaut. Combiné à Laravel Boost, il transforme Claude Code en assistant réellement spécialisé pour ton projet, au lieu d'un modèle généraliste qui devine.
Pour un projet Laravel.cm ou n'importe quel projet TALL stack sérieux, c'est un gain de temps immédiat sur la mise en place du workflow IA.
Dépôt GitHub : github.com/mischasigtermans/laravel-altitude