Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

PinMe - Le web immuable en une commande

Les 404, c'est la plaie du web... J'en sais quelque chose, je fais la chasse à ça en permanence sur mon propre site. C'est vrai que c'est relou parce que vous bookmarkez un projet cool, vous y retournez trois mois après... et pouf, ça a disparu. Le dev n'a pas renouvelé son nom de domaine, l'hébergeur a fermé boutique, le contenu s'est évaporé ou que sais-je encore... En fait, sur le web, RIEN n'est permanent.

PinMe prend le problème à l'envers en collant vos fichiers directement sur IPFS . En gros, au lieu de dépendre d'un serveur unique qui peut tomber n'importe quand, vos pages sont distribuées sur un réseau décentralisé et identifiées par un hash CID unique. Du coup, tant que le réseau tourne, votre contenu existe. Pas besoin de renouveler quoi que ce soit, pas besoin de payer un hébergeur... ça fonctionne tout seul.

L'installation se fait en une ligne :

npm install -g pinme

Pour déployer votre site statique, c'est hyper simple :

pinme upload dist/

L'outil détecte le dossier de build, ou plutôt il le devine tout seul selon votre framework : dist/ pour Vite et Vue, build/ pour Create React App, out/ pour Next.js en export statique. Ça évite d'avoir à se palucher de la config.

Côté limites, on est sur 200 Mo par fichier et 1 Go au total ce qui est largement suffisant pour une landing page ou une démo ! Et c'est GRATUIT. Pour ceux qui veulent un domaine lisible plutôt qu'un hash cryptique, y'a aussi des domaines ENS (les .eth sur Ethereum) ou des sous-domaines en .pinit.eth.limo. Après pour les domaines custom faudra un compte VIP par contre.

Le truc sympa c'est que vos fichiers restent accessibles via n'importe quelle passerelle IPFS, genre dweb.link ou w3s.link. Ainsi, si votre hébergeur ferme ou que votre domaine expire comme je le disais en intro, on s'en fiche ! Le contenu est toujours là, épinglé quelque part sur le réseau. C'est du stockage immuable, basé sur le contenu lui-même... du coup personne ne peut modifier ou supprimer ce que vous avez publié. (Et en fait vous non plus, faut le savoir.)

Et y'a aussi des commandes pour exporter en fichiers CAR et réimporter ailleurs, ce qui est pratique pour archiver ou migrer entre passerelles.

Voilà c'est gratuit pour 1 Go de stockage, c'est open source (licence MIT) et c'est par là . Merci à Lorenper pour la découverte !

Snitch - Le netstat qui ne pique plus les yeux

