ai_co_discuss 0.2.49 → 0.2.50

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/web/modern.js CHANGED
@@ -47736,12 +47736,12 @@ var iq = /*#__PURE__*/ jH({
47736
47736
  "title",
47737
47737
  "aria-label",
47738
47738
  "onClick"
47739
- ], DJ = { class: "fine-print create-hint create-host-hint" }, OJ = { class: "create-section" }, kJ = { class: "form-two-columns" }, AJ = {
47739
+ ], DJ = { class: "fine-print create-hint create-host-hint" }, OJ = ["open"], kJ = { class: "create-section" }, AJ = { class: "form-two-columns" }, jJ = {
47740
47740
  class: "create-limit-rule",
47741
47741
  "aria-live": "polite"
47742
- }, jJ = { class: "create-section" }, MJ = {
47743
- key: 0,
47744
- class: "fine-print create-hint"
47742
+ }, MJ = {
47743
+ key: 2,
47744
+ class: "create-section"
47745
47745
  }, NJ = { class: "create-footer" }, PJ = {
47746
47746
  key: 0,
47747
47747
  role: "alert",
@@ -47761,11 +47761,10 @@ var iq = /*#__PURE__*/ jH({
47761
47761
  let h = Z(() => [...m.value].sort((e, t) => p.value.indexOf(e) - p.value.indexOf(t))), g = (e) => h.value.filter((t) => i.platform_of(t) === e).length, _ = /* @__PURE__ */ F(null), v = Z(() => l("host")), y = Z(() => h.value.filter((e) => f.value[e] !== "online" && (!d.value || f.value[e] !== "manual"))), b = /* @__PURE__ */ F(null), x = Z(() => h.value.filter((e) => f.value[e] === "cli")), S = Z(() => x.value.length > 0 || D.value), C = (e) => {
47762
47762
  let t = r.value.launch.profiles[e] || {};
47763
47763
  return t.adapter === "api" ? !!(t.base_url && t.api_protocol && t.api_key_ref && t.model) : !!(t.adapter && (t.adapter === "antigravity" ? t.ipc_directory : t.executable));
47764
- }, w = Z(() => S.value && r.value.launch.available), T = Z(() => h.value.length > 0 && x.value.every(C) && (!x.value.length || r.value.launch.available)), E = Z(() => r.value.launch.available), D = Z(() => E.value && !!r.value.launch.scheduler?.enabled), O = Z(() => r.value.launch.available ? "" : "连接本机服务后可开启"), k = Z(() => {
47764
+ }, w = Z(() => S.value && r.value.launch.available), T = Z(() => x.value.every(C) && (!x.value.length || r.value.launch.available)), E = Z(() => r.value.launch.available), D = Z(() => E.value && !!r.value.launch.scheduler?.enabled), O = Z(() => r.value.launch.available ? "" : "连接本机服务后可开启"), k = Z(() => {
47765
47765
  let e = r.value.launch.scheduler || {};
47766
47766
  return E.value && e.enabled && !(e.provider && e.model && e.api_key_ref);
47767
47767
  }), ee = Z(() => S.value && !r.value.launch.available), te = 0, ne = Z(() => {
47768
- if (!h.value.length) return "先添加 AI";
47769
47768
  if (ee.value || d.value && !r.value.launch.available) return "先连接本机服务";
47770
47769
  if (d.value && f.value[v.value] !== "cli") return "开启讨论需要一位由本机唤醒的主持人";
47771
47770
  let e = x.value.filter((e) => !C(e));
@@ -47829,19 +47828,19 @@ var iq = /*#__PURE__*/ jH({
47829
47828
  let e = Number(l("limit-max_rounds")), t = Number(l("limit-max_minutes")), n = [e && `${e} 轮`, t && rq(t)].filter(Boolean);
47830
47829
  return n.length ? `最多 ${n.join(" 或 ")},${n.length === 2 ? "先到则" : "到限后"}暂停,由你决定追加轮次或结束。` : "不设轮次和时长上限。";
47831
47830
  }), me = Z(() => {
47832
- let e = [
47831
+ let e = Object.keys(f.value), t = [
47833
47832
  "协作房间",
47834
- `${Object.keys(f.value).length} 位 AI`,
47835
- v.value ? `${v.value} 主持` : "无主持人"
47833
+ e.length ? `${e.length} 位 AI` : "暂无成员",
47834
+ v.value ? `${v.value} 主持` : "暂无主持人"
47836
47835
  ];
47837
47836
  if (d.value) {
47838
- let t = l("limit-max_rounds"), n = l("limit-max_minutes");
47839
- e.push("开启讨论", [t && Number(t) ? `${t} 轮` : "不限轮次", n && Number(n) ? rq(Number(n)) : "不限时长"].join(" / "));
47837
+ let e = l("limit-max_rounds"), n = l("limit-max_minutes");
47838
+ t.push("开启讨论", [e && Number(e) ? `${e} 轮` : "不限轮次", n && Number(n) ? rq(Number(n)) : "不限时长"].join(" / "));
47840
47839
  }
47841
- return e.join(" · ");
47840
+ return t.join(" · ");
47842
47841
  });
47843
47842
  return (t, c) => {
47844
- let p = sA, m = MA, g = YV, x = zV, C = pA, E = zK, D = HV;
47843
+ let p = sA, m = MA, g = YV, x = zV, C = pA, E = zK, te = HV;
47845
47844
  return U(), W("div", vJ, [K("form", {
47846
47845
  id: "create-discussion-form",
47847
47846
  class: "create-scroll dialog-form",
@@ -47872,8 +47871,8 @@ var iq = /*#__PURE__*/ jH({
47872
47871
  _: 1
47873
47872
  })]),
47874
47873
  K("section", CJ, [
47875
- c[13] ||= K("h3", null, [K("span", null, "2"), J("谁来参与")], -1),
47876
- c[14] ||= K("p", { class: "fine-print create-hint" }, "每位成员单独选:程序启动(本机唤醒)或手动启动(你来启动;网页 AI 也选手动,回答由你代发)。", -1),
47874
+ c[14] ||= K("h3", null, [K("span", null, "2"), J("谁来参与")], -1),
47875
+ c[15] ||= K("p", { class: "fine-print create-hint" }, "每位成员可选本机唤醒,或手动(你来启动或代发,网页 AI 选手动)。", -1),
47877
47876
  h.value.length ? (U(), W("div", wJ, [(U(!0), W(H, null, B(h.value, (e) => (U(), G(tJ, {
47878
47877
  key: e,
47879
47878
  name: e,
@@ -47896,7 +47895,7 @@ var iq = /*#__PURE__*/ jH({
47896
47895
  "onHost",
47897
47896
  "onRemove",
47898
47897
  "onMode"
47899
- ]))), 128))])) : (U(), W("p", TJ, "从下方添加 AI;同一平台可添加多位,各自独立会话。")),
47898
+ ]))), 128))])) : (U(), W("p", TJ, "可以先不添加成员,建房后再邀请;同一平台可添加多位,各自独立会话。")),
47900
47899
  K("div", {
47901
47900
  ref_key: "library",
47902
47901
  ref: _,
@@ -47927,13 +47926,16 @@ var iq = /*#__PURE__*/ jH({
47927
47926
  q(p, { name: "i-lucide-plus" })
47928
47927
  ], 8, EJ))), 128))], 512),
47929
47928
  K("div", DJ, [q(p, { name: "i-lucide-crown" }), K("span", null, P(y.value.length ? "点卡片上的皇冠指定主持人:没 @ 任何人的消息由它分配;其他成员只在被你或主持人点名时发言。" : "添加一位本地 AI 后,没 @ 的消息才有人接。"), 1)]),
47930
- q(_J, {
47929
+ K("details", {
47930
+ class: "create-advanced",
47931
+ open: D.value
47932
+ }, [c[13] ||= K("summary", null, "高级:智能调度(可选)", -1), q(_J, {
47931
47933
  free: !0,
47932
47934
  blocker: O.value
47933
- }, null, 8, ["blocker"])
47935
+ }, null, 8, ["blocker"])], 8, OJ)
47934
47936
  ]),
