SIGN IN SIGN UP

feat(deepseek): edit the model list from the agent settings page

DeepSeek Harness offers the models listed under `llm-deepseek.models` in
`$DSH_HOME/settings.yaml`, a document that until now could only be
hand-written. The agent settings page gets a section for it: one row per
model (id, display name, context window) with an advanced area for the
description, the output cap, image support and the per-model image
limits, plus a way to drop the stored list and go back to the agent's
built-in one.

Reads and writes go through a new `commands::deepseek_settings`. The
`models` block is replaced textually, so every other key and comment in
the user's document survives, and the result is re-parsed and compared
against the original before it is allowed to replace anything. Entries
are validated against the adapter's own `resolveModels` rules first — a
section it cannot resolve is not an error on its side, it silently falls
back to the built-in catalog — and a stored list that already fails them
is reported, so the panel can say the harness is ignoring it instead of
presenting it as what a session can pick.

The document is swapped in through a sibling temporary file, the way its
own provider writes it: it can carry any other plugin's settings, so a
truncating write is not an option.
X
xintaofei committed
5a20a5695345fe544b33d75cb8165833d153a762
Parent: 633ed2e