@downcity/agent 1.1.113 → 1.1.119

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 (137) hide show
  1. package/bin/agent/local/Agent.d.ts +39 -0
  2. package/bin/agent/local/Agent.d.ts.map +1 -1
  3. package/bin/agent/local/Agent.js +53 -0
  4. package/bin/agent/local/Agent.js.map +1 -1
  5. package/bin/agent/local/services/AgentAssemblyService.d.ts +4 -0
  6. package/bin/agent/local/services/AgentAssemblyService.d.ts.map +1 -1
  7. package/bin/agent/local/services/AgentAssemblyService.js +18 -2
  8. package/bin/agent/local/services/AgentAssemblyService.js.map +1 -1
  9. package/bin/agent/local/services/AgentLifecycleService.d.ts +6 -0
  10. package/bin/agent/local/services/AgentLifecycleService.d.ts.map +1 -1
  11. package/bin/agent/local/services/AgentLifecycleService.js +4 -0
  12. package/bin/agent/local/services/AgentLifecycleService.js.map +1 -1
  13. package/bin/agent/remote/RemoteAgent.d.ts +35 -1
  14. package/bin/agent/remote/RemoteAgent.d.ts.map +1 -1
  15. package/bin/agent/remote/RemoteAgent.js +37 -1
  16. package/bin/agent/remote/RemoteAgent.js.map +1 -1
  17. package/bin/agent/remote/RemoteTransport.d.ts +22 -0
  18. package/bin/agent/remote/RemoteTransport.d.ts.map +1 -1
  19. package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts +17 -0
  20. package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts.map +1 -1
  21. package/bin/agent/remote/transports/HttpRemoteAgentTransport.js +63 -0
  22. package/bin/agent/remote/transports/HttpRemoteAgentTransport.js.map +1 -1
  23. package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts +16 -0
  24. package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts.map +1 -1
  25. package/bin/agent/remote/transports/RpcRemoteAgentTransport.js +18 -0
  26. package/bin/agent/remote/transports/RpcRemoteAgentTransport.js.map +1 -1
  27. package/bin/executor/Executor.d.ts.map +1 -1
  28. package/bin/executor/Executor.js +7 -1
  29. package/bin/executor/Executor.js.map +1 -1
  30. package/bin/index.d.ts +0 -1
  31. package/bin/index.d.ts.map +1 -1
  32. package/bin/index.js +0 -1
  33. package/bin/index.js.map +1 -1
  34. package/bin/rpc/Client.d.ts +28 -0
  35. package/bin/rpc/Client.d.ts.map +1 -1
  36. package/bin/rpc/Client.js +63 -0
  37. package/bin/rpc/Client.js.map +1 -1
  38. package/bin/rpc/server/InternalHandlers.d.ts.map +1 -1
  39. package/bin/rpc/server/InternalHandlers.js +54 -0
  40. package/bin/rpc/server/InternalHandlers.js.map +1 -1
  41. package/bin/rpc/server/ServerTypes.d.ts +5 -0
  42. package/bin/rpc/server/ServerTypes.d.ts.map +1 -1
  43. package/bin/types/agent/AgentOptions.d.ts +9 -0
  44. package/bin/types/agent/AgentOptions.d.ts.map +1 -1
  45. package/bin/types/config/DowncityConfig.d.ts +2 -2
  46. package/bin/types/config/DowncityConfig.d.ts.map +1 -1
  47. package/bin/types/rpc/RpcProtocol.d.ts +53 -0
  48. package/bin/types/rpc/RpcProtocol.d.ts.map +1 -1
  49. package/package.json +4 -3
  50. package/scripts/linux-bubblewrap-sandbox.test.mjs +1 -1
  51. package/scripts/shell-sandbox-preflight.test.mjs +1 -1
  52. package/src/agent/local/Agent.ts +68 -0
  53. package/src/agent/local/services/AgentAssemblyService.ts +23 -2
  54. package/src/agent/local/services/AgentLifecycleService.ts +11 -0
  55. package/src/agent/remote/RemoteAgent.ts +54 -1
  56. package/src/agent/remote/RemoteTransport.ts +23 -0
  57. package/src/agent/remote/transports/HttpRemoteAgentTransport.ts +101 -0
  58. package/src/agent/remote/transports/RpcRemoteAgentTransport.ts +35 -0
  59. package/src/executor/Executor.ts +12 -2
  60. package/src/index.ts +0 -1
  61. package/src/rpc/Client.ts +80 -0
  62. package/src/rpc/server/InternalHandlers.ts +55 -0
  63. package/src/rpc/server/ServerTypes.ts +5 -0
  64. package/src/types/agent/AgentOptions.ts +10 -0
  65. package/src/types/config/DowncityConfig.ts +2 -2
  66. package/src/types/rpc/RpcProtocol.ts +59 -0
  67. package/tsconfig.tsbuildinfo +1 -1
  68. package/bin/executor/tools/shell/ShellToolBridge.d.ts +0 -79
  69. package/bin/executor/tools/shell/ShellToolBridge.d.ts.map +0 -1
  70. package/bin/executor/tools/shell/ShellToolBridge.js +0 -320
  71. package/bin/executor/tools/shell/ShellToolBridge.js.map +0 -1
  72. package/bin/executor/tools/shell/ShellToolDefinition.d.ts +0 -116
  73. package/bin/executor/tools/shell/ShellToolDefinition.d.ts.map +0 -1
  74. package/bin/executor/tools/shell/ShellToolDefinition.js +0 -369
  75. package/bin/executor/tools/shell/ShellToolDefinition.js.map +0 -1
  76. package/bin/executor/tools/shell/ShellToolFormatting.d.ts +0 -17
  77. package/bin/executor/tools/shell/ShellToolFormatting.d.ts.map +0 -1
  78. package/bin/executor/tools/shell/ShellToolFormatting.js +0 -36
  79. package/bin/executor/tools/shell/ShellToolFormatting.js.map +0 -1
  80. package/bin/executor/tools/shell/ShellToolSchemas.d.ts +0 -61
  81. package/bin/executor/tools/shell/ShellToolSchemas.d.ts.map +0 -1
  82. package/bin/executor/tools/shell/ShellToolSchemas.js +0 -130
  83. package/bin/executor/tools/shell/ShellToolSchemas.js.map +0 -1
  84. package/bin/executor/tools/shell/types/Shell.d.ts +0 -115
  85. package/bin/executor/tools/shell/types/Shell.d.ts.map +0 -1
  86. package/bin/executor/tools/shell/types/Shell.js +0 -9
  87. package/bin/executor/tools/shell/types/Shell.js.map +0 -1
  88. package/bin/executor/tools/shell/types/ShellPlugin.d.ts +0 -258
  89. package/bin/executor/tools/shell/types/ShellPlugin.d.ts.map +0 -1
  90. package/bin/executor/tools/shell/types/ShellPlugin.js +0 -9
  91. package/bin/executor/tools/shell/types/ShellPlugin.js.map +0 -1
  92. package/bin/sandbox/LinuxBubblewrapSandbox.d.ts +0 -19
  93. package/bin/sandbox/LinuxBubblewrapSandbox.d.ts.map +0 -1
  94. package/bin/sandbox/LinuxBubblewrapSandbox.js +0 -186
  95. package/bin/sandbox/LinuxBubblewrapSandbox.js.map +0 -1
  96. package/bin/sandbox/MacOsSeatbeltSandbox.d.ts +0 -16
  97. package/bin/sandbox/MacOsSeatbeltSandbox.d.ts.map +0 -1
  98. package/bin/sandbox/MacOsSeatbeltSandbox.js +0 -154
  99. package/bin/sandbox/MacOsSeatbeltSandbox.js.map +0 -1
  100. package/bin/sandbox/SandboxConfigResolver.d.ts +0 -37
  101. package/bin/sandbox/SandboxConfigResolver.d.ts.map +0 -1
  102. package/bin/sandbox/SandboxConfigResolver.js +0 -130
  103. package/bin/sandbox/SandboxConfigResolver.js.map +0 -1
  104. package/bin/sandbox/SandboxPreflight.d.ts +0 -73
  105. package/bin/sandbox/SandboxPreflight.d.ts.map +0 -1
  106. package/bin/sandbox/SandboxPreflight.js +0 -122
  107. package/bin/sandbox/SandboxPreflight.js.map +0 -1
  108. package/bin/sandbox/SandboxRunner.d.ts +0 -61
  109. package/bin/sandbox/SandboxRunner.d.ts.map +0 -1
  110. package/bin/sandbox/SandboxRunner.js +0 -107
  111. package/bin/sandbox/SandboxRunner.js.map +0 -1
  112. package/bin/sandbox/UnrestrictedSandbox.d.ts +0 -16
  113. package/bin/sandbox/UnrestrictedSandbox.d.ts.map +0 -1
  114. package/bin/sandbox/UnrestrictedSandbox.js +0 -39
  115. package/bin/sandbox/UnrestrictedSandbox.js.map +0 -1
  116. package/bin/sandbox/types/Sandbox.d.ts +0 -130
  117. package/bin/sandbox/types/Sandbox.d.ts.map +0 -1
  118. package/bin/sandbox/types/Sandbox.js +0 -10
  119. package/bin/sandbox/types/Sandbox.js.map +0 -1
  120. package/bin/sandbox/types/SandboxRuntime.d.ts +0 -370
  121. package/bin/sandbox/types/SandboxRuntime.d.ts.map +0 -1
  122. package/bin/sandbox/types/SandboxRuntime.js +0 -10
  123. package/bin/sandbox/types/SandboxRuntime.js.map +0 -1
  124. package/src/executor/tools/shell/ShellToolBridge.ts +0 -412
  125. package/src/executor/tools/shell/ShellToolDefinition.ts +0 -524
  126. package/src/executor/tools/shell/ShellToolFormatting.ts +0 -34
  127. package/src/executor/tools/shell/ShellToolSchemas.ts +0 -139
  128. package/src/executor/tools/shell/types/Shell.ts +0 -123
  129. package/src/executor/tools/shell/types/ShellPlugin.ts +0 -278
  130. package/src/sandbox/LinuxBubblewrapSandbox.ts +0 -222
  131. package/src/sandbox/MacOsSeatbeltSandbox.ts +0 -191
  132. package/src/sandbox/SandboxConfigResolver.ts +0 -152
  133. package/src/sandbox/SandboxPreflight.ts +0 -205
  134. package/src/sandbox/SandboxRunner.ts +0 -151
  135. package/src/sandbox/UnrestrictedSandbox.ts +0 -53
  136. package/src/sandbox/types/Sandbox.ts +0 -144
  137. package/src/sandbox/types/SandboxRuntime.ts +0 -440
