dsh-tui-favors
Manifest validA dsh-TUI plugin that pins the model, reasoning effort, agent preset and permission mode every new conversation starts on, plus a /favors command to inspect or re-apply them on demand.
dsh-tui-favors
Pin the four values a dsh-TUI launch starts on — model route, reasoning effort, agent preset and permission mode — so every launch returns to your favorites instead of whatever the last session happened to end on. Turn on pin: true to extend that to every /new within the same run.
Install
/plugin install github:zerodegress/dsh-tui-favors
Restart dsh-TUI afterwards: the row writes the preference files during startup.
Use
Favorites come from two layers with the same shape: your profile's row config, and an optional ~/.dsh-tui/favors.json that wins key by key.
Layer 1 — the profile row
Add your favorites to your profile's cordis.patch.yml (any knob you leave out is not touched):
- id: dsh-tui-favors
name: dsh-tui-favors
config:
provider: <provider>
model: <model-id>
effort: max
preset: standard
permission: workspace-write
Layer 2 — ~/.dsh-tui/favors.json
Flat JSON, the same keys as the config: block above, sitting next to model.json and friends:
{
"provider": "magpie",
"model": "group/cheap-deepseek-v4-1-flash",
"effort": "max",
"preset": "ptc",
"permission": "workspace-write",
"_comment": "machine-local, not in git"
}
It applies without a restart when pin: true (each check re-reads it, 2 s by default); with the default pin: false a new or edited file is picked up on the next launch or by /favors apply. Knobs you leave out keep the row's value, and a value that fails validation is reported instead of applied — the row's value stays, so a typo never silently un-pins a knob. A whole copy-pasted patch row (with id/name/config) is refused with a hint to keep only the keys inside config. enabled: false on the profile row is a kill switch: the file is then not even read.
Then, inside the TUI:
/favors— show each knob: the pinned value, its source ([favors.json]or[profile row]), what the preference file currently holds, and whether something outranks it (DSH_TUI_PRESET,DSH_PERMISSION_MODE, the/settingsdefault effort). Thesource:line reports whether the file is missing, in effect, or ignored./favors apply— re-read the file and rewrite the four files immediately instead of waiting for the next launch orpincheck.
With pin: false (the default) the files are written once per launch: a mid-session /model, /effort, /preset or /permission pick stays in effect, and the next /new re-reads it — the favorites are back on the next launch. Set pin: true to revert those picks, which is what makes every /new start on the favorites; pollMs (2 s by default) then decides how quickly. It costs one stat per check and nothing else.
Two limits worth knowing: reasoning effort is pinned per launch (dsh-TUI caches the preferred tier in-process, so an in-session /effort lasts until the next start), and permission.json only seeds sessions that never picked a permission mode themselves.
中文说明见 README.zh.md;变更记录见 CHANGELOG.md。
Comments
Loading…
Similar plugins
by kolawong
DSH plugin: pick separate models and reasoning efforts for the main session, subagents, and plan mode.
★ 0
MIT
TypeScript
Oct 17, 2026
dsh plugin --profile web add dsh-plugin-model-dispatchby AkotaP
DSH web plugin: a Model Capabilities page in Settings — manage per-model Context Window, Max Output, Input Modalities and Reasoning Levels (Default = drop the field), plus global preset lists.
★ 0
MIT
JavaScript
Sep 28, 2026
dsh plugin --profile web add dsh-model-tweaksby Stmol
DSH plugin: keep your own prompts in Settings and switch them on per chat
★ 2
↓ 28/wk
MIT
JavaScript
Oct 4, 2026
dsh plugin --profile web add @stmol/dsh-prompt-libby JimLuan
Terminal UI plugin for the DeepSeek Harness dsh CLI: an interactive in-process host surface over dsh-base (sessions, streaming conversation, tool cards, approvals, questions, jobs, subagents, goals, p
★ 0
TypeScript
Aug 16, 2026
dsh plugin --profile web add dsh-tui-pluginby SouleyMoni1
DSH plugin: per-model reasoning levels for custom API models, with family presets and an official-settings-page editor.
★ 0
MIT
TypeScript
Sep 28, 2026
dsh plugin --profile web add dsh-experience-pluginby mikulo
DeepSeek Harness (DSH) plugin: pick a local .md prompt template with / when starting a new conversation; it binds the whole conversation with AGENTS.md-level authority.
★ 1
MIT
JavaScript
Sep 30, 2026
dsh plugin --profile web add @mikulo/dsh-prompt-switcher