earendil-works/pi · error
llama.cpp returned an invalid model catalog
Error message
llama.cpp returned an invalid model catalog
What it means
Error "llama.cpp returned an invalid model catalog" thrown in earendil-works/pi.
Source
Thrown at packages/coding-agent/src/extensions/llama/client.ts:185
if (init.body !== undefined) headers.set("Content-Type", "application/json");
if (this.apiKey) headers.set("Authorization", `Bearer ${this.apiKey}`);
const timeout = AbortSignal.timeout(15_000);
const signal = init.signal ? AbortSignal.any([init.signal, timeout]) : timeout;
const response = await fetch(`${this.serverUrl}${path}`, { ...init, headers, signal });
let payload: unknown;
try {
payload = await response.json();
} catch {
payload = undefined;
}
if (!response.ok) throw new Error(errorMessage(payload, `llama.cpp returned HTTP ${response.status}`));
return payload;
}
async list(options: { reload?: boolean; signal?: AbortSignal } = {}): Promise<LlamaModelInfo[]> {
const payload = await this.request(`/models${options.reload ? "?reload=1" : ""}`, { signal: options.signal });
if (typeof payload !== "object" || payload === null || !Array.isArray((payload as { data?: unknown }).data)) {
throw new Error("llama.cpp returned an invalid model catalog");
}
const data = (payload as { data: unknown[] }).data;
if (!data.every(isModelInfo)) throw new Error("Server is not running in llama.cpp router mode");
return data;
}
async load(model: string, signal?: AbortSignal): Promise<void> {
await this.request("/models/load", { method: "POST", body: JSON.stringify({ model }), signal });
}
async unload(model: string, signal?: AbortSignal): Promise<void> {
await this.request("/models/unload", { method: "POST", body: JSON.stringify({ model }), signal });
}
async unloadAndWait(model: string, signal?: AbortSignal): Promise<void> {
await this.unload(model, signal);
while (true) {
const entry = (await this.list({ signal })).find((candidate) => candidate.id === model);View on GitHub (pinned to 4af9d21d3b)
When it happens
Trigger: Thrown at packages/coding-agent/src/extensions/llama/client.ts:185 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of earendil-works/pi@4af9d21d3b (2026-08-24).
Data as JSON: /api/errors/4f8462f10b09e64b.
Report an issue: GitHub.