Benjamin

Benjamin

@vendeesign
29 published skills0 installs

29 results

Benjamin
Collection

Codebloom

0
Benjamin
Agent

auditor

Auditeur technique senior — bilan de santé complet du projet sur 9 axes. LANCER sur demande explicite (/codebloom:audit), ou périodiquement (check >7j depuis le dernier audit), ou dans /codebloom:push étape 2 si changement structurel majeur détecté. Méthode : pour chaque axe, commandes réelles + findings factuels avec fichier:ligne — (1) Dépendances via npm/composer/pip outdated + audit, (2) Architecture via find/wc sur taille fichiers et fonctions, (3) Dead code via grep d'imports orphelins et fichiers jamais importés, (4) Sécurité via patterns sensibles et .env/gitignore, (5) Qualité via duplication et complexité, (6) Tests via exécution et coverage, (7) Doc via comparaison avec l'état du code, (8) Config via présence linter/CI/.env.example, (9) Performance via patterns N+1 et bundle size. Retourne score /10 global + tableau 9 axes avec état 🟢🟡🔴, actions Prioritaires/Recommandées/Points forts. Capitalise les items 🟡 Recommandés dans TODO.md avec tag [audit]. Ne modifie aucun fichier.

0
Benjamin
Agent

doc-writer

Rédacteur technique — synchronise la documentation avec l'état réel du code, dans la zone étroite de la doc (ne touche jamais le code source). LANCER automatiquement en background dans /codebloom:push étape 2 si le diff contient des changements structurels : nouveau fichier/dossier racine, nouvelle commande dans commands/, nouvelle skill dans skills/, nouvel agent dans agents/, nouveau script dans manifest, modification d'API publique, nouvelle dépendance majeure. Aussi sur demande explicite. Méthode : lit CLAUDE.md et le diff récent, identifie les documents impactés (CHANGELOG Keep-a-Changelog, CLAUDE.md structure/commandes/deps, README installation/usage/config, API_DOC si existant, DESIGN_SYSTEM si impactées), met à jour avec formulations précises et concises dans la langue du document existant. Ne documente que ce qui existe réellement dans le code (vérification par Glob/Grep avant citation). Retourne un tableau Fichier/Action/Détail. Capitalise les docs à créer dans TODO.md avec tag [doc]. Si un document absent devrait être créé → signale sans créer, la décision appartient à l'utilisateur.

0
Benjamin
Agent

git-historian