Si vous avez déjà tapé [ss -tulnp](https://www.it-connect.fr/lister-les-ports-en-ecoute-sous-linux-avec-lsof-netstat-et-ss/) dans un terminal, vous savez que c'est moche. Genre, VRAIMENT moche. Les colonnes qui se chevauchent, les adresses tronquées, bref c'est un festival du bordel. Mais c'était sans compter sur ce dev qui a pondu Snitch , un outil en Go sous licence MIT qui vient concurrencer ss et netstat... sauf que pour une fois, c'est lisible, regardez :

L'interface de Snitch en action, sobre et lisible

En gros, c'est un ss moderne avec une interface TUI interactive. Vous lancez la commande dans votre terminal et tadaaa, vous avez un tableau propre avec toutes vos connexions réseau, les processus associés, les ports, les protocoles... le tout avec des couleurs et une navigation au clavier. Rien à voir donc avec le pavé monochrome habituel !

Le truc cool aussi ce sont les filtres. Vous pouvez taper snitch ls proto=tcp state=listen pour ne voir que les sockets TCP en écoute, ou snitch ls proc=nginx pour traquer votre serveur web. Y'a même un filtre contains= pour chercher dans les adresses... genre contains=google pour voir tout ce qui cause avec Mountain View.

D'ailleurs, côté commandes c'est en fait bien fichu. snitch ls pour un tableau statique, snitch json pour du JSON brut si vous voulez scripter, et snitch watch -i 1s pour streamer les connexions en temps réel. Du coup ça s'intègre nickel dans vos pipelines.

La TUI elle-même vaut le détour. Vous naviguez avec j/k (comme dans Vim, forcément), vous basculez TCP/UDP avec t/u, et le plus jouissif... vous pouvez killer un processus directement avec la touche K. Plus besoin de noter le PID et d'ouvrir un autre terminal ! Sauf que attention, sur Linux faut quand même lancer en root pour avoir les infos complètes sur les processus, parce que l'outil va lire dans /proc/net/*. Ça ne marche pas non plus sur Windows, c'est Linux et macOS uniquement.

Pour ceux qui aiment personnaliser leur terminal (oui, je vous connaîs...), y'a une quinzaine de thèmes, Catppuccin, Dracula, Nord, Tokyo Night, Gruvbox... la config se fait dans ~/.config/snitch/snitch.toml et l'outil peut aussi conserver vos préférences de filtres entre les sessions (faut activer remember_state dans la config).

Côté installation, c'est pas la mer à boire. brew install snitch sur macOS, go install github.com/karol-broda/snitch@latest si vous avez Go, yay -S snitch-bin sur Arch, et y'a même des images Docker pour les plus prudents !

Donc si vous êtes du genre à surveiller votre trafic réseau ou à garder un oeil sur vos outils de diagnostic Linux , c'est clairement à tester.

Perso, pour du debug réseau rapide, je trouve que c'est carrément plus agréable que de se taper un ss -tulnp.

notion-cli - Pilotez Notion depuis votre terminal

Si vous utilisez Notion au quotidien et que vous avez toujours rêvé de piloter vos bases de données depuis un terminal... y'a enfin un truc qui tient la route.

Ça s'appelle notion-cli , c'est un binaire Go qui embarque 39 commandes couvrant TOUTE l'API Notion. Il s'agit d'un seul exécutable pour macOS, Linux et Windows (amd64 et arm64) sans dépendance qui vous permet de gérer pages, bases de données, blocs et commentaires sans jamais ouvrir un navigateur.

L'installation, c'est du classique : brew install 4ier/tap/notion-cli sur macOS, go install pour les puristes, npm install -g notion-cli-go ou même Docker. Il faut juste un token d'intégration Notion (le ntn_xxxxx que vous générez sur notion.so/my-integrations), vous le collez dans ~/.config/notion-cli/config.json ou en variable NOTION_TOKEN, et c'est parti.

notion-cli en action dans le terminal

Le truc cool, ce sont les filtres humain-friendly. Au lieu de se taper du JSON pour filtrer une base, vous écrivez Status=Done et l'outil se débrouille tout seul. En fait, il détecte le type de chaque propriété (texte, date, sélection...) et adapte le filtre automatiquement. C'est carrément pas mal, je trouve.

Et côté Markdown, c'est la fête ! Vous exportez une page entière avec notion block list <page-id> --md --depth 3, et inversement, vous injectez un fichier .md dans Notion via notion block append <page-id> --file notes.md. Pour ceux qui bossent avec de la doc technique, ça simplifie sérieusement les choses. Bon, ça ne marche pas avec les blocs synchronisés ou les embeds exotiques, mais pour le reste c'est nickel.

D'ailleurs le mode "pipé" est vraiment malin. Car dans le terminal, l'outil affiche de jolies tables colorées mais dès que vous le "pipez" vers jq ou un script, il bascule en JSON automatiquement. Du coup, intégrer ça dans un pipeline shell ou un cron... c'est aucun parsing à faire. Voilà quoi.

Après des CLI pour Notion, y'en a déjà quelques-uns. Sauf que la plupart sont soit limités aux tâches (comme notion-cli-go qui gère surtout le côté todo), soit cantonnés à l'export (et souvent liés à un OS ou un langage précis).

Celui de 4ier, c'est donc le premier à couvrir l'API en entier : pages, bases, blocs, commentaires, fichiers, utilisateurs, et même un accès REST brut via notion api GET /v1/endpoint. En gros, c'est le gh de GitHub, mais pour Notion (et pour une fois, c'est pas juste du blabla marketing ^^).

Les cas d'usage qui tuent c'est par exemple un script cron qui crée une entrée hebdo avec notion page create <db-id> --db "Name=Weekly" "Status=Todo". Un backup qui exporte vos pages critiques en Markdown toutes les nuits. Ou un CI/CD qui met à jour un changelog Notion à chaque deploy. Quelques lignes de bash et c'est réglé, car l'outil gère tout le reste ! C'est hyper rare un CLI qui couvre autant de terrain.

Y'a aussi le côté agent-friendly pour ceux qui kiffent l'IA. L'outil retourne des codes de sortie propres, du JSON exploitable, et s'installe comme skill agent via npx skills add 4ier/notion-cli. Dans la lignée de Gemini CLI , on voit de plus en plus d'outils pensés terminal-first... et je trouve que c'est carrément bien.

Après comme souvent quand je vous présente des outils, le projet est tout frais (v0.3.0, licence MIT), avec une petite communauté donc attention, car comme tout ce qui dépend d'une API tierce, si Notion bouge ses endpoints... voilà quoi. Mais c'est propre, c'est testé, et ça tourne déjà très bien.

Votre navigateur va pouvoir souffler un peu.

Faux entretiens d'embauche - Le piège qui vise les devs Next.js

Des faux entretiens d'embauche avec des repos GitHub vérolés pour piéger les devs Next.js... on croit rêver et pourtant, Microsoft vient de documenter cette campagne ciblée et vous allez voir, c'est violent.

En fait, un groupe de hackers se fait actuellement passer pour des recruteurs et contacte des développeurs JavaScript en leur proposant un entretien technique. Le deal c'est de cloner un repo GitHub pour un "test de compétences"... sauf que le repo en question est truffé de malware.

Microsoft a ainsi identifié plusieurs vecteurs d'infection planqués dans ces repos. Le premier, c'est via les fichiers de configuration VS Code, c'est à dire ceux dans le dossier .vscode/, qui peuvent exécuter du code dès que vous cliquez "Trust" à l'ouverture du projet (ce que la plupart des devs font sans réfléchir).

Le deuxième passe par un npm run dev piégé, la commande de dev classique qui lance le malware en même temps que le serveur (car oui, c'est aussi simple que ça...).

Et le troisième est encore plus sournois puisqu'il s'agit d'un module backend qui décode une URL depuis le fichier .env, exfiltre toutes les variables d'environnement (tokens cloud, clés API...), puis exécute du JavaScript reçu en retour. Sympaaaaaa....

Du coup, le malware est plutôt bien pensé. C'est un loader JavaScript qui se télécharge depuis l'infrastructure Vercel (comme ça, ça a l'air légitime), et qui s'exécute entièrement en mémoire, et spawne un processus Node.js séparé pour ne pas éveiller les soupçons. Une fois installé, il se connecte alors à un serveur C2 qui change d'identifiant régulièrement, histoire de compliquer la détection. Et là, ça se met à exfiltrer tout ce qui traîne... code source, secrets, credentials cloud... bref, tout ce qui a de la valeur.

Alors, comment on se protège de ce genre de menace quand on est un simple dev ? Hé bien déjà, vérifiez le profil du "recruteur". Pas de site d'entreprise vérifiable, des messages génériques... c'est un joli red flag !

Ensuite, avant de lancer quoi que ce soit, lisez le package.json à la recherche de scripts suspects dans preinstall, postinstall ou prepare, inspectez le dossier .vscode/ (surtout tasks.json), et faites un npm install --ignore-scripts pour bloquer l'exécution automatique des hooks. Lancez aussi un safe-npm et un npm audit une fois les dépendances installées. Et côté VS Code, désactivez l'exécution auto des tasks avec "task.allowAutomaticTasks": "off" dans vos settings.

Ça me rappelle les campagnes type Shai-Hulud et les packages npm vérolés , mais avec un vecteur social bien plus élaboré. Le piège, c'est qu'on ne balance plus des packages malveillants dans le registry en espérant qu'un dev les installe par erreur... non, non, on cible directement les développeurs, un par un, en exploitant ce stress de la recherche d'emploi comme le ferait un conseiller France Travail quand vous arrivez en fin de droits chomdu...

Et si vous êtes en pleine recherche d'emploi, attention, ne lancez JAMAIS un projet d'un inconnu dans votre environnement principal. Utilisez une VM, un container Docker (docker run --rm -it -v $(pwd):/app node:20 bash et c'est réglé), ou au minimum un compte utilisateur séparé sans accès à vos tokens et clés SSH. On n'est jamais trop prudent !

Maintenant vous savez... si un recruteur vous envoie un repo GitHub sans profil LinkedIn ni site d'entreprise véritable et vérifiable... c'est que c'est pas un recruteur. Voilà voilà...

Source

Claude Code - Pilotez votre terminal depuis votre canapé

Claude Code tourne en local et c'est son gros avantage car ça permet par exemple d'agir sur votre machine, de lancer des scripts...etc. Mais c'est aussi sa grosse limite car à cause de ça, vous êtes cloué devant votre terminal. J'étais en quête depuis un moment d'une solution et je vous avais déjà parlé de Vibe Companion y'a pas longtemps mais tous ces outils vont disparaitre puisque Anthropic vient de sortir Remote Control, une feature qui transforme claude.ai ou l'app mobile en télécommande pour votre session locale. Comme ça, vos fichiers restent chez vous et seule l'interface voyage.

Votre ordi fait tourner Claude Code normalement, et vous, vous pouvez continuer à lui parler depuis votre iPhone, votre Android, votre iPad ou n'importe quel navigateur Chrome, Firefox, Safari... Pas de serveur exposé, pas de port ouvert, que du HTTPS sortant. C'est plutôt bien foutu vous allez voir !

Ce qu'il vous faut

Bon déjà, un abonnement Pro (Édit : ? on me dit que c'est pas encore actif pour les pro ?) ou Max (pas le choix, les clés API ne marchent pas et les plans Team/Enterprise sont exclus pour le moment). Ensuite, vérifiez que Claude Code est installé et que vous êtes connecté via /login. Acceptez ensuite le "workspace trust" dans votre projet et hop, c'est tout côté prérequis.

Lancer une session

Deux options s'offrent à vous ensuite... Soit vous démarrez une nouvelle session dédiée :

claude remote-control

Soit vous êtes déjà en train de bosser dans Claude Code et vous tapez /rc (alias de /remote-control). Avec claude remote-control, seule l'URL apparaît... donc appuyez sur espace pour afficher le joli QR code.

3 flags utiles (uniquement avec claude remote-control, pas /rc) : --verbose pour voir ce qui transite, --sandbox pour forcer le mode bac à sable (désactivé par défaut) et --no-sandbox pour le couper si vous l'avez activé dans votre config.

Se connecter depuis un autre appareil

Ensuite, la méthode la plus rapide c'est de scanner le QR code avec votre téléphone. Sinon, copiez l'URL affichée et collez-la dans n'importe quel navigateur. Dernière option, allez sur claude.ai/code et votre session apparaît dans la liste (les sessions actives ont un petit point vert).

Une fois connecté, vous récupérez votre conversation en cours, vos fichiers, votre contexte... tout. Vous pouvez envoyer des messages, voir les résultats, approuver les modifications de fichiers. Bref, comme si vous étiez devant votre terminal, sauf que vous êtes dans votre canapé, votre lit ou en train de pousser le caddie chez Auchan !

Activer par défaut

Maintenant, si vous voulez que CHAQUE session Claude Code soit automatiquement accessible à distance, tapez /config dans une session Claude Code, puis activez l'option "Enable Remote Control for all sessions". Et voilà, plus besoin d'y réfléchir ! Chaque claude lancé dans un terminal sera pilotable depuis votre navigateur ou l'app mobile.

Vos sessions prennent le nom de votre dernier message (ou "Remote Control session" par défaut), donc utilisez /rename mon-projet-cool pour les retrouver facilement dans la liste sur claude.ai/code.

Sinon, dans Claude Code avec /mobile vous pouvez aussi afficher directement le QR code pour télécharger l'app Claude sur iOS ou Android.

Les limites à connaître

Bon, après c'est pas non plus parfait car déjà, c'est cappé à UNE SEULE session à distance par instance de Claude Code (si vous en lancez une deuxième, la première se déconnecte). Par contre, plusieurs instances dans des terminaux différents peuvent chacune avoir leur session remote. Le terminal doit également rester ouvert (si vous le fermez, c'est fini). Mais bonne nouvelle quand même, si le laptop passe en veille ou que le réseau saute, ça se reconnectera tout seul au réveil. Le piège, c'est si la machine reste sans réseau plus de 10 minutes... là, la session expire et il faudra relancer claude remote-control.

Soyez rassurés quand même côté sécurité c'est propre (uniquement du HTTPS sortant sur le port 443, zéro port entrant et des identifiants éphémères), mais gardez en tête que Claude Code a accès à votre terminal donc sauf si vous activez --sandbox, il peut de ce fait exécuter n'importe quelle commande... donc les mêmes précautions qu'en local s'appliquent !

Du coup si vous en avez marre de rester scotché devant votre terminal, maintenant vous savez quoi faire.

Merci à Lorenper !

Onlook - Fini les allers-retours entre Figma et le code

Bonne nouvelle pour ceux qui en ont ras la casquette de se taper des allers-retours entre Figma et VS Code ! Parce qu'avec Onlook , l'éditeur visuel open source qui vous permet de modifier le design de vos apps React directement dans le navigateur, vous allez pouvoir cliquer simplement sur un élément de design, et en changer la couleur, la typo...etc et hop, ça modifiera le code derrière.

Pas mal, non ?

Vous ouvrez votre projet Next.js dans Onlook, et vous vous retrouvez avec une interface à la Figma, sauf que c'est branché sur votre code source. Vous sélectionnez un titre, un bouton, n'importe quel composant, et vous modifiez son style visuellement... couleurs, padding, marges, polices, tout y passe.

Et en fait, le truc qui change tout par rapport à un inspecteur CSS classique, c'est que quand vous cliquez sur "Publish", les modifications atterrissent DIRECTEMENT dans vos fichiers .tsx. C'est donc du vrai code propre, pas du CSS inline dégueulasse.

Côté technique, l'outil gère nativement TailwindCSS (parce que bon, en 2026, si vous faites du React sans Tailwind, vous aimez forcément le cuir qui claque et la souffrance). Vous éditez en mode visuel, ça génère les bonnes classes Tailwind, et vous gardez un contrôle total. Y'a aussi un mode LLM intégré... "rends ce bouton bleu avec des coins arrondis" et hop, c'est fait. Comme ça, pas besoin de chercher si c'est rounded-lg ou rounded-xl dans la doc.

Pour ceux qui connaissent Bolt.DIY ou qui se souviennent d' Amplify Studio (le truc de AWS qui tentait de faire le pont Figma vers React), Onlook prend le problème dans l'autre sens. Au lieu de partir du design pour générer du code, on part du code existant et on le modifie visuellement. Du coup, pas de code généré bancal à maintenir, c'est finalement VOTRE codebase qui est éditée.

Le projet est open source sous licence Apache 2.0 sur GitHub et la version open source est gratuite et self-hostable, donc vous pouvez la faire tourner chez vous sans débourser un centime. Après pour ceux qui veulent du cloud managé avec collab temps réel, y'a des plans payants.

Après attention, c'est encore jeune et le support se limite à React et Next.js pour l'instant, donc si votre stack c'est Vue ou Svelte, ça ne marchera pas. Et l'IA mouline un peu sur les layouts complexes mais le projet avance vite, la communauté est active, et pour un outil gratos qui fait le lien entre design et code en open source, y'a pas grand-chose d'équivalent.

Bref, à tester, c'est gratos.

Et merci à Lorenper !

Dwitter Beta - Le creative coding en 140 caractères

C'est fou ce qu'on peut faire avec trois bouts de ficelle et un peu de jugeote. Ou plutôt, avec 140 caractères de JavaScript et un élément . Si vous ne connaissez pas encore Dwitter , c'est le moment de sortir de votre grotte les amis... surtout si vous aimez les challenges et le code !

Le concept c'est que vous avez une fonction u(t)t est le temps qui passe, et vous devez pondre un truc visuellement bluffant sans dépasser la taille d'un tweet (époque pré-Elon, le fameux 140 caractères). Et là, c'est la claque car les mecs qui participent à ce défi arrivent à caser des univers entiers, des forêts en parallaxe ou des simulations de colonies de fourmis dans un mouchoir de poche.

Et c'est du code pur jus, généré en temps réel par votre propre navigateur. J'ai d'ailleurs testé le fameux "Ants!" et on sent que KilledByAPixel (le boss final du site) a poussé l'optimisation dans ses derniers retranchements avec des astuces de sagouin comme eval(unescape(escape...)).

Dwitter, c'est né en 2016 lors de la demoparty Solskogen où son créateur lionleaf a d'ailleurs remporté la Wild Compo. Le projet est totalement open source (disponible sur GitHub pour les curieux) et la communauté est super active sur Discord.

En jetant un oeil au top de l'année sur la version Beta (beta.dwitter.net), on tombe sur des perles comme "Solar Orbit" qui vous colle un système planétaire en quelques octets :

Ou encore ce genre de forêts qui défile en parallaxe :

Le plus cool, c'est que tout est lisible et modifiable en direct. Vous voyez un truc qui vous plaît ? Hop, vous cliquez sur le code, vous changez une variable au pif et vous regardez le chaos s'installer. C'est l'école du partage version demoscene mais évitez quand même d'ouvrir 50 onglets en même temps si votre CPU date un peu, car certains shaders déguisés en JS peuvent être assez violents.

Bref, si vous avez 5 minutes à perdre (ou 2 heures, je vous connais), allez faire un tour sur le site. Ça vide la tête, ça pique un peu les yeux parfois, mais ça redonne foi en la créativité humaine !

Amusez-vous bien !

Mysti - Quand Claude et ChatGPT débattent de votre code dans VS Code

Si vous codez un peu avec des assistants IA, vous avez sûrement le même petit souci que moi chaque matin après mon premier café : Claude ou ChatGPT ? Lequel est le plus chaud aujourd'hui pour ce refactoring complexe ?

Hé bien j'ai trouvé un truc qui va mettre tout le monde d'accord.

Ça s'appelle Mysti et c'est une extension VS Code qui part d'un principe simple mais génial : Pourquoi se limiter à un seul cerveau quand on peut en avoir deux qui bossent ensemble ?

L'extension intègre ce qu'ils appellent le "Brainstorm Mode" où concrètement, vous sélectionnez deux modèles (par exemple Claude via claude-code et OpenAI via openai-codex) et vous les lancez sur votre problème.

On choisit son équipe de choc

Si vous activez le "Full Mode", c'est assez marrant à regarder puisque les deux IA vont discuter entre elles, débattre de la meilleure approche, critiquer les propositions de l'autre et finir par pondre une solution qui combine le meilleur des deux mondes. C'est un peu comme avoir deux seniors devs en pair programming derrière votre épaule (sans l'odeur de café froid et de dessous de bas ^^).

Ça discute sec entre les agents

Au-delà du brainstorming, Mysti propose aussi un système de Personas (16 au total). Vous pouvez alors demander à votre "équipe" IA d'adopter un rôle spécifique comme "Architecte" pour penser la structure globale ou "Security-Minded" pour auditer votre code. D'ailleurs, cette approche agentique rappelle un peu ce qu'on a vu émerger dans des outils comme Kilo Code .

L'IA propose un plan d'action avant de coder

Techniquement, attention car l'extension ne fait "que" piloter les outils CLI installés sur votre machine. Il faudra donc avoir installé et authentifié les CLI correspondants (@anthropic-ai/claude-code, @google/gemini-cli, etc.) pour que ça fonctionne. L'installation de l'extension elle-même passe par le Marketplace VS Code :

ext install DeepMyst.mysti

Perso, je trouve ça vraiment bien pour les tâches d'architecture, là où une seule IA a souvent tendance à foncer tête baissée. Avoir un "second avis" automatique, ça évite pas mal d'erreurs bêtes. Après si je devais lui trouver un défaut c'est que comme ça utilise vos propres clés API via les CLI, une session de débat intense peut vite consommer quelques tokens.

Je sais, vous vous en foutez parce que vous êtes blindé mais c'est à utiliser avec modération !

Tunnelto - Exposez votre serveur local avec inspection du trafic

Si vous avez déjà eu besoin de montrer une app en dev à un client ou de tester un webhook Stripe sans vous farcir une config nginx, y'a de fortes chances que vous connaissiez ngrok .

Hé bien Tunnelto fait sensiblement la même chose, mais en Rust et avec un truc en plus qui fait la différence : un dashboard d'introspection pour voir tout ce qui passe dans le tunnel.

Du coup, vous lancez une commande, vous récupérez une URL publique genre votresite.tunnelto.dev, et hop, votre localhost devient accessible depuis n'importe où. Et surtout, vous pouvez inspecter toutes les requêtes HTTP qui transitent. Super utile quand vous débuguez une API ou que vous essayez de comprendre pourquoi ce foutu webhook ne se déclenche pas.

Pour l'installer, plusieurs options s'offrent à vous :

Sur macOS via Homebrew :

brew install agrinman/tap/tunnelto

Via Cargo :

cargo install tunnelto

Et pour exposer votre app qui tourne sur le port 8000 :

tunnelto --port 8000

C'est tout ! Le service vous file une URL avec un sous-domaine aléatoire. Mais si vous voulez quelque chose de plus mémorable, vous pouvez demander un sous-domaine custom :

tunnelto --port 8000 --subdomain monprojet

Et vous obtenez monprojet.tunnelto.dev. Pas mal pour une démo client, non ?

Bon, si vous avez suivi mes articles sur Bore ou Tunnl.gg , vous vous demandez peut-être la différence. Bore est ultra-minimaliste, Tunnl.gg ne nécessite même pas de client à installer... Tunnelto se situe entre les deux : plus complet que Bore avec son dashboard d'introspection, mais plus léger que ngrok avec son approche open source.

D'ailleurs, y'a un truc cool avec Tunnelto c'est que vous pouvez héberger votre propre serveur si vous ne voulez pas dépendre d'un service tiers. Pratique pour les entreprises qui veulent garder le contrôle sur leurs tunnels. Sous le capot, ça utilise également tokio pour l'async Rust, donc c'est rapide et ça consomme que dalle en ressources.

Bref, si ngrok vous paraît trop usine à gaz et que Bore manque de fonctionnalités pour vous, Tunnelto fera bien le taf surtout avec son module d'inspection du trafic HTTP, qui fait la diff quand on débugue des intégrations...

Source

Détectez les articles qui veulent vous énerver

Si vous avez l'impression que tout ce que vous lisez en ligne est conçu pour vous énerver... vous avez probablement raison ! Le rage bait, élu mot de l'année 2025 par Oxford, c'est exactement ça. Et RageCheck , un outil gratuit lancé début janvier, se propose justement de le détecter pour vous.

En gros, le principe c'est de coller l'URL d'un article ou d'un connard de réseau social quelconque dans le champ de saisie de ragecheck.com, et l'outil le passe au peigne fin en 3-4 secondes pour repérer les techniques de manipulation émotionnelle. Du langage chargé, du framing "nous contre eux", des formulations catastrophistes... tout ce qui est conçu pour vous faire cliquer en jouant sur l'indignation plutôt que sur l'information.

En fait, RageCheck analyse le texte selon 5 catégories pondérées. Le langage "inflammatoire" et les formulations de type panique/menace pèsent chacun 25% du score final, l'appât à engagement 20%, et les patterns absolutistes ("toujours", "jamais", "TOUS") plus le framing clivant comptent pour 15% chacun.

Du coup, un article qui accumule les "c'est SCANDALEUX" et les "ils veulent DÉTRUIRE votre vie privée"... ça peut vite monter dans le rouge !

Le score va de 0 à 100. De 0 à 33, c'est clean. De 34 à 66, y'a du contenu manipulatoire modéré, et à partir de 67, c'est du putaclic assumé (et vous devriez probablement fermer l'onglet). Le truc bien pensé, c'est que l'outil vous montre EXACTEMENT quels passages ont déclenché l'alerte, avec le détail par catégorie. Par contre, attention, ça ne marche qu'avec des URLs publiques... donc si l'article est derrière un paywall, c'est muerto.

Chez moi c'est toujours supergreen, désolé ^^

Attention, RageCheck ne fait PAS de fact-checking. Il ne vous dira pas si un article dit vrai ou faux. Il se content de détecter les patterns de manipulation, mais pas le mensonge. La nuance est importante, parce que un article parfaitement factuel peut utiliser du framing manipulatoire pour orienter votre réaction.

Notez que le code source est dispo sur GitHub sous licence MIT donc y'a moyen de pousser le concept encore plus loin. Moi j'en ferais bien une extension navigateur qui viendrait automatiquement masquer les contenus problématiques... Ma tension artérielle ne s'en portera que mieux je pense...

En tout cas, j'apprécie que le scoring soit transparent et que ce ne soit pas une boîte noire. Chaque catégorie est modifiable dans le code ce qui permet d'ajuster les dictionnaires de détection par contre, le dico de détection est uniquement en anglais pour l'instant, donc sur des articles francophones ça marche moins bien.

Et vu comment certaines plateformes récompensent carrément la désinformation à l'engagement , avoir un outil qui décortique les ficelles de la manipulation, c'est pas du luxe ! Le rage bait est devenu une INDUSTRIE et les algorithmes adorent ça parce que la colère, ça génère des clics comme un distributeur de bonbons pour les accros au sucre.

Bref, c'est gratuit, c'est open source et surtout ça permet de retourner les techniques des putaclics contre eux-mêmes. Elle est pas belle la vie ?

The Vibe Companion - Une interface web pour piloter Claude Code

Claude Code, c'est super puissant... mais faut avouer que dans un terminal, quand l'IA commence à enchaîner les appels d'outils dans tous les sens, on se retrouve vite à lire de la Matrice sans les lunettes de Neo. Surtout si vous tentez le coup depuis un iPad ou un mobile, ça pique.

Mais c'était sans compter sur Companion , un projet open source qui vous colle une interface web par-dessus Claude Code. En gros, au lieu de scroller frénétiquement dans votre terminal comme un hamster sous caféine, vous avez une vraie UI avec des blocs rétractables, de la coloration syntaxique et une vue claire de ce que l'agent fabrique. Ça tourne sur desktop, mobile, tablette... bref, partout où y'a un navigateur. D'ailleurs, si vous préférez une app desktop native , y'a aussi Opcode qui fait le taf.

Le truc trop cool c'est que ça peut gérer plusieurs sessions en parallèle. Vous pouvez donc jongler entre différentes instances de Claude Code, chacune avec ses propres permissions. D'ailleurs, y'a 4 modes de permission : du "je valide tout à la main" au "YOLO bypass all" pour ceux qui aiment vivre dangereusement... et qui n'ont pas installé de plugin de sécurité (on vous aura prévenus).

Chaque appel d'outil (Bash, Read, Write, WebSearch...) est affiché et vous pouvez approuver, refuser ou même éditer les commandes avant exécution. Si vous utilisez des sub-agents, Companion affiche les tâches imbriquées sous le parent. C'est propre.

Et puis y'a ce petit détail qui fait plaisir à savoir une barre de progression colorée qui montre l'occupation de votre fenêtre de contexte avec une estimation du coût en temps réel. Parce que bon, savoir que votre session de debug à 3h du mat' vient de vous coûter l'équivalent d'un kebab, c'est quand même pratique. Mais est ce que ça vous coûte vraiment de l'argent ??? Hé bien le projet utilise le flag un peu caché --sdk-url de Claude Code pour communiquer via WebSocket sur le port 3456.

Et au cas où vous vous demanderiez, pas besoin de clé API supplémentaire puisque ça se branche directement sur votre abo Claude Pro ou Team (même si Anthropic vient d' ouvrir pas mal d'outils aux gratuits ).

Pour l'installer, c'est pas la mer à boire. Faut juste avoir Bun sur votre bécane, et ensuite :

bunx the-vibe-companion

Ensuite vous ouvrez http://localhost:3456 et c'est parti. Pour les bidouilleurs, tout le code est sur GitHub, un bun install dans le dossier companion/web et vous avez votre instance de dev. Après y'a plus qu'à installer Tailscale (ou votre propre VPN local) et vous avez accès à votre Claude Code depuis n'importe où.

Attention quand même, le protocole WebSocket est reverse-engineeré, donc si Anthropic change un truc demain... bon, vous voyez le délire, ça peut casser. Et si vous voulez en savoir plus sur les coulisses du protocole MCP d'Anthropic, j'en avais parlé il y a quelque temps. Mais en attendant, ça marche nickel et ça rend Claude Code nettement plus digeste qu'un terminal brut.

Allez jeter un œil !

Waymo World Model - Quand l'IA invente ses propres routes

Entraîner une voiture autonome c'est un peu comme apprendre à nager... sauf que si vous vous plantez, c'est pas juste votre ego d’informaticien qui coule mais ce sont des choses graves qui peuvent arriver. Ça tombe bien puisque Waymo vient de dévoiler cette semaine un truc plutôt pas con pour aider à régler ce problème.

Ça s'appelle le World Model et c'est un modèle génératif capable de fabriquer des simulations ultra-réalistes de conduite. Comme ça, au lieu d'attendre qu'un éléphant traverse une route de Phoenix en Arizona pour savoir comment réagir (oui, c'est un de leurs exemples !), l'IA génère elle-même ces scénarios complètement dingues dans son propre monde virtuel.

Techniquement, ça tourne sur Genie 3 de DeepMind, mais en version adaptée pour le domaine automobile. Ça analyse des flux caméra ET lidar en haute fidélité, synchronisés entre eux mais on peut aussi décrire en langage naturel ce qu'on veut simuler.

Genre "il pleut, c'est la nuit, et y'a un camion en travers de la route" et hop, le modèle génère ça ! Bon, faut quand même que la description soit cohérente, hein, n'allez pas lui demander un sous-marin au milieu de l'autoroute A6 (quoique...).

Y'a aussi moyen de modifier la scène à la main (rajouter des piétons, changer le tracé) ou de contrôler directement les actions de conduite avec 3 modes de pilotage, du plus intuitif au plus technique. Le système est aussi capable de convertir de simples vidéos dashcam en simulations multi-capteurs complètes. C'est génial parce que vous prenez une vidéo filmée depuis le pare-brise d'une Dacia "tout équipée de rien", et le modèle la transforme en scénario de simulation avec données lidar et tout le toutim.

Le hic, c'est qu'on sait pas encore à quel point ça scale sur des vidéos de mauvaise qualité ou avec des conditions d'éclairage pourries. Et les méthodes classiques type 3D Gaussian Splatting pètent visuellement dès que le trajet simulé s'éloigne trop de la trajectoire originale.

Mais alors pourquoi c'est génial ? Et bien parce qu'il y a des trucs qu'on teste PAS en conditions réelles. Les tornades, les conducteurs bourrés qui déboulent à contresens, les incendies de forêt...etc.. Hé bien maintenant grâce à ce World Model, ça peut être simulé à la demande, et même rejouable en accéléré x4.

Et surtout, ce modèle permet de rejouer une scène en modifiant une seule variable, histoire de voir ce qui se serait passé autrement (les fameuses "simulations contrefactuelles"). Par contre, pour le rendu lidar 3D, faut un post-entraînement spécialisé en plus du modèle de base donc c'est pas juste un bouton magique.

Voilà c'est une super approche je trouve parce qu'on va pas envoyer des voitures dans des tornades juste pour collecter de la data. Même si ça reste quand même de la simulation... Donc faut garder un œil critique une fois que ces scénarios virtuels sont transposés à de la physique du monde réel.

Mais ceci étant dit, ces milliards de kilomètres simulés peuvent venir maintenant fortement renforcer les données terrain d'une manière que les tests physiques seuls ne pourront JAMAIS égaler.

Bref, si vous voulez creuser le sujet ou juste voir les démos (l'éléphant sur la route, ça vaut le détour ^^), c'est par ici.

Éditer des documents Word en local dans votre navigateur

Si vous avez déjà essayé d'intégrer une fonction d'édition de documents Word dans une application web, vous savez que c'est souvent la croix et la bannière. En fait, pour obtenir un truc correct, on finit souvent par s'appuyer sur des solutions lourdes côté serveur ou des APIs propriétaires qui coûtent un bras. Mais ça, c'était avant que je tombe sur docx-js-editor.

Ce petit bijou open source est un éditeur WYSIWYG conçu spécifiquement pour l'écosystème React qui permet d'ouvrir, de modifier et d'enregistrer des fichiers .docx directement dans le navigateur. Le gros point fort revendiqué par le projet, c'est l'absence de dépendance serveur pour toute la partie édition. Tout le boulot se fait donc en local chez le client, ce qui est plutôt classe côté confidentialité des données puisque vos documents ne transitent pas par un backend obscur.

Techniquement, l'outil s'appuie sur un système qui semble proche de ProseMirror (il permet d'ailleurs d'y injecter des plugins ProseMirror). Perso, j'ai choisi de vous en parler parce que la gestion native du format DOCX est ici au cœur du moteur, et pas juste une couche d'export rajoutée à l'arrache. Le rendu est assez propre d'ailleurs et le projet vise une compatibilité maximale avec Microsoft Word.

On y retrouve l'essentiel évidemment : formatage de texte (gras, italique, polices, couleurs), gestion des tableaux, des images et des hyperliens. Bref, tout ce qu'il faut pour faire un vrai traitement de texte sans avoir à sortir l'artillerie lourde. (et c'est pas peu dire !)

Pour l'installer, c'est hyper fastoche : un petit npm install @eigenpal/docx-js-editor et hop, le dossier débarque dans votre node_modules/ et c'est réglé. D'ailleurs, l'architecture est extensible. Y'a même un plugin pour le surlignage syntaxique des tags docxtemplater, ce qui facilite grandement la vie si vous bossez sur des modèles de documents complexes. C'est très pratique pour les applis métier qui génèrent par exemple des factures ou des contrats à la volée !

Du coup, si vous cherchez une solution open source (licence MIT) pour manipuler des documents Word sans passer par une usine à gaz, allez jeter un œil à ce projet. C'est aussi un bon complément pour ceux qui utilisent déjà des scripts pour organiser leurs fichiers et qui ont besoin d'une interface d'édition rapide.

Ah et y'a une démo live qui tourne et le code est dispo sur GitHub .

Amusez-vous bien !

Web Flight Simulator - Pilotez un F-15 dans votre navigateur

Survoler la Terre entière depuis son navigateur web, sans RIEN installer, c'est possible et en plus c'est gratuit !

Web Flight Simulator c'est un simulateur de vol qui tourne directement dans votre browser, et qui vous colle aux commandes d'un F-15 au-dessus de la planète entière. Un vrai terrain 3D avec des données satellites, du relief, des textures... le tout grâce à CesiumJS pour la partie géospatiale et Three.js pour le rendu 3D. Du coup vous pouvez survoler n'importe quel coin du monde, que ce soit les Alpes, Manhattan ou le désert australien.

Le cockpit du F-15 avec HUD, minimap et terrain satellite en temps réel

Et contrairement à un Microsoft Flight Simulator où faut limite un brevet de pilote pour décoller, là c'est ARCADE à fond. Flèches directionnelles pour piloter, W/S pour les gaz, Espace pour l'afterburner... hop, vous êtes en l'air en 10 secondes. Pas de checklist de 45 items avant le décollage (oui oui, les vrais pilotes comprendront).

D'ailleurs le F-15 est équipé d'un canon Vulcan et de missiles Sidewinder. Y'a même des leurres thermiques si vous vous sentez d'humeur Top Gun. Les ennemis IA sont encore en développement, mais le système de combat est déjà fonctionnel. Perso, j'aime bien mitrailler dans le vide au-dessus de la Tour Eiffel, chacun ses hobbies...

Le HUD est pas mal foutu avec l'altitude, la vitesse, un compas et même une minimap satellite. Côté son, le moteur réagit aux gaz, y'a du vent aérodynamique et surtout l'alarme GPWS qui vous gueule "PULL UP" quand vous foncez dans une montagne.

Si vous êtes curieux de savoir comment ça marche sous le capot, c'est un mix assez malin de CesiumJS qui gère le streaming du terrain à l'échelle planétaire et de Three.js qui s'occupe de l'avion, des particules et des effets visuels. Le tout tourne avec Vite en dev, du JavaScript pur, et c'est open source avec une licence non commerciale. J'ai préféré tester sur Firefox plutôt que sur Chrome, parce que le WebGL y est mieux géré, et ça tourne nickel sur mon MacBook Air M2.

Attention quand même, sauf si vous avez une machine un peu costaud, ça peut ramer dans les zones urbaines denses. Sur un vieux laptop avec une carte graphique intégrée... ça plantera pas, mais ce sera plus un diaporama.

Pour ceux qui connaissent FlightGear qui est un des simulateurs de vol libres les plus connus, là on est sur un truc complètement différent. FlightGear c'est pour les passionnés qui veulent apprendre le vrai pilotage, alors que Web Flight Simulator c'est pour se marrer 5 minutes (ou 2 heures, je juge pas ^^). Et si vous voulez un peu de nostalgie, allez voir l'histoire des premiers Microsoft Flight Simulator de 1982 à 1989... on a fait du chemin depuis.

Une version Lune et Mars ce serait le pied. D'ailleurs CesiumJS propose déjà des datasets Moon Terrain et Mars depuis 2024-2025... donc affaire à suivre côté Web Flight Simulator.

Bref, allez tester , c'est gratuit et ça marche sur n'importe quel navigateur qui gère le WebGL.

Personal AI Infrastructure - L'agent intelligent qui vous connaît vraiment

On nous parle d'agents IA à toutes les sauces depuis deeeees mois mais au final, on se retrouve la plupart du temps avec des outils "stateless" qui perdent le fil dès qu'une session se termine. Heureusement, le projet Personal AI Infrastructure (ou PAI pour les intimes) de Daniel Miessler propose justement de régler ce problème en classant les systèmes IA en 3 niveaux.

Le niveau 1, c'est le chatbot de base type ChatGPT... vous posez une question, il répond, il oublie tout. Le niveau 2, c'est l'agent (genre Claude Code ou Cursor) qui peut exécuter des trucs mais qui ne vous connait pas vraiment. Et le niveau 3, c'est PAI, une infrastructure complète qui observe, planifie, exécute et surtout... apprend de vous.

Concrètement, PAI c'est pas juste une énième surcouche pour votre LLM préféré. C'est un framework (TypeScript, Python, Bash) qui tourne sur Bun et qui structure tout autour de VOUS. Le cœur du truc, c'est ce qu'il appelle "TELOS"... en fait c'est 10 fichiers Markdown (genre MISSION.md, GOALS.md, BELIEFS.md planqués dans votre dossier ~/.claude/) qui définissent qui vous êtes et ce que vous voulez accomplir. Du coup, l'IA ne se contente plus de répondre bêtement, elle comprend pourquoi vous posez la question par rapport à vos projets en cours.

Et y'a un deuxième concept sympa, qui est la séparation propre entre vos fichiers perso (dossier USER/) et l'infrastructure du système (dossier SYSTEM/). Ça veut dire que vous pouvez faire un git pull pour mettre à jour PAI sans écraser ce fichier USER/PREFERENCES.md que vous avez mis 2 heures à peaufiner. Ça parait con dit comme ça, mais quand vous avez passé du temps à peaufiner vos préférences... c'est PAS la même.

Côté mémoire, le système fonctionne sur 3 niveaux (chaud, tiède, froid) pour stocker intelligemment vos infos en fonction de leur fraîcheur. En gros, ce qui est frais et pertinent reste accessible immédiatement, le reste descend progressivement dans les couches inférieures. Attention par contre, faut pas confondre avec un simple fichier de notes... là je vous parle d'un truc qui se met à jour TOUT SEUL à chaque interaction. Et tout ça nourrit l'IA pour qu'elle s'affine au fil du temps sans que vous ayez à tout réexpliquer (parce que soyons honnêtes, c'est CHIANT de re-contextualiser à chaque nouvelle session).

L'architecture est modulaire avec des "Packs" et des "Bundles". Y'a 23 Packs disponibles qui couvrent la génération de code, la recherche d'infos, la gestion de la mémoire... Hop, vous installez le pack voice-system et vous avez un système qui cause façon Jarvis (via ElevenLabs). Et si vous avez besoin de notifications push sur votre téléphone (coucou Clawbot de merde ^^) quand une tâche longue se termine, y'a un pack pour ça aussi, avec ntfy ou Discord.

Le truc qui m'a bien plu dans la philosophie du projet, c'est la hiérarchie stricte : CODE d'abord, puis CLI, puis Prompt, puis Skill. En gros, si un problème peut se résoudre avec un grep ou un script bash de 10 lignes, on ne sort pas l'artillerie lourde. Et si on peut en faire un outil CLI, on ne reste pas sur un prompt de base. Perso, j'aime bien cette approche... ça évite d'utiliser un LLM comme un marteau pour enfoncer tous les clous (sauf que dans la vraie vie, on le fait tous quand même, avouez...).

D'ailleurs, PAI n'est pas réservé qu'aux devs puisque le projet vise aussi les artistes, les managers (pour du suivi d'équipe par exemple), les petits patrons (facturation, marketing...etc) et même monsieur / madame tout-le-monde pour gérer ses finances ou son planning sportif. La v2.5 est sortie il y a quelques jours avec l'exécution parallèle par défaut et des outils de "thinking" améliorés.

Pour installer le bouzin, c'est pas sorcier :

git clone https://github.com/danielmiessler/PAI.git
cd PAI/Releases/v2.5
cp -r .claude ~/
cd ~/.claude && bun run INSTALL.ts

Comptez 5 minutes montre en main (sauf si vous n'avez pas Bun, là faudra l'installer avant avec curl -fsSL https://bun.sh/install | bash). Ça a été développé avec Claude Code mais c'est platform-agnostic, ça marche aussi avec Cursor, Windsurf ou OpenCode et le support de modèles locaux accessible via Ollama ou llama.cpp est sur la roadmap (vivement que ça tourne 100% en local, perso).

Bref, si vous en avez marre des assistants qui ont la mémoire d'un poisson rouge, PAI est une piste sérieuse. C'est du terminal-first, open source (MIT) et largement plus ambitieux que les wrappers habituels. Bon, faut quand même être à l'aise avec le terminal hein... si vous êtes plutôt team GUI, passez votre chemin.

Merci à Pascal pour l'info !

Source

BrowserWing - Laissez l'IA prendre le contrôle de votre navigateur

Vous rêvez de pouvoir dire à une IA "va sur ce site, remplis ce formulaire avec mes infos, et clique sur le gros bouton rouge" et que ça se fasse tout seul pendant que vous allez vous chercher un café ? Hé bien c'est exactement la promesse de BrowserWing , un petit outil open source qui fait le pont entre vos modèles de langage (via les API d'OpenAI, Claude, DeepSeek...) et votre navigateur Chrome ou Chromium.

En fait BrowserWing va enregistrer vos actions dans le navigateur (clics, saisies, navigation), les transformer en scripts, puis les convertir en commandes MCP (Model Context Protocol). Pour ceux qui débarquent, le MCP c'est le nouveau standard qui permet aux IA de discuter avec des outils externes. Vraiment c'est super pratique comme protocole. Je l'utilise tous les jours, et je vous recommande vraiment de vous y intéresser.

Du coup, grâce à ça, vos agents IA peuvent ensuite rejouer ces actions. C'est comme si vous créiez des macros pour le web, mais intégrables dans un flux piloté par l'intelligence artificielle.

Attention toutefois, on est sur une version très précoce (v0.0.1), donc le jeu de commandes est encore limité et les choses peuvent bouger mais l'idée est là...

Voilà, c'est parfait pour simplifier l'automatisation de toutes ces tâches répétitives et reloues qu'on se cogne quotidiennement sur le web. On peut envisager du scraping, du remplissage de formulaires, ou même des workflows qui enchaînent plusieurs sites et l'avantage par rapport à un script Selenium ou Playwright classique, c'est que l'IA peut potentiellement mieux digérer les petits changements visuels et comprendre le contexte de la page.

Comment l'installer sans se brûler les ailes

Pour tester la bête, vous avez deux options. La plus simple, c'est de récupérer le binaire précompilé directement sur la page Releases du projet GitHub. Vous prenez celui qui correspond à votre OS, et hop, c'est parti.

Sur Linux ou macOS :

chmod +x ./browserwing
./browserwing --port 8080

Sur Windows :

./browserwing.exe --port 8080

Une fois que le serveur tourne, il suffit d'aller sur http://localhost:8080 pour accéder à l'interface. Pour les plus barbus qui aiment bien compiler eux-mêmes (je sais qu'il y en a parmi vous), c'est aussi possible via un petit make install et make build-embedded, à condition d'avoir Go 1.21+ et pnpm 9 sous le coude.

Le futur de la navigation assistée ?

Une fois l'interface lancée, le workflow est plutôt intuitif. Vous ouvrez un navigateur piloté par BrowserWing, vous cliquez sur "Enregistrer", et vous faites votre petite popote habituelle. Une fois fini, l'outil vous génère un script que vous pouvez éditer visuellement avant de le transformer en commandes MCP exploitables par n'importe quel agent compatible.

Le truc vraiment cool, c'est que BrowserWing gère la persistance des cookies entre les sessions. Ça veut dire que vous pouvez automatiser des actions sur des sites où vous devez être connecté sans avoir à vous retaper l'authentification à chaque fois. L'IA peut ensuite combiner plusieurs scripts et prendre des décisions en fonction du contenu de la page. C'est plus souple qu'un script codé en dur qui panique au moindre popup inattendu.

Bref, si vous passez vos journées à faire du copier-coller entre des sites web ou que vous voulez voir ce que l'automatisation par IA a vraiment dans le ventre (même si c'est encore "work in progress"), allez jeter un œil à BrowserWing. C'est sous licence MIT, c'est gratuit, et ça pourrait bien vous sauver quelques heures de vie par semaine à l'avenir. D'ailleurs, ça me rappelle un peu ce que je vous disais sur Chrome-GPT à l'époque, mais en beaucoup plus moderne grâce au MCP.

Un immense merci à Lorenper pour le partage de cette pépite !

GitForms - Vos formulaires de contact stockés directement dans GitHub Issues

Intégrer un formulaire de contact sur un petit projet ou un MVP, c'est souvent la plaie. Soit on s'embête avec un backend dédié, soit on finit par payer un abonnement chez Typeform ou FormSpree parce qu'on a dépassé le quota gratuit en trois jours.

Et c'est LÀ qu'intervient GitForms .

Le concept est tout bête mais fallait y penser. En fait l'idée c'est d'utiliser les GitHub Issues comme base de données pour vos formulaires comme ça, au lieu de stocker les messages dans une DB SQL ou NoSQL obscure, chaque soumission de formulaire crée automatiquement une nouvelle issue dans le dépôt GitHub de votre choix.

Pratique, non ?

Côté technique, c'est du solide puisqu'on est sur du Next.js 14, du TypeScript et du Tailwind CSS. Et pour le mettre en place, c'est vraiment l'affaire de 5 minutes... vous clonez le repo, vous générez un token GitHub, et vous déployez ça sur Vercel, Netlify ou même via Docker. Et hop, vous avez un formulaire fonctionnel avec des notifications par email automatiques (merci le système de notifs de GitHub).

L'outil est super personnalisable, vous pouvez changer les couleurs, les textes et même ajouter des langues en bidouillant simplement des fichiers JSON, sans même avoir à toucher au code source. C'est idéal pour ceux qui veulent un truc propre et rapide sans sortir la carte bleue toutes les cinq minutes.

Attention quand même, car niveau RGPD, ne croyez pas que c'est magique. Certes, c'est auto-hébergeable, mais vos données transitent par GitHub. Il faudra donc veiller à ce que votre dépôt soit privé si vous collectez des données personnelles, histoire de ne pas afficher les emails de vos prospects à la vue de tous. Notez aussi que GitHub a des limites de taux (rate limits) pour la création d'issues, donc si vous recevez 10 000 messages par jour, ça risque de coincer.

Enfin, un petit mot sur la licence, le projet semble être sous CC BY-NC-SA 4.0 ce qui veut dire qu'il est parfait pour vos projets perso ou vos tests, mais pour un usage purement commercial, il faudra peut-être vérifier si ça colle avec vos besoins.

Bref, si vous cherchez une solution simple, propre et qui exploite intelligemment les outils que vous utilisez déjà, jetez un œil à GitForms. C'est open source et ça dépanne bien pour les petits projets qui n'ont pas besoin d'une artillerie lourde.

Source

GitHub - Enfin un bouton pour bloquer les Pull Requests ?

GitHub vient peut-être de trouver une piste sérieuse pour sauver la santé mentale des mainteneurs de projets open source. Parce que je sais pas si vous le savez mais gérer un projet populaire sur GitHub, c'est un peu comme essayer de vider l'océan avec une petite cuillère, surtout avec la montée en puissance des contributions de faible qualité, dont une bonne partie est désormais générée par IA ...

Le problème, c'est que la quantité ne veut pas dire la qualité... Entre les Pull Requests (PR) qui ne respectent pas les guidelines du "README.md" et celles qui sont abandonnées en cours de route, les mecs derrière les gros dépôts commencent à fatiguer. Du coup, un représentant de GitHub explique dans une discussion avec la communauté explorer très sérieusement plusieurs options, dont la possibilité de désactiver purement et simplement les Pull Requests sur un dépôt.

Si l'idée est validée, ce serait un vrai changement car actuellement, pour arrêter de recevoir des contributions, la solution la plus radicale reste de passer le repo en mode "archive", ce qui gèle tout le projet (lecture seule). Certains utilisent des automatisations via des fichiers .github/workflows/close-pr.yml, mais c'est du bricolage. L'idée ici, c'est donc d'avoir un bouton spécial pour dire "Ok les gars, on n'accepte plus les modifs pour le moment", sans pour autant couper les issues ou les discussions.

GitHub évalue aussi d'autres leviers, genre limiter les PR uniquement aux collaborateurs du projet ou permettre la suppression définitive d'une PR polluante directement depuis l'interface. Perso, j'aime bien cette idée de bouton car elle évite de bloquer tout le reste du projet inutilement. Le coût de revue d'une PR, même foireuse, reste un effort humain important, alors que la générer avec Copilot ou ChatGPT ne demande qu'un effort minime pour l'expéditeur.

D'ailleurs, si vous faites partie de ceux qui aiment gérer vos PR depuis le terminal , vous voyez bien le délire... quand la liste s'allonge de dizaines d'entrées inutiles, y'a de quoi avoir envie de tout balancer par la fenêtre !!

Bref, peu importe ce qui sera décidé mais c'est bien de voir GitHub à l'écoute. Et si ils valident ces changements, ça pourrait carrément faciliter la vie de pas mal de développeurs qui saturent face au tri permanent.

Bref, je trouve que c'est une super idée !

Source

Xcode 26.3 - Les agents IA Anthropic et OpenAI débarquent enfin !

Apple vient de lâcher une bombe pour tous les développeurs pommés de leur écosystème. Si vous pensiez que l'IA dans l'IDE se limitait à de l'autocomplétion un peu boostée, accrochez-vous parce que la version 26.3 de Xcode arrive (enfin, sa Release Candidate pour l'instant) et elle apporte avec elle le "codage agentique". Aaah je l'attendais depuis looongtemps !

Concrètement, ça veut dire qu'au lieu d'avoir un simple assistant qui vous suggère la fin de votre boucle "for", vous avez maintenant de véritables agents capables de prendre des initiatives. Donc intégration directe de Claude (Anthropic) et de Codex (OpenAI). Apple qui ouvre les vannes et vous laisse choisir votre moteur préféré parmi ces deux-là au lancement, c'est fou !

Le délire est assez poussé puisque ces agents ne se contentent pas d'écrire du code dans un coin. Ils ont accès à la structure complète de votre projet, à la doc officielle d'Apple (histoire de privilégier les dernières APIs) et peuvent même lancer des builds ou des tests pour vérifier que leur tambouille fonctionne. Si ça plante, ils analysent l'erreur et tentent de corriger le tir tout seuls. C'est un peu comme ce qu'on retrouve déjà dans Cursor et Windsurf.

Perso, ce qui me botte le plus, c'est l'utilisation du Model Context Protocol (MCP) parce que je me sers tout le temps de ça. Pour ceux qui ne suivent pas, c'est un protocole ouvert qui permet d'interfacer Xcode avec des agents compatibles.

Et côté interface, c'est plutôt propre. Y'a un petit panneau à gauche pour donner vos ordres en langage naturel ("Ajoute-moi une vue SwiftUI pour gérer le profil utilisateur avec une image ronde et un dégradé"), et tadaaa, l'agent découpe la tâche en petites étapes. On voit le code changer en temps réel, avec des surbrillances pour ne pas être perdu. D'ailleurs, si le résultat est foireux (ça arrive, hein), Xcode crée des "milestones" à chaque modification effectuée par l'agent pour revenir en arrière en un clic. Pas de panique donc.

Si vous voulez mettre les mains dedans tout de suite, la Release Candidate est dispo depuis ce 3 février sur le site développeur d'Apple.

Et pour ceux qui veulent vraiment monter en compétence, Apple organise un atelier "code-along" ce jeudi 5 février sur son site développeur. C'est l'occasion de voir comment dompter ces agents sans qu'ils ne transforment votre projet en plat de spaghettis.

Bref, le métier de dev est en train de muter sévère et ce nouvel Xcode 26.3 pose une sacrée brique.

A vous de jouer maintenant !

Source

❌