ai_co_discuss 0.2.80 → 0.2.82
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/.agents/skills/discuss-host/SKILL.md +1 -0
- package/package.json +1 -1
- package/runner/discussion_launch.mjs +13 -11
- package/runner/discussion_models.mjs +54 -13
- package/runner/expert_prompts.mjs +2 -0
- package/web/app.js +9 -5
- package/web/modern.css +1 -1
- package/web/modern.js +180 -189
package/web/modern.js
CHANGED
|
@@ -48148,7 +48148,10 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48148
48148
|
]);
|
|
48149
48149
|
};
|
|
48150
48150
|
}
|
|
48151
|
-
}, _J = 4e3, vJ = {
|
|
48151
|
+
}, _J = 4e3, vJ = {
|
|
48152
|
+
antigravity_cli: "多步任务中,在关键转折处用一句话写出进展再继续。",
|
|
48153
|
+
api: "你读不到本地文件,相关内容以其他成员贴出的为准,不凭文件名猜测。缺信息时在回答里写明缺什么。"
|
|
48154
|
+
}, yJ = ["data-identity", "data-face"], bJ = ["inert", "aria-hidden"], xJ = { class: "expert-card-identity" }, SJ = { class: "expert-card-names" }, CJ = {
|
|
48152
48155
|
key: 0,
|
|
48153
48156
|
class: "expert-card-badge"
|
|
48154
48157
|
}, wJ = ["title"], TJ = { class: "expert-card-facts" }, EJ = ["title"], DJ = {
|
|
@@ -48271,23 +48274,23 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48271
48274
|
Codex: "已实测:消息实时显示在已开窗口。",
|
|
48272
48275
|
Gemini: "已实测:已开窗口需重启才显示后台发言。",
|
|
48273
48276
|
Claude: "已实测:后台接管会分叉,原窗口看不到。"
|
|
48274
|
-
}, T = Z(() => w[a.platform_of(n.name)] || ""), E = Z(() => g.value && n.session !== null && a.launch_can_bind_session(n.name, i.value.launch)), D = Z(() => !!(p.value.session_id || n.session?.trim())), O = Z(() => g.value && m.value.length > 0 && !(i.value.launch.relay && !i.value.launch.available)), ee = Z(() => n.mode === "online" ? `设置 ${n.name} 的参与方式` : `配置 ${n.name} 的启动方式`), k = Z(() => a.launch_model_state(n.name, i.value.launch)), te = Z(() => !!(g.value && k.value.supported)), ne = Z(() => te.value &&
|
|
48275
|
-
|
|
48276
|
-
|
|
48277
|
-
|
|
48278
|
-
|
|
48279
|
-
|
|
48280
|
-
|
|
48281
|
-
|
|
48282
|
-
|
|
48277
|
+
}, T = Z(() => w[a.platform_of(n.name)] || ""), E = Z(() => g.value && n.session !== null && a.launch_can_bind_session(n.name, i.value.launch)), D = Z(() => !!(p.value.session_id || n.session?.trim())), O = Z(() => g.value && m.value.length > 0 && !(i.value.launch.relay && !i.value.launch.available)), ee = Z(() => n.mode === "online" ? `设置 ${n.name} 的参与方式` : `配置 ${n.name} 的启动方式`), k = Z(() => a.launch_model_state(n.name, i.value.launch)), te = Z(() => !!(g.value && k.value.supported)), ne = Z(() => te.value && ge.value.length ? "补齐上方连接后,可在这里选择模型与思考强度。" : p.value.adapter ? "模型与思考强度在 App 原聊天中选择,本页不覆盖 App 设置。" : "先选择软件入口。支持启动参数的 CLI 可在这里设置模型与强度。"), re = {
|
|
48278
|
+
low: "Low",
|
|
48279
|
+
medium: "Medium",
|
|
48280
|
+
high: "High",
|
|
48281
|
+
xhigh: "Extra High",
|
|
48282
|
+
max: "Max",
|
|
48283
|
+
ultra: "Ultra"
|
|
48284
|
+
}, ie = Z(() => {
|
|
48285
|
+
let e = k.value.efforts;
|
|
48283
48286
|
return e?.length ? [{
|
|
48284
48287
|
label: "默认强度",
|
|
48285
48288
|
value: ""
|
|
48286
48289
|
}, ...e.map((e) => ({
|
|
48287
|
-
label:
|
|
48290
|
+
label: re[e] || e,
|
|
48288
48291
|
value: e
|
|
48289
48292
|
}))] : null;
|
|
48290
|
-
}),
|
|
48293
|
+
}), A = Z(() => p.value.adapter === "antigravity_cli" && p.value.model ? "" : k.value.defaults?.effort), j = Z(() => p.value.effort ? re[p.value.effort] || p.value.effort : A.value ? re[A.value] || A.value : p.value.adapter === "antigravity_cli" ? "模型默认强度" : "软件默认强度"), ae = Z(() => g.value && a.launch_can_set_access(n.name, i.value.launch)), oe = Z(() => n.mode === "online" || g.value && p.value.adapter === "api"), se = Z(() => g.value && p.value.adapter !== "api"), ce = Z(() => p.value.project_access || i.value.launch.workspace?.project_access || "read"), le = Z(() => n.mode === "online" ? "你转发回答 · 网页聊天" : n.mode === "manual" ? "你来启动 · 自主发言" : `程序启动 · ${D.value ? "续接会话" : p.value.adapter === "api" ? "调用 API" : "新会话"}`), ue = Z(() => n.mode === "online" ? "不可(网页只读)" : "不可(须本机唤醒)"), de = Z(() => [
|
|
48291
48294
|
...g.value ? [{
|
|
48292
48295
|
label: "状态",
|
|
48293
48296
|
value: n.status.text,
|
|
@@ -48295,7 +48298,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48295
48298
|
}] : [],
|
|
48296
48299
|
{
|
|
48297
48300
|
label: "启动",
|
|
48298
|
-
value:
|
|
48301
|
+
value: le.value
|
|
48299
48302
|
},
|
|
48300
48303
|
...g.value ? [{
|
|
48301
48304
|
label: "软件",
|
|
@@ -48303,24 +48306,24 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48303
48306
|
}] : [],
|
|
48304
48307
|
...te.value ? [{
|
|
48305
48308
|
label: "模型",
|
|
48306
|
-
value: p.value.model || "
|
|
48309
|
+
value: p.value.model || k.value.defaults?.model || "软件默认模型"
|
|
48307
48310
|
}] : [],
|
|
48308
48311
|
...te.value && p.value.adapter !== "api" ? [{
|
|
48309
48312
|
label: "强度",
|
|
48310
|
-
value:
|
|
48313
|
+
value: j.value
|
|
48311
48314
|
}] : [],
|
|
48312
|
-
...
|
|
48315
|
+
...ae.value ? [{
|
|
48313
48316
|
label: "项目",
|
|
48314
|
-
value:
|
|
48315
|
-
}] :
|
|
48317
|
+
value: ce.value === "write" ? "可写" : "只读"
|
|
48318
|
+
}] : oe.value ? [{
|
|
48316
48319
|
label: "项目",
|
|
48317
48320
|
value: "不访问"
|
|
48318
48321
|
}] : [],
|
|
48319
48322
|
...n.hosting && !n.host && !n.hostable ? [{
|
|
48320
48323
|
label: "主持",
|
|
48321
|
-
value:
|
|
48324
|
+
value: ue.value
|
|
48322
48325
|
}] : []
|
|
48323
|
-
]),
|
|
48326
|
+
]), pe = {
|
|
48324
48327
|
executable: {
|
|
48325
48328
|
label: "路径",
|
|
48326
48329
|
placeholder: "可执行文件完整路径"
|
|
@@ -48333,55 +48336,55 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48333
48336
|
label: "聊天",
|
|
48334
48337
|
placeholder: "Codex App 来源聊天 ID"
|
|
48335
48338
|
}
|
|
48336
|
-
},
|
|
48339
|
+
}, me = /* @__PURE__ */ F([]), he = () => {
|
|
48337
48340
|
let e = p.value.adapter;
|
|
48338
|
-
return !
|
|
48339
|
-
},
|
|
48341
|
+
return !se.value || !e ? [] : (e === "antigravity" ? ["ipc_directory"] : e === "codex" ? ["executable", "source_thread_id"] : ["executable"]).filter((e) => !p.value[e]);
|
|
48342
|
+
}, ge = Z(() => se.value ? [.../* @__PURE__ */ new Set([...me.value, ...he()])].map((e) => ({
|
|
48340
48343
|
field: e,
|
|
48341
|
-
...
|
|
48344
|
+
...pe[e]
|
|
48342
48345
|
})) : []);
|
|
48343
|
-
function
|
|
48346
|
+
function N() {
|
|
48344
48347
|
Qn(() => {
|
|
48345
48348
|
document.activeElement === c.value && (f.value ? u : l).value?.focus({ preventScroll: !0 });
|
|
48346
48349
|
});
|
|
48347
48350
|
}
|
|
48348
|
-
function
|
|
48351
|
+
function _e(e) {
|
|
48349
48352
|
let t = e >= aY / 2;
|
|
48350
|
-
f.value !== t && (f.value = t,
|
|
48353
|
+
f.value !== t && (f.value = t, N());
|
|
48351
48354
|
}
|
|
48352
|
-
let
|
|
48353
|
-
function
|
|
48354
|
-
(!e || O.value) && (c.value?.focus({ preventScroll: !0 }),
|
|
48355
|
+
let ve = o.on("change", _e), ye = o.on("animationComplete", N), be = null, xe = "";
|
|
48356
|
+
function Se(e) {
|
|
48357
|
+
(!e || O.value) && (c.value?.focus({ preventScroll: !0 }), me.value = e ? he() : [], e && !d.value && (be = {
|
|
48355
48358
|
profile: JSON.parse(JSON.stringify(p.value)),
|
|
48356
48359
|
mode: n.mode
|
|
48357
|
-
},
|
|
48360
|
+
}, xe = n.session ?? ""), d.value = e);
|
|
48358
48361
|
}
|
|
48359
|
-
function
|
|
48360
|
-
|
|
48362
|
+
function Ce() {
|
|
48363
|
+
be &&= (a.restore_launch_profile(n.name, be.profile), be.mode !== n.mode && r("mode", be.mode), n.session !== null && n.session !== xe && r("session", xe), null), Se(!1);
|
|
48361
48364
|
}
|
|
48362
|
-
let
|
|
48363
|
-
function
|
|
48364
|
-
a.write_description_draft(n.name, e), t && a.save_description_template(n.name, e),
|
|
48365
|
+
let we = Z(() => i.value && a.description_draft(n.name).trim()), Te = /* @__PURE__ */ F(!1), Ee = Z(() => we.value ? `描述:${we.value}` : "添加描述:擅长什么、适合分到什么工作");
|
|
48366
|
+
function De({ text: e, as_template: t }) {
|
|
48367
|
+
a.write_description_draft(n.name, e), t && a.save_description_template(n.name, e), Te.value = !1;
|
|
48365
48368
|
}
|
|
48366
|
-
let
|
|
48367
|
-
let e =
|
|
48368
|
-
return e ? e ===
|
|
48369
|
-
}),
|
|
48369
|
+
let Oe = Z(() => vJ[p.value.adapter] || ""), ke = Z(() => Object.hasOwn(p.value, "system_prompt")), Ae = Z(() => (ke.value ? p.value.system_prompt : Oe.value).trim()), je = Z(() => Ae.value ? `专属提示词(${ke.value ? "自定义" : "软件预设"}):${Ae.value.split("\n")[0]}` : "专属提示词:未设置,点击添加"), Me = /* @__PURE__ */ F(!1), Ne = /* @__PURE__ */ F(""), Pe = Z(() => Ne.value.trim() !== Ae.value), Fe = Z(() => {
|
|
48370
|
+
let e = Ne.value.trim();
|
|
48371
|
+
return e ? e === Oe.value.trim() ? "与软件预设一致,预设更新时自动跟随" : Oe.value ? "已改写,不再跟随软件预设" : "只发给这位专家,Ctrl + Enter 保存" : Oe.value ? "留空:这位专家不使用预设,也没有专属提示词" : "留空表示不使用";
|
|
48372
|
+
}), Ie = Z(() => Oe.value && Ne.value.trim() !== Oe.value.trim() ? {
|
|
48370
48373
|
tag: "软件预设",
|
|
48371
|
-
text:
|
|
48374
|
+
text: Oe.value,
|
|
48372
48375
|
action: "恢复预设"
|
|
48373
48376
|
} : null);
|
|
48374
|
-
function
|
|
48375
|
-
|
|
48377
|
+
function Le() {
|
|
48378
|
+
Ne.value = Ae.value, Me.value = !0;
|
|
48376
48379
|
}
|
|
48377
|
-
function
|
|
48378
|
-
let e =
|
|
48379
|
-
a.write_launch(n.name, "system_prompt", e ===
|
|
48380
|
+
function Re() {
|
|
48381
|
+
let e = Ne.value.trim();
|
|
48382
|
+
a.write_launch(n.name, "system_prompt", e === Oe.value.trim() ? null : e), Me.value = !1;
|
|
48380
48383
|
}
|
|
48381
|
-
function
|
|
48384
|
+
function ze() {
|
|
48382
48385
|
a.write_launch(n.name, "model", ""), a.write_launch(n.name, "effort", "");
|
|
48383
48386
|
}
|
|
48384
|
-
function
|
|
48387
|
+
function Be(e) {
|
|
48385
48388
|
let t = {
|
|
48386
48389
|
ArrowLeft: -1,
|
|
48387
48390
|
ArrowUp: -1,
|
|
@@ -48393,17 +48396,17 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48393
48396
|
let i = h.value, a = i.indexOf(n.mode), o = e.key === "Home" ? i[0] : e.key === "End" ? i.at(-1) : i[(a + t[e.key] + i.length) % i.length];
|
|
48394
48397
|
r("mode", o), e.currentTarget.querySelector(`[data-mode="${o}"]`)?.focus();
|
|
48395
48398
|
}
|
|
48396
|
-
function
|
|
48397
|
-
d.value && (e.stopPropagation(), e.preventDefault(),
|
|
48399
|
+
function Ve(e) {
|
|
48400
|
+
d.value && (e.stopPropagation(), e.preventDefault(), Ce());
|
|
48398
48401
|
}
|
|
48399
|
-
function
|
|
48400
|
-
|
|
48402
|
+
function He(e) {
|
|
48403
|
+
Me.value || Te.value || c.value?.contains(e.target) || e.target.closest?.(oY) || Se(!1);
|
|
48401
48404
|
}
|
|
48402
48405
|
return R(d, (e) => {
|
|
48403
|
-
e ? document.addEventListener("pointerdown",
|
|
48406
|
+
e ? document.addEventListener("pointerdown", He, !0) : document.removeEventListener("pointerdown", He, !0);
|
|
48404
48407
|
}), R([d, s], ([e, t]) => {
|
|
48405
48408
|
let n = e ? aY : 0;
|
|
48406
|
-
t ? (o.jump(n),
|
|
48409
|
+
t ? (o.jump(n), N()) : o.set(n);
|
|
48407
48410
|
}), R(() => [
|
|
48408
48411
|
te.value,
|
|
48409
48412
|
i.value.launch.available,
|
|
@@ -48411,7 +48414,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48411
48414
|
], ([e, t]) => {
|
|
48412
48415
|
e && t && a.load_launch_models(n.name);
|
|
48413
48416
|
}, { immediate: !0 }), ta(() => {
|
|
48414
|
-
document.removeEventListener("pointerdown",
|
|
48417
|
+
document.removeEventListener("pointerdown", He, !0), ve(), ye(), o.stop();
|
|
48415
48418
|
}), (t, n) => {
|
|
48416
48419
|
let s = pA, d = sA, x = MA, S = bH, w = YV;
|
|
48417
48420
|
return U(), W("div", {
|
|
@@ -48425,7 +48428,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48425
48428
|
"data-identity": I(a).identities[e.name]?.style,
|
|
48426
48429
|
"data-face": f.value ? "back" : "front",
|
|
48427
48430
|
tabindex: "-1",
|
|
48428
|
-
onKeydown: fu(
|
|
48431
|
+
onKeydown: fu(Ve, ["esc"])
|
|
48429
48432
|
}, [
|
|
48430
48433
|
q(I(bV).div, {
|
|
48431
48434
|
class: "expert-card-turn",
|
|
@@ -48446,7 +48449,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48446
48449
|
}]),
|
|
48447
48450
|
"aria-label": O.value ? ee.value : void 0,
|
|
48448
48451
|
title: O.value ? "点击翻面设置" : void 0,
|
|
48449
|
-
onClick: n[0] ||= (e) =>
|
|
48452
|
+
onClick: n[0] ||= (e) => Se(!0)
|
|
48450
48453
|
}, {
|
|
48451
48454
|
default: L(() => [
|
|
48452
48455
|
K("span", xJ, [q(s, {
|
|
@@ -48460,11 +48463,11 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48460
48463
|
"text",
|
|
48461
48464
|
"alt",
|
|
48462
48465
|
"class"
|
|
48463
|
-
]), K("span", SJ, [K("span", null, [K("strong", null, P(e.name), 1), e.host ? (U(), W("span", CJ, "主持")) : Y("", !0)]),
|
|
48466
|
+
]), K("span", SJ, [K("span", null, [K("strong", null, P(e.name), 1), e.host ? (U(), W("span", CJ, "主持")) : Y("", !0)]), we.value ? (U(), W("small", {
|
|
48464
48467
|
key: 0,
|
|
48465
|
-
title:
|
|
48466
|
-
}, P(
|
|
48467
|
-
K("dl", TJ, [(U(!0), W(H, null, B(
|
|
48468
|
+
title: we.value
|
|
48469
|
+
}, P(we.value), 9, wJ)) : Y("", !0)])]),
|
|
48470
|
+
K("dl", TJ, [(U(!0), W(H, null, B(de.value, (e) => (U(), W("div", { key: e.label }, [K("dt", null, P(e.label), 1), K("dd", {
|
|
48468
48471
|
class: M(e.tone ? ["expert-card-status", `is-${e.tone}`] : ""),
|
|
48469
48472
|
title: e.value
|
|
48470
48473
|
}, [e.tone ? (U(), W("i", DJ)) : Y("", !0), J(P(e.value), 1)], 10, EJ)]))), 128))]),
|
|
@@ -48483,7 +48486,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48483
48486
|
class: "expert-card-modes expert-card-front-modes",
|
|
48484
48487
|
role: "radiogroup",
|
|
48485
48488
|
"aria-label": `${e.name} 启动方式`,
|
|
48486
|
-
onKeydown:
|
|
48489
|
+
onKeydown: Be
|
|
48487
48490
|
}, [(U(!0), W(H, null, B(h.value, (t) => (U(), W("button", {
|
|
48488
48491
|
key: t,
|
|
48489
48492
|
type: "button",
|
|
@@ -48497,10 +48500,10 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48497
48500
|
O.value ? Y("", !0) : (U(), W("button", {
|
|
48498
48501
|
key: 0,
|
|
48499
48502
|
type: "button",
|
|
48500
|
-
class: M({ "is-set":
|
|
48503
|
+
class: M({ "is-set": we.value }),
|
|
48501
48504
|
"aria-label": `编辑 ${e.name} 的描述`,
|
|
48502
|
-
title:
|
|
48503
|
-
onClick: n[1] ||= (e) =>
|
|
48505
|
+
title: Ee.value,
|
|
48506
|
+
onClick: n[1] ||= (e) => Te.value = !0
|
|
48504
48507
|
}, [q(d, { name: "i-lucide-user-pen" })], 10, PJ)),
|
|
48505
48508
|
e.hostable ? (U(), W("button", {
|
|
48506
48509
|
key: 1,
|
|
@@ -48524,24 +48527,24 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48524
48527
|
inert: !f.value,
|
|
48525
48528
|
"aria-hidden": !f.value
|
|
48526
48529
|
}, [K("div", RJ, [
|
|
48527
|
-
K("div", zJ, [K("strong", null, [J(P(e.name), 1), K("span", null, "设置" + P(
|
|
48530
|
+
K("div", zJ, [K("strong", null, [J(P(e.name), 1), K("span", null, "设置" + P(oe.value ? " · 不访问项目" : ""), 1)]), K("span", BJ, [
|
|
48528
48531
|
K("button", {
|
|
48529
48532
|
type: "button",
|
|
48530
|
-
class: M(["expert-card-back-tool", { "is-set":
|
|
48533
|
+
class: M(["expert-card-back-tool", { "is-set": we.value }]),
|
|
48531
48534
|
"aria-label": `编辑 ${e.name} 的描述`,
|
|
48532
|
-
title:
|
|
48533
|
-
onClick: n[4] ||= (e) =>
|
|
48535
|
+
title: Ee.value,
|
|
48536
|
+
onClick: n[4] ||= (e) => Te.value = !0
|
|
48534
48537
|
}, [q(d, { name: "i-lucide-user-pen" })], 10, VJ),
|
|
48535
48538
|
p.value.adapter ? (U(), W("button", {
|
|
48536
48539
|
key: 0,
|
|
48537
48540
|
type: "button",
|
|
48538
48541
|
class: M(["expert-card-back-tool", {
|
|
48539
|
-
"is-set":
|
|
48540
|
-
"is-own":
|
|
48542
|
+
"is-set": Ae.value,
|
|
48543
|
+
"is-own": ke.value && Ae.value
|
|
48541
48544
|
}]),
|
|
48542
|
-
title:
|
|
48545
|
+
title: je.value,
|
|
48543
48546
|
"aria-label": `编辑 ${e.name} 的专属提示词`,
|
|
48544
|
-
onClick:
|
|
48547
|
+
onClick: Le
|
|
48545
48548
|
}, [q(d, { name: "i-lucide-scroll-text" })], 10, HJ)) : Y("", !0),
|
|
48546
48549
|
v.value ? (U(), G(x, {
|
|
48547
48550
|
key: 1,
|
|
@@ -48579,7 +48582,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48579
48582
|
"items",
|
|
48580
48583
|
"aria-label"
|
|
48581
48584
|
])])) : Y("", !0),
|
|
48582
|
-
(U(!0), W(H, null, B(
|
|
48585
|
+
(U(!0), W(H, null, B(ge.value, (t) => (U(), W("div", {
|
|
48583
48586
|
key: t.field,
|
|
48584
48587
|
class: "expert-card-field"
|
|
48585
48588
|
}, [K("span", null, P(t.label), 1), q(w, {
|
|
@@ -48604,7 +48607,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48604
48607
|
"onUpdate:modelValue": n[6] ||= (e) => r("session", e)
|
|
48605
48608
|
}, null, 8, ["model-value", "aria-label"])])) : Y("", !0),
|
|
48606
48609
|
E.value && e.session.trim() && T.value ? (U(), W("p", KJ, P(T.value), 1)) : Y("", !0),
|
|
48607
|
-
|
|
48610
|
+
ae.value ? (U(), W("div", qJ, [n[18] ||= K("span", null, "项目", -1), K("div", {
|
|
48608
48611
|
class: "expert-card-modes",
|
|
48609
48612
|
role: "radiogroup",
|
|
48610
48613
|
"aria-label": `${e.name} 的项目文件权限`
|
|
@@ -48618,13 +48621,13 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48618
48621
|
key: t.value,
|
|
48619
48622
|
type: "button",
|
|
48620
48623
|
role: "radio",
|
|
48621
|
-
"aria-checked":
|
|
48624
|
+
"aria-checked": ce.value === t.value,
|
|
48622
48625
|
onClick: (n) => I(a).write_launch(e.name, "project_access", t.value)
|
|
48623
48626
|
}, P(t.label), 9, YJ)), 64))], 8, JJ)])) : Y("", !0),
|
|
48624
48627
|
v.value ? (U(), G(yK, {
|
|
48625
48628
|
key: 5,
|
|
48626
48629
|
name: e.name
|
|
48627
|
-
}, null, 8, ["name"])) : te.value && !
|
|
48630
|
+
}, null, 8, ["name"])) : te.value && !ge.value.length ? (U(), W(H, { key: 6 }, [
|
|
48628
48631
|
K("div", XJ, [n[19] ||= K("span", null, "模型", -1), q(S, {
|
|
48629
48632
|
"model-value": p.value.model || "__default__",
|
|
48630
48633
|
items: k.value.items,
|
|
@@ -48644,9 +48647,9 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48644
48647
|
type: "button",
|
|
48645
48648
|
onClick: n[8] ||= (t) => I(a).load_launch_models(e.name, !0)
|
|
48646
48649
|
}, "重试")) : Y("", !0)])) : Y("", !0),
|
|
48647
|
-
|
|
48650
|
+
ie.value ? (U(), W("div", QJ, [q(uJ, {
|
|
48648
48651
|
caption: "强度",
|
|
48649
|
-
items:
|
|
48652
|
+
items: ie.value,
|
|
48650
48653
|
"model-value": p.value.effort || "",
|
|
48651
48654
|
label: `${e.name} 的思考强度`,
|
|
48652
48655
|
"onUpdate:modelValue": n[9] ||= (t) => I(a).write_launch(e.name, "effort", t)
|
|
@@ -48661,32 +48664,32 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48661
48664
|
title: "留空使用 CLI 默认值",
|
|
48662
48665
|
"aria-label": `恢复 ${e.name} 的默认模型与强度`,
|
|
48663
48666
|
disabled: !p.value.model && !p.value.effort,
|
|
48664
|
-
onClick:
|
|
48667
|
+
onClick: ze
|
|
48665
48668
|
}, "恢复默认", 8, eY)
|
|
48666
48669
|
], 64)) : (U(), W("p", tY, [q(d, { name: e.mode === "online" ? "i-lucide-globe" : "i-lucide-monitor" }, null, 8, ["name"]), J(P(ne.value), 1)]))
|
|
48667
48670
|
]), K("span", nY, [K("button", {
|
|
48668
48671
|
type: "button",
|
|
48669
48672
|
class: "expert-card-flip is-cancel",
|
|
48670
48673
|
"aria-label": `放弃 ${e.name} 的修改`,
|
|
48671
|
-
onClick:
|
|
48674
|
+
onClick: Ce
|
|
48672
48675
|
}, "取消", 8, rY), K("button", {
|
|
48673
48676
|
ref_key: "back_button",
|
|
48674
48677
|
ref: u,
|
|
48675
48678
|
type: "button",
|
|
48676
48679
|
class: "expert-card-flip is-done",
|
|
48677
48680
|
"aria-label": `保存并返回 ${e.name} 角色卡片`,
|
|
48678
|
-
onClick: n[10] ||= (e) =>
|
|
48681
|
+
onClick: n[10] ||= (e) => Se(!1)
|
|
48679
48682
|
}, [q(d, { name: "i-lucide-check" }), n[20] ||= J("完成", -1)], 8, iY)])], 8, LJ)) : Y("", !0)]),
|
|
48680
48683
|
_: 1
|
|
48681
48684
|
}, 8, ["style"]),
|
|
48682
48685
|
q(gJ, {
|
|
48683
|
-
open:
|
|
48684
|
-
"onUpdate:open": n[11] ||= (e) =>
|
|
48686
|
+
open: Te.value,
|
|
48687
|
+
"onUpdate:open": n[11] ||= (e) => Te.value = e,
|
|
48685
48688
|
name: e.name,
|
|
48686
48689
|
platform: I(a).platform_of(e.name),
|
|
48687
|
-
text:
|
|
48690
|
+
text: we.value,
|
|
48688
48691
|
template: I(a).description_template(e.name),
|
|
48689
|
-
onSave:
|
|
48692
|
+
onSave: De
|
|
48690
48693
|
}, null, 8, [
|
|
48691
48694
|
"open",
|
|
48692
48695
|
"name",
|
|
@@ -48695,20 +48698,20 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48695
48698
|
"template"
|
|
48696
48699
|
]),
|
|
48697
48700
|
q(mJ, {
|
|
48698
|
-
open:
|
|
48699
|
-
"onUpdate:open": n[12] ||= (e) =>
|
|
48700
|
-
draft:
|
|
48701
|
-
"onUpdate:draft": n[13] ||= (e) =>
|
|
48701
|
+
open: Me.value,
|
|
48702
|
+
"onUpdate:open": n[12] ||= (e) => Me.value = e,
|
|
48703
|
+
draft: Ne.value,
|
|
48704
|
+
"onUpdate:draft": n[13] ||= (e) => Ne.value = e,
|
|
48702
48705
|
title: `${e.name} 的专属提示词`,
|
|
48703
48706
|
description: "只发给这位专家,补充它的做法与偏好;不改变权限和技能规则。",
|
|
48704
48707
|
label: `${e.name} 的专属提示词`,
|
|
48705
48708
|
placeholder: "例如:回答先给结论,控制在三段以内。",
|
|
48706
48709
|
max: I(_J),
|
|
48707
48710
|
rows: 8,
|
|
48708
|
-
note:
|
|
48709
|
-
source:
|
|
48710
|
-
changed:
|
|
48711
|
-
onSave:
|
|
48711
|
+
note: Fe.value,
|
|
48712
|
+
source: Ie.value,
|
|
48713
|
+
changed: Pe.value,
|
|
48714
|
+
onSave: Re
|
|
48712
48715
|
}, null, 8, [
|
|
48713
48716
|
"open",
|
|
48714
48717
|
"draft",
|
|
@@ -48722,7 +48725,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
48722
48725
|
], 42, yJ);
|
|
48723
48726
|
};
|
|
48724
48727
|
}
|
|
48725
|
-
}, [["__scopeId", "data-v-
|
|
48728
|
+
}, [["__scopeId", "data-v-00e9d8df"]]), cY = ["aria-label"], lY = [
|
|
48726
48729
|
"disabled",
|
|
48727
48730
|
"title",
|
|
48728
48731
|
"aria-label",
|
|
@@ -51142,10 +51145,10 @@ var hU = /*#__PURE__*/ XH({
|
|
|
51142
51145
|
"aria-expanded",
|
|
51143
51146
|
"onKeydown",
|
|
51144
51147
|
"onClick"
|
|
51145
|
-
], hZ = { class: "channel-folder-name" }, gZ = {
|
|
51148
|
+
], hZ = { class: "channel-folder-name" }, gZ = {
|
|
51146
51149
|
class: "channel-directory-count",
|
|
51147
51150
|
"aria-hidden": "true"
|
|
51148
|
-
}, vZ = ["data-drop-folder"], yZ = {
|
|
51151
|
+
}, _Z = { class: "channel-folder-actions" }, vZ = ["data-drop-folder"], yZ = {
|
|
51149
51152
|
key: 0,
|
|
51150
51153
|
class: "channel-directory-empty",
|
|
51151
51154
|
role: "status"
|
|
@@ -51386,7 +51389,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
51386
51389
|
];
|
|
51387
51390
|
}
|
|
51388
51391
|
return (e, t) => {
|
|
51389
|
-
let u = MA, _ = sA, v =
|
|
51392
|
+
let u = MA, _ = sA, v = $V, x = CH, S = sZ;
|
|
51390
51393
|
return U(), W("div", cZ, [
|
|
51391
51394
|
q(u, {
|
|
51392
51395
|
label: "新建对话",
|
|
@@ -51402,7 +51405,19 @@ var hU = /*#__PURE__*/ XH({
|
|
|
51402
51405
|
"aria-expanded": m.value,
|
|
51403
51406
|
onClick: t[1] ||= (e) => m.value = !m.value
|
|
51404
51407
|
}, [q(_, { name: m.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), t[7] ||= J("协作房间", -1)], 8, uZ), K("div", dZ, [
|
|
51405
|
-
q(v, {
|
|
51408
|
+
q(v, { text: "新建文件夹" }, {
|
|
51409
|
+
default: L(() => [q(u, {
|
|
51410
|
+
icon: "i-lucide-plus",
|
|
51411
|
+
color: "neutral",
|
|
51412
|
+
variant: "ghost",
|
|
51413
|
+
size: "xs",
|
|
51414
|
+
"aria-label": "新建文件夹",
|
|
51415
|
+
disabled: I(r).directory_pending.includes("create-folder"),
|
|
51416
|
+
onClick: t[2] ||= (e) => n("create-folder")
|
|
51417
|
+
}, null, 8, ["disabled"])]),
|
|
51418
|
+
_: 1
|
|
51419
|
+
}),
|
|
51420
|
+
q(x, {
|
|
51406
51421
|
items: d.value,
|
|
51407
51422
|
content: {
|
|
51408
51423
|
align: "end",
|
|
@@ -51420,18 +51435,6 @@ var hU = /*#__PURE__*/ XH({
|
|
|
51420
51435
|
})]),
|
|
51421
51436
|
_: 1
|
|
51422
51437
|
}, 8, ["items"]),
|
|
51423
|
-
q(x, { text: "新建文件夹" }, {
|
|
51424
|
-
default: L(() => [q(u, {
|
|
51425
|
-
icon: "i-lucide-plus",
|
|
51426
|
-
color: "neutral",
|
|
51427
|
-
variant: "ghost",
|
|
51428
|
-
size: "xs",
|
|
51429
|
-
"aria-label": "新建文件夹",
|
|
51430
|
-
disabled: I(r).directory_pending.includes("create-folder"),
|
|
51431
|
-
onClick: t[2] ||= (e) => n("create-folder")
|
|
51432
|
-
}, null, 8, ["disabled"])]),
|
|
51433
|
-
_: 1
|
|
51434
|
-
}),
|
|
51435
51438
|
K("input", {
|
|
51436
51439
|
ref_key: "import_input",
|
|
51437
51440
|
ref: f,
|
|
@@ -51451,66 +51454,63 @@ var hU = /*#__PURE__*/ XH({
|
|
|
51451
51454
|
}, [e.id ? (U(), W("div", {
|
|
51452
51455
|
key: 0,
|
|
51453
51456
|
class: M(["channel-folder-row", { active: h.value.has(e.id) && I(r).room?.folder_id === e.id }])
|
|
51457
|
+
}, [K("button", {
|
|
51458
|
+
class: "channel-folder-heading",
|
|
51459
|
+
"data-drop-folder": "",
|
|
51460
|
+
"data-drag-handle": "",
|
|
51461
|
+
type: "button",
|
|
51462
|
+
disabled: e.pending,
|
|
51463
|
+
"aria-label": `${e.name} ${e.rooms.length}`,
|
|
51464
|
+
"aria-expanded": !h.value.has(e.id),
|
|
51465
|
+
title: "拖动文件夹排序;上下方向键移动",
|
|
51466
|
+
onPointerdown: t[3] ||= (e) => !I(o) && I(i).start_drag(e),
|
|
51467
|
+
onKeydown: [fu(uu((t) => I(a)("move_folder", {
|
|
51468
|
+
id: e.order_id,
|
|
51469
|
+
direction: -1
|
|
51470
|
+
}), ["prevent"]), ["up"]), fu(uu((t) => I(a)("move_folder", {
|
|
51471
|
+
id: e.order_id,
|
|
51472
|
+
direction: 1
|
|
51473
|
+
}), ["prevent"]), ["down"])],
|
|
51474
|
+
onClick: (t) => y(e.id)
|
|
51454
51475
|
}, [
|
|
51455
|
-
|
|
51456
|
-
|
|
51457
|
-
|
|
51458
|
-
|
|
51459
|
-
|
|
51460
|
-
|
|
51461
|
-
"
|
|
51462
|
-
"aria-
|
|
51463
|
-
|
|
51464
|
-
|
|
51465
|
-
|
|
51466
|
-
|
|
51467
|
-
|
|
51468
|
-
|
|
51469
|
-
|
|
51470
|
-
|
|
51471
|
-
|
|
51472
|
-
|
|
51473
|
-
|
|
51474
|
-
|
|
51475
|
-
|
|
51476
|
-
|
|
51477
|
-
|
|
51478
|
-
|
|
51479
|
-
|
|
51480
|
-
|
|
51481
|
-
|
|
51482
|
-
|
|
51483
|
-
|
|
51484
|
-
|
|
51485
|
-
|
|
51486
|
-
|
|
51487
|
-
|
|
51488
|
-
|
|
51489
|
-
|
|
51490
|
-
|
|
51491
|
-
|
|
51492
|
-
|
|
51493
|
-
variant: "ghost"
|
|
51494
|
-
}, null, 8, ["aria-label"])]),
|
|
51495
|
-
_: 2
|
|
51496
|
-
}, 1032, ["items"]), q(x, { text: `在${e.name}中新建对话` }, {
|
|
51497
|
-
default: L(() => [q(u, {
|
|
51498
|
-
icon: "i-lucide-square-pen",
|
|
51499
|
-
"aria-label": `在${e.name}中新建对话`,
|
|
51500
|
-
disabled: e.pending || I(r).directory_pending.includes("create-room"),
|
|
51501
|
-
size: "xs",
|
|
51502
|
-
color: "neutral",
|
|
51503
|
-
variant: "ghost",
|
|
51504
|
-
onClick: (t) => n("create", e.id ? e : null)
|
|
51505
|
-
}, null, 8, [
|
|
51506
|
-
"aria-label",
|
|
51507
|
-
"disabled",
|
|
51508
|
-
"onClick"
|
|
51509
|
-
])]),
|
|
51510
|
-
_: 2
|
|
51511
|
-
}, 1032, ["text"])]),
|
|
51512
|
-
K("small", _Z, P(e.pending ? "保存中" : e.rooms.length), 1)
|
|
51513
|
-
], 2)) : Y("", !0), !e.id || !h.value.has(e.id) ? (U(), W("div", {
|
|
51476
|
+
q(_, { name: h.value.has(e.id) ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
|
|
51477
|
+
q(_, { name: "i-lucide-folder" }),
|
|
51478
|
+
K("span", hZ, P(e.name), 1),
|
|
51479
|
+
K("small", gZ, P(e.pending ? "保存中" : e.rooms.length), 1)
|
|
51480
|
+
], 40, mZ), K("div", _Z, [q(v, { text: `在${e.name}中新建对话` }, {
|
|
51481
|
+
default: L(() => [q(u, {
|
|
51482
|
+
icon: "i-lucide-square-pen",
|
|
51483
|
+
"aria-label": `在${e.name}中新建对话`,
|
|
51484
|
+
disabled: e.pending || I(r).directory_pending.includes("create-room"),
|
|
51485
|
+
size: "xs",
|
|
51486
|
+
color: "neutral",
|
|
51487
|
+
variant: "ghost",
|
|
51488
|
+
onClick: (t) => n("create", e.id ? e : null)
|
|
51489
|
+
}, null, 8, [
|
|
51490
|
+
"aria-label",
|
|
51491
|
+
"disabled",
|
|
51492
|
+
"onClick"
|
|
51493
|
+
])]),
|
|
51494
|
+
_: 2
|
|
51495
|
+
}, 1032, ["text"]), q(x, {
|
|
51496
|
+
items: g(e, s),
|
|
51497
|
+
content: {
|
|
51498
|
+
align: "start",
|
|
51499
|
+
side: "bottom",
|
|
51500
|
+
sideOffset: 6
|
|
51501
|
+
},
|
|
51502
|
+
ui: { content: "channel-menu channel-topic-menu" }
|
|
51503
|
+
}, {
|
|
51504
|
+
default: L(() => [q(u, {
|
|
51505
|
+
icon: "i-lucide-ellipsis",
|
|
51506
|
+
"aria-label": `管理文件夹 ${e.name}`,
|
|
51507
|
+
title: "文件夹选项",
|
|
51508
|
+
size: "xs",
|
|
51509
|
+
color: "neutral",
|
|
51510
|
+
variant: "ghost"
|
|
51511
|
+
}, null, 8, ["aria-label"])]),
|
|
51512
|
+
_: 2
|
|
51513
|
+
}, 1032, ["items"])])], 2)) : Y("", !0), !e.id || !h.value.has(e.id) ? (U(), W("div", {
|
|
51514
51514
|
key: 1,
|
|
51515
51515
|
class: M(e.id ? "channel-folder-rooms" : "channel-root-rooms"),
|
|
51516
51516
|
"data-drop-folder": e.id ? void 0 : ""
|
|
@@ -51549,7 +51549,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
51549
51549
|
onPointerdown: t[5] ||= (e) => !I(o) && I(i).start_drag(e),
|
|
51550
51550
|
onClick: (e) => n("select", s.id)
|
|
51551
51551
|
}, [K("span", null, P(s.title), 1)], 40, SZ),
|
|
51552
|
-
K("div", CZ, [q(
|
|
51552
|
+
K("div", CZ, [q(v, {
|
|
51553
51553
|
text: s.archived ? "恢复房间" : "存档房间",
|
|
51554
51554
|
ui: { content: "channel-topic-tooltip" }
|
|
51555
51555
|
}, {
|
|
@@ -51571,7 +51571,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
51571
51571
|
"onClick"
|
|
51572
51572
|
])]),
|
|
51573
51573
|
_: 2
|
|
51574
|
-
}, 1032, ["text"]), q(
|
|
51574
|
+
}, 1032, ["text"]), q(x, {
|
|
51575
51575
|
items: b(s, c, s.folder_id || null, e.rooms.length),
|
|
51576
51576
|
content: {
|
|
51577
51577
|
align: "start",
|
|
@@ -52065,16 +52065,12 @@ var hU = /*#__PURE__*/ XH({
|
|
|
52065
52065
|
}, vQ = { class: "pb-heading" }, yQ = {
|
|
52066
52066
|
key: 0,
|
|
52067
52067
|
class: "pb-status-detail pb-held"
|
|
52068
|
-
}, bQ = { class: "pb-member-body" }, xQ = { class: "pb-member-name" }, SQ = { class: "pb-member-body" }, CQ = { class: "pb-member-name" }, wQ = {
|
|
52068
|
+
}, bQ = { class: "pb-member-body" }, xQ = { class: "pb-member-name" }, SQ = { class: "pb-member-body" }, CQ = { class: "pb-member-name" }, wQ = ["title"], TQ = {
|
|
52069
52069
|
key: 0,
|
|
52070
52070
|
class: "pb-member-model",
|
|
52071
|
-
title: "本场启动配置;默认模型与默认强度由对应软件决定"
|
|
52072
|
-
}, TQ = {
|
|
52073
|
-
key: 1,
|
|
52074
|
-
class: "pb-member-model",
|
|
52075
52071
|
title: "续接你已有的会话;它工作时请不要在原窗口继续操作"
|
|
52076
52072
|
}, EQ = { key: 0 }, DQ = {
|
|
52077
|
-
key:
|
|
52073
|
+
key: 2,
|
|
52078
52074
|
class: "pb-member-manual"
|
|
52079
52075
|
}, OQ = { key: 0 }, kQ = ["onClick"], AQ = {
|
|
52080
52076
|
key: 1,
|
|
@@ -52441,12 +52437,11 @@ var hU = /*#__PURE__*/ XH({
|
|
|
52441
52437
|
name: "i-lucide-crown",
|
|
52442
52438
|
title: "主持人"
|
|
52443
52439
|
})) : Y("", !0),
|
|
52444
|
-
K("small",
|
|
52440
|
+
K("small", { title: e.model ? `${e.model}:卡片指定的模型与强度;未指定时读取软件自己的设置,读不到则写“软件默认”` : void 0 }, P([e.is_host ? `主持 · ${e.mode}` : e.mode, e.model].filter(Boolean).join(" · ")), 9, wQ)
|
|
52445
52441
|
]),
|
|
52446
|
-
e.model ? (U(), W("div", wQ, P(e.model), 1)) : Y("", !0),
|
|
52447
52442
|
pe(e.name)?.session_mode === "borrowed" ? (U(), W("div", TQ, "借用已有会话")) : Y("", !0),
|
|
52448
52443
|
w.value ? Y("", !0) : (U(), W("div", {
|
|
52449
|
-
key:
|
|
52444
|
+
key: 1,
|
|
52450
52445
|
class: M(["pb-member-status", `is-${e.tone}`])
|
|
52451
52446
|
}, [
|
|
52452
52447
|
c[27] ||= K("span", { class: "pb-dot" }, null, -1),
|
|
@@ -52732,7 +52727,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
52732
52727
|
], 2);
|
|
52733
52728
|
};
|
|
52734
52729
|
}
|
|
52735
|
-
}, [["__scopeId", "data-v-
|
|
52730
|
+
}, [["__scopeId", "data-v-983f5b06"]]), t$ = { class: "progress-panel-anchor" }, n$ = ["aria-expanded", "aria-label"], r$ = { class: "progress-chip-text" }, i$ = { class: "progress-chip-rounds" }, a$ = {
|
|
52736
52731
|
__name: "ProgressPanel",
|
|
52737
52732
|
setup(e) {
|
|
52738
52733
|
let { view: t, bridge: n } = xr("discussion"), r = /* @__PURE__ */ F(!1), i = Z(() => t.value.room), a = Z(() => i.value.limits || {}), o = Z(() => {
|
|
@@ -52897,11 +52892,8 @@ var hU = /*#__PURE__*/ XH({
|
|
|
52897
52892
|
}, y$ = {
|
|
52898
52893
|
class: "pb-section",
|
|
52899
52894
|
"aria-label": "发言顺序"
|
|
52900
|
-
}, b$ = { class: "pb-member-body" }, x$ = ["title"], S$ = {
|
|
52895
|
+
}, b$ = { class: "pb-member-body" }, x$ = ["title"], S$ = ["title"], C$ = {
|
|
52901
52896
|
key: 0,
|
|
52902
|
-
class: "pb-member-model"
|
|
52903
|
-
}, C$ = {
|
|
52904
|
-
key: 1,
|
|
52905
52897
|
class: "pb-member-model",
|
|
52906
52898
|
title: "它工作时请不要在原窗口继续操作"
|
|
52907
52899
|
}, w$ = ["title"], T$ = {
|
|
@@ -53157,9 +53149,8 @@ var hU = /*#__PURE__*/ XH({
|
|
|
53157
53149
|
name: "i-lucide-crown",
|
|
53158
53150
|
title: "主持人"
|
|
53159
53151
|
})) : Y("", !0),
|
|
53160
|
-
K("small",
|
|
53152
|
+
K("small", { title: v(t) || void 0 }, P([t.role === "host" ? `主持 · ${s[t.access]}` : s[t.access], v(t)].filter(Boolean).join(" · ")), 9, S$)
|
|
53161
53153
|
], 8, x$),
|
|
53162
|
-
v(t) ? (U(), W("div", S$, P(v(t)), 1)) : Y("", !0),
|
|
53163
53154
|
t.session_mode === "borrowed" ? (U(), W("div", C$, "借用已有会话")) : Y("", !0),
|
|
53164
53155
|
K("div", { class: M(["pb-member-status", `is-${g(t)}`]) }, [i[9] ||= K("span", { class: "pb-dot" }, null, -1), K("span", {
|
|
53165
53156
|
class: "pb-member-status-text",
|
|
@@ -53250,7 +53241,7 @@ var hU = /*#__PURE__*/ XH({
|
|
|
53250
53241
|
]);
|
|
53251
53242
|
};
|
|
53252
53243
|
}
|
|
53253
|
-
}, [["__scopeId", "data-v-
|
|
53244
|
+
}, [["__scopeId", "data-v-9ad0ee84"]]), B$ = {
|
|
53254
53245
|
id: "channel-sidebar",
|
|
53255
53246
|
class: "channel-sidebar",
|
|
53256
53247
|
"aria-label": "房间导航"
|