47935
- K("section", OJ, [
47936
- c[16] ||= K("h3", null, [K("span", null, "3"), J("推进方式")], -1),
47937
+ K("section", kJ, [
47938
+ c[17] ||= K("h3", null, [K("span", null, "3"), J("推进方式(可选)")], -1),
47937
47939
  q(E, {
47938
47940
  "model-value": d.value,
47939
47941
  label: "创建后开启讨论",
@@ -47945,7 +47947,7 @@ var iq = /*#__PURE__*/ jH({
47945
47947
  label: "讨论目标",
47946
47948
  description: "写下问题、背景和顾虑,主持人据此推进。"
47947
47949
  }, {
47948
- default: L(() => [q(D, {
47950
+ default: L(() => [q(te, {
47949
47951
  "model-value": l("goal"),
47950
47952
  maxlength: 1e3,
47951
47953
  rows: 4,
@@ -47965,14 +47967,14 @@ var iq = /*#__PURE__*/ jH({
47965
47967
  "onUpdate:rounds": c[4] ||= (e) => u("limit-max_rounds", String(e)),
47966
47968
  "onUpdate:minutes": c[5] ||= (e) => u("limit-max_minutes", String(e))
47967
47969
  }, null, 8, ["rounds", "minutes"]),
47968
- c[15] ||= K("p", { class: "fine-print create-hint" }, "一轮指每位专家各完成一次观点;开启后计时,暂停期间不计时。", -1),
47970
+ c[16] ||= K("p", { class: "fine-print create-hint" }, "一轮指每位专家各完成一次观点;开启后计时,暂停期间不计时。", -1),
47969
47971
  q(E, {
47970
47972
  "model-value": !!I(r).named_followup,
47971
47973
  label: "点名追问",
47972
47974
  description: "开启后,主持人每轮读完回答再逐位点名追问;关闭时专家之间互相回应、互相提问,主持人只开场和收尾。",
47973
47975
  "onUpdate:modelValue": c[6] ||= (e) => I(i).write_named_followup(e)
47974
47976
  }, null, 8, ["model-value"]),
47975
- K("div", kJ, [q(x, {
47977
+ K("div", AJ, [q(x, {
47976
47978
  label: "单次 AI 执行(分钟)",
47977
47979
  description: "留空或 0 表示不限"
47978
47980
  }, {
@@ -47988,36 +47990,44 @@ var iq = /*#__PURE__*/ jH({
47988
47990
  }, null, 8, ["model-value"])]),
47989
47991
  _: 1
47990
47992
  })]),
47991
- K("p", AJ, [q(p, { name: "i-lucide-flag" }), J(P(pe.value), 1)])
47993
+ K("p", jJ, [q(p, { name: "i-lucide-flag" }), J(P(pe.value), 1)])
47992
47994
  ], 64)) : Y("", !0)
47993
47995
  ]),
47994
- K("section", jJ, [c[18] ||= K("h3", null, [K("span", null, "4"), J("启动 AI")], -1), I(r).launch.available ? (U(), W(H, { key: 1 }, [w.value ? (U(), W(H, { key: 0 }, [q(x, { label: "项目目录(可选)" }, {
47995
- default: L(() => [q(g, {
47996
- "model-value": I(r).launch.workspace.cwd || "",
47997
- placeholder: "输入完整路径,或点右侧图标选择",
47998
- class: "w-full",
47999
- ui: { trailing: "pe-1" },
48000
- "onUpdate:modelValue": c[8] ||= (e) => I(i).write_launch("workspace", "cwd", e)
48001
- }, {
48002
- trailing: L(() => [q(m, {
48003
- icon: "i-lucide-folder-open",
48004
- color: "neutral",
48005
- variant: "ghost",
48006
- size: "xs",
48007
- "aria-label": "在本机选择项目目录",
48008
- title: de.value ? "目录选择窗口已打开,请在本机窗口中选择" : "在本机选择文件夹",
48009
- disabled: de.value,
48010
- onClick: fe
48011
- }, null, 8, ["title", "disabled"])]),
47996
+ w.value ? (U(), W("section", MJ, [
47997
+ c[18] ||= K("h3", null, [K("span", null, "4"), J("项目目录")], -1),
47998
+ q(x, { label: "可选,供本地软件查看" }, {
47999
+ default: L(() => [q(g, {
48000
+ "model-value": I(r).launch.workspace.cwd || "",
48001
+ placeholder: "输入完整路径,或点右侧图标选择",
48002
+ class: "w-full",
48003
+ ui: { trailing: "pe-1" },
48004
+ "onUpdate:modelValue": c[8] ||= (e) => I(i).write_launch("workspace", "cwd", e)
48005
+ }, {
48006
+ trailing: L(() => [q(m, {
48007
+ icon: "i-lucide-folder-open",
48008
+ color: "neutral",
48009
+ variant: "ghost",
48010
+ size: "xs",
48011
+ "aria-label": "在本机选择项目目录",
48012
+ title: de.value ? "目录选择窗口已打开,请在本机窗口中选择" : "在本机选择文件夹",
48013
+ disabled: de.value,
48014
+ onClick: fe
48015
+ }, null, 8, ["title", "disabled"])]),
48016
+ _: 1
48017
+ }, 8, ["model-value"])]),
48012
48018
  _: 1
48013
- }, 8, ["model-value"])]),
48014
- _: 1
48015
- }), c[17] ||= K("p", { class: "fine-print create-hint" }, "供本地软件查看的项目,读写权限在专家卡片上设置。API 仅使用房间上下文。", -1)], 64)) : Y("", !0)], 64)) : (U(), W("p", MJ, "连接本机服务后,可在此设置项目目录和启动方式。"))])
48019
+ }),
48020
+ c[19] ||= K("p", { class: "fine-print create-hint" }, "读写权限在专家卡片上设置;API 仅使用房间上下文。", -1)
48021
+ ])) : Y("", !0)
48016
48022
  ], 32), K("footer", NJ, [w.value && I(r).launch.error ? (U(), W("p", PJ, P(I(r).launch.error), 1)) : Y("", !0), K("div", FJ, [
48017
48023
  K("span", {
48018
48024
  class: M(["create-summary", { "is-blocked": ne.value }]),
48019
- title: me.value
48020
- }, P(ne.value ? `还差:${ne.value}` : me.value), 11, IJ),
48025
+ title: ne.value || me.value,
48026
+ role: "status"
48027
+ }, [ne.value ? (U(), G(p, {
48028
+ key: 0,
48029
+ name: "i-lucide-circle-alert"
48030
+ })) : Y("", !0), J(P(ne.value ? `还差:${ne.value}` : me.value), 1)], 10, IJ),
48021
48031
  q(m, {
48022
48032
  label: "取消",
48023
48033
  color: "neutral",
@@ -48041,7 +48051,7 @@ var iq = /*#__PURE__*/ jH({
48041
48051
  ])])]);
48042
48052
  };
48043
48053
  }
48044
- }, [["__scopeId", "data-v-c130a6c2"]]), BJ = {
48054
+ }, [["__scopeId", "data-v-386f472e"]]), BJ = {
48045
48055
  class: "account-settings",
48046
48056
  "aria-labelledby": "account-heading"
48047
48057
  }, VJ = {