@downcity/agent 1.1.73 → 1.1.79
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/README.md +26 -28
- package/bin/agent/{Agent.d.ts → local/Agent.d.ts} +8 -36
- package/bin/agent/local/Agent.d.ts.map +1 -0
- package/bin/agent/{Agent.js → local/Agent.js} +45 -200
- package/bin/agent/local/Agent.js.map +1 -0
- package/bin/agent/local/AgentInstructions.d.ts +22 -0
- package/bin/agent/local/AgentInstructions.d.ts.map +1 -0
- package/bin/agent/local/AgentInstructions.js +57 -0
- package/bin/agent/local/AgentInstructions.js.map +1 -0
- package/bin/agent/local/AgentPluginFactory.d.ts +29 -0
- package/bin/agent/local/AgentPluginFactory.d.ts.map +1 -0
- package/bin/agent/local/AgentPluginFactory.js +53 -0
- package/bin/agent/local/AgentPluginFactory.js.map +1 -0
- package/bin/{runtime/host/AgentHostRuntime.d.ts → agent/local/AgentRuntimeAssembly.d.ts} +2 -2
- package/bin/agent/local/AgentRuntimeAssembly.d.ts.map +1 -0
- package/bin/{runtime/host/AgentHostRuntime.js → agent/local/AgentRuntimeAssembly.js} +2 -2
- package/bin/agent/local/AgentRuntimeAssembly.js.map +1 -0
- package/bin/agent/local/AgentRuntimeFactory.d.ts +72 -0
- package/bin/agent/local/AgentRuntimeFactory.d.ts.map +1 -0
- package/bin/agent/local/AgentRuntimeFactory.js +94 -0
- package/bin/agent/local/AgentRuntimeFactory.js.map +1 -0
- package/bin/{runtime/host → agent/local}/ProjectSetup.d.ts +1 -1
- package/bin/agent/local/ProjectSetup.d.ts.map +1 -0
- package/bin/{runtime/host → agent/local}/ProjectSetup.js +1 -1
- package/bin/agent/local/ProjectSetup.js.map +1 -0
- package/bin/agent/{RemoteAgent.d.ts → remote/RemoteAgent.d.ts} +3 -3
- package/bin/agent/remote/RemoteAgent.d.ts.map +1 -0
- package/bin/agent/remote/RemoteAgent.js +58 -0
- package/bin/agent/remote/RemoteAgent.js.map +1 -0
- package/bin/agent/remote/RemoteSession.d.ts +62 -0
- package/bin/agent/remote/RemoteSession.d.ts.map +1 -0
- package/bin/agent/remote/RemoteSession.js +225 -0
- package/bin/agent/remote/RemoteSession.js.map +1 -0
- package/bin/agent/remote/RemoteTransport.d.ts +52 -0
- package/bin/agent/remote/RemoteTransport.d.ts.map +1 -0
- package/bin/agent/remote/RemoteTransport.js +9 -0
- package/bin/agent/remote/RemoteTransport.js.map +1 -0
- package/bin/agent/remote/TransportFactory.d.ts +13 -0
- package/bin/agent/remote/TransportFactory.d.ts.map +1 -0
- package/bin/agent/remote/TransportFactory.js +22 -0
- package/bin/agent/remote/TransportFactory.js.map +1 -0
- package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts +35 -0
- package/bin/agent/remote/transports/HttpRemoteAgentTransport.d.ts.map +1 -0
- package/bin/agent/remote/transports/HttpRemoteAgentTransport.js +259 -0
- package/bin/agent/remote/transports/HttpRemoteAgentTransport.js.map +1 -0
- package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts +34 -0
- package/bin/agent/remote/transports/RpcRemoteAgentTransport.d.ts.map +1 -0
- package/bin/agent/remote/transports/RpcRemoteAgentTransport.js +66 -0
- package/bin/agent/remote/transports/RpcRemoteAgentTransport.js.map +1 -0
- package/bin/config/AgentInitializer.d.ts +1 -1
- package/bin/config/AgentInitializer.js +1 -1
- package/bin/executor/Executor.d.ts +4 -0
- package/bin/executor/Executor.d.ts.map +1 -1
- package/bin/executor/Executor.js +52 -35
- package/bin/executor/Executor.js.map +1 -1
- package/bin/executor/composer/history/SessionHistoryWriter.js +2 -2
- package/bin/executor/composer/history/SessionHistoryWriter.js.map +1 -1
- package/bin/executor/composer/system/default/assets/core.prompt.d.ts +1 -1
- package/bin/executor/composer/system/default/assets/core.prompt.d.ts.map +1 -1
- package/bin/executor/composer/system/default/assets/core.prompt.js +1 -1
- package/bin/executor/composer/system/default/assets/core.prompt.js.map +1 -1
- package/bin/executor/messages/AssistantResultPersistence.d.ts +3 -3
- package/bin/executor/messages/AssistantResultPersistence.d.ts.map +1 -1
- package/bin/executor/messages/AssistantResultPersistence.js +2 -6
- package/bin/executor/messages/AssistantResultPersistence.js.map +1 -1
- package/bin/executor/messages/SessionStepEventMapper.d.ts +7 -8
- package/bin/executor/messages/SessionStepEventMapper.d.ts.map +1 -1
- package/bin/executor/messages/SessionStepEventMapper.js +55 -86
- package/bin/executor/messages/SessionStepEventMapper.js.map +1 -1
- package/bin/executor/messages/UserVisibleText.d.ts +2 -10
- package/bin/executor/messages/UserVisibleText.d.ts.map +1 -1
- package/bin/executor/messages/UserVisibleText.js +3 -16
- package/bin/executor/messages/UserVisibleText.js.map +1 -1
- package/bin/executor/store/history/SessionHistoryStore.d.ts +12 -0
- package/bin/executor/store/history/SessionHistoryStore.d.ts.map +1 -1
- package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts +12 -0
- package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.d.ts.map +1 -1
- package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js +145 -8
- package/bin/executor/store/history/jsonl/JsonlSessionHistoryStore.js.map +1 -1
- package/bin/executor/tools/shell/ShellToolFormatting.d.ts +1 -10
- package/bin/executor/tools/shell/ShellToolFormatting.d.ts.map +1 -1
- package/bin/executor/tools/shell/ShellToolFormatting.js +1 -39
- package/bin/executor/tools/shell/ShellToolFormatting.js.map +1 -1
- package/bin/executor/types/SessionHistoryPaths.d.ts +4 -0
- package/bin/executor/types/SessionHistoryPaths.d.ts.map +1 -1
- package/bin/index.d.ts +5 -5
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js +3 -3
- package/bin/index.js.map +1 -1
- package/bin/plugin/core/PluginCommandRequest.d.ts +1 -1
- package/bin/plugin/core/PluginCommandRequest.js +1 -1
- package/bin/plugin/core/PluginLocalExecution.js +1 -1
- package/bin/plugin/core/PluginLocalExecution.js.map +1 -1
- package/bin/plugin/core/ProjectConfigStore.d.ts +3 -2
- package/bin/plugin/core/ProjectConfigStore.d.ts.map +1 -1
- package/bin/plugin/core/ProjectConfigStore.js +3 -4
- package/bin/plugin/core/ProjectConfigStore.js.map +1 -1
- package/bin/plugin/types/Plugin.d.ts +10 -842
- package/bin/plugin/types/Plugin.d.ts.map +1 -1
- package/bin/plugin/types/Plugin.js +3 -4
- package/bin/plugin/types/Plugin.js.map +1 -1
- package/bin/plugin/types/PluginApi.d.ts +1 -1
- package/bin/plugin/types/PluginApi.js +1 -1
- package/bin/plugin/types/PluginState.d.ts +1 -1
- package/bin/plugin/types/PluginState.d.ts.map +1 -1
- package/bin/rpc/Client.d.ts +2 -99
- package/bin/rpc/Client.d.ts.map +1 -1
- package/bin/rpc/Client.js +0 -46
- package/bin/rpc/Client.js.map +1 -1
- package/bin/rpc/Server.d.ts +5 -21
- package/bin/rpc/Server.d.ts.map +1 -1
- package/bin/rpc/Server.js +30 -315
- package/bin/rpc/Server.js.map +1 -1
- package/bin/rpc/server/InternalHandlers.d.ts +21 -0
- package/bin/rpc/server/InternalHandlers.d.ts.map +1 -0
- package/bin/rpc/server/InternalHandlers.js +190 -0
- package/bin/rpc/server/InternalHandlers.js.map +1 -0
- package/bin/rpc/server/RequestDispatcher.d.ts +27 -0
- package/bin/rpc/server/RequestDispatcher.d.ts.map +1 -0
- package/bin/rpc/server/RequestDispatcher.js +38 -0
- package/bin/rpc/server/RequestDispatcher.js.map +1 -0
- package/bin/rpc/server/SdkSessionHandlers.d.ts +25 -0
- package/bin/rpc/server/SdkSessionHandlers.d.ts.map +1 -0
- package/bin/rpc/server/SdkSessionHandlers.js +86 -0
- package/bin/rpc/server/SdkSessionHandlers.js.map +1 -0
- package/bin/rpc/server/ServerTypes.d.ts +59 -0
- package/bin/rpc/server/ServerTypes.d.ts.map +1 -0
- package/bin/rpc/server/ServerTypes.js +9 -0
- package/bin/rpc/server/ServerTypes.js.map +1 -0
- package/bin/{runtime/sandbox → sandbox}/MacOsSeatbeltSandbox.d.ts +1 -1
- package/bin/sandbox/MacOsSeatbeltSandbox.d.ts.map +1 -0
- package/bin/sandbox/MacOsSeatbeltSandbox.js.map +1 -0
- package/bin/{runtime/sandbox → sandbox}/SandboxConfigResolver.d.ts +2 -2
- package/bin/sandbox/SandboxConfigResolver.d.ts.map +1 -0
- package/bin/sandbox/SandboxConfigResolver.js.map +1 -0
- package/bin/{runtime/sandbox → sandbox}/SandboxRunner.d.ts +2 -2
- package/bin/sandbox/SandboxRunner.d.ts.map +1 -0
- package/bin/{runtime/sandbox → sandbox}/SandboxRunner.js +2 -2
- package/bin/sandbox/SandboxRunner.js.map +1 -0
- package/bin/sandbox/types/Sandbox.d.ts.map +1 -0
- package/bin/sandbox/types/Sandbox.js.map +1 -0
- package/bin/{runtime/sandbox → sandbox}/types/SandboxRuntime.d.ts +2 -2
- package/bin/sandbox/types/SandboxRuntime.d.ts.map +1 -0
- package/bin/sandbox/types/SandboxRuntime.js.map +1 -0
- package/bin/session/Session.d.ts.map +1 -1
- package/bin/session/Session.js +2 -1
- package/bin/session/Session.js.map +1 -1
- package/bin/session/browse/Browse.d.ts +1 -1
- package/bin/session/browse/Browse.d.ts.map +1 -1
- package/bin/session/browse/Browse.js +28 -13
- package/bin/session/browse/Browse.js.map +1 -1
- package/bin/session/index.d.ts +1 -1
- package/bin/session/index.d.ts.map +1 -1
- package/bin/session/index.js +1 -1
- package/bin/session/index.js.map +1 -1
- package/bin/session/storage/Paths.d.ts +9 -0
- package/bin/session/storage/Paths.d.ts.map +1 -1
- package/bin/session/storage/Paths.js +11 -0
- package/bin/session/storage/Paths.js.map +1 -1
- package/bin/types/agent/AgentOptions.d.ts +134 -0
- package/bin/types/agent/AgentOptions.d.ts.map +1 -0
- package/bin/types/agent/AgentOptions.js +9 -0
- package/bin/types/agent/AgentOptions.js.map +1 -0
- package/bin/types/{runtime/host/AgentHost.d.ts → agent/AgentRuntimeAssembly.d.ts} +4 -4
- package/bin/types/agent/AgentRuntimeAssembly.d.ts.map +1 -0
- package/bin/types/{runtime/host/AgentHost.js → agent/AgentRuntimeAssembly.js} +3 -3
- package/bin/types/agent/AgentRuntimeAssembly.js.map +1 -0
- package/bin/types/agent/AgentTypes.d.ts +8 -613
- package/bin/types/agent/AgentTypes.d.ts.map +1 -1
- package/bin/types/agent/AgentTypes.js +4 -4
- package/bin/types/agent/RemoteAgentOptions.d.ts +28 -0
- package/bin/types/agent/RemoteAgentOptions.d.ts.map +1 -0
- package/bin/types/agent/RemoteAgentOptions.js +9 -0
- package/bin/types/agent/RemoteAgentOptions.js.map +1 -0
- package/bin/types/agent/SessionActor.d.ts +60 -0
- package/bin/types/agent/SessionActor.d.ts.map +1 -0
- package/bin/types/agent/SessionActor.js +9 -0
- package/bin/types/agent/SessionActor.js.map +1 -0
- package/bin/types/agent/SessionTypes.d.ts +312 -0
- package/bin/types/agent/SessionTypes.d.ts.map +1 -0
- package/bin/types/agent/SessionTypes.js +9 -0
- package/bin/types/agent/SessionTypes.js.map +1 -0
- package/bin/types/config/DowncityConfig.d.ts +1 -1
- package/bin/types/config/DowncityConfig.d.ts.map +1 -1
- package/bin/types/{runtime/host → platform}/Store.d.ts +1 -1
- package/bin/types/platform/Store.d.ts.map +1 -0
- package/bin/types/{runtime/host → platform}/Store.js +1 -1
- package/bin/types/platform/Store.js.map +1 -0
- package/bin/types/plugin/PluginAction.d.ts +119 -0
- package/bin/types/plugin/PluginAction.d.ts.map +1 -0
- package/bin/types/plugin/PluginAction.js +9 -0
- package/bin/types/plugin/PluginAction.js.map +1 -0
- package/bin/types/plugin/PluginCommand.d.ts +80 -0
- package/bin/types/plugin/PluginCommand.d.ts.map +1 -0
- package/bin/types/plugin/PluginCommand.js +9 -0
- package/bin/types/plugin/PluginCommand.js.map +1 -0
- package/bin/types/plugin/PluginDefinition.d.ts +57 -0
- package/bin/types/plugin/PluginDefinition.d.ts.map +1 -0
- package/bin/types/plugin/PluginDefinition.js +9 -0
- package/bin/types/plugin/PluginDefinition.js.map +1 -0
- package/bin/types/plugin/PluginHttp.d.ts +34 -0
- package/bin/types/plugin/PluginHttp.d.ts.map +1 -0
- package/bin/types/plugin/PluginHttp.js +9 -0
- package/bin/types/plugin/PluginHttp.js.map +1 -0
- package/bin/types/plugin/PluginRuntime.d.ts +148 -0
- package/bin/types/plugin/PluginRuntime.d.ts.map +1 -0
- package/bin/types/plugin/PluginRuntime.js +9 -0
- package/bin/types/plugin/PluginRuntime.js.map +1 -0
- package/bin/types/plugin/PluginSetup.d.ts +133 -0
- package/bin/types/plugin/PluginSetup.d.ts.map +1 -0
- package/bin/types/plugin/PluginSetup.js +9 -0
- package/bin/types/plugin/PluginSetup.js.map +1 -0
- package/bin/types/plugin/PluginState.d.ts +69 -0
- package/bin/types/plugin/PluginState.d.ts.map +1 -0
- package/bin/types/plugin/PluginState.js +9 -0
- package/bin/types/plugin/PluginState.js.map +1 -0
- package/bin/types/rpc/RpcProtocol.d.ts +323 -0
- package/bin/types/rpc/RpcProtocol.d.ts.map +1 -0
- package/bin/types/rpc/RpcProtocol.js +10 -0
- package/bin/types/rpc/RpcProtocol.js.map +1 -0
- package/bin/types/runtime/agent/AgentContext.d.ts +1 -1
- package/bin/types/runtime/agent/AgentContext.d.ts.map +1 -1
- package/bin/types/runtime/agent/AgentRuntime.d.ts +1 -1
- package/bin/types/runtime/agent/AgentRuntime.d.ts.map +1 -1
- package/bin/types/runtime/platform/Platform.d.ts +7 -7
- package/bin/types/runtime/platform/PlatformGateway.d.ts +1 -1
- package/bin/types/runtime/platform/PlatformGateway.js +1 -1
- package/package.json +2 -2
- package/scripts/session-history-inflight.test.mjs +146 -0
- package/src/agent/{Agent.ts → local/Agent.ts} +50 -228
- package/src/agent/local/AgentInstructions.ts +68 -0
- package/src/agent/local/AgentPluginFactory.ts +83 -0
- package/src/{runtime/host/AgentHostRuntime.ts → agent/local/AgentRuntimeAssembly.ts} +2 -2
- package/src/agent/local/AgentRuntimeFactory.ts +173 -0
- package/src/{runtime/host → agent/local}/ProjectSetup.ts +1 -1
- package/src/agent/remote/RemoteAgent.ts +76 -0
- package/src/agent/remote/RemoteSession.ts +287 -0
- package/src/agent/remote/RemoteTransport.ts +71 -0
- package/src/agent/remote/TransportFactory.ts +29 -0
- package/src/agent/remote/transports/HttpRemoteAgentTransport.ts +347 -0
- package/src/agent/remote/transports/RpcRemoteAgentTransport.ts +107 -0
- package/src/config/AgentInitializer.ts +1 -1
- package/src/executor/Executor.ts +56 -37
- package/src/executor/composer/history/SessionHistoryWriter.ts +2 -2
- package/src/executor/composer/system/default/assets/core.prompt.ts +1 -1
- package/src/executor/composer/system/default/assets/core.prompt.ts.txt +1 -1
- package/src/executor/messages/AssistantResultPersistence.ts +4 -12
- package/src/executor/messages/SessionStepEventMapper.ts +59 -101
- package/src/executor/messages/UserVisibleText.ts +3 -18
- package/src/executor/store/history/SessionHistoryStore.ts +15 -0
- package/src/executor/store/history/jsonl/JsonlSessionHistoryStore.ts +164 -11
- package/src/executor/tools/shell/ShellToolFormatting.ts +1 -50
- package/src/executor/types/SessionHistoryPaths.ts +5 -0
- package/src/index.ts +5 -5
- package/src/plugin/core/PluginCommandRequest.ts +1 -1
- package/src/plugin/core/PluginLocalExecution.ts +1 -1
- package/src/plugin/core/ProjectConfigStore.ts +4 -4
- package/src/plugin/types/Plugin.ts +54 -913
- package/src/plugin/types/PluginApi.ts +1 -1
- package/src/plugin/types/PluginState.ts +1 -1
- package/src/rpc/Client.ts +16 -322
- package/src/rpc/Server.ts +39 -565
- package/src/rpc/server/InternalHandlers.ts +230 -0
- package/src/rpc/server/RequestDispatcher.ts +67 -0
- package/src/rpc/server/SdkSessionHandlers.ts +106 -0
- package/src/rpc/server/ServerTypes.ts +65 -0
- package/src/{runtime/sandbox → sandbox}/MacOsSeatbeltSandbox.ts +1 -1
- package/src/{runtime/sandbox → sandbox}/SandboxConfigResolver.ts +1 -1
- package/src/{runtime/sandbox → sandbox}/SandboxRunner.ts +3 -3
- package/src/{runtime/sandbox → sandbox}/types/SandboxRuntime.ts +2 -2
- package/src/session/Session.ts +6 -0
- package/src/session/browse/Browse.ts +29 -10
- package/src/session/index.ts +1 -0
- package/src/session/storage/Paths.ts +19 -0
- package/src/types/agent/AgentOptions.ts +147 -0
- package/src/types/{runtime/host/AgentHost.ts → agent/AgentRuntimeAssembly.ts} +2 -2
- package/src/types/agent/AgentTypes.ts +37 -709
- package/src/types/agent/RemoteAgentOptions.ts +29 -0
- package/src/types/agent/SessionActor.ts +88 -0
- package/src/types/agent/SessionTypes.ts +334 -0
- package/src/types/config/DowncityConfig.ts +1 -1
- package/src/types/{runtime/host → platform}/Store.ts +1 -1
- package/src/types/plugin/PluginAction.ts +133 -0
- package/src/types/plugin/PluginCommand.ts +89 -0
- package/src/types/plugin/PluginDefinition.ts +74 -0
- package/src/types/plugin/PluginHttp.ts +36 -0
- package/src/types/plugin/PluginRuntime.ts +169 -0
- package/src/types/plugin/PluginSetup.ts +138 -0
- package/src/types/plugin/PluginState.ts +82 -0
- package/src/types/rpc/RpcProtocol.ts +361 -0
- package/src/types/runtime/agent/AgentContext.ts +1 -1
- package/src/types/runtime/agent/AgentRuntime.ts +1 -1
- package/src/types/runtime/platform/Platform.ts +7 -7
- package/src/types/runtime/platform/PlatformGateway.ts +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/bin/agent/Agent.d.ts.map +0 -1
- package/bin/agent/Agent.js.map +0 -1
- package/bin/agent/RemoteAgent.d.ts.map +0 -1
- package/bin/agent/RemoteAgent.js +0 -585
- package/bin/agent/RemoteAgent.js.map +0 -1
- package/bin/runtime/auth/AuthEnv.d.ts +0 -36
- package/bin/runtime/auth/AuthEnv.d.ts.map +0 -1
- package/bin/runtime/auth/AuthEnv.js +0 -54
- package/bin/runtime/auth/AuthEnv.js.map +0 -1
- package/bin/runtime/auth/CliAuthStateStore.d.ts +0 -29
- package/bin/runtime/auth/CliAuthStateStore.d.ts.map +0 -1
- package/bin/runtime/auth/CliAuthStateStore.js +0 -26
- package/bin/runtime/auth/CliAuthStateStore.js.map +0 -1
- package/bin/runtime/control/AuthControlService.d.ts +0 -34
- package/bin/runtime/control/AuthControlService.d.ts.map +0 -1
- package/bin/runtime/control/AuthControlService.js +0 -129
- package/bin/runtime/control/AuthControlService.js.map +0 -1
- package/bin/runtime/control/CommonHelpers.d.ts +0 -36
- package/bin/runtime/control/CommonHelpers.d.ts.map +0 -1
- package/bin/runtime/control/CommonHelpers.js +0 -63
- package/bin/runtime/control/CommonHelpers.js.map +0 -1
- package/bin/runtime/control/ExecuteBySession.d.ts +0 -30
- package/bin/runtime/control/ExecuteBySession.d.ts.map +0 -1
- package/bin/runtime/control/ExecuteBySession.js +0 -41
- package/bin/runtime/control/ExecuteBySession.js.map +0 -1
- package/bin/runtime/control/ExecuteInput.d.ts +0 -18
- package/bin/runtime/control/ExecuteInput.d.ts.map +0 -1
- package/bin/runtime/control/ExecuteInput.js +0 -201
- package/bin/runtime/control/ExecuteInput.js.map +0 -1
- package/bin/runtime/control/Helpers.d.ts +0 -13
- package/bin/runtime/control/Helpers.d.ts.map +0 -1
- package/bin/runtime/control/Helpers.js +0 -13
- package/bin/runtime/control/Helpers.js.map +0 -1
- package/bin/runtime/control/MessageTimeline.d.ts +0 -22
- package/bin/runtime/control/MessageTimeline.d.ts.map +0 -1
- package/bin/runtime/control/MessageTimeline.js +0 -226
- package/bin/runtime/control/MessageTimeline.js.map +0 -1
- package/bin/runtime/control/SessionSummaryStore.d.ts +0 -20
- package/bin/runtime/control/SessionSummaryStore.d.ts.map +0 -1
- package/bin/runtime/control/SessionSummaryStore.js +0 -50
- package/bin/runtime/control/SessionSummaryStore.js.map +0 -1
- package/bin/runtime/control/TaskStore.d.ts +0 -33
- package/bin/runtime/control/TaskStore.d.ts.map +0 -1
- package/bin/runtime/control/TaskStore.js +0 -175
- package/bin/runtime/control/TaskStore.js.map +0 -1
- package/bin/runtime/control/types/AuthControl.d.ts +0 -30
- package/bin/runtime/control/types/AuthControl.d.ts.map +0 -1
- package/bin/runtime/control/types/AuthControl.js +0 -9
- package/bin/runtime/control/types/AuthControl.js.map +0 -1
- package/bin/runtime/control/types/ControlSessionExecute.d.ts +0 -85
- package/bin/runtime/control/types/ControlSessionExecute.d.ts.map +0 -1
- package/bin/runtime/control/types/ControlSessionExecute.js +0 -9
- package/bin/runtime/control/types/ControlSessionExecute.js.map +0 -1
- package/bin/runtime/control/types/ControlViewData.d.ts +0 -320
- package/bin/runtime/control/types/ControlViewData.d.ts.map +0 -1
- package/bin/runtime/control/types/ControlViewData.js +0 -9
- package/bin/runtime/control/types/ControlViewData.js.map +0 -1
- package/bin/runtime/host/AgentHostRuntime.d.ts.map +0 -1
- package/bin/runtime/host/AgentHostRuntime.js.map +0 -1
- package/bin/runtime/host/ProjectSetup.d.ts.map +0 -1
- package/bin/runtime/host/ProjectSetup.js.map +0 -1
- package/bin/runtime/sandbox/MacOsSeatbeltSandbox.d.ts.map +0 -1
- package/bin/runtime/sandbox/MacOsSeatbeltSandbox.js.map +0 -1
- package/bin/runtime/sandbox/SandboxConfigResolver.d.ts.map +0 -1
- package/bin/runtime/sandbox/SandboxConfigResolver.js.map +0 -1
- package/bin/runtime/sandbox/SandboxRunner.d.ts.map +0 -1
- package/bin/runtime/sandbox/SandboxRunner.js.map +0 -1
- package/bin/runtime/sandbox/types/Sandbox.d.ts.map +0 -1
- package/bin/runtime/sandbox/types/Sandbox.js.map +0 -1
- package/bin/runtime/sandbox/types/SandboxRuntime.d.ts.map +0 -1
- package/bin/runtime/sandbox/types/SandboxRuntime.js.map +0 -1
- package/bin/types/runtime/host/AgentHost.d.ts.map +0 -1
- package/bin/types/runtime/host/AgentHost.js.map +0 -1
- package/bin/types/runtime/host/Store.d.ts.map +0 -1
- package/bin/types/runtime/host/Store.js.map +0 -1
- package/src/agent/RemoteAgent.ts +0 -834
- package/src/runtime/auth/AuthEnv.ts +0 -62
- package/src/runtime/auth/CliAuthStateStore.ts +0 -46
- package/src/runtime/control/AuthControlService.ts +0 -169
- package/src/runtime/control/CommonHelpers.ts +0 -69
- package/src/runtime/control/ExecuteBySession.ts +0 -52
- package/src/runtime/control/ExecuteInput.ts +0 -236
- package/src/runtime/control/Helpers.ts +0 -22
- package/src/runtime/control/MessageTimeline.ts +0 -269
- package/src/runtime/control/SessionSummaryStore.ts +0 -72
- package/src/runtime/control/TaskStore.ts +0 -242
- package/src/runtime/control/types/AuthControl.ts +0 -34
- package/src/runtime/control/types/ControlSessionExecute.ts +0 -99
- package/src/runtime/control/types/ControlViewData.ts +0 -392
- /package/bin/{runtime/sandbox → sandbox}/MacOsSeatbeltSandbox.js +0 -0
- /package/bin/{runtime/sandbox → sandbox}/SandboxConfigResolver.js +0 -0
- /package/bin/{runtime/sandbox → sandbox}/types/Sandbox.d.ts +0 -0
- /package/bin/{runtime/sandbox → sandbox}/types/Sandbox.js +0 -0
- /package/bin/{runtime/sandbox → sandbox}/types/SandboxRuntime.js +0 -0
- /package/src/{runtime/sandbox → sandbox}/types/Sandbox.ts +0 -0
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
- 本地 SDK:`Agent`、`Session`、`RemoteAgent`
|
|
8
8
|
- 内部执行内核:history、system、tool loop、增量输出
|
|
9
9
|
- Plugin 框架:hook、action、内建插件
|
|
10
|
-
- 运行时实现:
|
|
10
|
+
- 运行时实现:RPC runtime、sandbox、host
|
|
11
11
|
|
|
12
12
|
`downcity` 负责多 Agent 管理、控制面网关、平台 CLI、共享模型目录接入与 daemon 进程管理;`@downcity/agent` 只负责单 Agent 的执行面。
|
|
13
13
|
|
|
@@ -15,14 +15,14 @@
|
|
|
15
15
|
|
|
16
16
|
- 面向单个 Agent 项目的执行面
|
|
17
17
|
- 对外通过 `@downcity/agent` 根入口暴露公共 API
|
|
18
|
-
- 负责 session SDK、executor 内核、plugin、sandbox、
|
|
18
|
+
- 负责 session SDK、executor 内核、plugin、sandbox、RPC runtime、SDK 本地 Agent
|
|
19
19
|
- 不负责多 Agent registry、control plane daemon、console UI 聚合和平台级编排
|
|
20
20
|
|
|
21
21
|
## 与其他包的边界
|
|
22
22
|
|
|
23
23
|
- `@downcity/agent`
|
|
24
24
|
- 单 Agent runtime
|
|
25
|
-
- 单 Agent
|
|
25
|
+
- 单 Agent RPC runtime
|
|
26
26
|
- session SDK、executor 内核、plugin 框架、sandbox
|
|
27
27
|
- 本地 SDK facade
|
|
28
28
|
- `downcity`
|
|
@@ -50,17 +50,18 @@ packages/agent
|
|
|
50
50
|
```text
|
|
51
51
|
src/
|
|
52
52
|
├── index.ts # 包公开入口,集中导出外部可依赖的 API 与协议类型
|
|
53
|
+
├── agent/ # Agent SDK 入口,按 local / remote 拆分本地与远程实现
|
|
54
|
+
│ ├── local/ # 本地 Agent facade 与实例装配中心
|
|
55
|
+
│ └── remote/ # RemoteAgent facade、RemoteSession 与 HTTP/RPC transport
|
|
53
56
|
├── config/ # 配置与项目初始化,负责 downcity.json、默认配置、execution binding 与脚手架
|
|
54
57
|
│ └── project/ # Agent 项目初始化与项目初始化类型
|
|
55
|
-
├── core/ # 单 Agent 运行时装配中心,负责 AgentCore / AgentContext
|
|
56
58
|
├── executor/ # 内部执行内核,负责历史、system、tool loop、增量输出与消息持久化
|
|
57
59
|
├── plugin/ # 插件系统,负责插件注册、hook、action、内建插件与插件类型
|
|
58
|
-
├──
|
|
59
|
-
|
|
60
|
-
│ ├──
|
|
61
|
-
│ └──
|
|
62
|
-
├──
|
|
63
|
-
│ └── session/ # SDK session 的 metadata、落盘路径、持久化与 runtime 端口适配
|
|
60
|
+
├── rpc/ # Agent 本机 RPC runtime,对外 HTTP gateway 由 Town 提供
|
|
61
|
+
├── runtime/ # 运行时实现细节层,统一收纳 host / sandbox / control 等内部能力
|
|
62
|
+
│ ├── host/ # 宿主注入能力协议
|
|
63
|
+
│ └── sandbox/ # 命令沙箱与沙箱协议
|
|
64
|
+
├── session/ # SDK session actor、metadata、落盘路径、持久化与 runtime 端口适配
|
|
64
65
|
├── types/ # 跨模块共享协议类型,集中放置 common / config / runtime 等稳定契约
|
|
65
66
|
└── utils/ # 低层工具,负责 CLI、日志、存储与模板辅助
|
|
66
67
|
```
|
|
@@ -72,16 +73,12 @@ src/
|
|
|
72
73
|
- `project/` 收口 agent 项目脚手架与初始化结果类型
|
|
73
74
|
- 负责 `downcity.json`、项目 env、`.downcity/*` 路径规则与 execution binding
|
|
74
75
|
|
|
75
|
-
- `src/
|
|
76
|
-
-
|
|
77
|
-
- `
|
|
78
|
-
- `
|
|
79
|
-
|
|
80
|
-
- `
|
|
81
|
-
- 本地 SDK facade
|
|
82
|
-
- 包括 `Agent`、`RemoteAgent`、`Session` 与 `sdk/session/*`
|
|
83
|
-
- `Agent.ts` 通过 `start()/stop()` 统一收口长期运行生命周期
|
|
84
|
-
- `sdk/session/*` 负责 SDK session metadata、落盘路径、持久化与 runtime 端口适配
|
|
76
|
+
- `src/agent/`
|
|
77
|
+
- SDK facade 层
|
|
78
|
+
- `local/Agent.ts` 负责本地 Agent 实例装配、plugin/session/RPC 生命周期
|
|
79
|
+
- `remote/RemoteAgent.ts` 负责远程 Agent 客户端入口
|
|
80
|
+
- `remote/RemoteSession.ts` 负责远程 session actor 与 turn lifecycle
|
|
81
|
+
- `remote/transports/*` 负责 HTTP/RPC transport 适配
|
|
85
82
|
|
|
86
83
|
- `src/executor/`
|
|
87
84
|
- 内部执行内核
|
|
@@ -98,9 +95,10 @@ src/
|
|
|
98
95
|
|
|
99
96
|
- `src/runtime/`
|
|
100
97
|
- 单 Agent 的运行时实现细节层
|
|
101
|
-
- `host/`
|
|
98
|
+
- `host/` 放宿主注入能力协议
|
|
102
99
|
- `sandbox/` 放命令执行隔离与沙箱协议
|
|
103
|
-
- `
|
|
100
|
+
- `control/` 放 runtime 控制面内部协议与处理器
|
|
101
|
+
- `src/rpc/` 放 Agent 本机 RPC runtime;HTTP gateway 由 Town CLI 基于 RPC 转发提供
|
|
104
102
|
- 模型实例解析不在 `agent` 包内完成,而由宿主先创建 `LanguageModel`,再通过 `new Agent({ model })` 或 `session.set({ model })` 注入
|
|
105
103
|
- `model` 也可以接收 City City 返回的 `CityModel`,Agent 会在内部适配成 AI SDK `LanguageModel`
|
|
106
104
|
|
|
@@ -108,7 +106,7 @@ src/
|
|
|
108
106
|
- 跨模块、跨包共享协议类型
|
|
109
107
|
- `common/` 放 JSON、模板等无领域依赖的基础类型
|
|
110
108
|
- `config/` 放 `downcity.json`、LLM、execution binding、plugin 配置、start options 等配置契约
|
|
111
|
-
- `runtime/` 放 auth、
|
|
109
|
+
- `runtime/` 放 auth、agent、host、platform 等运行时与控制面共享协议
|
|
112
110
|
- 领域内部类型仍保留在对应领域目录,例如 `plugin/types/`、`executor/types/`
|
|
113
111
|
|
|
114
112
|
- `src/utils/`
|
|
@@ -119,13 +117,13 @@ src/
|
|
|
119
117
|
`@downcity/agent` 的核心是一条单 Agent 执行链:
|
|
120
118
|
|
|
121
119
|
```text
|
|
122
|
-
入口协议 ->
|
|
120
|
+
入口协议 -> Agent facade -> AgentContext -> Session / Executor / Plugin -> Runtime 子系统 -> History / Reply
|
|
123
121
|
```
|
|
124
122
|
|
|
125
123
|
其中:
|
|
126
124
|
|
|
127
|
-
- `
|
|
128
|
-
- `
|
|
129
|
-
- `session
|
|
130
|
-
- `runtime` 是
|
|
125
|
+
- `agent/local` 与 `agent/remote` 是用户 API 面
|
|
126
|
+
- `Agent` facade 是实例级装配中心
|
|
127
|
+
- `session / executor / plugin` 是三大核心分层
|
|
128
|
+
- `runtime` 是 control / sandbox / host 这类实现细节的统一容器
|
|
131
129
|
- `types / utils` 提供横向公共支撑
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Agent
|
|
2
|
+
* Agent local:本地入口与实例装配中心。
|
|
3
3
|
*
|
|
4
4
|
* 职责说明(中文)
|
|
5
5
|
* - 对外暴露 `Agent` 这一唯一的本地实例类。
|
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
* - 这里不直接实现 session 执行细节,而是继续复用 `Session` / `Executor` 体系。
|
|
12
12
|
*/
|
|
13
13
|
import type { Tool } from "ai";
|
|
14
|
-
import type { AgentContext } from "
|
|
15
|
-
import type { AgentRuntime } from "
|
|
16
|
-
import type { DowncityConfig } from "
|
|
17
|
-
import type { PluginPort } from "
|
|
18
|
-
import type { AgentSession, AgentCreateSessionInput, AgentListSessionsInput, AgentOptions, AgentStartOptions, AgentStartResult, AgentStopResult, AgentSessionCollection, AgentSessionSummaryPage } from "
|
|
19
|
-
import { Logger } from "
|
|
14
|
+
import type { AgentContext } from "../../types/runtime/agent/AgentContext.js";
|
|
15
|
+
import type { AgentRuntime } from "../../types/runtime/agent/AgentRuntime.js";
|
|
16
|
+
import type { DowncityConfig } from "../../types/config/DowncityConfig.js";
|
|
17
|
+
import type { PluginPort } from "../../plugin/types/Plugin.js";
|
|
18
|
+
import type { AgentSession, AgentCreateSessionInput, AgentListSessionsInput, AgentOptions, AgentStartOptions, AgentStartResult, AgentStopResult, AgentSessionCollection, AgentSessionSummaryPage } from "../../types/agent/AgentTypes.js";
|
|
19
|
+
import { Logger } from "../../utils/logger/Logger.js";
|
|
20
20
|
/**
|
|
21
21
|
* SDK 本地 Agent。
|
|
22
22
|
*/
|
|
@@ -98,7 +98,7 @@ export declare class Agent {
|
|
|
98
98
|
* 返回当前 agent runtime。
|
|
99
99
|
*
|
|
100
100
|
* 关键点(中文)
|
|
101
|
-
* - 供宿主在 agent 外部装配 transport(例如
|
|
101
|
+
* - 供宿主在 agent 外部装配 transport(例如 Town HTTP gateway)时复用。
|
|
102
102
|
* - 不暴露启动语义,只暴露运行时访问口。
|
|
103
103
|
*/
|
|
104
104
|
getRuntime(): AgentRuntime;
|
|
@@ -163,18 +163,6 @@ export declare class Agent {
|
|
|
163
163
|
* - 所有 plugin 在注册前都会绑定到当前实例 runtime。
|
|
164
164
|
*/
|
|
165
165
|
private registerPlugins;
|
|
166
|
-
/**
|
|
167
|
-
* 创建 plugin 注册表。
|
|
168
|
-
*
|
|
169
|
-
* 关键点(中文)
|
|
170
|
-
* - registry 本身不直接持有静态上下文,而是通过 resolver 延迟读取当前 `agentContext`。
|
|
171
|
-
* - 这样 hook 调度与 availability 判断都能复用同一份上下文视图。
|
|
172
|
-
*/
|
|
173
|
-
private createPluginRegistry;
|
|
174
|
-
/**
|
|
175
|
-
* 创建对外暴露的 plugin 调用门面。
|
|
176
|
-
*/
|
|
177
|
-
private createPluginPort;
|
|
178
166
|
/**
|
|
179
167
|
* 读取当前 agent 静态 instruction blocks。
|
|
180
168
|
*/
|
|
@@ -187,22 +175,6 @@ export declare class Agent {
|
|
|
187
175
|
* - 这里只加载当前启用且可用的 plugin system 文本。
|
|
188
176
|
*/
|
|
189
177
|
private loadPluginSystemBlocks;
|
|
190
|
-
/**
|
|
191
|
-
* 创建实例级 runtime 视图。
|
|
192
|
-
*
|
|
193
|
-
* 关键点(中文)
|
|
194
|
-
* - runtime 描述的是当前 agent 实例持有的长期状态。
|
|
195
|
-
* - 其他 server / plugin / transport 都通过这个视图读取统一状态。
|
|
196
|
-
*/
|
|
197
|
-
private createRuntime;
|
|
198
|
-
/**
|
|
199
|
-
* 创建统一执行上下文。
|
|
200
|
-
*
|
|
201
|
-
* 关键点(中文)
|
|
202
|
-
* - `AgentContext` 是执行期能力视图,不是状态实体本身。
|
|
203
|
-
* - plugin runtime、chat runtime、shell tool 都通过这里消费能力。
|
|
204
|
-
*/
|
|
205
|
-
private createAgentContext;
|
|
206
178
|
/**
|
|
207
179
|
* 获取或创建一个本地 Session 实例。
|
|
208
180
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/agent/local/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Agent
|
|
2
|
+
* Agent local:本地入口与实例装配中心。
|
|
3
3
|
*
|
|
4
4
|
* 职责说明(中文)
|
|
5
5
|
* - 对外暴露 `Agent` 这一唯一的本地实例类。
|
|
@@ -12,58 +12,18 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import fs from "fs-extra";
|
|
14
14
|
import { nanoid } from "nanoid";
|
|
15
|
-
import { Logger } from "
|
|
16
|
-
import { Session } from "
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import { startRpcServer } from "../rpc/Server.js";
|
|
28
|
-
function createFallbackSdkConfig(agentId) {
|
|
29
|
-
return {
|
|
30
|
-
id: agentId,
|
|
31
|
-
version: "0.0.0",
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
function normalizeInstructionInput(input) {
|
|
35
|
-
const items = Array.isArray(input)
|
|
36
|
-
? input
|
|
37
|
-
: typeof input === "string"
|
|
38
|
-
? [input]
|
|
39
|
-
: [];
|
|
40
|
-
return items
|
|
41
|
-
.map((item) => String(item || "").trim())
|
|
42
|
-
.filter((item) => item.length > 0);
|
|
43
|
-
}
|
|
44
|
-
function createCoreInstructionContent(projectRoot) {
|
|
45
|
-
const currentYear = String(new Date().getFullYear());
|
|
46
|
-
return DEFAULT_SHIP_PROMPTS
|
|
47
|
-
.replaceAll("{{project_path}}", projectRoot)
|
|
48
|
-
.replaceAll("{{project_root}}", projectRoot)
|
|
49
|
-
.replaceAll("{{current_year}}", currentYear);
|
|
50
|
-
}
|
|
51
|
-
function createInstructionSystemBlocks(instruction, projectRoot) {
|
|
52
|
-
if (instruction.length === 0) {
|
|
53
|
-
return [
|
|
54
|
-
{
|
|
55
|
-
source: "core",
|
|
56
|
-
name: "default",
|
|
57
|
-
content: createCoreInstructionContent(projectRoot),
|
|
58
|
-
},
|
|
59
|
-
];
|
|
60
|
-
}
|
|
61
|
-
return instruction.map((content, index) => ({
|
|
62
|
-
source: "instruction",
|
|
63
|
-
name: instruction.length === 1 ? "agent" : `agent:${index + 1}`,
|
|
64
|
-
content,
|
|
65
|
-
}));
|
|
66
|
-
}
|
|
15
|
+
import { Logger } from "../../utils/logger/Logger.js";
|
|
16
|
+
import { Session } from "../../session/Session.js";
|
|
17
|
+
import { getSdkAgentSessionDirPath, listAgentSessionSummaryPage, } from "../../session/index.js";
|
|
18
|
+
import { loadDowncityConfig, resolveAgentEnv } from "../../config/Config.js";
|
|
19
|
+
import { isPluginEnabled } from "../../plugin/core/Activation.js";
|
|
20
|
+
import { setShellToolRuntime } from "../../executor/tools/shell/ShellToolDefinition.js";
|
|
21
|
+
import { startAllPlugins, stopAllPlugins } from "../../plugin/core/Manager.js";
|
|
22
|
+
import { startActionScheduleRuntime } from "../../plugin/core/ActionScheduleRuntime.js";
|
|
23
|
+
import { startRpcServer } from "../../rpc/Server.js";
|
|
24
|
+
import { createFallbackSdkConfig, createInstructionSystemBlocks, normalizeInstructionInput, } from "../../agent/local/AgentInstructions.js";
|
|
25
|
+
import { createAgentPluginPort, createAgentPluginRegistry, } from "../../agent/local/AgentPluginFactory.js";
|
|
26
|
+
import { createAgentContext, createAgentRuntime, } from "../../agent/local/AgentRuntimeFactory.js";
|
|
67
27
|
/**
|
|
68
28
|
* SDK 本地 Agent。
|
|
69
29
|
*/
|
|
@@ -107,13 +67,38 @@ export class Agent {
|
|
|
107
67
|
this.defaultModel = options.model;
|
|
108
68
|
this.config = this.loadConfig();
|
|
109
69
|
this.pluginInstances = new Map();
|
|
110
|
-
this.runtime =
|
|
70
|
+
this.runtime = createAgentRuntime({
|
|
71
|
+
agent_id: this.id,
|
|
72
|
+
project_root: this.path,
|
|
73
|
+
logger: this.logger,
|
|
74
|
+
config: this.config,
|
|
75
|
+
env: this.env,
|
|
76
|
+
systems: this.instruction,
|
|
77
|
+
plugin_instances: this.pluginInstances,
|
|
78
|
+
get_session_port: (session_id) => this.getOrCreateSession(session_id).getRuntimePort(),
|
|
79
|
+
list_cached_sessions: () => [...this.sessionsById.values()],
|
|
80
|
+
});
|
|
111
81
|
this.registerPlugins(options.plugins || []);
|
|
112
|
-
this.pluginRegistry =
|
|
113
|
-
...this.pluginInstances.values(),
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
this.
|
|
82
|
+
this.pluginRegistry = createAgentPluginRegistry({
|
|
83
|
+
plugins: [...this.pluginInstances.values()],
|
|
84
|
+
get_context: () => this.agentContext,
|
|
85
|
+
});
|
|
86
|
+
this.plugins = createAgentPluginPort(this.pluginRegistry);
|
|
87
|
+
this.agentContext = createAgentContext({
|
|
88
|
+
runtime: this.runtime,
|
|
89
|
+
project_root: this.path,
|
|
90
|
+
logger: this.logger,
|
|
91
|
+
config: this.config,
|
|
92
|
+
env: this.env,
|
|
93
|
+
systems: this.instruction,
|
|
94
|
+
plugin_instances: this.pluginInstances,
|
|
95
|
+
plugins: this.plugins,
|
|
96
|
+
get_session_port: (session_id) => this.getOrCreateSession(session_id).getRuntimePort(),
|
|
97
|
+
resolve_session_model: async (session_id) => {
|
|
98
|
+
const session = await this.getSession(session_id);
|
|
99
|
+
return session.config.model;
|
|
100
|
+
},
|
|
101
|
+
});
|
|
117
102
|
setShellToolRuntime(this.agentContext.invoke);
|
|
118
103
|
this.sessionCollection = {
|
|
119
104
|
createSession: async (input) => await this.createSession(input),
|
|
@@ -255,7 +240,7 @@ export class Agent {
|
|
|
255
240
|
* 返回当前 agent runtime。
|
|
256
241
|
*
|
|
257
242
|
* 关键点(中文)
|
|
258
|
-
* - 供宿主在 agent 外部装配 transport(例如
|
|
243
|
+
* - 供宿主在 agent 外部装配 transport(例如 Town HTTP gateway)时复用。
|
|
259
244
|
* - 不暴露启动语义,只暴露运行时访问口。
|
|
260
245
|
*/
|
|
261
246
|
getRuntime() {
|
|
@@ -397,52 +382,6 @@ export class Agent {
|
|
|
397
382
|
this.pluginInstances.set(name, plugin);
|
|
398
383
|
}
|
|
399
384
|
}
|
|
400
|
-
/**
|
|
401
|
-
* 创建 plugin 注册表。
|
|
402
|
-
*
|
|
403
|
-
* 关键点(中文)
|
|
404
|
-
* - registry 本身不直接持有静态上下文,而是通过 resolver 延迟读取当前 `agentContext`。
|
|
405
|
-
* - 这样 hook 调度与 availability 判断都能复用同一份上下文视图。
|
|
406
|
-
*/
|
|
407
|
-
createPluginRegistry(input) {
|
|
408
|
-
let pluginRegistryRef = null;
|
|
409
|
-
const hookRegistry = new HookRegistry({
|
|
410
|
-
contextResolver: () => this.agentContext,
|
|
411
|
-
pluginEnabledChecker: (pluginName) => {
|
|
412
|
-
const plugin = pluginRegistryRef?.get(pluginName);
|
|
413
|
-
return plugin
|
|
414
|
-
? isPluginEnabled({ plugin, context: this.agentContext })
|
|
415
|
-
: false;
|
|
416
|
-
},
|
|
417
|
-
});
|
|
418
|
-
const registry = new PluginRegistry({
|
|
419
|
-
contextResolver: () => this.agentContext,
|
|
420
|
-
hookRegistry,
|
|
421
|
-
});
|
|
422
|
-
pluginRegistryRef = registry;
|
|
423
|
-
for (const plugin of input) {
|
|
424
|
-
registry.register(plugin);
|
|
425
|
-
}
|
|
426
|
-
return registry;
|
|
427
|
-
}
|
|
428
|
-
/**
|
|
429
|
-
* 创建对外暴露的 plugin 调用门面。
|
|
430
|
-
*/
|
|
431
|
-
createPluginPort() {
|
|
432
|
-
return {
|
|
433
|
-
list: () => this.pluginRegistry.list(),
|
|
434
|
-
availability: async (pluginName) => await this.pluginRegistry.availability(pluginName),
|
|
435
|
-
runAction: async (params) => await this.pluginRegistry.runAction(params),
|
|
436
|
-
pipeline: async (pointName, value) => await this.pluginRegistry.pipeline(pointName, value),
|
|
437
|
-
guard: async (pointName, value) => {
|
|
438
|
-
await this.pluginRegistry.guard(pointName, value);
|
|
439
|
-
},
|
|
440
|
-
effect: async (pointName, value) => {
|
|
441
|
-
await this.pluginRegistry.effect(pointName, value);
|
|
442
|
-
},
|
|
443
|
-
resolve: async (pointName, value) => await this.pluginRegistry.resolve(pointName, value),
|
|
444
|
-
};
|
|
445
|
-
}
|
|
446
385
|
/**
|
|
447
386
|
* 读取当前 agent 静态 instruction blocks。
|
|
448
387
|
*/
|
|
@@ -484,100 +423,6 @@ export class Agent {
|
|
|
484
423
|
}
|
|
485
424
|
return out;
|
|
486
425
|
}
|
|
487
|
-
/**
|
|
488
|
-
* 创建实例级 runtime 视图。
|
|
489
|
-
*
|
|
490
|
-
* 关键点(中文)
|
|
491
|
-
* - runtime 描述的是当前 agent 实例持有的长期状态。
|
|
492
|
-
* - 其他 server / plugin / transport 都通过这个视图读取统一状态。
|
|
493
|
-
*/
|
|
494
|
-
createRuntime() {
|
|
495
|
-
const runtime = {
|
|
496
|
-
cwd: this.path,
|
|
497
|
-
rootPath: this.path,
|
|
498
|
-
logger: this.logger,
|
|
499
|
-
config: this.config,
|
|
500
|
-
env: this.env,
|
|
501
|
-
systems: this.instruction,
|
|
502
|
-
paths: createAgentPathRuntime(this.path, this.id),
|
|
503
|
-
pluginConfig: createAgentPluginConfigRuntime(this.path),
|
|
504
|
-
getSession: (sessionId) => this.getOrCreateSession(sessionId).getRuntimePort(),
|
|
505
|
-
listExecutingSessionIds: () => [...this.sessionsById.values()]
|
|
506
|
-
.filter((session) => session.isExecuting())
|
|
507
|
-
.map((session) => session.id),
|
|
508
|
-
getExecutingSessionCount: () => [...this.sessionsById.values()].filter((session) => session.isExecuting()).length,
|
|
509
|
-
pluginInstances: this.pluginInstances,
|
|
510
|
-
};
|
|
511
|
-
return runtime;
|
|
512
|
-
}
|
|
513
|
-
/**
|
|
514
|
-
* 创建统一执行上下文。
|
|
515
|
-
*
|
|
516
|
-
* 关键点(中文)
|
|
517
|
-
* - `AgentContext` 是执行期能力视图,不是状态实体本身。
|
|
518
|
-
* - plugin runtime、chat runtime、shell tool 都通过这里消费能力。
|
|
519
|
-
*/
|
|
520
|
-
createAgentContext() {
|
|
521
|
-
let context;
|
|
522
|
-
context = {
|
|
523
|
-
agent: this.runtime,
|
|
524
|
-
cwd: this.path,
|
|
525
|
-
rootPath: this.path,
|
|
526
|
-
logger: this.logger,
|
|
527
|
-
config: this.config,
|
|
528
|
-
env: this.env,
|
|
529
|
-
systems: this.instruction,
|
|
530
|
-
paths: this.runtime.paths,
|
|
531
|
-
pluginConfig: this.runtime.pluginConfig,
|
|
532
|
-
session: {
|
|
533
|
-
get: (sessionId) => this.getOrCreateSession(sessionId).getRuntimePort(),
|
|
534
|
-
listExecutingSessionIds: () => this.runtime.listExecutingSessionIds(),
|
|
535
|
-
getExecutingSessionCount: () => this.runtime.getExecutingSessionCount(),
|
|
536
|
-
resolveModel: async (sessionId) => {
|
|
537
|
-
const session = await this.getSession(sessionId);
|
|
538
|
-
return session.config.model;
|
|
539
|
-
},
|
|
540
|
-
},
|
|
541
|
-
invoke: {
|
|
542
|
-
invoke: async (params) => {
|
|
543
|
-
const pluginName = String(params.plugin || "").trim();
|
|
544
|
-
const actionName = String(params.action || "").trim();
|
|
545
|
-
const plugin = this.pluginInstances.get(pluginName);
|
|
546
|
-
if (!plugin) {
|
|
547
|
-
return {
|
|
548
|
-
success: false,
|
|
549
|
-
error: `Unknown plugin: ${pluginName}`,
|
|
550
|
-
};
|
|
551
|
-
}
|
|
552
|
-
const action = plugin.actions[actionName];
|
|
553
|
-
if (!action) {
|
|
554
|
-
return {
|
|
555
|
-
success: false,
|
|
556
|
-
error: `Unknown action: ${pluginName}.${actionName}`,
|
|
557
|
-
};
|
|
558
|
-
}
|
|
559
|
-
const result = await action.execute({
|
|
560
|
-
context,
|
|
561
|
-
payload: params.payload ?? null,
|
|
562
|
-
pluginName,
|
|
563
|
-
actionName,
|
|
564
|
-
});
|
|
565
|
-
if (!result.success) {
|
|
566
|
-
return {
|
|
567
|
-
success: false,
|
|
568
|
-
...(result.error ? { error: result.error } : {}),
|
|
569
|
-
};
|
|
570
|
-
}
|
|
571
|
-
return {
|
|
572
|
-
success: true,
|
|
573
|
-
...(result.data !== undefined ? { data: result.data } : {}),
|
|
574
|
-
};
|
|
575
|
-
},
|
|
576
|
-
},
|
|
577
|
-
plugins: this.plugins,
|
|
578
|
-
};
|
|
579
|
-
return context;
|
|
580
|
-
}
|
|
581
426
|
/**
|
|
582
427
|
* 获取或创建一个本地 Session 实例。
|
|
583
428
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/agent/local/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent instruction 组装工具。
|
|
3
|
+
*
|
|
4
|
+
* 关键点(中文)
|
|
5
|
+
* - 这里只处理静态 instruction 与默认 core prompt。
|
|
6
|
+
* - 不读取 session、plugin 或 runtime 状态,保持为纯函数。
|
|
7
|
+
*/
|
|
8
|
+
import type { DowncityConfig } from "../../types/config/DowncityConfig.js";
|
|
9
|
+
import type { AgentSessionSystemBlock } from "../../types/agent/AgentTypes.js";
|
|
10
|
+
/**
|
|
11
|
+
* 创建 SDK 场景的最小 fallback 配置。
|
|
12
|
+
*/
|
|
13
|
+
export declare function createFallbackSdkConfig(agent_id: string): DowncityConfig;
|
|
14
|
+
/**
|
|
15
|
+
* 归一化调用方传入的静态 instruction。
|
|
16
|
+
*/
|
|
17
|
+
export declare function normalizeInstructionInput(input: string | string[] | undefined): string[];
|
|
18
|
+
/**
|
|
19
|
+
* 构造进入 session system prompt 的 instruction block。
|
|
20
|
+
*/
|
|
21
|
+
export declare function createInstructionSystemBlocks(instruction: string[], project_root: string): AgentSessionSystemBlock[];
|
|
22
|
+
//# sourceMappingURL=AgentInstructions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentInstructions.d.ts","sourceRoot":"","sources":["../../../src/agent/local/AgentInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAG3E;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAKxE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GACnC,MAAM,EAAE,CASV;AAUD;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,MAAM,EAAE,EACrB,YAAY,EAAE,MAAM,GACnB,uBAAuB,EAAE,CAe3B"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent instruction 组装工具。
|
|
3
|
+
*
|
|
4
|
+
* 关键点(中文)
|
|
5
|
+
* - 这里只处理静态 instruction 与默认 core prompt。
|
|
6
|
+
* - 不读取 session、plugin 或 runtime 状态,保持为纯函数。
|
|
7
|
+
*/
|
|
8
|
+
import { DEFAULT_SHIP_PROMPTS } from "../../executor/composer/system/default/SystemDomain.js";
|
|
9
|
+
/**
|
|
10
|
+
* 创建 SDK 场景的最小 fallback 配置。
|
|
11
|
+
*/
|
|
12
|
+
export function createFallbackSdkConfig(agent_id) {
|
|
13
|
+
return {
|
|
14
|
+
id: agent_id,
|
|
15
|
+
version: "0.0.0",
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* 归一化调用方传入的静态 instruction。
|
|
20
|
+
*/
|
|
21
|
+
export function normalizeInstructionInput(input) {
|
|
22
|
+
const items = Array.isArray(input)
|
|
23
|
+
? input
|
|
24
|
+
: typeof input === "string"
|
|
25
|
+
? [input]
|
|
26
|
+
: [];
|
|
27
|
+
return items
|
|
28
|
+
.map((item) => String(item || "").trim())
|
|
29
|
+
.filter((item) => item.length > 0);
|
|
30
|
+
}
|
|
31
|
+
function createCoreInstructionContent(project_root) {
|
|
32
|
+
const current_year = String(new Date().getFullYear());
|
|
33
|
+
return DEFAULT_SHIP_PROMPTS
|
|
34
|
+
.replaceAll("{{project_path}}", project_root)
|
|
35
|
+
.replaceAll("{{project_root}}", project_root)
|
|
36
|
+
.replaceAll("{{current_year}}", current_year);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* 构造进入 session system prompt 的 instruction block。
|
|
40
|
+
*/
|
|
41
|
+
export function createInstructionSystemBlocks(instruction, project_root) {
|
|
42
|
+
if (instruction.length === 0) {
|
|
43
|
+
return [
|
|
44
|
+
{
|
|
45
|
+
source: "core",
|
|
46
|
+
name: "default",
|
|
47
|
+
content: createCoreInstructionContent(project_root),
|
|
48
|
+
},
|
|
49
|
+
];
|
|
50
|
+
}
|
|
51
|
+
return instruction.map((content, index) => ({
|
|
52
|
+
source: "instruction",
|
|
53
|
+
name: instruction.length === 1 ? "agent" : `agent:${index + 1}`,
|
|
54
|
+
content,
|
|
55
|
+
}));
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=AgentInstructions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentInstructions.js","sourceRoot":"","sources":["../../../src/agent/local/AgentInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AAEzF;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,OAAO;QACL,EAAE,EAAE,QAAQ;QACZ,OAAO,EAAE,OAAO;KACC,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAoC;IAEpC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ;YACzB,CAAC,CAAC,CAAC,KAAK,CAAC;YACT,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;SACxC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,4BAA4B,CAAC,YAAoB;IACxD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,oBAAoB;SACxB,UAAU,CAAC,kBAAkB,EAAE,YAAY,CAAC;SAC5C,UAAU,CAAC,kBAAkB,EAAE,YAAY,CAAC;SAC5C,UAAU,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAC3C,WAAqB,EACrB,YAAoB;IAEpB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,4BAA4B,CAAC,YAAY,CAAC;aACpD;SACF,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC1C,MAAM,EAAE,aAAsB;QAC9B,IAAI,EAAE,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,EAAE;QAC/D,OAAO;KACR,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent plugin 装配工厂。
|
|
3
|
+
*
|
|
4
|
+
* 关键点(中文)
|
|
5
|
+
* - 这里只负责把 plugin 实例装配成 registry 与对外 port。
|
|
6
|
+
* - Agent 仍然持有长期状态;这里不创建新的运行时层级。
|
|
7
|
+
*/
|
|
8
|
+
import type { BasePlugin } from "../../plugin/core/BasePlugin.js";
|
|
9
|
+
import type { AgentContext } from "../../types/runtime/agent/AgentContext.js";
|
|
10
|
+
import type { PluginPort } from "../../plugin/types/Plugin.js";
|
|
11
|
+
import { PluginRegistry } from "../../plugin/core/PluginRegistry.js";
|
|
12
|
+
/**
|
|
13
|
+
* 创建 plugin registry 的参数。
|
|
14
|
+
*/
|
|
15
|
+
export interface CreateAgentPluginRegistryOptions {
|
|
16
|
+
/** 当前 agent 显式注册的 plugin 实例。 */
|
|
17
|
+
plugins: BasePlugin[];
|
|
18
|
+
/** 延迟读取当前 AgentContext。 */
|
|
19
|
+
get_context: () => AgentContext;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* 创建 plugin 注册表。
|
|
23
|
+
*/
|
|
24
|
+
export declare function createAgentPluginRegistry(options: CreateAgentPluginRegistryOptions): PluginRegistry;
|
|
25
|
+
/**
|
|
26
|
+
* 创建对外暴露的 plugin 调用门面。
|
|
27
|
+
*/
|
|
28
|
+
export declare function createAgentPluginPort(plugin_registry: PluginRegistry): PluginPort;
|
|
29
|
+
//# sourceMappingURL=AgentPluginFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentPluginFactory.d.ts","sourceRoot":"","sources":["../../../src/agent/local/AgentPluginFactory.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAEV,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGjE;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,gCAAgC;IAChC,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,2BAA2B;IAC3B,WAAW,EAAE,MAAM,YAAY,CAAC;CACjC;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gCAAgC,GACxC,cAAc,CAqBhB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,cAAc,GAC9B,UAAU,CAoBZ"}
|