@keyou007/agent-bot 0.1.24-alpha.3 → 0.1.24-alpha.5

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.
Files changed (48) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/README.md +22 -4
  3. package/README.zh.md +22 -4
  4. package/dist/acp/AcpSessionManager.js +0 -14
  5. package/dist/acp/AcpSessionManager.js.map +1 -1
  6. package/dist/acp/acpTypes.js.map +1 -1
  7. package/dist/codex/AppServerPermissions.js +34 -0
  8. package/dist/codex/AppServerPermissions.js.map +1 -0
  9. package/dist/codex/CodexLocalActivityDetector.js +37 -5
  10. package/dist/codex/CodexLocalActivityDetector.js.map +1 -1
  11. package/dist/codex/CodexRuntime.js +37 -13
  12. package/dist/codex/CodexRuntime.js.map +1 -1
  13. package/dist/codex/ThreadWriterProcess.js +19 -5
  14. package/dist/codex/ThreadWriterProcess.js.map +1 -1
  15. package/dist/commands/CommandRouter.js +0 -3
  16. package/dist/commands/CommandRouter.js.map +1 -1
  17. package/dist/feishu/CardRenderer.js +80 -64
  18. package/dist/feishu/CardRenderer.js.map +1 -1
  19. package/dist/local-files/CsvPreview.js +148 -0
  20. package/dist/local-files/CsvPreview.js.map +1 -0
  21. package/dist/local-files/LocalFileViewerServer.js +53 -10
  22. package/dist/local-files/LocalFileViewerServer.js.map +1 -1
  23. package/dist/local-files/TurnPreviewPage.js +125 -14
  24. package/dist/local-files/TurnPreviewPage.js.map +1 -1
  25. package/dist/presentation/TurnStateReducer.js +39 -0
  26. package/dist/presentation/TurnStateReducer.js.map +1 -1
  27. package/dist/proxy/ProxySessionController.js +158 -50
  28. package/dist/proxy/ProxySessionController.js.map +1 -1
  29. package/docs/technical-reference.md +5 -3
  30. package/docs/technical-reference.zh.md +4 -2
  31. package/npm-shrinkwrap.json +2 -2
  32. package/package.json +1 -1
  33. package/skills/agent-bot/SKILL.md +10 -0
  34. package/src/acp/AcpSessionManager.ts +0 -17
  35. package/src/acp/acpTypes.ts +0 -1
  36. package/src/codex/AppServerPermissions.ts +39 -0
  37. package/src/codex/CodexLocalActivityDetector.ts +34 -4
  38. package/src/codex/CodexRuntime.ts +44 -17
  39. package/src/codex/ThreadWriterProcess.ts +17 -9
  40. package/src/commands/CommandRouter.ts +0 -3
  41. package/src/feishu/CardRenderer.ts +78 -64
  42. package/src/local-files/CsvPreview.ts +132 -0
  43. package/src/local-files/LocalFileViewerServer.ts +54 -11
  44. package/src/local-files/TurnPreviewPage.ts +128 -15
  45. package/src/presentation/TurnStateReducer.ts +41 -0
  46. package/src/presentation/turnViewTypes.ts +4 -0
  47. package/src/proxy/ProxySessionController.ts +142 -51
  48. package/src/runtime/types.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TurnStateReducer.js","sourceRoot":"","sources":["../../src/presentation/TurnStateReducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TurnStateReducer.js","sourceRoot":"","sources":["../../src/presentation/TurnStateReducer.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,7 @@ const REMOTE_TURN_HISTORY_REFRESH_INTERVAL_MS = 30_000;
48
48
  const MAX_LLM_TURN_RETRIES = 3;
49
49
  const QUEUED_PROMPT_RETRY_DELAY_MS = 5_000;
50
50
  const RECOVERY_ACTIVITY_WINDOW_MS = 10 * 60 * 1_000;
51
+ const RECOVERY_RETRY_WINDOW_MS = 60_000;
51
52
  const RECOVERY_HEARTBEAT_INTERVAL_MS = 60 * 1_000;
52
53
  const SHELL_COMMAND_JOB_POLL_INTERVAL_MS = 1_000;
