Captures d'écran
À propos
Un bot qui ne gaspille jamais une énergie
Luchamon Bot automatise les combats sur luchamon.com, un auto-battler 100 % on-chain sur la chaîne Base. Chaque Luchamon dispose de sept énergies par semaine ; le bot les dépense au meilleur coup, sans jamais en perdre une.
Il signe ses transactions avec le Fast Mode Wallet du jeu — le wallet principal reste à froid.
Choisir par simulation, pas par heuristique
Pour chaque combat, le jeu propose huit adversaires aléatoires. Plutôt que de deviner, le bot passe chacun des huit dans le propre moteur de combat du jeu, sur de nombreux seeds VRF, pour estimer une probabilité de victoire. Il joue alors le meilleur disponible — le « moins pire », puisque même le perdant gagne du $LUCHA, donc aucune énergie n'est gaspillée. L'objectif est réglable par Luchamon : safe vise la victoire la plus sûre, aggressive le plus fort adversaire encore sûr pour grimper au classement.
Ces simulations exigent des milliers de lectures on-chain. Un fork Anvil local sert le même bytecode environ 24× plus vite que le tier RPC gratuit — une calibration passe de ~40 min à moins d'une minute, cache chaud.
Un run est un drain
npm start est un run : il draine l'énergie disponible de la semaine, puis sort. Le process est le run — il ne boucle ni ne se planifie lui-même. Un service core always-on lit le reset hebdomadaire on-chain et lance le drain au bon moment, avec progression et débrief poussés sur Telegram.
Cockpit local
Un cockpit web (React + Vite, TypeScript strict) pilote le bot en local : lancer une analyse anti-meta, inspecter le roster, et appliquer un build en signant la transaction updateBuild avec son wallet principal dans Rabby ou MetaMask. Le service core ne détient jamais la clé principale — il prépare la calldata et journalise, c'est tout. En stack dockerisée, nginx sert le bundle et réinjecte le secret API côté serveur : le bundle JS ne le voit jamais.
Stack
Développé en TypeScript avec viem pour les interactions on-chain, déployable en Docker (core + Telegram + cockpit + Anvil) en un docker compose up. Les décisions structurantes sont consignées dans des ADR (vault privé) — 24 à ce jour.
Roadmap
Agent économique — staking & allocation de capital
In progressSimulation Monte-Carlo du bonus de staking, algorithme d'allocation d'un budget $LUCHA sur le roster, et application des recommandations depuis le cockpit.
Cockpit — polish UI/UX post-audit
In progressProtocole de confirmation gradué pour les actions qui déplacent des fonds, design tokens typés, primitives de composants et command palette globale.
Cockpit web local (cœur always-on)
Shipped2026-06Cockpit React + Vite + service core API, en dev rapide ou stack dockerisée LAN-only. Le secret API n'atteint jamais le bundle navigateur.
Choix d'adversaire par simulation
Shipped2026-06Chaque adversaire est passé dans le moteur de combat du jeu sur de nombreux seeds VRF pour estimer une probabilité de victoire ; le bot joue le meilleur coup disponible.
Forks Anvil pour simulations rapides
Shipped2026-06Un fork local sert le même bytecode ~24× plus vite que le tier RPC gratuit, avec un fail-fast si le backend de simulation est dégradé.
Run autonome planifié + débrief Telegram
Shipped2026-05Un run draine l'énergie de la semaine puis s'arrête ; reset hebdomadaire lu on-chain, progression et débrief poussés sur Telegram.
Roster actif & rentabilité
Shipped2026-05Builds, stats et skills par Luchamon, suivi du ROI ($LUCHA gagné, énergie consommée) et snapshots de baseline pour mesurer chaque mutation.
Autres apps patolabs
Souffle
Respiration guidée, 13 ambiances sonores et vibrations synchronisées. Retrouvez votre calme en quelques minutes.
Orfeo
Auto-DJ participatif — les invités proposent et votent depuis leur téléphone, un cerveau autonome décide quoi jouer et quand.
Claude project template
Un squelette de projet câblé pour développer avec Claude Code — du ticket au merge, avec le pilotage projet dans un vault Obsidian local.