feat: Ollama models command, with load/pull/delete and unload (#16)

This commit was merged in pull request #16.
This commit is contained in:
2026-10-05 09:43:00 +00:00
parent 05fd9ff13b
commit 26e05dea5b
22 changed files with 1948 additions and 65 deletions
+32
View File
@@ -148,10 +148,42 @@ export interface SessionSummary {
attachmentPaths?: string[];
}
/**
* Whether the model in use can read images, as far as the capability check knows.
*
* `"unknown"` is deliberately distinct from `"no"`: a failed request is not
* evidence that a model cannot see, and reporting it as one would be a false
* claim about the user's setup. Lives here rather than in `vision.ts` so that
* modules which must stay free of Vicinae imports can name it.
*/
export type VisionSupport = "yes" | "no" | "unknown";
/** A model as reported by `GET /api/tags`. */
export interface ModelInfo {
name: string;
parameterSize?: string;
/**
* How much disk the model takes, in bytes.
*
* Meaningless for a cloud model proxied through a local daemon: that entry is
* a few hundred bytes of manifest, so the caller shows nothing rather than
* "326 B", which is what `ollama list` does too.
*/
size?: number;
/**
* What the model says it can do, e.g. `["tools", "vision"]`.
*
* Only newer servers send this. Absent means unknown, never "no": reporting a
* missing field as a lack of vision would be a false claim about the user's
* setup.
*/
capabilities?: string[];
/**
* Set when this entry is a proxy rather than weights on disk, naming the server
* that actually runs it (`https://ollama.com`). Deleting one of these drops a
* reference; it does not free the gigabytes the size column implies.
*/
remoteHost?: string;
}
/**