Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

AiFormat – Un outil en ligne de commande pour formater vos fichiers pour Claude

Par : Korben
17 avril 2024 à 09:00

Si vous vous intéressez un peu aux outils IA, vous connaissez sûrement Claude, l’assistant IA dernière génération d’Anthropic. Depuis la sortie de sa version 3, c’est d’ailleurs devenu mon meilleur pote pour coder à la vitesse de l’éclair. j’ai même pris un abonnement payant en rusant un peu.

Toutefois, le seul truc qui me ralentissait dans mes grandes ambitions, c’était de devoir copier-coller à la main tous mes fichiers de code dans la fenêtre de contexte de Claude pour ensuite lui demander d’analyser ça, et me proposer des corrections ou une nouvelle fonction. Mais ça, c’était avant car je suis tombé sur un petit bijou opensource qui va vous changer la vie : AiFormat.

Ce petit outil en ligne de commande vous permet de sélectionner des fichiers et dossiers, et de les convertir automatiquement dans un format optimisé pour Claude. En deux clics, tout est dans le presse-papier, prêt à être envoyé à votre IA préférée.

Sous le capot, AiFormat utilise Ink, une chouette librairie pour créer des CLI avec une belle interface utilisateur. Ça vous permet de filtrer et naviguer dans vos fichiers, de les sélectionner avec les flèches, et tout ça de façon super intuitive.

Pour l’installer et le prendre en main, c’est hyper simple, tout est expliqué sur la page Github du projet. Ça commence par un simple :

npm install --global aiformat

Ensuite, pour utiliser aiformat, accédez au répertoire contenant les fichiers et dossiers que vous souhaitez partager avec Claude puis lancez la commande suivante :

aiformat

Le créateur a eu la bonne idée de mettre le projet en opensource (MIT license), du coup n’hésitez pas à y jeter un œil et même contribuer si le cœur vous en dit. La communauté vous dira merci !

Franchement, si vous utilisez souvent Claude pour coder ou analyser des projets, c’est un indispensable à avoir dans sa boîte à outils. Ça vous fera gagner un temps fou au quotidien.

Alacritty – Le terminal nouvelle génération ultra rapide

Par : Korben
7 avril 2024 à 09:00

Envie d’un terminal nouvelle génération qui allie performance et flexibilité ? Ne cherchez plus, Alacritty est fait pour votre bonheur !

Disponible sur toutes les plateformes qui comptent (Linux, macOS, Windows, BSD ^^), ce terminal au look sobre et épuré cache sous son capot une configuration ultra complète. Pas besoin de réinventer la roue, Alacritty s’intègre avec vos applications préférées pour vous offrir une expérience sur-mesure sans compromis sur la vitesse. Bon OK, c’est encore un peu jeune, il est un peu long à configurer et il reste quelques fonctionnalités à ajouter et bugs à corriger, mais ça n’empêche pas de nombreux baroudeurs du shell de l’utiliser quotidiennement. YOLO comme on dit.

Mais Alacritty, c’est pas qu’un simple émulateur de terminal de base. Il embarque des features bien pratiques pour améliorer la vie des accros de la ligne de commande :

  • Vous aimez vim ? Ça tombe bien, avec le mode Vi vous pouvez retrouver vos réflexes pour vous déplacer et sélectionner du texte.
  • Vous avez la flemme de scroller manuellement pour retrouver une commande ou une erreur ? Utilisez la recherche intégrée pour localiser ce que vous voulez en un clin d’œil.
  • Vous en avez marre de jongler entre votre souris et votre clavier ? Avec les hints façon regex, plus besoin de quitter le clavier, interagissez avec n’importe quel texte à l’écran.
  • Votre PC rame quand vous ouvrez 10 terminaux en même temps ? Pas de problème, avec le mode multi-fenêtres , un seul process Alacritty est partagé intelligemment.

Et je vous ai parlé que de quelques fonctionnalités, y’en a bien d’autres à découvrir dans la doc.

Après la théorie, passons à la pratique. Pour l’installer, c’est ultra simple. Si vous êtes sur macOS ou Windows, direction la page des releases GitHub pour chopper le binaire. Sous Linux ou BSD, il est sûrement déjà dans le gestionnaire de paquets de votre distrib. Sinon, les instructions détaillées vous expliqueront comment compiler depuis les sources.

Une fois installé, pas besoin de vous embêter à configurer, les options par défaut sont déjà pas mal. Mais si vous voulez quand même mettre votre patte, le fichier de config en TOML se trouve, en fonction de votre OS, dans $XDG_CONFIG_HOME/alacritty, $HOME/.config/alacritty ou %APPDATA%\alacritty.

