paperclipai/paperclip · error
Configured OpenCode model is unavailable
Error message
Configured OpenCode model is unavailable: ${model}. Available models: ${sample}${models.length > 12 ? ", ..." : ""} What it means
Thrown by ensureOpenCodeModelConfiguredAndAvailable: the model configured in adapterConfig passes format validation and even survives an availability refresh attempt, but it is not in the provider's discovered model list. The error enumerates up to 12 available model ids so the operator can pick a valid one; it means the configured model id is not offered by the connected OpenCode provider (wrong provider prefix, deprecated/renamed model, or stale config).
Solutions
- Choose one of the listed available models for adapterConfig.model.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at packages/adapters/opencode-local/src/server/models.ts:254 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-09-10).
Data as JSON: /api/errors/29428de5449fd67e.
Report an issue: GitHub.
Appendix: source
Thrown at packages/adapters/opencode-local/src/server/models.ts:348
env: input.env,
});
if (refreshedModels.some((entry) => entry.id === model)) {
return refreshedModels;
}
if (refreshedModels.length > 0) models = refreshedModels;
} catch (err) {
console.warn(
`[opencode-local] Model availability refresh failed for "${model}" (${
err instanceof Error ? err.message : String(err)
}); preserving the cached availability rejection.`,
);
}
const sample = models
.slice(0, 12)
.map((entry) => entry.id)
.join(", ");
throw new Error(
`Configured OpenCode model is unavailable: ${model}. Available models: ${sample}${models.length > 12 ? ", ..." : ""}`,
);
}
return models;
}
export async function listOpenCodeModels(): Promise<AdapterModel[]> {
try {
return await discoverOpenCodeModelsCached();
} catch {
return [];
}
}
export function resetOpenCodeModelsCacheForTests() {
discoveryCache.clear();
}View on GitHub (pinned to 01ad858492)