AI Development Toolkit pour Claude Code.
Bruce, de son vrai nom Ulk, est un Vallhund suédois — une race de chien viking millénaire, trapue et intrépide, surnommée "le chien des Vikings".
Comme son ancêtre qui accompagnait les drakkars à travers les mers nordiques, Ulk accompagne les développeurs à travers les océans de code. Petit mais costaud, il ne recule devant aucun défi : audits de sécurité, refactoring de legacy code, ou déploiement à 3h du matin.
Le nom "ulk" signifie "loup" en vieux norrois. Car sous ses airs adorables, Bruce est un gardien féroce de la qualité du code.
curl -fsSL https://raw.githubusercontent.com/izo/ulk/main/install-remote.sh | bashAprès installation, utilisez /ulk:update pour mettre à jour.
# Depuis le dossier ulk cloné
./uninstall.sh
# Ou directement
rm -rf ~/.claude/commands/ulkOptions disponibles :
--forceou-f: Supprime sans confirmation--dry-run: Affiche ce qui serait supprimé sans rien faire
| Commande | Description |
|---|---|
spec-writer |
Génère un fichier spec.md complet |
todo-generator |
Crée todo.md avec tâches actionnables |
task-runner |
Exécute les tâches du todo.md (/batch: autonome, /schedule: planifié) |
sync-local |
Synchronise spec.md, CLAUDE.md, README.md |
code-auditor |
Audit qualité et architecture du code (complémentaire au Code Review natif) |
code-simplifier |
Simplifie et réduit la complexité (/batch: batch) |
a11y-auditor |
Audit accessibilité WCAG 2.1/2.2 |
perf-auditor |
Audit performance et Core Web Vitals |
2b3 |
Routine fin de session : vérif code → conformité CLAUDE.md → docs → todo → simplify → Code Review → commit |
context-generator |
Génère llm.txt pour onboarding LLM |
robocop |
Détective et fixeur d'erreurs (/batch: auto-fix, Agent Teams: multi-hypothèses) |
documentalist |
Gère et organise le dossier /docs + validation Kanban |
brique |
Figma OU HTML/Tailwind → composants shadcn/ui (React/Vue) |
frontend-qa |
Audit frontend UX/UI (full, landing, shadcn) |
blackemperor |
Orchestrateur unifié 5 modes : audit, legacy, release, review, ship — Phase 0 universelle : vérifie docs/todo.md (format kanban) dans tous les modes |
notion-importer |
Import Notion → spec_notion.md + todo_notion.md |
brigitte |
Communications bienveillantes + sync Notion/Linear |
bruce |
Point d'entrée principal ulk : idée → projet complet |
godspeed |
Diagnostic sous-agent : scan, détection stack, classification — détecte le format de docs/todo.md (kanban/legacy) et rapporte les stats par colonne |
picsou |
Estimation coûts d'hébergement multi-providers |
steve |
API mobile + SwiftUI : audit web → API → starter kit |
svg-analyzer |
Analyse React/Next.js → génère SVG via Shad2SVG |
ranma |
Planificateur de migration (WP→SPIP, Next→Nuxt, etc.) |
seo-auditor |
Audit SEO & GEO (technique, on-page, AI citations) |
pencil-generator |
Génère fichiers .pen depuis Next.js |
gandalf |
Context guardian (Automemory, /schedule proactif, hygiène de session) |
visual-auditor |
Audit visuel via Chrome DevTools MCP |
marketing-maestro |
Marketing showcase : CRO, copywriting |
beetlejuice |
Markdown → Notion QA |
sensei |
Mode apprentissage : explications, diagrammes, visualisations |
backoffice-auditor |
Audit cohérence Back Office (Next.js + Shadcn) |
astride |
Snobisme de combat : code review sarcastique, conseils en vraie vie |
obsidian-vault |
Transforme /docs en vault Obsidian + todos → Kanban boards |
amiral |
Audit de généralisabilité : secrets, couplages, deps → rapport + branche amiral |
5 modes de workflow automatisé :
| Mode | Invocation | Description |
|---|---|---|
| audit | "audit-complet" |
spec + code + perf + a11y + todo (5 agents en parallèle) |
| legacy | "legacy-revival" |
doc + simplify + fix + optimize (6 agents) |
| release | "pre-release" |
Checklist pre-release + GO/NO-GO |
| review | "review" |
Complétude code vs spec/prompt/issue |
| ship | "ship" |
simplify + docs + sync + release |
| Commande | Description |
|---|---|
orchestrateur |
Route vers le bon agent frontend selon l'intention |
brique |
Figma/HTML → shadcn/ui pixel-perfect (React/Vue, Next/Nuxt) |
frontend-qa |
Audit frontend UX/UI (full, landing, shadcn) |
visual-auditor |
Audit visuel via Chrome DevTools MCP |
backoffice-auditor |
Audit cohérence Back Office (Next.js + Shadcn) |
svg-analyzer |
Analyse React/Next.js → SVG via Shad2SVG |
pencil-generator |
Génère fichiers .pen depuis Next.js |
| Commande | Description |
|---|---|
nuxt |
Analyse Nuxt 3/4, SSR, Nuxt UI |
next |
Analyse Next.js 13-15, App Router, RSC |
astro |
Analyse Astro 3-5, Islands Architecture |
swiftui |
Analyse SwiftUI, MVVM/TCA |
spip |
Analyse SPIP 3-5, squelettes, CVT |
| Commande | Description |
|---|---|
vercel |
Déploie sur Vercel |
netlify |
Déploie sur Netlify |
cloudflare |
Déploie sur Cloudflare Pages/Workers |
docker |
Build et déploie containers Docker |
aws |
Déploie sur AWS S3/CloudFront/ECS |
| Commande | Description |
|---|---|
unit |
Configure tests unitaires Jest/Vitest |
e2e |
Configure tests E2E Playwright/Cypress |
17 agents pour gérer vos serveurs multi-projets :
orchestrateur · audit · securite · reseau · docker · deploiement · cicd · monitoring · backups · incidents · migration · cleanup · documentation · compliance · couts-ressources · environnements · installateur
Les agents ulk preferent les CLI aux MCP pour reduire la consommation de contexte (un MCP injecte 40-50% du contexte avant toute action utile).
- CLI disponible → l'utiliser (0 tokens de contexte)
- CLI absent, MCP configure → utiliser le MCP
- Ni l'un ni l'autre → informer l'utilisateur
| Outil | Remplace | Categorie |
|---|---|---|
gh |
GitHub MCP | VCS |
vercel |
Vercel MCP | Deploy |
neonctl |
Neon MCP | Database |
asc |
— | Apple |
spip |
— | CMS |
12 skills installes automatiquement dans ~/.claude/skills/ulk-*/ :
ulk-github · ulk-deploy-vercel · ulk-neon · ulk-docker · ulk-spip · ulk-asc · ulk-figma · ulk-shadcn · ulk-pgcli · ulk-pandoc · ulk-productivity · ulk-find-skill
./tools/check-tools.sh # Diagnostic CLI + Skills
./install.sh --check-tools # Idem via l'installeur
./install.sh --with-community-skills # Installer skills communautairesLe site de documentation est disponible sur izo.github.io/ulk.
| Touche | Action |
|---|---|
T |
Toggle light/dark mode |
D |
Scroll vers Installation |
C |
Ouvrir GitHub (clone) |
S |
Ouvrir GitHub (source) |
- Style inspiré de Zed.dev
- Police IBM Plex Mono / IBM Plex Sans
- Dark mode avec persistance localStorage
- Respect de
prefers-color-scheme
Les agents ulk tirent parti des features natives de Claude Code :
| Feature | Agents concernés | Usage |
|---|---|---|
/batch |
task-runner, code-simplifier, robocop, bruce | Exécution autonome multi-tâches (remplace /ralph-loop) |
| Automemory | gandalf, bruce, godspeed, task-runner, 2b3 | Persistance inter-sessions (état projet, vélocité, patterns) |
/schedule |
code-auditor, gandalf, 2b3, task-runner | Audits et checkpoints planifiés (cron) |
| Code Review natif | 2b3 (Phase 4.5), bruce (Phase 5), blackemperor | Quality gate PR-level avant commit |
/simplify |
code-simplifier, 2b3 (Phase 4) | Simplification automatique (3 agents parallèles) |
| Agent Teams | blackemperor, robocop, frontend orchestrator | Teammates parallèles avec communication croisée |
/ulk:agents:spec-writer → /ulk:agents:todo-generator → /ulk:agents:task-runner
/ulk:agents:blackemperor # ou "audit-complet"
# mode=audit : spec-writer → [code-auditor + perf-auditor + a11y-auditor] (parallel) → todo-generator
/ulk:agents:blackemperor # ou "legacy-revival"
# mode=legacy : spec-writer → code-auditor → [code-simplifier + perf-auditor] (parallel) → robocop → sync-local
/ulk:agents:blackemperor # ou "pre-release"
# mode=release : [audits parallèles] → robocop → tests → Verdict GO/NO-GO
Les agents principaux vérifient et mettent à jour docs/todo.md en format Monoboard Kanban Obsidian (kanban-plugin: board) :
- godspeed — détecte le format (kanban/legacy) et rapporte les stats par colonne
- bruce — Phase 0.5 : propose la conversion si format legacy, affiche les colonnes en mode Resume
- robocop — marque la tâche liée comme done, ou crée une carte
#FIX-NNNdans## Done - blackemperor — Phase 0 dans tous les modes ; mode=review écrit des cartes
#REV-NNNdans## Todo
# Convertir un todo.md legacy en Monoboard Kanban
/ulk:agents:kanban-converter
# Setup (une fois par projet)
/figma:create-design-system-rules
# Conversion (95-100% fidélité)
/ulk:frontend:brique
/ulk:agents:steve
# Audit web → design API → docs/api/ + SwiftUI starter kit
/svg-analyzer
# Phase 1 : Analyse projet → ANALYSE_PAGES.md
# Phase 2 : Génération SVG → output/*.svg + index.html
/ulk:agents:obsidian-vault
# Setup .obsidian/ + frontmatter + wikilinks + MOC
# Todos → boards Kanban Obsidian (kanban-plugin: board)
/ulk:agents:amiral
# Audit généralisabilité → rapport scoré /100 → plan branche amiral + prompts
/ulk:agents:code-auditor → /ulk:agents:perf-auditor → /ulk:agents:a11y-auditor
/ulk:vps:audit → /ulk:vps:securite → /ulk:vps:docker → /ulk:vps:reseau
Les commandes sont définies dans site/data/commands.json.
Pour proposer un nouvel agent : Ouvrir une issue
Réalisé par Mathieu Drouet pour regrets.app
MIT