Ollama · LM Studio · llama.cpp

One interface for every local LLM runtime

Ollama, LM Studio, and llama.cpp behind a single SDK and CLI. Write your call once; Loomcast routes it to the right runtime.

$pip install loomcast
Get started →
loomcast
$ loomcast compare "Explain recursion in one sentence."

┌── OLLAMA (llama3) ──┐ ┌─ LMSTUDIO (qwen) ─┐ ┌─ LLAMACPP (gemma) ─┐
│ A function that     │ │ When a function   │ │ Calling a func-    │
│ calls itself...     │ │ calls itself...   │ │ tion from itself.  │
└─────────────────────┘ └───────────────────┘ └────────────────────┘
Key Features

Everything you need to run local models

A thin, dependable layer over the runtimes you already run — not a server, not an inference engine.

Explore all actions →
Interactive Explorer

LoomCast Features & Actions Reference

Explore all 13 operations available across the CLI terminal interface and the LoomCast Python SDK.

Inference & Comparison

Side-by-Side Comparison

Sends the same prompt concurrently to Ollama, LM Studio, and llama.cpp, displaying outputs side-by-side in parallel panels to evaluate speed and output quality.

CLI Command Syntax
loomcast compare "Explain recursion in one sentence."

Options & Arguments

Option / FlagTypeDescription
promptargumentPrompt sent to all selected runtimes
--model, -moptionForce specific model across all runtimes
--backend, -brepeatableRestrict comparison to specific backends

Simulated Terminal Output

loomcast execution output
Querying runtimes...

┌── OLLAMA (llama3) ────────┐ ┌── LMSTUDIO (qwen) ────────┐ ┌── LLAMACPP (gemma) ───────┐
│ A function calling itself │ │ When a program function   │ │ Self-referencing function  │
│ until reaching a base     │ │ repeatedly invokes itself │ │ execution until base step  │
│ condition.                │ │ to solve sub-problems.    │ │ is reached.                │
└───────────────────────────┘ └───────────────────────────┘ └────────────────────────────┘
Benchmarking Playground

Multi-Runtime Comparison Simulator

The loomcast compare command queries all your active local runtimes in parallel. Test the interactive preview below:

Preset Prompts:
OLLAMA
llama3:8b

Prompt sent

"Explain recursion in one sentence."

Generated response

Recursion is a programming concept where a function calls itself until reaching a base condition that stops execution.
Status: 200 OKTime: 1.2s
LM STUDIO
qwen2.5-7b

Prompt sent

"Explain recursion in one sentence."

Generated response

It occurs when a subprogram repeatedly invokes itself to break a complex problem into identical smaller subproblems.
Status: 200 OKTime: 0.9s
LLAMA.CPP
gemma-2b

Prompt sent

"Explain recursion in one sentence."

Generated response

A function is recursive when its body directly or indirectly calls itself until a termination base case.
Status: 200 OKTime: 0.6s
System Integrity & Resiliency

Automated System Diagnostics

LoomCast includes an automated self-diagnostic suite. Validate your configuration, runtime HTTP connectivity, and catalog integrity in a single command.

✓Configuration file audit (~/.config/loomcast/config.json)
✓Environment variable inspection (LOOMCAST_*)
✓HTTP connectivity test on every runtime port
✓Dynamic catalog access check with automatic static fallback
✓SHA-256 cryptographic verification of embedded static catalog
loomcast diagnostics
$ loomcast doctor

Loomcast System Diagnostics

✓ Configuration: loaded successfully from C:\Users\User\.config\loomcast\config.json
✓ Environment variables: none set, using defaults
✓ Runtime OLLAMA: available (http://127.0.0.1:11434)
✓ Runtime LMSTUDIO: available (http://127.0.0.1:1234)
⚠ Runtime LLAMACPP: unavailable (not default backend)
✓ Catalog: dynamic catalog reachable
✓ Static catalog integrity: SHA-256 check passed

0 problem(s) found, 1 warning(s)

The same operations, two ways

Everything the CLI does is available from the Python SDK, backed by the same manager.

Command line
# Check which runtimes are up
loomcast status

# Send one prompt to every runtime, side by side
loomcast compare "Explain recursion in one sentence."

# Chat with a specific model on a specific backend
loomcast chat llama3 "Hello world!" --backend ollama
Python SDK
import loomcast

# Search the catalog
for model in loomcast.search("code"):
    print(model.name, model.description)

# Send a chat prompt
reply = loomcast.chat(
    "llama3",
    [{"role": "user", "content": "Hello!"}],
    runtime_type="ollama",
)

# Compare the same prompt across runtimes
for r in loomcast.compare("Explain recursion in one sentence."):
    print(r.runtime_type.value, "->", r.response or r.error)