Par exemple, pour l’installer sous macOS, vous pouvez faire également :

brew install --cask alacritty

Puis créer un fichier de config comme ceci :

mkdir -p ~/.config/alacritty && touch ~/.config/alacritty/alacritty.toml

Voici un exemple de config à mettre dedans pour obtenir un truc comme ça :

# Configuration du shell et des variables d'environnement
shell = { program = "/bin/zsh", args = ["-l"] }

[env]
TERM = "xterm-256color"

# Activation du rechargement dynamique de la configuration
#live_config_reload = true

# Configuration de la fenêtre pour un look minimaliste et semi-transparent
[window]
decorations = "buttonless"
dynamic_padding = false
opacity = 0.9
padding = { x = 25, y = 20 }

# Configuration de la police personnalisée avec styles spécifiques pour différents états du texte
[font]
size = 20.0
[font.normal]
family = "JetBrains Mono"
style = "Medium"
[font.bold]
family = "JetBrains Mono"
style = "Heavy"
[font.italic]
family = "JetBrains Mono"
style = "Medium Italic"
[font.bold_italic]
family = "JetBrains Mono"
style = "Heavy Italic"

# Configuration des couleurs
[colors]
[colors.primary]
background = '#282a36' # Arrière-plan foncé
foreground = '#f8f8f2' # Texte clair
[colors.cursor]
text = 'CellBackground'
cursor = '#ff79c6' # Couleur du curseur
[colors.selection]
text = 'CellBackground'
background = '#44475a'

# Configuration du curseur
[cursor]
style = { shape = "Block", blinking = "On" }
thickness = 0.25

# Ajout de raccourcis clavier pour améliorer l'efficacité
[keyboard]
bindings = [
  { key = 'N', mods = 'Control|Shift', action = 'CreateNewWindow' },
  { key = 'C', mods = 'Control|Shift', action = 'Copy' },
  { key = 'V', mods = 'Control|Shift', action = 'Paste' },
  { key = '+', mods = 'Control', action = 'IncreaseFontSize' },
  { key = '-', mods = 'Control', action = 'DecreaseFontSize' },
  { key = '0', mods = 'Control', action = 'ResetFontSize' }
]

Mais du coup, c’est vraiment le terminal le plus rapide ?

Difficile à dire… Mesurer les perfs d’un terminal, c’est compliqué. Sur les benchmarks, en tout cas, Alacritty s’en sort bien, surtout grâce à l’accélération GPU. Après, sur des critères plus subjectifs comme la latence ou la fluidité de l’affichage, difficile de départager les challengers. Le mieux est de l’essayer et de voir s’il convient à VOS usages.

Par contre, ne vous attendez pas à retrouver toutes les fonctionnalités de terminaux plus anciens. Pas de tabs, pas de splits, Alacritty se concentre sur son cœur de métier. Pour ces features, votre gestionnaire de fenêtres ou un multiplexeur comme tmux feront très bien l’affaire. Et si vous voulez faire un peu de customisation, il faudra vous plonger dans la doc.

Après, si jamais il vous manque un truc indispensable, le projet est ouvert aux contributions. Alacritty est d’ailleurs distribué sous licence Apache 2.0. Donc si vous vous sentez de rajouter ce p’tit truc manquant, la communauté vous accueillera à bras ouverts. Comme quoi, y’a pas que Microsoft qui sait faire dans l’open source ! mdr.

En attendant de voir vos pull requests pleuvoir sur ce projet, je ne peux que vous conseiller de tester Alacritty. Vous verrez, c’est le genre d’outil auquel on s’habitue vite et qui change la vie. Bon OK, ça reste un terminal, faut pas exagérer non plus. N’empêche que depuis que j’ai goûté à la fluidité de son rendu, j’avoue que j’aurais du mal à revenir en arrière !

Merci à Lorenper

Avec l’IA, GitHub va détecter et corriger les vulnérabilités dans votre code !

21 mars 2024 à 13:44

"Code Scanning Autofix", c'est le nom de la nouvelle fonctionnalité lancée par GitHub ! Elle a pour objectif d'analyser votre code à la recherche de vulnérabilités, et surtout, d'automatiser la correction à votre place.

La fonctionnalité "Code Scanning Autofix" est disponible en beta publique, et elle est activée par défaut sur tous les dépôts privés des utilisateurs de GitHub Advanced Security. Elle bénéficie de l'intelligence artificielle au travers de GitHub Copilot et CodeQL, ce dernier étant le moteur d'analyse de code développé par GitHub pour automatiser les contrôles de sécurité.

