feat: per-CLI model picker for local agents (closes #8)

Each agent CLI declares its selectable models (and reasoning effort, for
Codex) on the daemon side; the frontend renders a model dropdown in the
avatar menu and the Settings dialog scoped to the currently picked CLI,
persists the choice per-agent in the AppConfig, and threads it through
/api/chat to the spawn argv. "Default" leaves the flag off so the CLI's
own config wins.
This commit is contained in:
pftom
2026-04-28 22:54:18 +08:00
parent 94941f59a9
commit f2d28a1cca
13 changed files with 414 additions and 25 deletions
+7
View File
@@ -83,6 +83,10 @@ export const en: Dict = {
'settings.noAgentSelected': 'no agent selected',
'settings.language': 'Language',
'settings.languageHint': 'Switch the interface language. Saved to this browser.',
'settings.modelPicker': 'Model',
'settings.reasoningPicker': 'Reasoning effort',
'settings.modelPickerHint':
'Picked per CLI. "Default" leaves the choice to the CLIs own config.',
'entry.tabDesigns': 'Designs',
'entry.tabExamples': 'Examples',
@@ -211,6 +215,9 @@ export const en: Dict = {
'avatar.metaOffline': 'offline',
'avatar.metaSelected': 'selected',
'avatar.noAgentSelected': 'no agent selected',
'avatar.modelSection': 'Model',
'avatar.modelLabel': 'Model',
'avatar.reasoningLabel': 'Reasoning',
'project.backToProjects': 'Back to projects',
'project.metaFreeform': 'freeform',