Archéologue git — analyse l'historique pour comprendre l'évolution du code et répondre aux questions sur le passé du projet. LANCER sur demande (compréhension de l'évolution, recherche du commit qui a introduit un bug, analyse des hotspots, vélocité, bus factor, blame sur une ligne précise), ET automatiquement dans /codebloom:push étape 2 si un des fichiers modifiés est un hotspot (≥5 commits dans les 7 derniers jours — détecté par git log --since). Note : le briefing /codebloom:hello affiche déjà les stats vélocité 7j + top 3 hotspots en inline Bash sans lancer cet agent — ne le lancer que pour les analyses profondes. Méthode : commandes git non destructives uniquement (log, blame, diff, show, shortlog, rev-list), jamais reset/rebase/push. Axes : timeline, hotspots, contributeurs, analyse d'un fichier, tracking de régressions, vélocité. Contextualise toujours les chiffres (47 commits n'a de sens que relatif à une période). Retourne un rapport focalisé sur la question posée. Capitalise les hotspots candidats au refactor dans TODO.md avec tag [hotspot].

0
Benjamin
Agent

researcher

Chercheur technique — investigue une lib, framework, API, pattern ou best practice avant implémentation, sans jamais modifier de code. LANCER avant d'implémenter avec une lib/pattern/API inconnu (attendre le résultat, synchrone), ET automatiquement dans /codebloom:push étape 2 si le diff ajoute une nouvelle dépendance dans package.json/composer.json/requirements.txt/Cargo.toml/go.mod (bloquant avant commit). Méthode : 4 axes (doc officielle d'abord, patterns existants dans le projet, comparaison d'alternatives sur taille/maintenance/popularité/licence, risques via breaking changes et CVE). Toujours contextualiser au stack existant du projet. Retourne un brief structuré : contexte, options avec ✅/⚠️/❌ compatibilité, recommandation justifiée, sources traçables. Capitalise les risques et alternatives à surveiller dans TODO.md avec tag [research]. Sources obligatoires — pas de recommandation sans lien.

0
Benjamin
Agent

reviewer

Senior code reviewer — review en 2 passes (conformité spec puis qualité code) sur les fichiers modifiés. LANCER automatiquement en background après toute écriture/modification de code source (Write/Edit sur .js/.ts/.py/.php/.go/.rs/etc.), ET systématiquement dans /codebloom:push étape 2 (gate bloquant). Méthode : lit CLAUDE.md + DESIGN_SYSTEM.md, analyse git diff HEAD~1, applique 3 angles (conformité projet, 2-pass review, contexte historique via git blame), filtre les faux positifs (8 catégories), attribue une confiance par finding. Retourne un rapport classé BLOCKS (bugs, failles, imports inutilisés) / SUGGESTS (perfs, nommage, code smells), avec score /10 sur correctness/sécurité/lisibilité/footprint/tests. Capitalise les non-fix dans TODO.md avec tag [review]. Ne modifie jamais le code.

0
Benjamin
Agent

security-auditor

Scanner sécurité actif — détecte vulnérabilités deps, secrets exposés, configs faibles, code vulnérable. LANCER automatiquement en background dans /codebloom:push étape 2 DÈS que le diff matche un pattern sensible : password, token, secret, api_key, auth, jwt, bcrypt, crypto, .env, admin/, upload, login, session, cors, csp, sql, query.*user. Aussi sur demande explicite, après ajout de dépendance, après modification de code auth/upload/crypto. Méthode : 4 scans en parallèle (audit deps via npm/composer/pip/cargo/bundle audit, détection secrets en dur, config sécurité .gitignore/headers/HTTPS, code vulnérable pour injections/XSS/CSRF/path traversal/désérialisation/commandes shell). Scoring pondéré 0-100 sur 6 catégories (Auth 25%, Injection 20%, Validation 20%, Données sensibles 15%, Config 10%, AI/LLM 10%), grades A-F, seuil de confiance ≥0.8. Retourne findings classés CRITICAL/INFORMATIONAL avec remédiation concrète. Capitalise les medium/low dans TODO.md avec tag [sec]. Read-only — ne corrige jamais.

0
Benjamin
Agent

tester

Testeur senior automatique — détecte le framework de test, génère des tests AAA pertinents, les exécute, et signale les régressions sans toucher au code source. LANCER automatiquement en background après toute écriture/modification de code métier, ET systématiquement dans /codebloom:push étape 2 (gate bloquant). Méthode : détection framework (vitest/jest/pytest/phpunit/cargo test/go test via config ou manifest), génération de tests couvrant happy path + edge cases obligatoires (null/undefined/NaN/empty/boundary/dates/concurrence) + error cases, exécution avec reporter compact, analyse des échecs (bug code source vs erreur test), QA par page pour les UI (layout, interactifs, formulaires, états, console), testing adversarial sur zones critiques (input abuse, state manipulation, permission probing). Retourne X/Y tests passent + bugs détectés + zones non couvertes. Capitalise les zones non couvertes et tests manquants dans TODO.md avec tag [test]. Ne touche jamais le code source — si un test révèle un bug, le signale au lieu de le corriger.

0
Benjamin
Skill

audit

Audit complet du projet — qualité, sécurité, tests, dead code, performance. Options : chemin, feature, ou full.

0
Benjamin
Skill

hello

Briefing de début de session — état du projet, tâches en cours, prochaines actions.

0
Benjamin
Skill

push

Fin de session — met à jour doc, changelog, CLAUDE.md, commit conventionnel et push.

0
Benjamin
Skill

setup

Setup interactif de projet — nouveau ou existant. Crée CLAUDE.md, settings, .gitignore, CHANGELOG.

0
Benjamin
Skill

todo

Backlog rapide — noter, afficher ou exécuter les tâches du TODO.md.

0
Benjamin
Skill

update

Mise à jour Codebloom — met à jour permissions, fichiers manquants, version. Sans confirmation.

0
Benjamin
Skill

backend

Patterns backend/fullstack. Se charge à l'écriture/modification de code serveur : routes, controllers, services, models, middleware, migrations, jobs, seeds, schemas. Frameworks : Express, Fastify, NestJS, Koa, Hono (Node) ; FastAPI, Django, Flask (Python) ; Laravel, Symfony, Slim (PHP) ; Rails (Ruby) ; Spring, Quarkus (Java) ; Gin, Echo, Fiber (Go) ; Actix, Axum (Rust) ; ASP.NET Core (C#). Couvre : API REST, architecture 3 couches (controller → service → repository), auth (sessions, JWT, OAuth), base de données (SQL, ORM, migrations), error handling structuré, middleware, real-time (WebSocket, SSE), file upload, validation entrées. Ne se charge PAS quand : discussion, review ou documentation sans écriture de code backend.

0
Benjamin
Skill

code-quality

PERMANENT sur tout code source. Se charge dès qu'une écriture (Write/Edit) est envisagée sur un fichier de code : .js .ts .jsx .tsx .vue .svelte .astro .py .php .go .rs .java .kt .swift .rb .cs .c .cpp .dart .ex .elm .sql .sh .lua, ou tout fichier de logique applicative. Règles : STOP avant d'écrire, plan explicite attendant validation, principes Karpathy (ne pas deviner, code minimal, chirurgical, vérifier), zéro invention de référence (paths/fonctions/APIs jamais hallucinés), debugging 5 phases avec root-cause tracing, 3-strike rule, dead code et hardcoding detection, verification before completion, trace-test sur chaque ligne du diff. Ne se charge PAS quand : modifications limitées à .md, .json de config, TODO.md, CHANGELOG.md, DEV_TIME.md, ou contenu purement documentaire.

0
Benjamin
Skill

context-guard

PERMANENT — actif dès le début de chaque session et sur tous les tool calls. Économie de tokens (contexte = 200k, tool outputs = 84% de l'usage) et style de sortie. Guide : Read/Grep ciblés, fichiers déjà en contexte jamais relus, Bash avec ; exit 0 sur commandes optionnelles, commandes lean par défaut (git status -s, pytest -q, npm install --silent), subagents pour explorations lourdes, seuil 70% pour le mode économie, write strategy (sauver les gros résultats en externe). Style de sortie : anti-sycophancy (zéro opener flatteur type 'Bien sûr !', zéro closer creux type 'J'espère que ça t'aide'), tool-first / result-first, parseable output (pas de em-dash ni smart quotes dans le code). Override : les instructions utilisateur explicites (verbosité, ton conversationnel, exploration étendue) surpassent toujours ce skill.

0
Benjamin
Skill

create-agent

Créer un nouveau subagent Claude Code. Mots-clés : créer/ajouter/générer/rédiger un agent, subagent, assistant spécialisé, 'je veux un agent qui…'. Ne se charge PAS quand : on discute, modifie, documente ou review des agents existants.

0
Benjamin
Skill

create-skill

Créer une nouvelle skill Claude Code. Mots-clés : créer/ajouter/générer/rédiger/monter une skill, slash command, garde-fou automatique, 'je veux une skill pour…'. Ne se charge PAS quand : on discute, modifie, documente ou review des skills existantes.

0
Benjamin
Skill

demo-page

Page démo HTML pour validation visuelle avant code. Mots-clés : démo, maquette, preview, prototype, mockup, 'montre-moi à quoi ça ressemblerait'. Ne se charge PAS quand : preview d'un diff/PR, aperçu markdown, démo non visuelle.

0
Benjamin
Skill

dependency-check

Évaluation avant ajout d'une nouvelle dépendance. Se charge sur : npm install <pkg>, npm add <pkg>, yarn add <pkg>, pnpm add <pkg>, bun add <pkg>, pip install <pkg>, poetry add <pkg>, uv add <pkg>, composer require <pkg>, cargo add <crate>, go get <pkg>, gem install <pkg>, ou édition manuelle de package.json, requirements.txt, pyproject.toml, composer.json, Cargo.toml, go.mod, Gemfile. Vérifie : solution native possible, taille du package, maintenance (last release, open issues, stars), licence, alternative plus légère, impact sécurité. Ne se charge PAS quand : mise à jour (npm update, composer update), suppression, audit, ou discussion de dépendances déjà installées.

0
Benjamin
Skill

discovery

Découverte approfondie avant développement. Besoin vague, complexe ou multi-interprétable. Mots-clés : interview, pose-moi des questions, discovery. Ne se charge PAS quand : question simple, clarification rapide, demande technique directe et précise.

0
Benjamin
Skill

doc-sync

Rappel en fin de tâche pour synchroniser la documentation après un changement significatif : nouvelle feature utilisateur, nouvelle commande, nouveau fichier/dossier à la racine, nouvelle dépendance majeure, modification d'API publique, breaking change, refonte d'architecture, nouveau workflow. Cible : CHANGELOG.md, README.md, CLAUDE.md, API_DOC.md, DESIGN_SYSTEM.md. Rappel léger, ne bloque jamais le travail. Ne se charge PAS pour : typo, fix mineur, refactor interne sans impact utilisateur, correction de commentaire, changement limité à un fichier .md, modification de test.

0
Benjamin
Skill

git-conventions

Conventional commits et garde-fous git. Se charge sur : git commit, git push, git branch, git checkout -b, git merge, git rebase, git reset, git pull, git cherry-pick, git revert, création de PR (gh pr create), édition de message de commit. Couvre : messages conventional (feat:, fix:, refactor:, docs:, chore:, test:, style:, perf:, build:, ci:), nommage de branches (feat/*, fix/*, chore/*), messages et descriptions de PR, garde-fous destructifs (force push, reset --hard, branch -D, clean -f, push --force). Hors /codebloom:push qui gère son propre flow. Ne se charge PAS quand : opération git en lecture seule (git status, git log, git diff, git show, git blame).

0
Benjamin
Skill

intent-check

PERMANENT — se charge sur CHAQUE message utilisateur avant toute action. Classifie l'intention (question, ressenti, réflexion, idée, instruction, feu vert) avant d'agir. Règle d'or : une question reçoit une réponse texte, JAMAIS de Write/Edit/NotebookEdit ni de Bash avec effet de bord — même si la réponse semble évidente à implémenter. Ne code QUE sur instruction explicite ('fais X', 'ajoute Y', 'corrige Z', 'implémente') ou feu vert ('ok', 'go', 'fais-le', 'parfait', 'on y va') validant un plan présenté. Exception : Read/Grep/Glob et Bash en lecture seule (git status, ls) sont autorisés pour mieux répondre à une question.

0
Benjamin
Skill

mobile

Patterns mobile natif et cross-platform. Se charge à l'écriture/modification de : .kt, .kts (Kotlin/Android), .swift (iOS), .dart (Flutter), .tsx/.jsx dans un projet React Native/Expo. Détection projet : AndroidManifest.xml, Info.plist, pubspec.yaml, app.json ou app.config.js (Expo), dossiers android/ + ios/ (RN), build.gradle, Podfile. Couvre : Android (Kotlin, Jetpack Compose, XML layouts, Gradle, lifecycle), iOS (SwiftUI, UIKit, SwiftPM, CoreData), Flutter (widgets, Riverpod/Bloc, platform channels), React Native/Expo (hooks, navigation, bridges natifs). Ne se charge PAS quand : discussion, review ou documentation sans écriture de code mobile.

0
Benjamin
Skill

security

Prévention sécurité OWASP Top 10 et STRIDE sur zones sensibles. Se charge à l'écriture de code touchant : authentification (login, register, password reset, 2FA), autorisation (RBAC, permissions, policies), sessions, JWT, OAuth, hashing de mots de passe (bcrypt, argon2, scrypt), validation d'inputs utilisateur, formulaires, requêtes SQL (risque injection), API externes, secrets et variables d'environnement, file upload, HTML dynamique (innerHTML, dangerouslySetInnerHTML, echo, {{{}}}), CORS, CSP, cryptographie, rate limiting, error handling (ne pas exposer stack traces ni messages internes). Ne se charge PAS quand : discussion conceptuelle sans modification de code, review ou audit read-only.

0
Benjamin
Skill

ui-design

Anti-slop UI sur tout code de composant visuel. Se charge à l'écriture/modification de : .html, .css, .scss, .sass, .less, .jsx, .tsx, .vue, .svelte, .astro, classes Tailwind, styled-components, emotion, CSS-in-JS, blocs <style>. Vise des interfaces distinctives : bannit cyan/violet/glassmorphism générique, gradients indigo-blue par défaut, boutons bg-indigo-500, Inter partout, trois cartes icônes en ligne. Couvre typographie (sélection par contexte), couleur (palette marque), layout (hiérarchie visuelle), spacing (échelle cohérente), motion (recipes), micro-interactions, responsive, accessibilité WCAG AA, cohérence marque, lois UX (Fitts, Hick, Gestalt), hero rules, personnalité UI, copywriting d'interface. Ne se charge PAS quand : fichiers .md, templates de référence, HTML d'email, HTML de doc/config.

0
Benjamin
Skill

wp-pack

Zip/package WordPress (plugin ou thème). Se charge : (1) après modification de .php/.css/.js/.html/.twig/block.json/theme.json dans un projet WP (header 'Plugin Name:' ou 'Theme Name:' détecté), (2) dès qu'un zip/package WP est envisagé — mots-clés 'zip le plugin WP', 'package WordPress', 'zipper le thème', 'prépare pour prod WP', 'build du plugin WP'. Flow : détection type et slug → bump version (patch pour fix, minor pour feature) → zip via node hooks/wp-pack.js (jamais de Compress-Archive/zip -r inline, jamais de script .ps1/.sh temporaire). Ne se charge PAS : projet non-WordPress, review ou audit read-only, fichiers hors scope WP.

0