Brimkern

~/your-project $ brimkern chat

Your coding assistant runs on your GPU, in your terminal.

Qwen 3 4B on hand-written WGSL kernels. No server, no API key, no account: your code never leaves the machine.

Install in one commandmacOS · Linux · WebGPU
curl -fsSL https://brimkern.com/install.sh | bash
Then run: brimkern chat·Update: brimkern update·All options & docs →

01 · a real session

It answers as it goes, at the speed you will get.

A capture of the terminal, not a mock-up. Markdown is rendered while it streams: bold, code, lists.

brimkern chat
kern › give me 3 advantages of TypeScript as a list with bold titles, and one short code example
Type Safety: Ensures that variables are used correctly by the compiler, reducing runtime errors.

Better Tooling: Provides features like intellisense, refactoring support, and error detection during development.

Maintainable Code: Enforces a structured approach to code organization and promotes cleaner, more readable code through interfaces and type annotations.

Code Example:
function greet(name: string): void {
    console.log(`Hello, ${name}!`);
}

greet("World");


⏱ 10.67s · ~9.6 tok/s · 102 tokens · ≈ $0.0024 saved (session: $0.0024) (Dawn (Metal))
Recorded 2026-09-23, M-series Mac, Qwen 3 4B (native Dawn). Played back at the recorded pace.

02 · your project

Ask about your repo. It has read the README.

Started in a folder, Brimkern gives the model the README, the package description and the git branch. Mention a file with @path/file.ts to add it, or run /diff to review your changes.

in this repository
kern › what is this project for? answer in two sentences
This project aims to provide a local, GPU-accelerated AI model running environment without requiring an API key or server setup. It allows users to stream and run Hugging Face models directly in their browser using WebGPU and other technologies, with all processing done locally on the user's device.

⏱ 8.45s · ~7.1 tok/s · 60 tokens · ≈ $0.0017 saved (session: $0.0017) (Dawn (Metal))
/status
┌─ Brimkern session status ──────────────────────────────────────────────────┐
│ Active model : Qwen 3 4B (BRIK int4)                                       │
│ Engine & GPU : Native Dawn (in-process) · Dawn (Metal)                     │
│ AI mode      : [CODE] Direct code generation, exact syntax, concise        │
│ Reasoning    : auto (Detects and formats <think>...</think> blocks)        │
│ Git repo     : main (modified *)                                           │
│ Inference    : 100% local · 60 tokens · ~7.1 tok/s (8.4s) · ≈ $0.0017      │
│                saved                                                       │
└────────────────────────────────────────────────────────────────────────────┘

03 · models

Switch models mid-session, or bring one from Hugging Face.

Speed measured on an M-series Mac.
presetmodelspeedfor
coderQwen 3 4B
BRIK int4 · 2.53 GB
13–16 tok/sthe default, the most accurate
fastQwen 2.5 Coder 1.5B
GGUF Q4_K_M · 1.12 GB
~25 tok/squick questions, lighter download

Or any single-file GGUF from Hugging Face, the best quantization picked for you: --model=Qwen/Qwen3-0.6B-GGUF

/model
┌─ Brimkern · On-device model selector ────────────────────────────────────────┐
  Use ↑/↓ to scroll · Enter to activate · Esc to cancel

    ┄
    coder       Qwen 3 4B                      [BRIK int4 ] 2.53 GB ● active
  ❯ fast        Qwen 2.5 Coder 1.5B            [GGUF Q4_K_M] 1.12 GB
    ┄

  ┌─ Spec sheet: Qwen 2.5 Coder 1.5B ────────────────────────────────────────────┐
  │ Architecture: Qwen 2.5 Coder 1.5B  ·  Size: 1.12 GB  ·  [Fast]               │
  │ Twice as fast (~25 tok/s) and lighter; review the code it suggests, it makes │
  │ more mistakes.                                                               │
  │ Format: GGUF Q4_K_M  ·  Engine: WebGPU (Chromium)                            │
  │ Command: /model fast                                                         │
  └──────────────────────────────────────────────────────────────────────────────┘

04 · local

Nothing leaves the machine.

⏱ 10.67s · ~9.6 tok/s · 102 tokens · ≈ $0.0024 saved (session: $0.0024) (Dawn (Metal))

The last figure is an estimate, shown as one: what a paid API would have billed for the same conversation (tokens ≈ characters / 4, history counted on every turn, $3 / $15 per million input / output tokens; set BRIMKERN_PRICE_IN and BRIMKERN_PRICE_OUT for your own).