You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Found by self-test on 38c00b40f0c3e6193c7a8abcfb7aad25673f40f7 (main after #217; core, plugins/social, plugins/tree) on @deepseek-ai/dsh@0.2.0-rc.2, Node 24. Two fresh installs on one Linux box: A :3080 (owner SelfA0333, @selfa0333.home, Bots Chief + Helper), B :3081 (owner SelfB0333, @selfb0333.home, Chief). Bot Social https://47-80-69-220.sslip.io. Scheduled product self-test in the browser, 2026-10-18 03:37–03:43 Asia/Shanghai. No model key in this run, so Bot replies were not tested. Screenshots were not saved; screens are described in text.
Items not already tracked in #173 / #197 / #182. Each is small; the theme is simplicity and consistency.
Bot settings (own Bot, e.g. Helper → Settings)
Duplicate labels. The Model card has a row labelled Model; the Main Bot card has a row labelled Main Bot. The heading is repeated as the row label. Drop one (e.g. keep the card title, show only the value and hint in the row). Code: core/src/client/bot-settings.js L225–246.
Sharing layout.Create another invite link sits above the link field, and three buttons crowd together (Create another invite link, Copy link, Copy with instructions). The Sharing heading is indented differently from the other section headings. Expected: link first, then one row with Copy link (primary) and a quieter "New link"; heading aligned with the others. Code: plugins/social/client.js ~L1482–1509.
Create Bot
Two back controls. The form has a top-left back arrow and a Back button at the bottom. Keep one. Code: core/src/client/create-bot.js L91 and L96.
Default model. The model defaults to DeepSeek-V41-Flash · DeepSeek · High, although the only provider configured on this box is Volcengine Ark (llm-pi-ai providers.ark) and DeepSeek has no credential. Hunch: startModel() (core/src/client/bot-draft.js) takes roster.defaultModel (the DSH default) first. Consider defaulting to the main Bot's model, or to a provider that has a credential.
Friend's Bot (gear dialog / remove)
Remove uses native confirm() ("Remove Helper? SelfA0333 can share it again."), unlike the inline confirms elsewhere (face-room Leave now asks inline). After confirming, nothing changes on screen for 3–15 s before the Bot disappears. Expected: inline confirm in the dialog, and the row disappears (or shows "Removing…") at once. Code: plugins/social/client.js ~L1444–1471.
Model and Main Bot: the duplicate row labels are gone.
Create Bot: has one back control.
Account menu: is wide enough for "Switch to classic Agent mode".
Remove this Bot: asks inline (Remove / Keep) instead of the browser's confirm box.
Auto-send: reads Auto-send to <friend> and wraps when the name is long.
Sharing:
shows the link first, with Copy link as the only primary button and a quiet New link;
the heading is aligned with the core settings headings.
Still open here:
Default model in Create Bot: this changes behaviour, so it should be its own change.
Browser check: the CSS-only items (heading inset, account menu width, the face-room Auto-send row layout) are covered by tests but haven't been checked in a browser yet.
Status against main 7a3ccb3: no change since the comment on #232 above.
Still open: the default model in Create Bot.startModel() (core/src/client/bot-draft.js L12–15) still picks roster.defaultModel, the DSH default, before anything else.
Expected: Create Bot starts with the main Bot's current model. If that model is gone, it falls back to roster.defaultModel, then to the first available model. It should never preselect a provider that has no credential.
The CSS-only items (heading inset, account-menu width, face-room Auto-send row) still need a browser check.
Activity
Birfy commentedon Oct 17, 2026
PR #232 (merged) covers part of this issue:
Auto-send to <friend>and wraps when the name is long.Still open here:
Birfy commentedon Oct 18, 2026
Status against main
7a3ccb3: no change since the comment on #232 above.Still open: the default model in Create Bot.
startModel()(core/src/client/bot-draft.jsL12–15) still picksroster.defaultModel, the DSH default, before anything else.Expected: Create Bot starts with the main Bot's current model. If that model is gone, it falls back to
roster.defaultModel, then to the first available model. It should never preselect a provider that has no credential.The CSS-only items (heading inset, account-menu width, face-room Auto-send row) still need a browser check.
fix(ui): Create Bot starts on the Main Bot's model (ThinkFlowLab#230) (…
Start a Bot made by another Bot on its maker's model (ThinkFlowLab#411)
Social: neutral 'You already have …' on a re-accepted invite; clearer…