Quickstart · ~5 minutes

Hello, world. On-device.

From zero to a signed local artifact answering your questions, in five minutes. Bring a frontier model API key (Anthropic, OpenAI, Google) and a terminal. No GPU required. The compile runs in the cloud; the artifact runs on your laptop.

01 · install

Install the kolm CLI.

One line. macOS, Linux, Windows (WSL). The installer drops kolm on your $PATH and registers an embedded llama.cpp + sqlite-vec runtime.

# macOS, Linux, Windows (WSL)
$ curl -fsSL kolm.ai/install.sh | sh

# or via npm / brew / pip
$ npm i -g @kolmogorov/kolm
$ brew install kolmogorov/tap/kolm
$ pip install kolm

Gotcha

The installer needs ~480 MB of disk for the embedded runtime + a 4B base model. The base downloads on first compile, not at install. kolm doctor verifies the install.

02 · authenticate

Log in. Bring your frontier key.

kolm uses the frontier model API key you already pay for as the compile-time teacher. kolm login stores your kolm tenant credentials. kolm key add registers your teacher API key locally; the key never leaves your machine.

$ kolm login
 opened browser to https://kolm.ai/cli-login
 tenant: my-team · linked

$ kolm key add anthropic $ANTHROPIC_API_KEY
 stored locally · ~/.kolm/keys

Privacy

The teacher API key stays on your machine. The compile pipeline runs the teacher prompts on your behalf via your key, in your tenant, against your billing. kolm does not see or store your teacher tokens.

03 · write a task spec

Describe what you want, in plain language.

A task spec is a small JSON or YAML file with three parts: a description, a few seed examples, and a held-out evaluation set. The compiler synthesizes a verifier from the examples; you don't write it by hand.

$ cat > hello.kolm.task << EOF
{
  "name": "hello-world-summarizer",
  "description": "Summarize an arbitrary block of text into one sentence under 20 words.",
  "examples": [
    { "input": "The quarterly meeting ran over by 40 minutes due to a heated debate about the new compensation framework.",
      "output": "Quarterly meeting overran by 40 minutes over a compensation-framework debate." },
    { "input": "Customer support flagged 14 tickets this week related to slow checkout on mobile, mostly Android.",
      "output": "Support saw 14 mobile-checkout slowdown tickets this week, mostly on Android." }
  ],
  "evals": [
    { "input": "Engineering shipped the new caching layer; latency dropped 28% across the read path.",
      "expect_substring": "caching" }
  ],
  "target": "server-cpu",
  "k_score_gate": 0.70
}
EOF

Tip

Three to ten examples is enough for the verifier synthesizer to find the structure. More than fifty rarely helps; fewer than three usually fails. Quality over quantity.

04 · compile

Run kolm compile. Watch the K-score.

Compile runs the verifier synthesis, the k-sample teacher inference, the LoRA distillation, the recipe extraction, and the eval. Streams progress to the terminal. Roughly 8 minutes on the example above.

$ kolm compile hello.kolm.task --teacher anthropic --base qwen2.5-3b
 verifier synthesized · 12 acceptance rules
 k-sample teacher · n=128 · 100% verified
 lora distilled · 84 MB · loss 0.41
 recipes extracted · 247 deterministic patterns · coverage 92%
 eval · 50/50 passed
 K-score: 0.94 (size 1.0, accuracy 0.97, latency 0.96, cost 1.0, coverage 0.83)
 signed · hello-world-summarizer.kolm · 38 MB

If K-score < gate

The compile log tells you which sub-score failed. Run kolm compile --explain for the full eval trace. Most failures are example contradictions or task-spec ambiguity, not model capacity.

05 · run

Use it locally. Offline, no key, no quota.

The artifact is a single signed file. kolm run loads the base + LoRA + recipes + recall index from the file and answers prompts. No network calls. No frontier bill.

$ kolm run hello-world-summarizer.kolm \
    "Marketing pushed the launch back to Q3 because the legal review on the new privacy policy is taking longer than planned."

 Launch slipped to Q3 due to a longer-than-planned legal review of the new privacy policy.
  · 78 ms · K-score 0.94 · receipt verified
artifact hello-world-summarizer.kolm version 0.1.0 base qwen2.5-3b@INT4 teacher claude-opus-4-7 (compile-time only) size 38 MB K-score 0.94 signature ✓ HMAC verified · chain anchored to public registry

06 · serve

Make it discoverable to your agent stack.

Optional. kolm serve --mcp joins the local MCP bus, and Claude, Codex, Cursor, and Zed pick the artifact up by name. Matching agent calls hit the local artifact instead of the frontier.

$ kolm serve --mcp hello-world-summarizer.kolm
 MCP server up · stdio + http://127.0.0.1:11455
 registered as "hello-world-summarizer"
 discovered by: claude-code · cursor · zed

07 · ship

The artifact is yours. Run it anywhere.

The same .kolm file runs on a laptop, a phone, an MCP server, an edge box, or a browser via WASM. No re-compile per platform. Embed it in your iOS app via the kolm SDK, push it to your fleet via MDM, or hand it to a customer on a USB drive.

# mobile bundle (iOS or Android)
$ kolm bundle hello-world-summarizer.kolm --target ios
 ios framework · KolmRuntime.xcframework

# web bundle (WASM)
$ kolm bundle hello-world-summarizer.kolm --target wasm
 wasm bundle · 4.2 MB runtime + 38 MB artifact