Au sein de son article de blog, GitHub annonce que la correction automatique du code "couvre plus de 90% des types d'alertes en JavaScript, Typescript, Java et Python, et propose des suggestions de code permettant de corriger plus des deux tiers des vulnérabilités trouvées avec peu ou pas de modifications."

Il est à noter que cette fonctionnalité ne va pas uniquement corriger le code, elle va aussi prendre le temps de vous expliquer en langage naturel la suggestion de correction permettant d'améliorer la sécurité de votre code. GitHub précise que le développeur peut accepter, modifier ou rejeter la suggestion proposée par l'IA. L'analyse peut être effectuée sur un ou plusieurs fichiers, ainsi que sur les dépendances d'un projet.

Source : GitHub

Cette fonctionnalité est particulièrement intéressante pour augmenter le niveau de sécurité du code produit par les développeurs. Ceci permet d'avoir un suivi en "temps réel" de son code et de pouvoir être proactif dans la détection de vulnérabilités. Néanmoins, il faut garder à l'esprit que l'IA peut tenter de corriger une vulnérabilité, mais le correctif est-il réellement complet ? Il semble important de s'en assurer.

Dans les prochains mois, GitHub ajoutera la prise en charge de deux autres langages : C# et Go. En attendant, je vous laisse avec la vidéo de présentation de cette nouveauté :

Pour en savoir plus, vous pouvez consulter cette documentation officielle.

The post Avec l’IA, GitHub va détecter et corriger les vulnérabilités dans votre code ! first appeared on IT-Connect.

Code Scanning Autofix – GitHub lance la correction de vulnérabilités par IA

Par : Korben
21 mars 2024 à 11:09

Les failles de sécurité dans le code sont le cauchemar des développeurs et des équipes de sécurité et font surtout le régal des hackers. Alors pour y remédier, GitHub a décidé de sortir l’artillerie lourde avec Code Scanning Autofix ! Attention les yeux, cet outil mêle IA et analyse statique et nous fait la promesse de corriger les vulnérabilités en un clin d’œil pendant que vous codez.

Concrètement, Code Scanning Autofix (actuellement en bêta publique) est activé par défaut sur tous les dépôts privés des clients GitHub Advanced Security. Et devinez quoi ? Il gère déjà plus de 90% des types d’alertes pour JavaScript, TypeScript, Java et Python. De quoi mettre une sacrée claque à la dette de sécurité applicative !

En coulisse, cette magie opère grâce à deux technologies de pointe made in GitHub : Copilot pour l’IA et CodeQL pour l’analyse statique. Une fois Code Scanning Autofix activé, il vous propose des correctifs quasi tout cuits qui sont censés régler les deux tiers des vulnérabilités détectées, le tout sans trop d’efforts de votre part.

Voici un exemple de correctif proposé :

Pour chaque faille repérée dans un des langages pris en charge, vous obtenez une explication en langage naturel du correctif suggéré, avec un aperçu du bout de code à valider, modifier ou rejeter. Cela peut inclure des changements dans le fichier en cours, d’autres fichiers, voire des dépendances du projet. Bien entendu, vous gardez le contrôle et pouvez vérifier si le correctif résout bien le problème sans casser la fonctionnalité.

L’intérêt est donc de décharger les experts en sécurité de la fastidieuse traque aux vulnérabilités introduites pendant le développement. Ils pourront alors se concentrer sur la sécurité globale de leur projet.

GitHub promet d’étendre prochainement Code Scanning Autofix à d’autres langages, en commençant par C# et Go. Et pour en savoir plus, foncez sur la doc de GitHub !

Source

En 2023, près de 12,8 millions de secrets d’authentification ont été divulgués sur GitHub !

13 mars 2024 à 07:40

Un nouveau rapport publié par GitGuardian met en lumière les problèmes de sécurité associés aux dépôts GitHub. En 2023, les utilisateurs ont exposé 12,8 millions de secrets d'authentification dans un total de 3 millions de dépôts publics !

Les experts en sécurité de GitGuardian ont mis en ligne un nouveau rapport qui permet de se rendre compte à quel point les dépôts GitHub sont susceptibles de contenir des données sensibles pouvant mettre en péril la sécurité d'une organisation. En l'occurrence, il s'agit d'informations d'authentifications disponibles en libre accès au sein de millions de dépôts GitHub publics.

