@keyou007/agent-bot 0.1.13-alpha.1 → 0.1.13-alpha.2

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 (57) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +106 -103
  3. package/README.zh.md +76 -73
  4. package/dist/acp/AcpProcessManager.js +8 -3
  5. package/dist/acp/AcpProcessManager.js.map +1 -1
  6. package/dist/acp/AcpSessionManager.js +15 -0
  7. package/dist/acp/AcpSessionManager.js.map +1 -1
  8. package/dist/cli/help.js +4 -2
  9. package/dist/cli/help.js.map +1 -1
  10. package/dist/cli/serverStatus.js +27 -0
  11. package/dist/cli/serverStatus.js.map +1 -1
  12. package/dist/cli/taskListOutput.js +72 -0
  13. package/dist/cli/taskListOutput.js.map +1 -0
  14. package/dist/cli.js +49 -54
  15. package/dist/cli.js.map +1 -1
  16. package/dist/codex/CodexProcessManager.js +34 -4
  17. package/dist/codex/CodexProcessManager.js.map +1 -1
  18. package/dist/codex/CodexRuntime.js +3 -0
  19. package/dist/codex/CodexRuntime.js.map +1 -1
  20. package/dist/feishu/CardRenderer.js +43 -2
  21. package/dist/feishu/CardRenderer.js.map +1 -1
  22. package/dist/feishu/FeishuConnector.js +16 -5
  23. package/dist/feishu/FeishuConnector.js.map +1 -1
  24. package/dist/index.js +23 -4
  25. package/dist/index.js.map +1 -1
  26. package/dist/proxy/ProxySessionController.js +157 -59
  27. package/dist/proxy/ProxySessionController.js.map +1 -1
  28. package/dist/runtime/AcpRuntimeAdapter.js +3 -0
  29. package/dist/runtime/AcpRuntimeAdapter.js.map +1 -1
  30. package/dist/runtime/agentEnvironment.js +24 -4
  31. package/dist/runtime/agentEnvironment.js.map +1 -1
  32. package/dist/runtime/createAgentRuntimeRegistry.js +7 -3
  33. package/dist/runtime/createAgentRuntimeRegistry.js.map +1 -1
  34. package/dist/state/StateStore.js +12 -9
  35. package/dist/state/StateStore.js.map +1 -1
  36. package/docs/technical-reference.md +9 -3
  37. package/docs/technical-reference.zh.md +9 -3
  38. package/npm-shrinkwrap.json +2 -2
  39. package/package.json +1 -1
  40. package/skills/agent-bot/SKILL.md +53 -22
  41. package/src/acp/AcpProcessManager.ts +16 -3
  42. package/src/acp/AcpSessionManager.ts +14 -0
  43. package/src/cli/help.ts +4 -2
  44. package/src/cli/serverStatus.ts +28 -0
  45. package/src/cli/taskListOutput.ts +91 -0
  46. package/src/cli.ts +66 -51
  47. package/src/codex/CodexProcessManager.ts +38 -3
  48. package/src/codex/CodexRuntime.ts +6 -0
  49. package/src/feishu/CardRenderer.ts +61 -1
  50. package/src/feishu/FeishuConnector.ts +13 -4
  51. package/src/index.ts +35 -3
  52. package/src/proxy/ProxySessionController.ts +186 -59
  53. package/src/runtime/AcpRuntimeAdapter.ts +5 -0
  54. package/src/runtime/agentEnvironment.ts +41 -3
  55. package/src/runtime/createAgentRuntimeRegistry.ts +18 -3
  56. package/src/runtime/types.ts +5 -0
  57. package/src/state/StateStore.ts +12 -9
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ import { controlEndpoint } from "./cli/controlProtocol.js";
6
6
  import { readPackageVersion } from "./cli/packageVersion.js";
7
7
  import { loadConfig } from "./config/loadConfig.js";
8
8
  import { persistFeishuUserOpenIdIfMissing } from "./config/FeishuUserOpenIdStore.js";
9
- import { defaultDotEnvPath } from "./config/paths.js";
9
+ import { agentBotHome, defaultConfigPath, defaultDotEnvPath, resolveUserPath, } from "./config/paths.js";
10
10
  import { ConsoleConnector } from "./console/ConsoleConnector.js";
