Repository navigation
Closed
Description
Summary
Small polish items from the friend-DM self-test (aesthetics, simplicity, consistency).
Environment
- FlyBot main
ab723ac(after fix(ui): + menu is a popover next to +; one Copy invite entry; 6 digits room hint (#173) #265), core + plugins/social + plugins/tree on@deepseek-ai/dsh@0.2.0-rc.2, Node 24. - Two fresh installs on one Linux box: A
:3090(owner SelfA1220,@selfa1220.home) and B:3091(owner SelfB1220,@selfb1220.home). Bot Socialhttps://47-80-69-220.sslip.io. - Both Chiefs on
ark/deepseek-v4-flash(real model). - A's Chief is shared with B through a per-Bot invite (grant
grt_01M56M32HBPKTGVE0G51AM23C4, grantee@chief.selfb1220.home). B joined with its Chief as the talk-through Bot. B's Chief is not shared back (by design, Per-Bot grants leak: accepting a Helper invite exposes the joiner's Chief; face-room Chief shows in Friends' Bots; Manage access wrong/raw #138/Regression of #138: joining a friend's invite still puts the joiner's Chief on the inviter's main list #161). - Scheduled product self-test, focus A (friend DM), browser run 2026-10-18 12:27–12:31 Asia/Shanghai. Screenshots stayed on the test machine; what they show is written out below.
Items
Tool added/Tool removedlines repeat every turn. Both chats get system lines likeTool added: create_child_bot · Tool added: list_childrenand thenTool removed: …, again and again. Expected: no tool-mask noise in a person's chat. Chat shows raw 'Tool removed: ask_user_question' cell (remainder of #140; DSH core cell) #140 already hidTool removed: ask_user_questionfor the same reason.
Hunch (code, not verified):hidePluginTools()(core/src/host/hooks.jsL651–667) computesknownfromctx.tools.schemas(agent). Oncerestrict({ deny })has hidden the tree tools (visibleTo: inTree,plugins/tree/src/tools.jsL48/61), they may no longer be inschemas, so the next resolve computesdeny = [], drops the mask (Tool added), and the one after that denies again (Tool removed). That would flip on every delivery.ContextCell(core/src/client/cells.jsL533) shows every tool change exceptask_user_question.- The two Chiefs introduce themselves differently: A says "your Main Bot", B says "your Chief of Staff". The system prompt says
## You are the Main Bot (Chief of Staff)(core/src/host/prompt.jsL26). Use one term (the UI says Main Bot). - Settings → Bots → "Add a Main Bot" offers "Chief" when Chief is already the only Main Bot. Hunch: on B,
roster.botsalso has the friend's Bot (SelfA1220's Chief, also namedChief), andMainBotsSection(core/src/client/settings.jsL75candidates, and L84 for the Main Bot select) does not filter outbot.remote. So a friend's Bot would be offered as a Main Bot under a bare name that looks like my own. The first-Main-Bot select (L84) listsroster.botswithout that filter too. - Gear on hover is inconsistent. On A, hovering my own Chief row shows no gear. On B, a friend-Bot row shows a gear. Social UI polish round 3: truncation, duplicate Add friend/Accept invite, Manage access depth, wording (#166 follow-up) #173 says the gear should show on hover or focus for every row.
Expected
English-only, short, consistent wording. No repeated system noise. Only my own Bots can be picked as a Main Bot. The same hover affordance on every row.
Metadata
Metadata
Assignees
Labels
No labels
Activity
fix(ui,host): friend-DM polish: stable tool mask, one Main Bot term, …
fix(ui,host): friend-DM polish: stable tool mask, one Main Bot term, …
fix(ui,host): stable tool mask, one Main Bot term, own Bots only as M…
fix(ui): show hover gear on own Bot sidebar rows too (ThinkFlowLab#276)
Birfy commentedon Oct 18, 2026
All four items are on main:
a003044d6d10ffClosing. Sticky NEW divider stays tracked on #275.
Recompute plugin tool masks when a turn starts (ThinkFlowLab#598)