Brimkerndocs

$ claude mcp add brimkern -- brimkern mcp

Un worker GPU local pour votre agent de code

Votre agent principal (Claude Code, Cursor, Windsurf…) garde la conception et les décisions. Les sous-tâches mécaniques, une première relecture, un brouillon de tests, un titre de commit, partent vers un modèle qui tourne sur votre propre GPU, par MCP, par la CLI ou par un skill. Rien ne quitte la machine, rien n’est facturé.

Comment la délégation marche

L’agent voit Brimkern comme une liste d’outils. Quand il juge une sous-tâche routinière, il en appelle un ; le serveur MCP fait tourner le modèle sur le GPU et rend du texte, que l’agent lit, vérifie et utilise.

délégation
Claude Code  (cloud : planifie, décide, édite)
   │
   │ tools/call brimkern_review { code, file_path }
   ▼
brimkern mcp  (stdio, JSON-RPC 2.0)
   │ modèle chargé une fois, appels en file un par un
   ▼
votre GPU  (WebGPU, kernels WGSL écrits à la main)
   │
   └─▶ texte rendu à l’agent, qui le vérifie

Ce qui s’y prête

Premières relectures, brouillons de tests, titres de commit, regex, renommages et autres réécritures mécaniques.

À garder sur l’agent principal

L’architecture, le code critique pour la sécurité, tout ce qui demande le dépôt entier en contexte. Un modèle de 4B aide ; il ne tranche pas.

Serveur MCP

La CLI installée, une commande l’enregistre dans Claude Code :

claude mcp add brimkern -- brimkern mcp --model=coder

Pour Claude Desktop, Cursor et les autres clients, le même serveur dans leur config JSON :

{
  "mcpServers": {
    "brimkern": {
      "command": "brimkern",
      "args": ["mcp", "--model=coder"]
    }
  }
}

Ci-dessous, un vrai échange avec le serveur : la poignée de main, la liste des outils, puis un appel de statistiques (qui ne charge pas le modèle, d’où la réponse immédiate).

brimkern mcp · stdio
→ initialize { protocolVersion: "2025-06-18" }
← { "protocolVersion": "2025-06-18", "capabilities": { "tools": {} },
    "serverInfo": { "name": "brimkern", "version": "0.1.0" } }

→ tools/list
← brimkern_ask · brimkern_review · brimkern_generate_tests · brimkern_stats

→ tools/call brimkern_stats
← { "model": "Qwen 3 4B (BRIK int4)", "loaded": false, "callsServed": 0,
    "totalTokensServed": 0, "estimatedSavingsUsd": 0 }

Capturé le 24/09/2026 depuis brimkern mcp ; la liste des outils n’est montrée que par leurs noms.

Les quatre outils

Chaque appel est indépendant : aucune mémoire des précédents, une revue ne voit donc jamais une question antérieure.

brimkern_askprompt, model?, mode?, max_tokens?
Requête libre. mode = code (défaut), plan, review ou auto ; max_tokens jusqu’à 2048.
brimkern_reviewcode, file_path?, max_tokens?
Relecture d’un extrait ou d’un fichier : bugs, cas limites, gestion d’erreurs, sécurité, performance.
brimkern_generate_testscode, test_framework?, max_tokens?
Brouillon de tests unitaires dans le framework choisi (vitest par défaut).
brimkern_stats—
Modèle actif, appels et tokens servis, économies estimées. Ne charge pas de modèle.

Les blocs de réflexion (<think>…</think>) sont retirés de chaque réponse : l’agent ne reçoit que le résultat.

Le skill

Un skill est un fichier Markdown qui dit à Claude Code quand confier du travail à Brimkern et comment (quelles commandes, quelles options). Il est livré avec la CLI ; copiez-le dans un projet pour l’y activer.

mkdir -p .claude/skills
cp -r ~/.brimkern/skills/brimkern-worker .claude/skills/
.claude/skills/brimkern-worker/SKILL.md
---
name: brimkern-worker
description: Offload routine sub-tasks (exploratory tests, syntax transformations, code reviews, repetitive drafting) to local WebGPU Brimkern workers…
---

# Brimkern Worker
…
brimkern -q "…"          # réponse seule, pour les scripts
brimkern --json "…"      # charge utile structurée
claude mcp add brimkern -- brimkern mcp

Scripts & JSON

Sans MCP, tout agent capable de lancer une commande shell peut déléguer : -q imprime la réponse seule, --json une charge utile structurée avec le nombre de tokens, la vitesse et la durée.

git diff | brimkern --json "Draft a conventional commit title"
brimkern --json
{
  "ok": true,
  "content": "The conventional commit title for the provided diff could be:\n\n`feat(auth): add passkey registration support`\n\n…",
  "tokens": 48,
  "elapsedMs": 4735,
  "tokPerSec": 10.1,
  "model": "Qwen 3 4B (BRIK int4)",
  "backend": "Dawn (Metal)",
  "savedUsd": 0.00158
}

Sortie réelle, coder (Qwen 3 4B), Dawn natif sur Mac série M. savedUsd est une estimation de ce qu’une API payante aurait facturé, pas une mesure.

Limites

Une génération à la fois

Les appels d’outils parallèles sont mis en file : le modèle est chargé une fois et les sert à tour de rôle.

Mémoire

Le modèle par défaut occupe environ 2,5 Go de mémoire GPU tant que le serveur tourne.

Premier appel

Le premier appel télécharge puis charge le modèle ; les suivants le réutilisent.

Brimkern : moteur WebGPU open, conçu par Romain Khanoyan. IA locale, WebGPU, moteurs on-device.