En 2023, GitGuardian a détecté près de 12,8 millions de secrets dans répartis dans 3 millions de dépôts publics, ce qui représente une augmentation de 28% vis-à-vis de l'année précédente. Au total, il est question de près de 3,7 millions de secrets uniques. Pour essayer d'améliorer la situation, GitGuardian a émis 1,8 million d'alertes par e-mail afin d'alerter certains utilisateurs ayant divulgué des secrets sur GitHub. Néanmoins, seul 1,8 % des utilisateurs contactés ont fait le nécessaire dans les jours suivant la notification.

Des millions de secrets dans les dépôts publics GitHub
Source : GitGuardian

À quoi correspondent ces secrets ?

Il s'agit de mots de passe de comptes, de clés d'API, de certificats SSL/TLS, de clés de chiffrement, de jetons OAuth, ou d'autres identifiants. Autrement dit, ce sont des informations pouvant permettre à un tiers d'obtenir un accès à des ressources privées.

Grâce à un algorithme de machine learning, GitGuardian est capable de différencier les secrets basiques de ceux un peu plus spécifiques. Si l'on s'intéresse plus particulièrement à des secrets spécifiques, nous avons trouvé plus de 1 million de secrets d'API Google valides (occurrences), 250 000 secrets Google Cloud et 140 000 secrets AWS IAM.", peut-on lire.

La très forte augmentation de l'utilisation de plusieurs intelligences artificielles se traduit par la fuite de clés d'API : "En 2023, GitGuardian a observé une multiplication par 1212 du nombre de fuites de clés API OpenAI par rapport à l'année précédente, ce qui en fait sans surprise le détecteur ayant connu la plus forte croissance." - OpenAI étant la société créatrice de ChatGPT. Dans une moindre mesure, ceci s'applique à d'autres IA comme Google Bard, Claude, ou Cohere.

À qui appartiennent ces secrets ?

D'après le rapport de GitGuardian, le secteur de l'IT est le plus impacté et arrive en tête avec 65,9 %, suivi par le secteur de l'éducation avec 20,1 %. Pour le reste, ce qui représente 14%, GitGuardian ne fait pas la distinction et regroupe tous les autres secteurs.

Parlons maintenant de la provenance géographique de ces secrets. Et, ce n'est pas rassurant, car la France se classe 5ème dans le "Top 10" des pays avec le plus de leaks de secrets dans GitHub (GitGuardian s'appuie sur la localisation précisée sur le profil GitHub des utilisateurs). Surtout, le classement de la France a progressé, de façon négative, vis-à-vis de l'année précédente.

GitHub - Pays avec le plus de leak de secrets
Source : GitGuardian

Comment se protéger ?

Tout cela est effrayant quand on sait que de nombreuses attaques et fuites de données sont souvent associées à la compromission d'un compte... Pour lutter contre ce problème, GitGuardian a mis en ligne un outil gratuit nommé "Has My Secret Leaked?". Nous en avions parlé dans cet article :

En complément, sachez que le mois dernier, GitHub a activé par défaut une protection pour éviter l'exposition accidentelle de secrets lors d'un push vers un dépôt GitHub.

Source

The post En 2023, près de 12,8 millions de secrets d’authentification ont été divulgués sur GitHub ! first appeared on IT-Connect.

Mercedes-Benz a exposé par erreur des données sensibles sur GitHub

31 janvier 2024 à 07:00

Voilà une erreur qui aurait pu coûter cher à Mercedes-Benz : un jeton d'authentification correspondant à un employé du fabricant automobile a été découvert dans un dépôt GitHub public ! Grâce à lui, n'importe qui aurait pu accéder au serveur GitHub Enterprise de Mercedes-Benz.

Au cours du mois de janvier 2024, les chercheurs en sécurité de RedHunt Labs ont découvert que Mercedes-Benz avait involontairement laissé un jeton d'authentification sur un dépôt GitHub public. Autrement dit, ce jeton était à la portée de tout le monde... Mercedes-Benz a été informé de cette découverte le 22 janvier 2024 par RedHunt Labs, avec l'aide du média TechCrunch. Il semblerait qu'il était accessible depuis septembre 2023.

Shubham Mittal, cofondateur de RedHunt Labs, a déclaré : "Le jeton GitHub donnait un accès "illimité" et "non surveillé" à l'ensemble du code source hébergé sur le serveur interne GitHub Enterprise Server". Il affirme également que les dépôts comprennent de nombreuses informations sensibles, notamment des clés d'accès Cloud, des clés d'API, des documents d'études, des codes sources, ou encore des identifiants.

Au passage, Shubham Mittal a pu prouver qu'il avait en sa possession des identifiants Microsoft Azure et AWS, ainsi qu'une base de données Postgres, appartenant à Mercedes-Benz. À ce jour, rien ne prouve que des données de clients ont été exposées dans le cadre de cet incident.