53
54
  const SHELL_COMMAND_JOB_RELAUNCH_DELAY_MS = 5_000;
@@ -241,6 +242,9 @@ export class ProxySessionController {
241
242
  retriedFailureTurnIds = new Set();
242
243
  queuedPromptRetryTimers = new Map();
243
244
  recoveryRetryTimers = new Map();
245
+ recoveryRetryStartedAt = new Map();
246
+ recoveredLiveAttempts = new Set();
247
+ recoveryClosed = false;
244
248
  pendingMergedForwards = new Map();
245
249
  pendingResourceForwards = new Map();
246
250
  relatedReactionMessageIds = new Map();
@@ -812,7 +816,7 @@ export class ProxySessionController {
812
816
  if (scopedAction.value.cardView === "status")
813
817
  await this.refreshStatusCardFromAction(scopedAction, sessionId);
814
818
  else if (scopedAction.value.cardView !== "safe_restart") {
815
- await this.refreshSessionsCardFromAction(scopedAction, { forceSwitchTaskId: sessionId });
819
+ await this.refreshSessionsCardFromAction(scopedAction);
816
820
  }
817
821
  }
818
822
  else if (kind === "session_turns" || kind === "session_turns_page") {
@@ -953,6 +957,7 @@ export class ProxySessionController {
953
957
  }
954
958
  }
955
959
  close() {
960
+ this.recoveryClosed = true;
956
961
  for (const unsubscribe of this.unsubscribe)
957
962
  unsubscribe();
958
963
  this.unsubscribe.length = 0;
@@ -977,6 +982,8 @@ export class ProxySessionController {
977
982
  for (const timer of this.recoveryRetryTimers.values())
978
983
  clearTimeout(timer);
979
984
  this.recoveryRetryTimers.clear();
985
+ this.recoveryRetryStartedAt.clear();
986
+ this.recoveredLiveAttempts.clear();
980
987
  for (const schedule of this.appServerReleaseSchedules.values()) {
981
988
  if (schedule.timer)
982
989
  clearTimeout(schedule.timer);
@@ -1727,12 +1734,16 @@ export class ProxySessionController {
1727
1734
  }
1728
1735
  if (!this.outbound.canRoute(attempt.contextKey))
1729
1736
  continue;
1737
+ this.recoveryRetryStartedAt.set(attempt.attemptId, Date.now());
1730
1738
  try {
1731
1739
  await this.recoverTurnAttempt(attempt);
1732
1740
  }
1733
1741
  catch (error) {
1734
- this.logger.error({ error, attemptId: attempt.attemptId, sessionId: attempt.localSessionId }, "Failed to recover an unfinished task; it will be retried while the server is running.");
1735
- this.scheduleRecoveryRetry(attempt.attemptId);
1742
+ await this.handleRecoveryError(attempt.attemptId, error);
1743
+ }
1744
+ finally {
1745
+ if (!this.recoveryRetryTimers.has(attempt.attemptId))
1746
+ this.recoveryRetryStartedAt.delete(attempt.attemptId);
1736
1747
  }
1737
1748
  }
1738
1749
  this.restorePersistedQueuedPrompts();
@@ -1815,22 +1826,36 @@ export class ProxySessionController {
1815
1826
  });
1816
1827
  }
1817
1828
  }