11
11
  import { ConsoleTurnPresenter } from "./console/ConsoleTurnPresenter.js";
12
12
  import { CardRenderer } from "./feishu/CardRenderer.js";
@@ -41,7 +41,14 @@ const config = loadConfig();
41
41
  const transport = consoleOnly ? "console" : requireServerFeishuTransport(config.feishu);
42
42
  const logger = createLogger(config);
43
43
  const store = new StateStore(config.storage.sqlitePath);
44
- const runtimes = createAgentRuntimeRegistry(config, logger);
44
+ const configuredConfigPath = process.env.AGENT_BOT_CONFIG?.trim();
45
+ const agentEnvironmentContext = {
46
+ profilePath: agentBotHome(),
47
+ configPath: configuredConfigPath ? resolveUserPath(configuredConfigPath) : defaultConfigPath(),
48
+ larkAppId: config.feishu.appId,
49
+ larkUserOpenId: config.feishu.userOpenId,
50
+ };
51
+ const runtimes = createAgentRuntimeRegistry(config, logger, agentEnvironmentContext);
45
52
  const routes = [];
46
53
  let feishuConnector;
47
54
  let consoleConnector;
@@ -100,12 +107,14 @@ const controller = new ProxySessionController(config, store, runtimes, outbound,
100
107
  return;
101
108
  const persisted = persistFeishuUserOpenIdIfMissing(defaultDotEnvPath(), userOpenId);
102
109
  config.feishu.userOpenId = persisted.userOpenId;
110
+ agentEnvironmentContext.larkUserOpenId = persisted.userOpenId;
103
111
  process.env.FEISHU_USER_OPEN_ID = persisted.userOpenId;
104
112
  logger.info({ status: persisted.status }, "Stored the default Lark user Open ID from the first private chat message.");
105
113
  },
106
114
  });
107
- if (feishuOutbound)
108
- feishuConnector = new FeishuConnector(config, controller, logger);
115
+ if (feishuOutbound) {
116
+ feishuConnector = new FeishuConnector(config, controller, logger, undefined, (botOpenId) => { agentEnvironmentContext.larkBotOpenId = botOpenId; });
117
+ }
109
118
  if (consoleEnabled)
110
119
  consoleConnector = new ConsoleConnector(controller, logger);
111
120
  process.on("SIGINT", () => void shutdown(0));
