dsh-bots 0.2.16 → 0.2.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/client.js +22 -4
- package/package.json +1 -1
package/lib/client.js
CHANGED
|
@@ -464,6 +464,7 @@
|
|
|
464
464
|
'chat.stop.noop': '当前没有进行中的生成',
|
|
465
465
|
'media.openFailed': '打开失败,文件可能已移动或被删除',
|
|
466
466
|
'chat.members.manage': '管理成员',
|
|
467
|
+
'chat.members.cap': '已达群成员上限 6 人(引擎限制)——请先移除一名成员再添加',
|
|
467
468
|
'chat.settings': '设置',
|
|
468
469
|
'chat.settings.title': '会话设置',
|
|
469
470
|
'chat.settings.name': '名称',
|
|
@@ -576,6 +577,7 @@
|
|
|
576
577
|
'chat.stop.noop': 'No generation in progress',
|
|
577
578
|
'media.openFailed': 'Open failed — the file may have moved or been deleted',
|
|
578
579
|
'chat.members.manage': 'Manage members',
|
|
580
|
+
'chat.members.cap': 'Group cap is 6 members (engine limit) — remove one before adding',
|
|
579
581
|
'chat.settings': 'Settings',
|
|
580
582
|
'chat.settings.title': 'Session settings',
|
|
581
583
|
'chat.settings.name': 'Name',
|
|
@@ -2149,8 +2151,24 @@
|
|
|
2149
2151
|
return null;
|
|
2150
2152
|
const singles = s.agents.filter((a) => !a.isGroup && a.isHiddenFromSidebar !== true);
|
|
2151
2153
|
const pickedIds = picked === null ? [] : Object.keys(picked).filter((k) => picked[k]);
|
|
2154
|
+
// Engine hard cap (sdk-bots agents.ts GROUP_MAX_MEMBERS = 6): the glue
|
|
2155
|
+
// slice(0, 6)-truncates the roster SILENTLY — an over-cap save writes
|
|
2156
|
+
// successfully and just drops whoever ranked past 6. Surface it here
|
|
2157
|
+
// instead of letting a save pretend to work.
|
|
2158
|
+
const MEMBER_CAP = 6;
|
|
2159
|
+
const overCap = pickedIds.length > MEMBER_CAP;
|
|
2160
|
+
function toggle(id) {
|
|
2161
|
+
if (picked === null)
|
|
2162
|
+
return;
|
|
2163
|
+
if (picked[id] !== true && pickedIds.length >= MEMBER_CAP) {
|
|
2164
|
+
setErr(t('chat.members.cap'));
|
|
2165
|
+
return;
|
|
2166
|
+
}
|
|
2167
|
+
setErr(null);
|
|
2168
|
+
setPicked({ ...picked, [id]: !picked[id] });
|
|
2169
|
+
}
|
|
2152
2170
|
async function submit() {
|
|
2153
|
-
if (working || picked === null)
|
|
2171
|
+
if (working || picked === null || overCap)
|
|
2154
2172
|
return;
|
|
2155
2173
|
setWorking(true);
|
|
2156
2174
|
setErr(null);
|
|
@@ -2186,16 +2204,16 @@
|
|
|
2186
2204
|
key: m.id,
|
|
2187
2205
|
className: 'dbs-member' + (picked[m.id] ? ' checked' : ''),
|
|
2188
2206
|
style: { cursor: 'pointer', padding: '4px 6px', borderRadius: 8 },
|
|
2189
|
-
onClick: () =>
|
|
2207
|
+
onClick: () => toggle(m.id),
|
|
2190
2208
|
}, e('input', { type: 'checkbox', checked: Boolean(picked[m.id]), readOnly: true }), e(Avatar, { agent: m, size: 18 }), e('span', { className: 'dbs-title' }, m.name))), singles.length > 0
|
|
2191
|
-
? e('div', { className: 'dbs-meta', style: { padding: '6px 6px 0' } }, t('chat.group', { n: pickedIds.length }))
|
|
2209
|
+
? e('div', { className: 'dbs-meta', style: { padding: '6px 6px 0' } }, t('chat.group', { n: pickedIds.length }) + ' / ' + String(MEMBER_CAP))
|
|
2192
2210
|
: null), err !== null
|
|
2193
2211
|
? e('div', { className: 'dbs-error', onClick: () => { setErr(null); } }, err)
|
|
2194
2212
|
: null), e('div', { className: 'dbs-modalFooter' }, e(Button, {
|
|
2195
2213
|
variant: 'ghost', size: 'sm', disabled: working,
|
|
2196
2214
|
onClick: () => patch({ manageMembers: null }),
|
|
2197
2215
|
}, t('action.cancel')), e(Button, {
|
|
2198
|
-
variant: 'primary', size: 'sm', disabled: picked === null || working,
|
|
2216
|
+
variant: 'primary', size: 'sm', disabled: picked === null || working || overCap,
|
|
2199
2217
|
onClick: () => void submit(),
|
|
2200
2218
|
}, working ? t('action.saving') : t('action.save')))));
|
|
2201
2219
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-bots",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.17",
|
|
4
4
|
"description": "Multi-bot workbench for DeepSeek Harness: bridges the sdk-bots orchestration gateway (group chats, single bots) into the dsh web shell with official-styled UI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "lib/index.js",
|