@@ -1 +1 @@
1
- {"version":3,"file":"InternalHandlers.js","sourceRoot":"","sources":["../../../src/rpc/server/InternalHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InternalHandlers.js","sourceRoot":"","sources":["../../../src/rpc/server/InternalHandlers.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import type { AgentSessionCollection } from "../../types/agent/AgentTypes.js";
9
9
  import type { AgentContext } from "../../types/runtime/agent/AgentContext.js";
10
10
  import type { AgentRuntime } from "../../types/runtime/agent/AgentRuntime.js";
11
11
  import type { RpcEventFrame } from "../../types/rpc/RpcProtocol.js";
12
+ import type { Shell } from "@downcity/shell";
12
13
  /**
13
14
  * RPC Server 启动参数。
14
15
  */
@@ -23,6 +24,8 @@ export interface RpcServerStartOptions {
23
24
  getAgentContext?: () => AgentContext;
24
25
  /** Agent 运行态访问口。 */
25
26
  getAgentRuntime?: () => AgentRuntime;
27
+ /** Shell 访问口。 */
28
+ getShell?: () => Shell | undefined;
26
29
  }
27
30
  /**
28
31
  * RPC request handler 依赖。
@@ -34,6 +37,8 @@ export interface RpcRequestHandlerOptions {
34
37
  getAgentContext?: () => AgentContext;
35
38
  /** Agent 运行态访问口。 */
36
39
  getAgentRuntime?: () => AgentRuntime;
40
+ /** Shell 访问口。 */
41
+ getShell?: () => Shell | undefined;
37
42
  }
38
43
  /**
39
44
  * 单个 socket 上的 session 订阅。
@@ -1 +1 @@
1
- {"version":3,"file":"ServerTypes.d.ts","sourceRoot":"","sources":["../../../src/rpc/server/ServerTypes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,qBAAqB;IACrB,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc;IACd,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC"}
1
+ {"version":3,"file":"ServerTypes.d.ts","sourceRoot":"","sources":["../../../src/rpc/server/ServerTypes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,iBAAiB;IACjB,QAAQ,CAAC,EAAE,MAAM,KAAK,GAAG,SAAS,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,qBAAqB;IACrB,iBAAiB,EAAE,sBAAsB,CAAC;IAC1C,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,oBAAoB;IACpB,eAAe,CAAC,EAAE,MAAM,YAAY,CAAC;IACrC,iBAAiB;IACjB,QAAQ,CAAC,EAAE,MAAM,KAAK,GAAG,SAAS,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc;IACd,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC"}
@@ -6,6 +6,7 @@
6
6
  * - RemoteAgent 与 Session 数据结构拆到独立类型文件。
7
7
  */
8
8
  import type { Tool } from "ai";
9
+ import type { Shell } from "@downcity/shell";
9
10
  import type { BasePlugin } from "../../plugin/core/BasePlugin.js";
10
11
  import type { AgentModel } from "../../model/CityModelAdapter.js";
11
12
  import type { RpcServerInstance } from "../../rpc/Server.js";
@@ -40,6 +41,14 @@ export interface AgentOptions {
40
41
  * - session 运行时会直接复用这份工具集合。
41
42
  */
42
43
  tools?: Record<string, Tool>;
44
+ /**
45
+ * 当前 agent 内建 shell 能力。
46
+ *
47
+ * 关键点(中文)
48
+ * - Shell 不是 plugin,而是 agent 直接挂载的内建工具对象。
49
+ * - 未传入时,Agent 不会自动注入 shell tools。
50
+ */
51
+ shell?: Shell;
43
52
  /**
44
53
  * 调用方显式传入的静态基础指令。
45
54
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AgentOptions.d.ts","sourceRoot":"","sources":["../../../src/types/agent/AgentOptions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG,KACpC,OAAO,EAAE,cAAc,KACpB,mBAAmB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE7B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEhC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IAEvB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAElC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,KAAK,GAAG,oBAAoB,CAAC;IAEnC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,yBAAyB;IACzB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,GAAG,CAAC,EAAE,eAAe,CAAC;IACtB,8BAA8B;IAC9B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,MAAM,EAAE,iBAAiB,CAAC;CAC3B"}
1
+ {"version":3,"file":"AgentOptions.d.ts","sourceRoot":"","sources":["../../../src/types/agent/AgentOptions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG,KACpC,OAAO,EAAE,cAAc,KACpB,mBAAmB,CAAC;AAEzB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IAEb;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE7B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEhC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IAEvB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAElC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,KAAK,GAAG,oBAAoB,CAAC;IAEnC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,yBAAyB;IACzB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,GAAG,CAAC,EAAE,eAAe,CAAC;IACtB,8BAA8B;IAC9B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,MAAM,EAAE,iBAAiB,CAAC;CAC3B"}
@@ -8,7 +8,7 @@
8
8
  import type { LlmConfig } from "../../types/config/LlmConfig.js";
9
9
  import type { ExecutionBindingConfig } from "../../types/config/ExecutionBinding.js";
10
10
  import type { JsonObject } from "../../types/common/Json.js";
11
- import type { SandboxProjectConfig } from "../../sandbox/types/Sandbox.js";
11
+ import type { SandboxProjectConfig } from "@downcity/shell/sandbox/types/Sandbox.js";
12
12
  /**
13
13
  * 单个聊天渠道配置。
14
14
  */
@@ -155,7 +155,7 @@ export interface DowncityConfig {
155
155
  * shell / CLI 执行 sandbox 配置。
156
156
  *
157
157
  * 关键点(中文)
158
- * - 当前只作用于 shell plugin 这条命令执行链。
158
+ * - 当前只作用于内建 shell 这条命令执行链。
159
159
  * - 这里不表达审批、用户授权与复杂策略系统,只表达最小边界。
160
160
  */
161
161
  sandbox?: SandboxProjectConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"DowncityConfig.d.ts","sourceRoot":"","sources":["../../../src/types/config/DowncityConfig.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC;;OAEG;IACH,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC;;OAEG;IACH,EAAE,CAAC,EAAE,yBAAyB,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,6BAA6B,CAAC;IACtC;;OAEG;IACH,MAAM,CAAC,EAAE,8BAA8B,CAAC;IACxC;;OAEG;IACH,QAAQ,CAAC,EAAE,gCAAgC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,CAAC,EAAE,wBAAwB,CAAC;IAChC;;OAEG;IACH,CAAC,UAAU,EAAE,MAAM,GACf,UAAU,GACV,wBAAwB,GACxB,SAAS,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,KAAK,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB"}
1
+ {"version":3,"file":"DowncityConfig.d.ts","sourceRoot":"","sources":["../../../src/types/config/DowncityConfig.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC;;OAEG;IACH,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC;;OAEG;IACH,EAAE,CAAC,EAAE,yBAAyB,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,6BAA6B,CAAC;IACtC;;OAEG;IACH,MAAM,CAAC,EAAE,8BAA8B,CAAC;IACxC;;OAEG;IACH,QAAQ,CAAC,EAAE,gCAAgC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,CAAC,EAAE,wBAAwB,CAAC;IAChC;;OAEG;IACH,CAAC,UAAU,EAAE,MAAM,GACf,UAAU,GACV,wBAAwB,GACxB,SAAS,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;OAMG;IACH,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,KAAK,CAAC,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB"}
@@ -11,6 +11,7 @@ import type { AgentSessionEvent } from "../../types/sdk/AgentSessionEvent.js";
11
11
  import type { AgentSessionPromptInput } from "../../types/sdk/AgentSessionPrompt.js";
12
12
  import type { JsonValue } from "../../types/common/Json.js";
13
13
  import type { PluginStateControlAction } from "../../plugin/types/Plugin.js";
14
+ import type { ShellApprovalMode } from "@downcity/shell";
14
15
  /**
15
16
  * RPC 请求。
16
17
  *
@@ -205,6 +206,58 @@ export type RpcRequest = {
205
206
  /** action payload。 */
206
207
  payload?: JsonValue;
207
208
  };
209
+ } | {
210
+ /** 请求 id,用于匹配响应。 */
211
+ id: string;
212
+ /** 列出 shell approvals。 */
213
+ method: "internal.shell.approvals";
214
+ } | {
215
+ /** 请求 id,用于匹配响应。 */
216
+ id: string;
217
+ /** 列出 shell approval 模式。 */
218
+ method: "internal.shell.approvalModes";
219
+ } | {
220
+ /** 请求 id,用于匹配响应。 */
221
+ id: string;
222
+ /** 读取 shell approval 模式。 */
223
+ method: "internal.shell.approvalMode";
224
+ /** session 参数。 */
225
+ params: {
226
+ /** session id。 */
227
+ sessionId: string;
228
+ };
229
+ } | {
230
+ /** 请求 id,用于匹配响应。 */
231
+ id: string;
232
+ /** 设置 shell approval 模式。 */
233
+ method: "internal.shell.setApprovalMode";
234
+ /** session 模式参数。 */
235
+ params: {
236
+ /** session id。 */
237
+ sessionId: string;
238
+ /** approval 模式。 */
239
+ mode: ShellApprovalMode;
240
+ };
241
+ } | {
242
+ /** 请求 id,用于匹配响应。 */
243
+ id: string;
244
+ /** 批准 shell approval。 */
245
+ method: "internal.shell.approve";
246
+ /** approval 参数。 */
247
+ params: {
248
+ /** approval id。 */
249
+ approvalId: string;
250
+ };
251
+ } | {
252
+ /** 请求 id,用于匹配响应。 */
253
+ id: string;
254
+ /** 拒绝 shell approval。 */
255
+ method: "internal.shell.deny";
256
+ /** approval 参数。 */
257
+ params: {
258
+ /** approval id。 */
259
+ approvalId: string;
260
+ };
208
261
  };
209
262
  /**
210
263
  * RPC 成功响应帧。
@@ -1 +1 @@
1
- {"version":3,"file":"RpcProtocol.d.ts","sourceRoot":"","sources":["../../../src/types/rpc/RpcProtocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RpcProtocol.d.ts","sourceRoot":"","sources":["../../../src/types/rpc/RpcProtocol.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@downcity/agent",
3
- "version": "1.1.113",
3
+ "version": "1.1.119",
4
4
  "type": "module",
5
5
  "description": "Downcity Agent 运行时 — 单 Agent 执行壳与本机 RPC 能力",
6
6
  "main": "./bin/index.js",
@@ -17,6 +17,8 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "@ai-sdk/openai-compatible": "^2.0.48",
20
+ "@downcity/shell": "^0.1.5",
21
+ "@downcity/type": "0.1.44",
20
22
  "@larksuiteoapi/node-sdk": "^1.66.0",
21
23
  "ai": "^6.0.193",
22
24
  "commander": "^15.0.0",
@@ -28,8 +30,7 @@
28
30
  "nanoid": "^5.1.11",
29
31
  "node-cron": "^4.2.1",
30
32
  "ws": "^8.21.0",
31
- "zod": "^4.4.3",
32
- "@downcity/type": "0.1.41"
33
+ "zod": "^4.4.3"
33
34
  },
34
35
  "devDependencies": {
35
36
  "@types/fs-extra": "^11.0.4",
@@ -12,7 +12,7 @@ import fs from "node:fs/promises";
12
12
  import os from "node:os";
13
13
  import path from "node:path";
14
14
 
15
- import { buildLinuxBubblewrapArgs } from "../bin/sandbox/LinuxBubblewrapSandbox.js";
15
+ import { buildLinuxBubblewrapArgs } from "@downcity/shell/sandbox/LinuxBubblewrapSandbox.js";
16
16
 
17
17
  async function createSandboxFixture() {
18
18
  const root = await fs.mkdtemp(path.join(os.tmpdir(), "downcity-bwrap-"));
@@ -11,7 +11,7 @@ import assert from "node:assert/strict";
11
11
 
12
12
  import {
13
13
  checkShellSandboxPreflightWithProbe,
14
- } from "../bin/sandbox/SandboxPreflight.js";
14
+ } from "@downcity/shell/sandbox/SandboxPreflight.js";
15
15
 
16
16
  async function withPlatform(platform, callback) {
17
17
  const previous = Object.getOwnPropertyDescriptor(process, "platform");
@@ -24,6 +24,15 @@ import type {
24
24
  AgentStartResult,
25
25
  AgentStopResult,
26
26
  } from "@/types/agent/AgentTypes.js";
27
+ import type {
28
+ ShellApprovalMode,
29
+ ShellApprovalDecisionResult,
30
+ ShellApprovalModeUpdateResult,
31
+ ShellApprovalModeOption,
32
+ ShellSessionApprovalModeView,
33
+ ShellApprovalView,
34
+ Shell,
35
+ } from "@downcity/shell";
27
36
  import { PluginRegistry } from "@/plugin/core/PluginRegistry.js";
28
37
  import { Logger } from "@/utils/logger/Logger.js";
29
38
  import { normalizeInstructionInput } from "@/agent/local/AgentInstructions.js";
@@ -53,6 +62,7 @@ export class Agent {
53
62
  private readonly SessionClass: AgentOptions["Session"];
54
63
  private readonly sessionManager: AgentSessionManager;
55
64
  private readonly lifecycleService: AgentLifecycleService;
65
+ private readonly shell?: AgentOptions["shell"];
56
66
 
57
67
  private instruction: string[];
58
68
 
@@ -88,6 +98,7 @@ export class Agent {
88
98
  this.config = assembly.config;
89
99
  this.env = assembly.env;
90
100
  this.instruction = assembly.instruction;
101
+ this.shell = assembly.shell;
91
102
 
92
103
  this.sessionManager = this.create_session_manager(assembly);
93
104
  session_manager_ref = this.sessionManager;
@@ -96,6 +107,7 @@ export class Agent {
96
107
  agent_context: this.agentContext,
97
108
  session_collection: this.sessionManager.get_session_collection(),
98
109
  get_runtime: () => this.runtime,
110
+ get_shell: () => this.shell,
99
111
  });
100
112
  }
101
113
 
@@ -136,6 +148,55 @@ export class Agent {
136
148
  return await this.lifecycleService.stop();
137
149
  }
138
150
 
151
+ /**
152
+ * 列出当前 shell pending approvals。
153
+ */
154
+ approvals(): ShellApprovalView[] {
155
+ return this.shell?.approvals() || [];
156
+ }
157
+
158
+ /**
159
+ * 列出当前 shell 显式设置过的 approval 模式。
160
+ */
161
+ approval_modes(): ShellApprovalModeOption[] {
162
+ return this.shell?.approval_modes() || [];
163
+ }
164
+
165
+ /**
166
+ * 读取当前 shell 指定 session 的 approval 模式。
167
+ */
168
+ approval_mode(input: { session_id: string }): ShellSessionApprovalModeView {
169
+ if (!this.shell) throw new Error("Agent shell is not configured");
170
+ return this.shell.approval_mode(input);
171
+ }
172
+
173
+ /**
174
+ * 设置当前 shell 指定 session 的 approval 模式。
175
+ */
176
+ set_approval_mode(input: {
177
+ session_id: string;
178
+ mode: ShellApprovalMode;
179
+ }): ShellApprovalModeUpdateResult {
180
+ if (!this.shell) throw new Error("Agent shell is not configured");
181
+ return this.shell.set_approval_mode(input);
182
+ }
183
+
184
+ /**
185
+ * 批准当前 shell pending approval。
186
+ */
187
+ async approve(input: { approval_id: string }): Promise<ShellApprovalDecisionResult> {
188
+ if (!this.shell) throw new Error("Agent shell is not configured");
189
+ return await this.shell.approve(input);
190
+ }
191
+
192
+ /**
193
+ * 拒绝当前 shell pending approval。
194
+ */
195
+ async deny(input: { approval_id: string }): Promise<ShellApprovalDecisionResult> {
196
+ if (!this.shell) throw new Error("Agent shell is not configured");
197
+ return await this.shell.deny(input);
198
+ }
199
+
139
200
  /**
140
201
  * 更新当前 SDK Agent 的静态基础指令。
141
202
  */
@@ -178,6 +239,13 @@ export class Agent {
178
239
  return this.sessionManager.get_session_collection();
179
240
  }
180
241
 
242
+ /**
243
+ * 返回当前 agent 挂载的 Shell。
244
+ */
245
+ getShell(): Shell | undefined {
246
+ return this.shell;
247
+ }
248
+
181
249
  private create_session_manager(
182
250
  assembly: AgentAssemblyResult,
183
251
  ): AgentSessionManager {
@@ -28,13 +28,13 @@ import {
28
28
  createAgentContext,
29
29
  createAgentRuntime,
30
30
  } from "@/agent/local/AgentRuntimeFactory.js";
31
- import { setShellToolRuntime } from "@executor/tools/shell/ShellToolDefinition.js";
32
31
  import {
33
32
  plugin_tools,
34
33
  setPluginToolRuntime,
35
34
  } from "@executor/tools/plugin/PluginToolDefinition.js";
36
35
  import type { AgentManagedSession } from "@/types/agent/AgentTypes.js";
37
36
  import type { SessionPort } from "@/types/runtime/agent/AgentContext.js";
37
+ import type { AgentSessionEvent } from "@/types/sdk/AgentSessionEvent.js";
38
38
 
39
39
  type AgentAssemblyServiceOptions = {
40
40
  /**
@@ -123,6 +123,11 @@ export interface AgentAssemblyResult {
123
123
  * 当前 agent context。
124
124
  */
125
125
  agent_context: AgentContext;
126
+
127
+ /**
128
+ * 当前 agent 挂载的内建 shell。
129
+ */
130
+ shell?: AgentOptions["shell"];
126
131
  }
127
132
 
128
133
  /**
@@ -201,7 +206,22 @@ export class AgentAssemblyService {
201
206
  resolve_session_model: async (session_id) =>
202
207
  await this.resolve_session_model(session_id),
203
208
  });
204
- setShellToolRuntime(agent_context.invoke);
209
+ const shell = this.options.shell;
210
+ if (shell) {
211
+ shell.configure({
212
+ root_path: path,
213
+ env,
214
+ agent_id: id,
215
+ sandbox: config.sandbox,
216
+ logger,
217
+ emit_event: (event) => {
218
+ const session_id = String(event.session_id || "").trim();
219
+ if (!session_id) return;
220
+ agent_context.session.get(session_id).publishEvent(event as unknown as AgentSessionEvent);
221
+ },
222
+ });
223
+ Object.assign(tools, shell.tools);
224
+ }
205
225
  setPluginToolRuntime(plugins);
206
226
 
207
227
  return {
@@ -217,6 +237,7 @@ export class AgentAssemblyService {
217
237
  plugins,
218
238
  runtime,
219
239
  agent_context,
240
+ ...(shell ? { shell } : {}),
220
241
  };
221
242
  }
222
243
 
@@ -22,6 +22,7 @@ import { startActionScheduleRuntime } from "@/plugin/core/ActionScheduleRuntime.
22
22
  import { startAllPlugins, stopAllPlugins } from "@/plugin/core/Manager.js";
23
23
  import { startRpcServer } from "@/rpc/Server.js";
24
24
  import type { AgentRuntime } from "@/types/runtime/agent/AgentRuntime.js";
25
+ import type { Shell } from "@downcity/shell";
25
26
 
26
27
  type AgentLifecycleServiceOptions = {
27
28
  /**
@@ -43,6 +44,11 @@ type AgentLifecycleServiceOptions = {
43
44
  * 读取当前 agent runtime。
44
45
  */
45
46
  get_runtime: () => AgentRuntime;
47
+
48
+ /**
49
+ * 读取当前 agent 挂载的 Shell。
50
+ */
51
+ get_shell?: () => Shell | undefined;
46
52
  };
47
53
 
48
54
  /**
@@ -53,6 +59,7 @@ export class AgentLifecycleService {
53
59
  private readonly agent_context: AgentContext;
54
60
  private readonly session_collection: AgentSessionCollection;
55
61
  private readonly get_runtime: AgentLifecycleServiceOptions["get_runtime"];
62
+ private readonly get_shell: AgentLifecycleServiceOptions["get_shell"];
56
63
 
57
64
  private plugins_started = false;
58
65
  private action_schedule_runtime: ActionScheduleRuntimeHandle | null = null;
@@ -64,6 +71,7 @@ export class AgentLifecycleService {
64
71
  this.agent_context = options.agent_context;
65
72
  this.session_collection = options.session_collection;
66
73
  this.get_runtime = options.get_runtime;
74
+ this.get_shell = options.get_shell;
67
75
  }
68
76
 
69
77
  /**
@@ -112,6 +120,8 @@ export class AgentLifecycleService {
112
120
  await this.stop_rpc();
113
121
  }
114
122
 
123
+ await this.get_shell?.()?.dispose();
124
+
115
125
  this.start_promise = null;
116
126
 
117
127
  return {
@@ -168,6 +178,7 @@ export class AgentLifecycleService {
168
178
  sessionCollection: this.session_collection,
169
179
  getAgentContext: () => this.agent_context,
170
180
  getAgentRuntime: () => this.get_runtime(),
181
+ getShell: () => this.get_shell?.(),
171
182
  });
172
183
  this.rpc_binding = {
173
184
  url: `rpc://${host}:${port}`,
@@ -16,6 +16,14 @@ import type {
16
16
  RemoteAgentOptions,
17
17
  RemoteAgentSession,
18
18
  } from "@/types/agent/AgentTypes.js";
19
+ import type {
20
+ ShellApprovalMode,
21
+ ShellApprovalDecisionResult,
22
+ ShellApprovalModeUpdateResult,
23
+ ShellApprovalModeOption,
24
+ ShellSessionApprovalModeView,
25
+ ShellApprovalView,
26
+ } from "@downcity/shell";
19
27
  import type { RemoteAgentTransport } from "@/agent/remote/RemoteTransport.js";
20
28
  import { RemoteSession } from "@/agent/remote/RemoteSession.js";
21
29
  import { create_remote_agent_transport } from "@/agent/remote/TransportFactory.js";
@@ -70,7 +78,7 @@ export class RemoteAgent {
70
78
  *
71
79
  * 关键点(中文)
72
80
  * - 这是 RemoteAgent 顶层能力,不绑定某个 session。
73
- * - 前端收到 `tool-approval-request` 后,可以用它调用 `shell.approve` / `shell.deny`。
81
+ * - Shell approval 请使用 `approvals()` / `approve()` / `deny()`。
74
82
  */
75
83
  async runPluginAction(
76
84
  input: RemoteAgentPluginActionInput,
@@ -90,6 +98,51 @@ export class RemoteAgent {
90
98
  });
91
99
  }
92
100
 
101
+ /**
102
+ * 列出远程 Agent 的 shell pending approvals。
103
+ */
104
+ async approvals(): Promise<ShellApprovalView[]> {
105
+ return await this.transport.approvals();
106
+ }
107
+
108
+ /**
109
+ * 列出远程 Agent 显式设置过的 shell approval 模式。
110
+ */
111
+ async approval_modes(): Promise<ShellApprovalModeOption[]> {
112
+ return await this.transport.approval_modes();
113
+ }
114
+
115
+ /**
116
+ * 读取远程 Agent 指定 session 的 shell approval 模式。
117
+ */
118
+ async approval_mode(input: { session_id: string }): Promise<ShellSessionApprovalModeView> {
119
+ return await this.transport.approval_mode(input);
120
+ }
121
+
122
+ /**
123
+ * 设置远程 Agent 指定 session 的 shell approval 模式。
124
+ */
125
+ async set_approval_mode(input: {
126
+ session_id: string;
127
+ mode: ShellApprovalMode;
128
+ }): Promise<ShellApprovalModeUpdateResult> {
129
+ return await this.transport.set_approval_mode(input);
130
+ }
131
+
132
+ /**
133
+ * 批准远程 Agent 的 shell approval。
134
+ */
135
+ async approve(input: { approval_id: string }): Promise<ShellApprovalDecisionResult> {
136
+ return await this.transport.approve(input);
137
+ }
138
+
139
+ /**
140
+ * 拒绝远程 Agent 的 shell approval。
141
+ */
142
+ async deny(input: { approval_id: string }): Promise<ShellApprovalDecisionResult> {
143
+ return await this.transport.deny(input);
144
+ }
145
+
93
146
  /**
94
147
  * 关闭远程 transport。
95
148
  *
@@ -20,6 +20,14 @@ import type {
20
20
  } from "@/types/agent/AgentTypes.js";
21
21
  import type { AgentSessionEvent } from "@/types/sdk/AgentSessionEvent.js";
22
22
  import type { AgentSessionPromptInput } from "@/types/sdk/AgentSessionPrompt.js";
23
+ import type {
24
+ ShellApprovalMode,
25
+ ShellApprovalDecisionResult,
26
+ ShellApprovalModeUpdateResult,
27
+ ShellApprovalModeOption,
28
+ ShellSessionApprovalModeView,
29
+ ShellApprovalView,
30
+ } from "@downcity/shell";
23
31
 
24
32
  /**
25
33
  * Transport 持有的事件订阅句柄。
@@ -72,6 +80,21 @@ export type RemoteAgentTransport = RemoteSessionTransport & {
72
80
  run_plugin_action(
73
81
  input: RemoteAgentPluginActionInput,
74
82
  ): Promise<RemoteAgentPluginActionResult>;
83
+ /** 列出 shell approvals。 */
84
+ approvals(): Promise<ShellApprovalView[]>;
85
+ /** 列出 shell approval modes。 */
86
+ approval_modes(): Promise<ShellApprovalModeOption[]>;
87
+ /** 读取 shell approval mode。 */
88
+ approval_mode(input: { session_id: string }): Promise<ShellSessionApprovalModeView>;
89
+ /** 设置 shell approval mode。 */
90
+ set_approval_mode(input: {
91
+ session_id: string;
92
+ mode: ShellApprovalMode;
93
+ }): Promise<ShellApprovalModeUpdateResult>;
94
+ /** 批准 shell approval。 */
95
+ approve(input: { approval_id: string }): Promise<ShellApprovalDecisionResult>;
96
+ /** 拒绝 shell approval。 */
97
+ deny(input: { approval_id: string }): Promise<ShellApprovalDecisionResult>;
75
98
  /** 关闭 transport 持有的长期连接。 */
76
99
  close?(): Promise<void>;
77
100
  };