@@ -171,6 +180,16 @@ async function handleControlRequest(request) {
171
180
  startedAt: processStartedAt.toISOString(),
172
181
  supervised,
173
182
  feishuAppId: config.feishu.appId ?? null,
183
+ agents: runtimes.entries().map(([name, runtime]) => {
184
+ const processInfo = runtime.getProcessInfo?.() ?? {};
185
+ return {
186
+ name,
187
+ title: config.agents[name]?.title ?? name,
188
+ kind: config.agents[name]?.kind ?? runtime.kind,
189
+ pid: processInfo.pid ?? null,
190
+ version: processInfo.version ?? null,
191
+ };
192
+ }),
174
193
  safeRestartScheduled: safeRestart.scheduled,
175
194
  safeRestartReason: safeRestart.pendingReason,
176
195
  activity: store.getServerActivityState(),
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,eAAe,EAA6C,MAAM,0BAA0B,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEhF,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAsB,MAAM,kCAAkC,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACL,0BAA0B,EAC1B,gCAAgC,EAChC,sCAAsC,GACvC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,EAC3B,iCAAiC,GAClC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,MAAM,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC;AACpC,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;AAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,GAAG,CAAC;AAC5D,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,EAAE;OAC7D,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7C,MAAM,uBAAuB,GAAG,sCAAsC,CACpE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CACxC,CAAC;AACF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,GAAG,CAAC;AAC/D,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;AAC5B,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,4BAA4B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACxF,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AACpC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAExD,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;AAClE,MAAM,uBAAuB,GAA4B;IACvD,WAAW,EAAE,YAAY,EAAE;IAC3B,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE;IAC9F,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;IAC9B,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;CACzC,CAAC;AACF,MAAM,QAAQ,GAAG,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,uBAAuB,CAAC,CAAC;AAErF,MAAM,MAAM,GAAoB,EAAE,CAAC;AACnC,IAAI,eAA4C,CAAC;AACjD,IAAI,gBAA8C,CAAC;AACnD,IAAI,eAA4C,CAAC;AACjD,IAAI,mBAAoD,CAAC;AACzD,IAAI,aAA6C,CAAC;AAClD,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,MAAM,cAAc,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACjG,IAAI,cAAc,EAAE,CAAC;IACnB,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,IAAI,mBAAmB,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE;QACzE,gBAAgB,EAAE,KAAK;QACvB,aAAa,EAAE,GAAG;QAClB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,uCAAuC,CAAC;KACpF,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;IAClH,MAAM,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAM,CAAC;IAChD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,uBAAuB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACtE,eAAe,GAAG,IAAI,eAAe,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE;QAC7E,eAAe;QACf,gBAAgB;QAChB,iBAAiB,EAAE,YAAY,EAAE,KAAK,IAAI,gBAAgB;QAC1D,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QACtC,aAAa,EAAE,YAAY,EAAE,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;QAC9E,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;KAC5C,EAAE,gBAAgB,CAAC,CAAC;IACrB,mBAAmB,GAAG,IAAI,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACzF,CAAC;AAED,MAAM,cAAc,GAAG,WAAW,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,SAAS,KAAK,SAAS,CAAC;AACxF,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/E,IAAI,eAAe,EAAE,CAAC;IACpB,MAAM,CAAC,IAAI,CAAC;QACV,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC;QAC1D,QAAQ,EAAE,eAAe;QACzB,SAAS,EAAE,IAAI,oBAAoB,CAAC,eAAe,CAAC;KACrD,CAAC,CAAC;AACL,CAAC;AAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;IAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;AACzF,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;AAC5C,IAAI,YAAY,GAAG,KAAK,CAAC;AACzB,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAC7B,MAAM,WAAW,GAAG,IAAI,oBAAoB,CAAC;IAC3C,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,sBAAsB,EAAE;IAClD,OAAO,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACtF,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC;IACzD,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,wCAAwC,CAAC;CAC3F,CAAC,CAAC;AACH,MAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE;IACvF,UAAU;IACV,OAAO,EAAE,cAAc;IACvB,iBAAiB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC;IAC1E,wBAAwB,EAAE,CAAC,UAAU,EAAE,EAAE;QACvC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO;QACxD,MAAM,SAAS,GAAG,gCAAgC,CAAC,iBAAiB,EAAE,EAAE,UAAU,CAAC,CAAC;QACpF,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QAChD,uBAAuB,CAAC,cAAc,GAAG,SAAS,CAAC,UAAU,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,SAAS,CAAC,UAAU,CAAC;QACvD,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,EAC5B,2EAA2E,CAC5E,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,IAAI,cAAc,EAAE,CAAC;IACnB,eAAe,GAAG,IAAI,eAAe,CACnC,MAAM,EACN,UAAU,EACV,MAAM,EACN,SAAS,EACT,CAAC,SAAS,EAAE,EAAE,GAAG,uBAAuB,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,CACtE,CAAC;AACJ,CAAC;AACD,IAAI,cAAc;IAAE,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AAEhF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9C,MAAM,kBAAkB,GAAG,KAAK,IAAmB,EAAE;IACnD,IAAI,WAAW,IAAI,aAAa;QAAE,OAAO;IACzC,aAAa,GAAG,IAAI,kBAAkB,CACpC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAC1C,oBAAoB,CACrB,CAAC;IACF,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,2CAA2C,CAAC,CAAC;AACrH,CAAC,CAAC;AAEF,IAAI,eAAe,IAAI,eAAe,EAAE,CAAC;IACvC,MAAM,WAAW,CACf,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,GAAG,EAAE,GAAG,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,EAC7B,uBAAuB,CACxB,CAAC;AACJ,CAAC;KAAM,CAAC;IACN,MAAM,kBAAkB,EAAE,CAAC;IAC3B,MAAM,eAAe,EAAE,KAAK,EAAE,CAAC;IAC/B,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AACD,gBAAgB,EAAE,KAAK,EAAE,CAAC;AAE1B,KAAK,UAAU,cAAc,CAC3B,UAAkB,EAClB,KAAc,EACd,WAAgC;IAEhC,MAAM,kBAAkB,GAA8B;QACpD,UAAU;QACV,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAC;IACF,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,eAAe,CAAC,0BAA0B,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IACD,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;IACpF,MAAM,QAAQ,CAAC,QAAQ,CACrB,UAAU,EACV,cAAc;QACZ,CAAC,CAAC,uDAAuD;QACzD,CAAC,CAAC,iCAAiC,CACtC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACzB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,8CAA8C,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,MAAc,EACd,mBAAmB,GAAgC,EAAE;IAErD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,gBAAgB,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;QACpE,OAAO;IACT,CAAC;IACD,gBAAgB,GAAG,IAAI,CAAC;IACxB,MAAM,WAAW,CAAC,aAAa,EAAE,CAAC;IAClC,MAAM,mBAAmB,EAAE,KAAK,EAAE,CAAC;IACnC,MAAM,sBAAsB,GAAG,+BAA+B,CAC5D,mBAAmB,EACnB,mBAAmB,EAAE,sBAAsB,EAAE,IAAI,EAAE,CACpD,CAAC;IACF,MAAM,uBAAuB,GAAG,iCAAiC,CAAC,sBAAsB,CAAC,CAAC;IAC1F,MAAM,gBAAgB,CACpB,sBAAsB,EACtB,gCAAgC,CACjC,CAAC;IACF,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,QAAQ,CAC5B,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAC/B,MAAM,EACN,uBAAuB,CACxB,EAAE,GAAG,CAAC,CAAC;AACV,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,OAAuB;IACzD,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,QAAQ;YACX,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE;oBACJ,KAAK,EAAE,WAAW;oBAClB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB;oBAClD,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,SAAS,EAAE,gBAAgB,CAAC,WAAW,EAAE;oBACzC,UAAU;oBACV,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI;oBACxC,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE;wBACjD,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC;wBACrD,OAAO;4BACL,IAAI;4BACJ,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,IAAI;4BACzC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI;4BAC/C,GAAG,EAAE,WAAW,CAAC,GAAG,IAAI,IAAI;4BAC5B,OAAO,EAAE,WAAW,CAAC,OAAO,IAAI,IAAI;yBACrC,CAAC;oBACJ,CAAC,CAAC;oBACF,oBAAoB,EAAE,WAAW,CAAC,SAAS;oBAC3C,iBAAiB,EAAE,WAAW,CAAC,aAAa;oBAC5C,QAAQ,EAAE,KAAK,CAAC,sBAAsB,EAAE;iBACzC;aACF,CAAC;QACJ,KAAK,gBAAgB,EAAE,CAAC;YACtB,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YACpF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC5B,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;gBAChF,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,OAAO,EAAE,cAAc;wBACrB,CAAC,CAAC,sGAAsG;wBACxG,CAAC,CAAC,iEAAiE;iBACtE,CAAC;YACJ,CAAC;YACD,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,eAAe,CACnC,OAAO,CAAC,MAAM,EACd,kBAAkB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAC/C,EAAE,EAAE,CAAC,CAAC;YACP,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC;QAC/D,CAAC;QACD,KAAK,aAAa;YAChB,WAAW,CAAC,MAAM,EAAE,CAAC;YACrB,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC;YACpD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC;QACnE,KAAK,aAAa;YAChB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC3F,KAAK,WAAW;YACd,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QACzF,KAAK,YAAY;YACf,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5G,KAAK,aAAa;YAChB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7G,KAAK,gBAAgB;YACnB,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,MAAM,UAAU,CAAC,sBAAsB,CAC3C,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,KAAK,EACb,MAAM,CAAC,MAAM,CAAC,UAAU,EACxB,OAAO,CAAC,GAAG,EACX,OAAO,CAAC,WAAW,KAAK,IAAI,EAC5B,OAAO,CAAC,SAAS,CAClB;aACF,CAAC;QACJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,MAAM,UAAU,CAAC,oBAAoB,CACzC,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,KAAK,EACb,MAAM,CAAC,MAAM,CAAC,UAAU,CACzB;aACF,CAAC;IACN,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ,CACrB,QAAgB,EAChB,aAAsB,EACtB,uBAAuB,GAAa,EAAE;IAEtC,IAAI,YAAY;QAAE,OAAO;IACzB,YAAY,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,0BAA0B,CAAC,CAAC;IACtD,WAAW,CAAC,MAAM,EAAE,CAAC;IACrB,eAAe,EAAE,IAAI,EAAE,CAAC;IACxB,gBAAgB,EAAE,IAAI,EAAE,CAAC;IACzB,UAAU,CAAC,KAAK,EAAE,CAAC;IACnB,MAAM,OAAO,CAAC,IAAI,CAAC;QACjB,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,6BAA6B,CAAC,CAAC;QACpG,KAAK,CAAC,KAAK,CAAC;KACb,CAAC,CAAC;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,MAAM,aAAa,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,yCAAyC,CAAC,CAAC,CAAC;IAC1H,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,IAAI,aAAa;QAAE,0BAA0B,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;IACtF,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,0BAA0B,CAAC,aAAqB,EAAE,uBAAiC;IAC1F,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACnF,MAAM,eAAe,GAAG,iCAAiC,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC;IACvF,2BAA2B,CAAC,eAAe,CAAC,CAAC;IAC7C,MAAM,kBAAkB,GAAG,0BAA0B,EAAE,CAAC;IACxD,IAAI,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,EAAE,2EAA2E,CAAC,CAAC;IAChI,CAAC;SAAM,IAAI,kBAAkB,CAAC,SAAS,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CACT,EAAE,WAAW,EAAE,kBAAkB,CAAC,WAAW,EAAE,EAC/C,mEAAmE,CACpE,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;QACzC,GAAG,6BAA6B,CAAC,eAAe,CAAC;QACjD,eAAe;KAChB,EAAE;QACD,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,IAAI;QACjB,KAAK,EAAE,QAAQ;QACf,GAAG,EAAE,gCAAgC,CACnC,aAAa,EACb,kBAAkB,CAAC,WAAW,EAC9B,uBAAuB,CACxB;KACF,CAAC,CAAC;IACH,UAAU,CAAC,KAAK,EAAE,CAAC;AACrB,CAAC;AAED,SAAS,yBAAyB,CAAC,qBAA8B;IAC/D,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,IAAI,EAAE,CAAC;IACzD,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC;eACjD,KAAK,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,kBAAkB,GAAG,CAAC,CAAC;QAC3G,OAAO,mCAAmC,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IAClG,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACtF,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,2HAA2H,CAC5H,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,MAAM,OAAO,GAAG,UAAU;QACxB,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,KAAK,UAAU,CAAC;QAC1E,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,OAAO,CAAC,CAAC,CAAC,mCAAmC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5E,CAAC;AAED,SAAS,mCAAmC,CAC1C,OAAuD;IAEvD,MAAM,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC;QAC3D,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,UAAU,CAAC;eAC5E,KAAK,CAAC,6BAA6B,CAAC,OAAO,CAAC,UAAU,CAAC;QAC5D,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACb,6HAA6H,CAC9H,CAAC;IACJ,CAAC;IACD,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,MAAiC,EAAE,IAAY;IAC5E,IAAI,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc;QACvC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE,aAAa,EAAE,IAAa,EAAE;QACpE,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,CACnE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,OAAoC,EAAE,IAAY;IAChF,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC3D,MAAM,CAAC,IAAI,CACT,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,EACxC,yCAAyC,CAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,iCAAiC,CAAC,OAAoC;IAC7E,MAAM,qBAAqB,GAAG,IAAI,GAAG,CACnC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAC/D,CAAC;IACF,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO;aACvB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aACtD,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,+BAA+B,CACtC,GAAG,YAA2C;IAE9C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqC,CAAC;IAC7D,KAAK,MAAM,MAAM,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,KAAK,CAAC,YAAoB;IACjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;AACrE,CAAC"}
@@ -18,6 +18,109 @@ const MESSAGE_CANCELLED_REACTION = "CrossMark";
18
18
  const SESSION_PAGE_SIZE = 5;
19
19
  const RESET_HISTORY_PAGE_SIZE = 10;
20
20
  const REMOTE_SESSION_REFERENCE_PREFIX = "agent-runtime:";
21
+ const HELP_COMMAND_SECTIONS = [
22
+ {
23
+ title: "任务管理",
24
+ commands: [
25
+ {
26
+ command: "/new",
27
+ usage: "[title] [--dir <cwd> | --nodir]",
28
+ description: "使用默认 Agent 创建任务;--nodir 创建 Projectless 任务",
29
+ },
30
+ {
31
+ command: "/newgroup",
32
+ usage: "[title] [--dir <cwd> | --nodir]",
33
+ description: "创建飞书群和新任务",
34
+ },
35
+ {
36
+ command: "/forkgroup",
37
+ usage: "[title]",
38
+ description: "从当前任务最近完成轮次创建分支群",
39
+ },
40
+ {
41
+ command: "/fork",
42
+ usage: "[序号或任务 ID]",
43
+ description: "从当前或指定任务最近完成轮次创建分支",
44
+ },
45
+ { command: "/turns", description: "浏览历史轮次,并可 Reset 对话上下文" },
46
+ {
47
+ command: "/title",
48
+ usage: "<新标题>",
49
+ description: "修改当前任务标题",
50
+ requiresArgument: true,
51
+ },
52
+ { command: "/sessions", usage: "[关键词]", description: "查找本机任务" },
53
+ {
54
+ command: "/switch",
55
+ usage: "[序号或任务 ID]",
56
+ description: "切换任务;不填参数切回上一个任务",
57
+ },
58
+ ],
59
+ },
60
+ {
61
+ title: "执行设置",
62
+ commands: [
63
+ {
64
+ command: "!",
65
+ usage: "<命令>",
66
+ description: "在当前任务目录执行本地命令",
67
+ requiresArgument: true,
68
+ },
69
+ { command: "/stop", description: "停止当前执行" },
70
+ {
71
+ command: "/queue",
72
+ usage: "<prompt>",
73
+ description: "将 Prompt 排队为后续轮次",
74
+ requiresArgument: true,
75
+ },
76
+ {
77
+ command: "/nosteer",
78
+ usage: "<prompt>",
79
+ description: "与 /queue 相同",
80
+ requiresArgument: true,
81
+ },
82
+ {
83
+ command: "/goal",
84
+ usage: "<目标或操作>",
85
+ description: "查看或创建长任务 Goal;支持 pause、resume、edit、clear",
86
+ requiresArgument: true,
87
+ },
88
+ { command: "/provider", description: "选择 AI 服务提供商" },
89
+ { command: "/model", description: "选择当前任务使用的模型" },
90
+ { command: "/thinking", description: "设置模型的思考强度" },
91
+ { command: "/permissions", description: "设置执行工具前是否需要确认" },
92
+ ],
93
+ },
94
+ {
95
+ title: "Agent",
96
+ commands: [
97
+ {
98
+ command: "/agent",
99
+ usage: "[name]",
100
+ description: "选择新任务使用的默认 Agent",
101
+ },
102
+ ],
103
+ },
104
+ {
105
+ title: "系统",
106
+ commands: [
107
+ {
108
+ command: "/status",
109
+ usage: "[序号或任务 ID]",
110
+ description: "查看当前或指定任务状态",
111
+ },
112
+ {
113
+ command: "/restart",
114
+ usage: "[--force]",
115
+ description: "默认安全重启;--force 立即重启",
116
+ },
117
+ { command: "/help", description: "显示本帮助" },
118
+ ],
119
+ },
120
+ ];
121
+ const HELP_DEFAULT_COMMANDS = new Set(HELP_COMMAND_SECTIONS.flatMap((section) => section.commands)
122
+ .filter((command) => !command.requiresArgument)
123
+ .map((command) => command.command));
21
124
  export class ProxySessionController {
22
125
  config;
23
126
  store;
@@ -169,7 +272,10 @@ export class ProxySessionController {
169
272
  await this.outbound.withReplyTarget(contextKey, replyTarget, async () => {
170
273
  try {
171
274
  const kind = String(scopedAction.value.action ?? "");
172
- if (kind === "turn_details") {
275
+ if (kind === "help_command") {
276
+ await this.executeHelpCommandAction(scopedAction, contextKey, replyTarget);
277
+ }
278
+ else if (kind === "turn_details") {
173
279
  await this.outbound.showDetails(contextKey, String(scopedAction.value.turnId ?? ""));
174
280
  }
175
281
  else if (kind === "activity_history") {
@@ -1564,7 +1670,7 @@ export class ProxySessionController {
1564
1670
  this.store.saveTurnRuntimeOrigin(event.turnId, source.localSessionId, source.agentName, source.remoteSessionId);
1565
1671
  }
1566
1672
  if (event.type === "turn_started") {
1567
- this.store.saveTurnParent(event.turnId, event.sessionId, source?.lastTurnStatus === "completed" ? source.lastTurnId : undefined);
1673
+ this.store.saveTurnParent(event.turnId, event.sessionId, this.completedParentTurnId(source));
1568
1674
  }
1569
1675
  }
1570
1676
  if (event.type === "session_metadata_updated") {
@@ -1658,6 +1764,14 @@ export class ProxySessionController {
1658
1764
  }
1659
1765
  }
1660
1766
  }
1767
+ completedParentTurnId(source) {
1768
+ if (!source?.lastTurnId)
1769
+ return undefined;
1770
+ if (source.lastTurnStatus === "completed")
1771
+ return source.lastTurnId;
1772
+ const snapshot = turnViewSnapshot(this.store.getTurnSnapshot(source.lastTurnId));
1773
+ return snapshot?.status === "completed" ? source.lastTurnId : undefined;
1774
+ }
1661
1775
  async finalizeStandaloneMessageReaction(messageId, status) {
1662
1776
  const reaction = this.store.claimMessageReaction(messageId);
1663
1777
  if (reaction)
@@ -2498,11 +2612,9 @@ export class ProxySessionController {
2498
2612
  const card = this.cardRenderer.renderTaskListCard(searchTerm ? `App Server 任务:${searchTerm}` : "App Server 任务", activeCount > 0 ? `任务(${activeCount} 个活跃)` : "任务", cardEntries, [
2499
2613
  ...(remoteHint ? [remoteHint] : []),
2500
2614
  `第 ${page + 1} 页 · 每页 ${SESSION_PAGE_SIZE} 个任务${hasNext ? "" : ` · 当前共 ${entries.length} 个任务`}`,
2501
- "点击 **New** 在对应任务的项目中创建新任务;点击 **Switch** 快速切换;点击 **Fork** 从任务最新已完成轮次创建分支;外部正在运行的任务显示 **Stop**,点击后发送 Interrupt 并变为 **Switch**。",
2502
- "点击 **NewGroup** 在对应任务的项目中创建新群和新任务;点击 **ForkGroup** 从对应任务最新已完成轮次创建分支群。",
2503
- "也可发送 **/switch [序号或任务 ID]**;不带参数切回上一个任务。外部正在执行的回合不会被接管。",
2504
- "发送 **/fork [序号或任务 ID]**,可从当前或指定任务创建分支;任务运行中时使用最近已完成轮次。",
2505
- "点击 **Status**,或发送 **/status [序号或任务 ID]**,查看当前或指定任务状态。",
2615
+ "",
2616
+ "> **Switch** 切换任务;**Stop** 停止运行;**Status** 查看状态。",
2617
+ "> **New** / **Fork** 新建 / 分支任务;**NewGroup** / **ForkGroup** 新建 / 分支群。",
2506
2618
  ], [
2507
2619
  ...(hasPrevious ? [{
2508
2620
  text: "Previous",
@@ -2915,59 +3027,45 @@ export class ProxySessionController {
2915
3027
  else
2916
3028
  await this.outbound.sendInteractiveCard(contextKey, card);
2917
3029
  }
3030
+ async executeHelpCommandAction(action, contextKey, replyTarget) {
3031
+ const commandText = typeof action.value.command === "string"
3032
+ ? action.value.command.trim()
3033
+ : "";
3034
+ if (!HELP_DEFAULT_COMMANDS.has(commandText)) {
3035
+ throw new Error("帮助卡片中的命令无效,请发送 /help 获取最新卡片。");
3036
+ }
3037
+ const command = this.router.parse(commandText);
3038
+ await this.execute(contextKey, command, undefined, replyTarget, undefined, action.userId);
3039
+ }
2918
3040
  async help(contextKey) {
2919
- const sections = [
2920
- {
2921
- lines: [
2922
- "直接发送消息即可继续当前任务;执行中发送的新消息会追加到本次任务。",
2923
- "> 命令前缀示例:/sess 等同于 /sessions。",
2924
- "> 命令缩写示例:/fg 等同于 /forkgroup。",
2925
- "前缀或缩写匹配多个命令时,需要输入更长的形式。",
2926
- "**[参数]** 可选 **<参数>** 必填",
2927
- ],
2928
- },
2929
- {
2930
- title: "任务管理",
2931
- lines: [
2932
- "**/new [title] [--dir <cwd> | --nodir]** 使用默认 Agent 创建任务;--nodir 强制创建 Projectless 任务",
2933
- "**/newgroup [title] [--dir <cwd> | --nodir]** 创建飞书群和新任务;参数与 /new 相同",
2934
- "**/forkgroup [title]** 从当前任务最新已完成轮次创建分支并绑定到新群",
2935
- "**/fork [序号或任务 ID]** 从当前或指定任务创建分支;运行中使用最近已完成轮次",
2936
- "**/turns** 浏览当前任务的历史对话轮次,并可将对话上下文恢复到所选轮次",
2937
- "**/title <新标题>** 修改当前任务的标题",
2938
- "**/sessions [关键词]** 查找本机任务",
2939
- "**/switch [序号或任务 ID]** 不填参数切回上一个任务",
2940
- ],
2941
- },
2942
- {
2943
- title: "执行设置",
2944
- lines: [
2945
- "**! <命令>** 在当前任务目录直接执行本地命令",
2946
- "**/stop** 停止当前执行",
2947
- "**/queue <prompt>**(兼容 **/nosteer**) 不追加到当前轮次,按顺序排队为后续轮次",
2948
- "**/goal [目标]** 查看或创建长任务 Goal;支持 pause、resume、edit、clear",
2949
- "**/provider** 选择 AI 服务提供商;没有其他候选时仅显示当前 Provider",
2950
- "**/model** 选择当前任务使用的模型",
2951
- "**/thinking** 设置模型的思考强度",
2952
- "**/permissions** 设置执行工具前是否需要确认",
2953
- ],
2954
- },
2955
- {
2956
- title: "Agent",
2957
- lines: [
2958
- "**/agent [name]** 选择新任务使用的默认 Agent;仅配置一个时直接显示当前 Agent",
2959
- ],
2960
- },
2961
- {
2962
- title: "系统",
2963
- lines: [
2964
- "**/status [序号或任务 ID]** 查看当前或指定任务的详细状态",
2965
- "**/restart [--force]** 默认安全重启;--force 立即重启",
2966
- "**/help** 显示本帮助",
2967
- ],
2968
- },
2969
- ];
2970
- await this.outbound.sendInteractiveCard(contextKey, this.cardRenderer.renderSectionsCard("Agent Bot 使用帮助", sections));
3041
+ const sections = HELP_COMMAND_SECTIONS.map((section) => ({
3042
+ title: section.title,
3043
+ commands: section.commands.map((command) => ({
3044
+ text: command.command,
3045
+ ...(command.requiresArgument
3046
+ ? {}
3047
+ : {
3048
+ action: {
3049
+ text: command.command,
3050
+ value: {
3051
+ action: "help_command",
3052
+ command: command.command,
3053
+ contextKey,
3054
+ },
3055
+ },
3056
+ }),
3057
+ ...(command.usage ? { usage: command.usage } : {}),
3058
+ description: command.description,
3059
+ })),
3060
+ }));
3061
+ await this.outbound.sendInteractiveCard(contextKey, this.cardRenderer.renderHelpCard("Agent Bot 使用帮助", [
3062
+ "直接发送消息即可继续当前任务;执行中发送的新消息会追加到本次任务。",
3063
+ "点击命令按钮可执行默认形式;有必填参数的命令需要手动发送。",
3064
+ "> 命令前缀示例:/sess 等同于 /sessions。",
3065
+ "> 命令缩写示例:/fg 等同于 /forkgroup。",
3066
+ "前缀或缩写匹配多个命令时,需要输入更长的形式。",
3067
+ "**[参数]** 可选 **<参数>** 必填",
3068
+ ], sections));
2971
3069
  }
2972
3070
  ensureAgent(agentName) {
2973
3071
  const agent = this.config.agents[agentName];