Heureusement que cela n'est pas tombé entre de mauvaises mains... Deux jours après avoir eu connaissance de ce problème de sécurité, Mercedes-Benz a révoqué le jeton d'authentification exposé et a procédé à la suppression du dépôt GitHub public.

Le constructeur automobile en a profité pour s'exprimer publiquement : "Nous pouvons confirmer qu'un code source interne a été publié sur un dépôt GitHub public par erreur humaine. Ce jeton donnait accès à un certain nombre de dépôts, mais pas à l'ensemble du code source hébergé sur le serveur interne GitHub Enterprise Server.".

Source

The post Mercedes-Benz a exposé par erreur des données sensibles sur GitHub first appeared on IT-Connect.

OSS Insight – Explorez et comparez les dépôts GitHub en un clin d’oeil

Par : Korben
29 janvier 2024 à 09:00

Vous le savez, je suis un grand amateur et un grand défenseur des logiciels libres et Open Source. Et je n’ai pas peur de le dire, GitHub est l’un de mes sites préférés.

On y trouve des pépites comme des scripts incroyables, des outils géniaux et j’adore ça ! Mais ce n’est pas forcément toujours simple de suivre tout ce qui se passe dans cet univers.

Enfin, ça, c’était avant parce qu’il existe un site génial qui s’appelle OSS Insight et qui offre des informations très détaillées et des tendances sur le monde de l’open source en analysant plus de 5 milliards de lignes d’événements GitHub.

Il fournit une nouvelle façon d’explorer les données GitHub en posant simplement des questions en langage naturel, ce qui est extrêmement pratique quand on veut comparer les choses.

Par exemple, OSS Insight vous permet de comparer deux dépôts à partir des mêmes indicateurs, tels que les étoiles, les forks, les issues, les commits, les pull requests, le nombre de contributeurs, les langages de programmation utilisés ou encore les lignes de code modifiées.

Imaginez que vous travaillez sur un projet et que vous souhaitez comparer deux bibliothèques open source pour déterminer laquelle est la plus populaire et la mieux maintenue. Et bien il suffit de lui demander.

Mais ça ne s’arrête pas à ça. Voici quelques exemples de questions que les gens posent à l’outil :

En plus de cela, OSS Insight offre des informations sur les tendances techniques mensuelles avec des listes de dépôts à découvrir.

Comme ça, vous pouvez suivre de près certains types d’outils populaires, comme les bases de données, les frameworks JavaScript ou encore les outils liés aux LLM. Vous pouvez également obtenir des analyses sur la productivité des développeurs et les statistiques des dépôts.

Pour tester le OSS Insight, il vous suffit de vous rendre sur leur site web et de plonger dans cet océan de données.

Un ordinateur 16-bits dans Excel

Par : Korben
28 janvier 2024 à 17:04

Voici un projet vraiment original mené par le youtubeur Inkbox qui a tout simplement conçu un ordinateur entièrement dans Microsoft Excel. Le tout sans recourir à des scripts Visual Basic, des plugins, ou toute autre aide-externe.

Ce système 16-bits, fonctionnant sur une simple feuille de calcul, repose sur une architecture composée d’instruction personnalisée, comprenant 23 mnémoniques d’instruction et 26 opcodes.

C’est super ingénieux !

Le design principal du CPU se divise en plusieurs unités : une unité de récupération, une unité de contrôle, une unité logique arithmétique, un fichier registre, une unité PC, plusieurs multiplexeurs, une unité de contrôle de la mémoire, une table de RAM de 128KB, et un affichage de 128×128 en 16 couleurs.

Ce projet, disponible sur GitHub sous le nom « excelCPU« , inclut plusieurs fichiers principaux comme le CPU lui-même, une ROM, un ensemble d’instructions détaillées, un compilateur pour Excel-ASM16, et un dossier de programmes d’exemple.

Cette conception est non seulement un tour de force en matière de programmation, mais elle ouvre également de nouvelles perspectives sur les capacités d’Excel en tant qu’outil de développement. Pour vous dire à quel point c’est balèse, le CPU fonctionne à partir d’un simple signal d’horloge et peut être contrôlé en mode automatique ou manuel, avec diverses options pour réinitialiser la RAM, lire la ROM, et exécuter des programmes. Et bien sûr, les utilisateurs de cet « ordinateur » peuvent également écrire des programmes dans le langage Excel-ASM16 et les compiler sur la feuille de calcul ROM.xlsx.

Bref, on n’arrête pas la bidouille de l’extrême !

❌
❌