1818
- async expireStaleTurnAttempt(attempt) {
1819
- const session = this.store.getSession(attempt.localSessionId);
1829
+ async expireStaleTurnAttempt(attempt, message = "执行中断已超过 10 分钟,未自动恢复。") {
1830
+ clearTimeout(this.recoveryRetryTimers.get(attempt.attemptId));
1831
+ this.recoveryRetryTimers.delete(attempt.attemptId);
1832
+ this.recoveryRetryStartedAt.delete(attempt.attemptId);
1833
+ this.recoveredLiveAttempts.delete(attempt.attemptId);
1834
+ let session = this.store.getSession(attempt.localSessionId);
1835
+ this.store.updateTurnAttempt(attempt.attemptId, { status: "interrupted" });
1820
1836
  const oldCardTurnId = attempt.pendingTurnId ?? attempt.turnId;
1821
1837
  if (session && oldCardTurnId && this.outbound.canRoute(attempt.contextKey)) {
1822
- await this.outbound.interruptTurnForRecovery(session.localSessionId, attempt.contextKey, oldCardTurnId, "执行中断已超过 10 分钟,未自动恢复。").catch((error) => {
1838
+ await this.outbound.interruptTurnForRecovery(session.localSessionId, attempt.contextKey, oldCardTurnId, message).catch((error) => {
1823
1839
  this.logger.warn({ error, attemptId: attempt.attemptId, turnId: oldCardTurnId }, "Failed to close an expired interrupted thinking card.");
1824
1840
  });
1825
1841
  }
1826
- this.store.updateTurnAttempt(attempt.attemptId, { status: "interrupted" });
1842
+ session = this.store.getSession(attempt.localSessionId);
1827
1843
  if (!session || session.status === "closed")
1828
1844
  return;
1829
- if (attempt.turnId && session.lastTurnId === attempt.turnId) {
1845
+ const runtime = this.runtimes.forAgent(session.agentName);
1846
+ const activeTurnId = runtime.getSession(session.localSessionId)?.activeTurnId;
1847
+ const sameTurn = session.lastTurnId === attempt.turnId
1848
+ || session.lastTurnId === attempt.recoveredFromTurnId
1849
+ || !session.lastTurnId;
1850
+ if (sameTurn && session.lastTurnStatus !== "completed" && session.lastTurnStatus !== "failed"
1851
+ && (!activeTurnId || activeTurnId === attempt.turnId)) {
1852
+ // Forget monitoring, not the remote task. Never cancel an unknown writer.
1853
+ if (activeTurnId)
1854
+ runtime.forgetSession?.(session.localSessionId);
1830
1855
  this.store.updateRuntimeSession(session.localSessionId, { lastTurnStatus: "cancelled" });
1831
- }
1832
- if (session.status === "starting" || session.status === "running") {
1833
- this.store.updateSession(session.localSessionId, { status: "ready" });
1856
+ if (session.status === "starting" || session.status === "running") {
1857
+ this.store.updateSession(session.localSessionId, { status: "ready" });
1858
+ }
1834
1859
  }
1835
1860
  if (attempt.turnId && this.outbound.canRoute(attempt.contextKey)) {
1836
1861
  await this.finalizeTurnMessageReactions(attempt.turnId, "cancelled").catch((error) => {
@@ -1838,6 +1863,47 @@ export class ProxySessionController {
1838
1863
  });
1839
1864
  }
1840
1865
  }
1866
+ async handleRecoveryError(attemptId, error, activeTurnId) {
1867
+ if (this.recoveryClosed)
1868
+ return;
1869
+ const attempt = this.store.getTurnAttempt(attemptId);
1870
+ if (!attempt || !isIncompleteTurnAttemptStatus(attempt.status))
1871
+ return;
1872
+ this.logger.warn({ error, attemptId, sessionId: attempt.localSessionId }, "Task recovery failed.");
1873
+ const session = this.store.getSession(attempt.localSessionId);
1874
+ const writerConflict = session?.remoteSessionId === activeWriterThreadId(error) && Boolean(session?.remoteSessionId);
1875
+ const startedAt = this.recoveryRetryStartedAt.get(attemptId) ?? Date.now();
1876
+ this.recoveryRetryStartedAt.set(attemptId, startedAt);
1877
+ const localActiveTurnId = session ? this.runtimes.forAgent(session.agentName).getSession(session.localSessionId)?.activeTurnId : undefined;
1878
+ const monitoredTurnId = activeTurnId ?? (localActiveTurnId === attempt.turnId ? localActiveTurnId : undefined);
1879
+ // Once a live turn was confirmed, a monitoring outage must not make safe restart
1880
+ // consider it idle. Keep reconciling without cancelling or replaying the prompt.
1881
+ if (monitoredTurnId && this.recoveredLiveAttempts.has(attemptId) && !writerConflict) {
1882
+ this.scheduleRecoveryRetry(attemptId, monitoredTurnId);
1883
+ return;
1884
+ }
1885
+ if (writerConflict || error instanceof CodexVersionError || Date.now() - startedAt >= RECOVERY_RETRY_WINDOW_MS) {
1886
+ const message = writerConflict
1887
+ ? "自动恢复未完成:任务仍被另一个 App Server 占用。已停止自动重试,请确认占用进程后释放任务再继续。"
1888
+ : `自动恢复未完成,已停止自动重试。请检查 Agent 状态后重新发送消息。\n${error instanceof Error ? error.message : String(error)}`;
1889
+ await this.expireStaleTurnAttempt(attempt, message);
1890
+ try {
1891
+ const replyTarget = attempt.replyMessageId
1892
+ ? { messageId: attempt.replyMessageId, replyInThread: true } : undefined;
1893
+ await this.outbound.withReplyTarget(attempt.contextKey, replyTarget, async () => {
1894
+ await this.outbound.sendText(attempt.contextKey, message);
1895
+ if (writerConflict && session)
1896
+ await this.presentThreadWriterConflict(session, attempt.contextKey, error, false);
1897
+ });
1898
+ }
1899
+ catch (notificationError) {
1900
+ this.logger.warn({ error: notificationError, attemptId }, "Failed to notify about stopped task recovery.");
1901
+ }
1902
+ return;
1903
+ }
1904
+ this.store.updateTurnAttempt(attemptId, { status: "recovering" });
1905
+ this.scheduleRecoveryRetry(attemptId, monitoredTurnId);
1906
+ }
1841
1907
  persistActiveTurnHeartbeats() {
1842
1908
  for (const attempt of this.store.listIncompleteTurnAttempts()) {
1843
1909
  if (!attempt.turnId)
@@ -1851,6 +1917,8 @@ export class ProxySessionController {
1851
1917
  }
1852
1918
  }
1853
1919
  async recoverTurnAttempt(attempt, announce = true) {
1920
+ if (this.recoveryClosed)
1921
+ return;
1854
1922
  const session = this.store.getSession(attempt.localSessionId);
1855
1923
  if (!session || session.status === "closed") {
1856
1924
  this.store.updateTurnAttempt(attempt.attemptId, { status: "interrupted" });
@@ -1879,9 +1947,9 @@ export class ProxySessionController {
1879
1947
  remote = await runtime.readRemoteSession(session.remoteSessionId);
1880
1948
  }
1881
1949
  catch (error) {
1882
- if (error instanceof CodexVersionError)
1950
+ // A failed activity check is not proof of interruption. Do not replay a prompt blindly.
1951
+ if (sourceTurnId || !isUnmaterializedCodexThreadError(error))
1883
1952
  throw error;
1884
- this.logger.warn({ error, attemptId: attempt.attemptId, remoteSessionId: session.remoteSessionId }, "Failed to read the remote task during startup recovery; treating the old local execution as interrupted.");
1885
1953
  }
1886
1954
  }
1887
1955
  const remoteTurnBelongsToAttempt = remoteTurnMatchesAttempt(remote, attempt);
@@ -1927,14 +1995,22 @@ export class ProxySessionController {
1927
1995
  this.scheduleRecoveryRetry(attempt.attemptId, synchronized.activeTurnId);
1928
1996
  }
1929
1997
  scheduleRecoveryRetry(attemptId, activeTurnId) {
1930
- if (this.recoveryRetryTimers.has(attemptId))
1998
+ if (this.recoveryClosed || this.recoveryRetryTimers.has(attemptId))
1931
1999
  return;
2000
+ if (!this.recoveryRetryStartedAt.has(attemptId))
2001
+ this.recoveryRetryStartedAt.set(attemptId, Date.now());
1932
2002
  const timer = setTimeout(() => {
1933
2003
  this.recoveryRetryTimers.delete(attemptId);
1934
2004
  const attempt = this.store.getTurnAttempt(attemptId);
1935
- if (!attempt || !isIncompleteTurnAttemptStatus(attempt.status))
2005
+ if (!attempt || !isIncompleteTurnAttemptStatus(attempt.status)) {
2006
+ this.recoveryRetryStartedAt.delete(attemptId);
2007
+ this.recoveredLiveAttempts.delete(attemptId);
1936
2008
  return;
2009
+ }
1937
2010
  const retry = async () => {
2011
+ if (!activeTurnId && Date.now() - this.recoveryRetryStartedAt.get(attemptId) >= RECOVERY_RETRY_WINDOW_MS) {
2012
+ throw new Error("等待恢复超过 1 分钟,尚未确认执行已恢复。");
2013
+ }
1938
2014
  let recoveryAttempt = attempt;
1939
2015
  if (activeTurnId) {
1940
2016
  const session = this.store.getSession(attempt.localSessionId);
@@ -1942,6 +2018,8 @@ export class ProxySessionController {
1942
2018
  const runtime = this.runtimes.forAgent(session.agentName);
1943
2019
  const synchronized = await runtime.synchronizeSession(session.localSessionId);
1944
2020
  if (synchronized.activeTurnId === activeTurnId) {
2021
+ this.recoveredLiveAttempts.add(attemptId);
2022
+ this.recoveryRetryStartedAt.delete(attemptId);
1945
2023
  this.scheduleRecoveryRetry(attemptId, activeTurnId);
1946
2024
  return;
1947
2025
  }
@@ -1952,16 +2030,27 @@ export class ProxySessionController {
1952
2030
  }
1953
2031
  }
1954
2032
  await this.recoverTurnAttempt(recoveryAttempt, false);
2033
+ if (!this.recoveryRetryTimers.has(attemptId))
2034
+ this.recoveryRetryStartedAt.delete(attemptId);
1955
2035
  };
1956
2036
  void retry().catch((error) => {
1957
- this.logger.warn({ error, attemptId, sessionId: attempt.localSessionId }, "Failed to retry an unfinished task recovery.");
1958
- this.scheduleRecoveryRetry(attemptId, activeTurnId);
2037
+ return this.handleRecoveryError(attemptId, error, activeTurnId);
2038
+ }).catch((error) => {
2039
+ this.logger.error({ error, attemptId }, "Failed to finalize task recovery.");
1959
2040
  });
1960
2041
  }, 5_000);
1961
2042
  timer.unref?.();
1962
2043
  this.recoveryRetryTimers.set(attemptId, timer);
1963
2044
  }
1964
2045
  async reattachActiveRecoveredTurn(attempt, session, turnId, replyTarget) {
2046
+ // Confirm resume before replacing the old card or announcing a running turn.
2047
+ const current = this.store.getSession(session.localSessionId) ?? session;
2048
+ const loaded = await this.loadSession({
2049
+ ...current, contextKey: attempt.contextKey, status: "running", lastTurnId: turnId, lastTurnStatus: "running",
2050
+ });
2051
+ const pendingAttempt = this.store.getTurnAttempt(attempt.attemptId);
2052
+ if (!pendingAttempt || !isIncompleteTurnAttemptStatus(pendingAttempt.status))
2053
+ return;
1965
2054
  const oldCardTurnId = attempt.pendingTurnId ?? attempt.turnId;
1966
2055
  if (oldCardTurnId) {
1967
2056
  await this.outbound.interruptTurnForRecovery(session.localSessionId, attempt.contextKey, oldCardTurnId, "Agent Bot 已重启,执行仍在继续;进度已转移到新的思考卡片。");
@@ -1979,17 +2068,12 @@ export class ProxySessionController {
1979
2068
  startedAt: Date.now(),
1980
2069
  });
1981
2070
  this.store.updateTurnAttempt(attempt.attemptId, { pendingTurnId: null });
1982
- const current = this.store.getSession(session.localSessionId) ?? session;
1983
- const loaded = await this.loadSession({
1984
- ...current,
1985
- contextKey: attempt.contextKey,
1986
- status: "running",
1987
- lastTurnId: turnId,
1988
- lastTurnStatus: "running",
1989
- });
1990
2071
  const synchronized = await loaded.runtime.synchronizeSession(session.localSessionId);
1991
- if (synchronized.activeTurnId)
2072
+ this.recoveryRetryStartedAt.delete(attempt.attemptId);
2073
+ if (synchronized.activeTurnId) {
2074
+ this.recoveredLiveAttempts.add(attempt.attemptId);
1992
2075
  this.scheduleRecoveryRetry(attempt.attemptId, synchronized.activeTurnId);
2076
+ }
1993
2077
  }
1994
2078
  async continueInterruptedAttempt(attempt, session, sourceTurnId, replyTarget) {
1995
2079
  const oldCardTurnId = attempt.pendingTurnId ?? sourceTurnId;
@@ -3614,6 +3698,11 @@ export class ProxySessionController {
3614
3698
  }
3615
3699
  async handleRuntimeEvent(event) {
3616
3700
  if ("turnId" in event) {
3701
+ const recoveryAttempt = this.recoveryRetryStartedAt.size > 0
3702
+ ? this.store.findIncompleteTurnAttemptByTurnId(event.turnId) : undefined;
3703
+ if (recoveryAttempt && this.recoveryRetryStartedAt.has(recoveryAttempt.attemptId)) {
3704
+ this.recoveredLiveAttempts.add(recoveryAttempt.attemptId);
3705
+ }
3617
3706
  this.store.touchTurnAttempt(event.turnId);
3618
3707
  const source = this.store.getSession(event.sessionId);
3619
3708
  if (source?.remoteSessionId && this.isCodexSession(source)) {
@@ -3652,6 +3741,13 @@ export class ProxySessionController {
3652
3741
  this.store.updateRuntimeSession(event.sessionId, { lastTurnId: event.turnId, lastTurnStatus: "running" });
3653
3742
  }
3654
3743
  else if (event.type === "turn_completed" || event.type === "turn_cancelled" || event.type === "turn_failed") {
3744
+ const attempt = this.store.findIncompleteTurnAttemptByTurnId(event.turnId);
3745
+ if (attempt) {
3746
+ clearTimeout(this.recoveryRetryTimers.get(attempt.attemptId));
3747
+ this.recoveryRetryTimers.delete(attempt.attemptId);
3748
+ this.recoveryRetryStartedAt.delete(attempt.attemptId);
3749
+ this.recoveredLiveAttempts.delete(attempt.attemptId);
3750
+ }
3655
3751
  this.store.markTurnAttemptTerminal(event.turnId, event.type === "turn_completed" ? "completed" : event.type === "turn_cancelled" ? "cancelled" : "failed");
3656
3752
  this.store.updateRuntimeSession(event.sessionId, {
3657
3753
  lastTurnId: event.turnId,
@@ -4804,11 +4900,13 @@ export class ProxySessionController {
4804
4900
  const legacyTitle = legacy && record.agentName.toLowerCase() === legacy.agentName.toLowerCase()
4805
4901
  ? legacy.title
4806
4902
  : undefined;
4807
- if (isDefaultGroupNameFormat(nameFormat) && isLegacyGroupPrefixOnly(event.afterName))
4808
- return;
4809
- const title = normalizeTaskTitle(isDefaultGroupNameFormat(nameFormat)
4903
+ const defaultFormat = isDefaultGroupNameFormat(nameFormat);
4904
+ let parsedTitle = defaultFormat
4810
4905
  ? legacyTitle ?? templateTitle
4811
- : templateTitle ?? legacyTitle);
4906
+ : templateTitle ?? legacyTitle;
4907
+ if (defaultFormat && isLegacyGroupPrefixOnly(event.afterName))
4908
+ parsedTitle = undefined;
4909
+ const title = normalizeTaskTitle(parsedTitle) ?? normalizeTaskTitle(event.afterName);
4812
4910
  if (!title || title === record.title)
4813
4911
  return;
4814
4912
  const loaded = await this.loadSession(record);
@@ -5487,20 +5585,29 @@ export class ProxySessionController {
5487
5585
  const project = taskProjectInfo(entry);
5488
5586
  const projectActionSource = projectActionSources.get(project.key) ?? entry;
5489
5587
  const marker = entry.current ? "✅ " : entry.active ? "🟢 " : "";
5490
- const showStop = entry.status === "外部执行中"
5491
- && entry.reference !== options.forceSwitchTaskId
5492
- && entry.id !== options.forceSwitchTaskId;
5493
- const actions = entry.current ? [] : [bindCardAction({
5494
- text: showStop ? "Stop" : "Switch",
5495
- type: showStop ? "danger" : "default",
5588
+ const stopAction = entry.active ? bindCardAction({
5589
+ text: "Stop",
5590
+ type: "danger",
5591
+ value: {
5592
+ action: "session_stop",
5593
+ sessionId: entry.reference,
5594
+ ...(searchTerm ? { searchTerm } : {}),
5595
+ page: String(page),
5596
+ contextKey,
5597
+ },
5598
+ }) : undefined;
5599
+ const actions = [];
5600
+ if (!entry.current && entry.status !== "外部执行中")
5601
+ actions.push(bindCardAction({
5602
+ text: "Switch",
5496
5603
  value: {
5497
- action: showStop ? "session_stop" : "session_switch",
5604
+ action: "session_switch",
5498
5605
  sessionId: entry.reference,
5499
5606
  ...(searchTerm ? { searchTerm } : {}),
5500
5607
  page: String(page),
5501
5608
  contextKey,
5502
5609
  },
5503
- })];
5610
+ }));
5504
5611
  actions.push(bindCardAction({
5505
5612
  text: "SwitchGroup",
5506
5613
  value: {
@@ -5566,16 +5673,17 @@ export class ProxySessionController {
5566
5673
  contextKey,
5567
5674
  },
5568
5675
  }));
5569
- actions.push(bindCardAction({
5570
- text: "Archive",
5571
- value: {
5572
- action: "session_archive",
5573
- sessionId: entry.reference,
5574
- ...(searchTerm ? { searchTerm } : {}),
5575
- page: String(page),
5576
- contextKey,
5577
- },
5578
- }));
5676
+ if (!entry.active)
5677
+ actions.push(bindCardAction({
5678
+ text: "Archive",
5679
+ value: {
5680
+ action: "session_archive",
5681
+ sessionId: entry.reference,
5682
+ ...(searchTerm ? { searchTerm } : {}),
5683
+ page: String(page),
5684
+ contextKey,
5685
+ },
5686
+ }));
5579
5687
  const title = truncateText(entry.title.replace(/\s+/gu, " ").trim() || "未命名任务", 56);
5580
5688
  const lastUserPrompt = sessionPromptPreview(entry.lastUserPrompt);
5581
5689
  return {
@@ -5588,6 +5696,7 @@ export class ProxySessionController {
5588
5696
  `**最新 Prompt**:${cardText(lastUserPrompt)}`,
5589
5697
  `<font color='grey'>最近更新:${cardText(entry.updatedLabel)}</font>`,
5590
5698
  ],
5699
+ stopAction,
5591
5700
  actions,
5592
5701
  current: entry.current,
5593
5702
  },
@@ -5614,7 +5723,7 @@ export class ProxySessionController {
5614
5723
  `第 ${page + 1} 页 · 每页 ${SESSION_PAGE_SIZE} 个任务${hasNext ? "" : ` · 当前共 ${entries.length} 个任务`}`,
5615
5724
  "",
5616
5725
  "> 项目菜单:**New** 新建任务,**NewGroup** 新建群。",
5617
- "> 任务详情:**Switch** 切换,**Stop** 停止,**Fork** / **ForkGroup** 创建分支,**Status** 查看状态,**Archive** 归档。",
5726
+ "> 任务详情:**Switch** 切换,运行中任务可用 **Stop** 发送停止信号,**Fork** / **ForkGroup** 创建分支,**Status** 查看状态,**Archive** 归档。",
5618
5727
  ], [
5619
5728
  ...(hasPrevious ? [bindCardAction({
5620
5729
  text: "Previous",
@@ -5688,7 +5797,6 @@ export class ProxySessionController {
5688
5797
  : undefined;
5689
5798
  await this.listSessions(action.contextKey, searchTerm, {
5690
5799
  updateMessageId: action.messageId,
5691
- forceSwitchTaskId: options.forceSwitchTaskId,
5692
5800
  page: options.page ?? parseSessionPage(action.value.page),
5693
5801
  });
5694
5802
  }