llm: drop model/agent scope matching; add instance-wide compaction model picker
Nightly Build / build (push) Successful in 6m50s

Remove the scope system end-to-end (llm_models.scope column, agent meta
scope field, scope-based tier in model selection, UI checkboxes/pills):
it was only a soft ranking hint, had drifted (6 UI scopes vs 3 used by
agents, 'general' not even selectable) and duplicated what strength
already decides. Strength stays the single AUTO-selection axis.

Compaction: the summary model is now pickable from the Settings page
via a new PropertyType::LlmModel config property (registry key
compaction_model), instance-wide and live (no restart). Fallback chain:
explicit pick -> compaction.strength from config.yml -> priority order;
a deleted configured model degrades to AUTO. ContextCompactor reads the
key at compact time through GlobalConfigManager.
This commit is contained in:
2026-07-25 10:48:09 +01:00
parent 9dafc4bfaa
commit 5081ec2afe
39 changed files with 174 additions and 160 deletions
+4 -1
View File
@@ -30,7 +30,7 @@ marketplace:
# ── LLM clients ────────────────────────────────────────────────────────────────
# LLM clients (providers, models, API keys, strength, scope) are configured
# LLM clients (providers, models, API keys, strength) are configured
# via the web app and stored in the database — not in this file.
# ───────────────────────────────────────────────────────────────────────────────
llm:
@@ -72,6 +72,9 @@ llm:
# selector (same strength levels used for agent assignment). Compaction is a
# simple writing task — `low` or `average` is usually sufficient.
# Omit `strength` to use whatever AUTO picks.
# NOTE: the Settings page has an instance-wide "Compaction model" picker
# (registry config key `compaction_model`) — when set, it wins over this
# `strength` fallback and needs no restart.
#
# When the LLM provider does not report token usage (e.g. some LM Studio
# setups), a rough estimate (total chars / 4) is used as a fallback.