@actiondock/core 2.0.12 → 2.2.1

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 (192) hide show
  1. package/README.md +61 -30
  2. package/dist/app/app.d.ts +73 -0
  3. package/dist/app/app.js +700 -0
  4. package/dist/app/index.d.ts +2 -0
  5. package/dist/app/index.js +2 -0
  6. package/dist/app/types.d.ts +283 -0
  7. package/dist/app/types.js +1 -0
  8. package/dist/catalog/action-index.d.ts +1 -1
  9. package/dist/catalog/action-index.js +93 -0
  10. package/dist/catalog/action-resolver.d.ts +2 -2
  11. package/dist/catalog/action-resolver.js +95 -0
  12. package/dist/catalog/index.d.ts +5 -5
  13. package/dist/catalog/index.js +5 -0
  14. package/dist/catalog/location-registry.d.ts +5 -5
  15. package/dist/catalog/location-registry.js +138 -0
  16. package/dist/catalog/package-catalog.d.ts +2 -2
  17. package/dist/catalog/package-catalog.js +76 -0
  18. package/dist/catalog/types.d.ts +2 -2
  19. package/dist/catalog/types.js +1 -0
  20. package/dist/doctor/doctor.d.ts +2 -1
  21. package/dist/doctor/doctor.js +613 -0
  22. package/dist/doctor/index.d.ts +2 -2
  23. package/dist/doctor/index.js +2 -0
  24. package/dist/doctor/types.js +1 -0
  25. package/dist/errors.d.ts +122 -0
  26. package/dist/errors.js +123 -0
  27. package/dist/execution/index.d.ts +2 -2
  28. package/dist/execution/index.js +2 -0
  29. package/dist/execution/service.d.ts +46 -41
  30. package/dist/execution/service.js +633 -0
  31. package/dist/execution/types.d.ts +59 -2
  32. package/dist/execution/types.js +1 -0
  33. package/dist/export/index.d.ts +1 -1
  34. package/dist/export/index.js +1 -0
  35. package/dist/export/templates.d.ts +45 -7
  36. package/dist/export/templates.js +631 -0
  37. package/dist/filter/index.d.ts +1 -1
  38. package/dist/filter/index.js +1 -0
  39. package/dist/filter/intent.js +123 -0
  40. package/dist/host/host.d.ts +55 -0
  41. package/dist/host/host.js +740 -0
  42. package/dist/host/index.d.ts +2 -0
  43. package/dist/host/index.js +2 -0
  44. package/dist/host/types.d.ts +81 -0
  45. package/dist/host/types.js +1 -0
  46. package/dist/index.d.ts +21 -16
  47. package/dist/index.js +20 -8458
  48. package/dist/ipc/diagnostic.d.ts +65 -0
  49. package/dist/ipc/diagnostic.js +129 -0
  50. package/dist/ipc/host.d.ts +7 -0
  51. package/dist/ipc/host.js +93 -0
  52. package/dist/ipc/index.d.ts +4 -0
  53. package/dist/ipc/index.js +4 -0
  54. package/dist/ipc/target.d.ts +56 -0
  55. package/dist/ipc/target.js +297 -0
  56. package/dist/ipc/types.d.ts +42 -0
  57. package/dist/ipc/types.js +1 -0
  58. package/dist/platform/default.d.ts +32 -0
  59. package/dist/platform/default.js +40 -0
  60. package/dist/platform/index.d.ts +3 -0
  61. package/dist/platform/index.js +3 -0
  62. package/dist/platform/node-fs.d.ts +37 -0
  63. package/dist/platform/node-fs.js +81 -0
  64. package/dist/platform/types.d.ts +104 -0
  65. package/dist/platform/types.js +1 -0
  66. package/dist/profile/client.d.ts +58 -12
  67. package/dist/profile/client.js +467 -0
  68. package/dist/profile/index.d.ts +3 -3
  69. package/dist/profile/index.js +3 -0
  70. package/dist/profile/manager.d.ts +2 -2
  71. package/dist/profile/manager.js +294 -0
  72. package/dist/profile/types.d.ts +1 -1
  73. package/dist/profile/types.js +1 -0
  74. package/dist/project/closure.js +68 -0
  75. package/dist/project/digest.d.ts +29 -0
  76. package/dist/project/digest.js +324 -0
  77. package/dist/project/index.d.ts +10 -5
  78. package/dist/project/index.js +10 -0
  79. package/dist/project/init.d.ts +3 -4
  80. package/dist/project/init.js +175 -0
  81. package/dist/project/loader.d.ts +21 -27
  82. package/dist/project/loader.js +484 -0
  83. package/dist/project/lockfile.d.ts +55 -0
  84. package/dist/project/lockfile.js +175 -0
  85. package/dist/project/manifest.d.ts +6 -28
  86. package/dist/project/manifest.js +220 -0
  87. package/dist/project/resolver.d.ts +116 -0
  88. package/dist/project/resolver.js +376 -0
  89. package/dist/project/transactions.d.ts +103 -0
  90. package/dist/project/transactions.js +1203 -0
  91. package/dist/project/types-generator.d.ts +33 -0
  92. package/dist/project/types-generator.js +168 -0
  93. package/dist/project/types.d.ts +58 -82
  94. package/dist/project/types.js +1 -0
  95. package/dist/registry/index.d.ts +5 -2
  96. package/dist/registry/index.js +5 -0
  97. package/dist/registry/lock.d.ts +27 -0
  98. package/dist/registry/lock.js +93 -0
  99. package/dist/registry/registry.d.ts +32 -11
  100. package/dist/registry/registry.js +611 -0
  101. package/dist/registry/resolve.d.ts +62 -0
  102. package/dist/registry/resolve.js +195 -0
  103. package/dist/registry/scan.d.ts +38 -0
  104. package/dist/registry/scan.js +135 -0
  105. package/dist/registry/types.d.ts +1 -1
  106. package/dist/registry/types.js +1 -0
  107. package/dist/runtime/action-collection.d.ts +27 -0
  108. package/dist/runtime/action-collection.js +57 -0
  109. package/dist/runtime/clock.d.ts +0 -2
  110. package/dist/runtime/clock.js +17 -0
  111. package/dist/runtime/context.d.ts +16 -5
  112. package/dist/runtime/context.js +242 -0
  113. package/dist/runtime/env.d.ts +3 -1
  114. package/dist/runtime/env.js +159 -0
  115. package/dist/runtime/events.d.ts +46 -14
  116. package/dist/runtime/events.js +604 -0
  117. package/dist/runtime/execution-manager.d.ts +1 -1
  118. package/dist/runtime/execution-manager.js +66 -0
  119. package/dist/runtime/index.d.ts +10 -9
  120. package/dist/runtime/index.js +10 -0
  121. package/dist/runtime/module-loader.d.ts +0 -8
  122. package/dist/runtime/module-loader.js +16 -0
  123. package/dist/runtime/process.d.ts +2 -4
  124. package/dist/runtime/process.js +146 -0
  125. package/dist/runtime/runner.d.ts +117 -10
  126. package/dist/runtime/runner.js +984 -0
  127. package/dist/runtime/standalone.d.ts +68 -19
  128. package/dist/runtime/standalone.js +536 -0
  129. package/dist/schema/validator.js +122 -0
  130. package/dist/server/body.js +93 -0
  131. package/dist/server/index.d.ts +5 -6
  132. package/dist/server/index.js +5 -0
  133. package/dist/server/routes/actions.d.ts +2 -2
  134. package/dist/server/routes/actions.js +298 -0
  135. package/dist/server/routes/common.d.ts +28 -17
  136. package/dist/server/routes/common.js +104 -0
  137. package/dist/server/routes/config.d.ts +2 -1
  138. package/dist/server/routes/config.js +173 -0
  139. package/dist/server/routes/doctor.d.ts +2 -2
  140. package/dist/server/routes/doctor.js +63 -0
  141. package/dist/server/routes/health.d.ts +2 -2
  142. package/dist/server/routes/health.js +35 -0
  143. package/dist/server/routes/index.d.ts +9 -9
  144. package/dist/server/routes/index.js +9 -0
  145. package/dist/server/routes/info.d.ts +4 -2
  146. package/dist/server/routes/info.js +158 -0
  147. package/dist/server/routes/playbooks.d.ts +2 -2
  148. package/dist/server/routes/playbooks.js +134 -0
  149. package/dist/server/routes/runs.d.ts +2 -2
  150. package/dist/server/routes/runs.js +343 -0
  151. package/dist/server/routes/state.d.ts +2 -1
  152. package/dist/server/routes/state.js +169 -0
  153. package/dist/server/security.d.ts +11 -4
  154. package/dist/server/security.js +101 -0
  155. package/dist/server/server.d.ts +6 -6
  156. package/dist/server/server.js +355 -0
  157. package/dist/server/types.d.ts +27 -8
  158. package/dist/server/types.js +1 -0
  159. package/dist/storage/data-dir-lock.d.ts +119 -0
  160. package/dist/storage/data-dir-lock.js +1016 -0
  161. package/dist/storage/driver.d.ts +4 -10
  162. package/dist/storage/driver.js +59 -0
  163. package/dist/storage/index.d.ts +30 -10
  164. package/dist/storage/index.js +98 -0
  165. package/dist/storage/lazy.d.ts +8 -0
  166. package/dist/storage/lazy.js +44 -0
  167. package/dist/storage/mask.d.ts +12 -5
  168. package/dist/storage/mask.js +48 -0
  169. package/dist/storage/params.d.ts +13 -0
  170. package/dist/storage/params.js +32 -0
  171. package/dist/storage/sqlite.d.ts +19 -6
  172. package/dist/storage/sqlite.js +689 -0
  173. package/dist/storage/types.d.ts +57 -6
  174. package/dist/storage/types.js +14 -0
  175. package/dist/target/index.d.ts +4 -0
  176. package/dist/target/index.js +4 -0
  177. package/dist/target/local.d.ts +52 -0
  178. package/dist/target/local.js +343 -0
  179. package/dist/target/remote.d.ts +76 -0
  180. package/dist/target/remote.js +839 -0
  181. package/dist/target/target.d.ts +6 -0
  182. package/dist/target/target.js +35 -0
  183. package/dist/target/types.d.ts +246 -0
  184. package/dist/target/types.js +34 -0
  185. package/dist/utils/index.d.ts +22 -2
  186. package/dist/utils/index.js +180 -0
  187. package/dist/version.d.ts +1 -1
  188. package/dist/version.js +4 -0
  189. package/package.json +6 -7
  190. package/dist/build/index.d.ts +0 -1
  191. package/dist/build/templates.d.ts +0 -19
  192. package/dist/server/runtime-registry.d.ts +0 -78
package/README.md CHANGED
@@ -2,40 +2,77 @@
2
2
 
3
3
  ActionDock 2.0 核心领域模型与调度引擎。
4
4
 
5
- [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D22-green?logo=node.js)](https://nodejs.org/)
5
+ [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D24.12.0-green?logo=node.js)](https://nodejs.org/)
6
6
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.0+-blue?logo=typescript)](https://www.typescriptlang.org/)
7
7
  [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
8
8
 
9
- `@actiondock/core` 承载 ActionDock 的领域对象、状态机、持久化接口抽象与执行服务,是与具体宿主环境解耦的通用内核。
9
+ `@actiondock/core` 承载 ActionDock 的领域对象、状态机、数据目录排他锁、统一调用门面、依赖事务管理与执行服务,是与具体宿主环境解耦的通用内核。
10
+
11
+ ---
12
+
13
+ ## 统一调用门面与异常
14
+
15
+ ### ActionDockTarget 统一调用门面
16
+
17
+ [ActionDockTarget](./src/target/types.ts) 为命令行工具、上层服务与应用集成屏蔽本地执行、远程服务与跨进程通信的物理拓扑差异:
18
+
19
+ - 本地门面 LocalTarget:直接调用本地加载的 ActionDockApp 或 ActionDockHost 实例,在同进程内高效执行。
20
+ - 远程门面 RemoteTarget:通过 HTTP 协议与远程 ActionDock 服务通信,支持鉴权令牌与请求超时控制。
21
+ - 跨进程门面 IpcTarget:通过 Node.js 进程间通信通道与子进程交互,包含诊断流速率保护与反压控制。
22
+
23
+ ### TargetError 结构化异常
24
+
25
+ [TargetError](./src/target/types.ts) 继承标准 Error,提供机器可读的结构化错误码与附加详情:
26
+
27
+ - `TARGET_PROTOCOL_UNSUPPORTED`:协议版本或特性不受支持。
28
+ - `TARGET_CAPABILITY_UNAVAILABLE`:目标端未启用或缺失所需能力。
29
+ - `TARGET_RESULT_UNKNOWN`:连接超时或中断导致执行结果状态未知。
30
+
31
+ ---
32
+
33
+ ## 数据目录锁与故障恢复
34
+
35
+ [DataDirLock](./src/storage/data-dir-lock.ts) 在数据目录下维护 `.actiondock.data.lock` 排他文件锁,记录宿主主进程与受管子进程状态,防止多实例并发冲突:
36
+
37
+ - `DATA_DIR_IN_USE`:检测到已有活跃宿主主进程正在持有该数据目录,拒绝并发启动。
38
+ - `DATA_DIR_RECOVERY_REQUIRED`:检测到前序宿主主进程异常退出,但仍有关联受管子进程处于运行状态,触发故障恢复拦截。
39
+ - 正常退出时自动释放并移除锁文件;非正常退出且无任何残留进程时允许安全接管。
40
+
41
+ ---
42
+
43
+ ## 依赖管理与锁定规范
44
+
45
+ 基于 `actiondock.lock.json`(规范版本 `lockfileVersion: 1`)提供严格的依赖版本锁定与原子事务保护:
46
+
47
+ - 依赖解析:[ActionPackageResolver](./src/project/resolver.ts) 递归解析本地包依赖与符号链接,避免重复加载。
48
+ - 原子事务:[beginTransaction](./src/project/transactions.ts) 在执行依赖增删(如 `ad add` 与 `ad remove`)前为 `package.json`、`actiondock.json` 与 `actiondock.lock.json` 创建磁盘快照。若安装或校验流程失败,自动执行原子回滚并恢复原始状态。
10
49
 
11
50
  ---
12
51
 
13
52
  ## 核心领域模型
14
53
 
15
- - `ProjectConfig`:定义在 `actiondock.json` 中的项目规范,包含包标识、名称、版本号、目录配置以及配置项元数据。
16
- - `PlaybookDefinition`:智能体操作规程定义,由 Markdown 文本与其头部 YAML 元数据构成,静态记录任务步骤与调用的 Action 依赖列表。
17
- - `ActionDockManifest`:`actiondock.manifest.json` 声明式元数据清单模型,记录每个 Action 的入口路径、功能描述、输入输出模式、静态依赖与协议注解,作为无副作用模块发现与构建规划的唯一事实源。
18
- - `ConfigItemDefinition`:单项配置规范,涵盖默认值、类型约束、敏感脱敏标记及绑定的外部环境变量。
54
+ - ProjectConfig:定义在 `actiondock.json` 中的项目规范,包含包标识、名称、版本号、目录配置以及配置项元数据。
55
+ - PlaybookDefinition:智能体操作规程定义,由 Markdown 文本与其头部 YAML 元数据构成,静态记录任务步骤与调用的 Action 依赖列表。
56
+ - ConfigItemDefinition:单项配置规范,涵盖默认值、类型约束、敏感脱敏标记及绑定的外部环境变量。
19
57
 
20
58
  ---
21
59
 
22
- ## 关键抽象接口
60
+ ## 关键抽象契约
23
61
 
24
62
  ### SqliteDriver 驱动接口
25
63
 
26
- 解耦底层数据库实现,提供一致的同步参数化执行与事务契约:
64
+ 解耦底层数据库实现,提供一致的参数化执行与事务契约:
27
65
 
28
66
  - `exec(sql: string): void`:执行无返回值的 SQL 语句。
29
- - `prepare(sql: string): SqliteStatement`:编译 SQL 模板,生成支持 `run`、`get`、`all` 方法的预编译语句对象。
67
+ - `prepare(sql: string): SqliteStatement`:编译 SQL 模板,生成预编译语句对象。
30
68
  - `transaction<T>(fn: () => T): T`:同步事务执行器,在出现异常时自动回滚,并在驱动层严格拦截异步 Promise 以避免事务泄漏。
31
69
  - `close(): void`:释放数据库连接与文件句柄。
32
70
 
33
71
  ### ProcessExecutor 进程执行器接口
34
72
 
35
- 抽象跨平台的子进程操作,统一下列能力:
73
+ 抽象跨平台的子进程操作:
36
74
 
37
75
  - `exec(command, args, options): Promise<ProcessResult>`:执行外部命令并捕获标准输出与标准错误流,支持标准输入流透传、执行超时控制、取消信号响应以及缓冲区防爆保护。
38
- - `spawnDetached(options): Promise<DetachedProcessResult>`:独立拉起后台长周期守护进程,通过轮询就绪探针确认服务启动状态。
39
76
 
40
77
  ---
41
78
 
@@ -43,27 +80,22 @@ ActionDock 2.0 核心领域模型与调度引擎。
43
80
 
44
81
  ### ActionRunner 执行状态机
45
82
 
46
- `ActionRunner` 是单个 Action 执行的核心引擎,负责完整的生命周期状态流转与契约保障:
83
+ [ActionRunner](./src/execution/runner.ts) 是单个 Action 执行的核心引擎,负责完整的生命周期状态流转与契约保障:
47
84
 
48
- - **调用链环路检测**:基于调用栈跟踪,当检测到依赖循环(例如 A 动作调用 B 动作,B 动作反向调用 A 动作)时立即拦截并返回错误信封。
49
- - **模式严格校验**:在 Action 执行前使用 Ajv 校验输入数据是否满足 `inputSchema` 契约,校验失败时直接阻断并生成结构化诊断信息。
50
- - **运行记录持久化**:初始化运行时在 SQLite 中写入 `running` 状态记录,并在结束时流转至对应终态。
51
- - **生命周期状态转换**:
52
- - 启动阶段:状态置为 `running`,绑定超时定时器与取消信号。
53
- - 正常完成:捕获返回值,更新状态为 `success` 并持久化输出快照。
54
- - 业务抛错:捕获异常,更新状态为 `failed` 并提取结构化错误码与调用栈。
55
- - 超时中止:超时定时器触发,发送取消信号并更新状态为 `timed_out`。
56
- - 主动取消:外部请求取消,更新状态为 `cancelled`。
57
- - **上下文环境合成**:动态构建 `ActionContext`,集成配置优先级解析器、状态存储器与标准错误流日志记录器。
85
+ - 调用链环路检测:基于调用栈跟踪,当检测到依赖循环调用时立即拦截并返回错误信封。
86
+ - 模式严格校验:在 Action 执行前校验输入数据是否满足模式规范,校验失败时直接阻断并生成结构化诊断信息。
87
+ - 运行记录持久化:在 SQLite 中写入 `running` 状态记录,并在结束时流转至对应终态。
88
+ - 生命周期状态转换:涵盖 `running`、`success`、`failed`、`timed_out`、`cancelled`、`interrupted` 状态。
89
+ - 上下文环境合成:动态构建 ActionContext,集成配置优先级解析器、状态存储器与标准错误流日志记录器。
58
90
 
59
91
  ### DefaultExecutionService 统一执行服务
60
92
 
61
- 负责系统层面的并发控制、任务追踪与生命周期协同:
93
+ [DefaultExecutionService](./src/execution/service.ts) 负责系统层面的并发控制、任务追踪与生命周期协同:
62
94
 
63
- - **并发度控制**:维护活跃任务表,支持配置系统最大并发上限,超限时合理排队或拒接。
64
- - **全链路追踪**:为每次执行分配全局唯一的根运行标识与父子调用关联。
65
- - **协同取消传播**:支持根据运行标识获取执行句柄,向下游所有派生子任务广播取消信号。
66
- - **事件汇聚分发**:将执行过程中的状态变更事件统一推送到可插拔的事件接收器中。
95
+ - 并发度控制:维护活跃任务表,支持配置系统最大并发上限,超限时排队或拒绝。
96
+ - 全链路追踪:为每次执行分配全局唯一的根运行标识与父子调用关联。
97
+ - 协同取消传播:支持根据运行标识获取执行句柄,向下游所有派生子任务广播取消信号。
98
+ - 事件汇聚分发:将执行过程中的状态变更事件统一推送到事件接收器中。
67
99
 
68
100
  ---
69
101
 
@@ -71,9 +103,8 @@ ActionDock 2.0 核心领域模型与调度引擎。
71
103
 
72
104
  `@actiondock/core` 保持平台中立,不绑定任何特定运行环境:
73
105
 
74
- - 在日常使用与 Node.js 运行时中,通过 `@actiondock/runtime-node` 注入基于 `node:sqlite` `execa` 的驱动。
75
- - 在独立二进制编译产物中,通过 `@actiondock/runtime-bun` 注入基于 `bun:sqlite` `Bun.spawn` 的驱动。
76
- - 在自动化测试中,通过 `@actiondock/testing` 注入纯内存存储驱动与模拟进程执行器。
106
+ - 在日常生产与 Node.js 运行时中,通过 [@actiondock/runtime-node](../runtime-node/README.md) 注入默认同步存储驱动与 Node.js 进程执行器(另有独立异步驱动 WorkerSqliteDriver 可选)。
107
+ - 在自动化测试中,通过 [@actiondock/testing](../testing/README.md) 注入纯内存存储驱动 MemoryStorage 与模拟进程执行器 MockProcessExecutor。
77
108
 
78
109
  ---
79
110
 
@@ -0,0 +1,73 @@
1
+ import type { ActionDefinition, ExecutionEvent, ExecutionResult, JsonValue, RunRecord } from "@actiondock/sdk";
2
+ import type { CancelResult, ExecuteOptions, ExecutionService, ExecutionTicket } from "../execution/types.js";
3
+ import { type RuntimePlatform } from "../platform/index.js";
4
+ import type { ProjectConfig } from "../project/types.js";
5
+ import type { RuntimeStorage } from "../storage/types.js";
6
+ import type { ActionDockApp, ActionDockAppOptions, ActionSpec, ActionSummary, ConfigValueView, ListActionsOptions, PackageInfo, PlaybookSpec, PlaybookSummary, StateScopeOptions } from "./types.js";
7
+ /**
8
+ * ActionDock 统一应用默认实现。
9
+ * 封装并管理单个 Action Package 的执行引擎、静态元数据索引、配置与状态存储生命周期。
10
+ */
11
+ export declare class DefaultActionDockApp implements ActionDockApp {
12
+ readonly packageId: string;
13
+ readonly packageRoot?: string;
14
+ readonly projectConfig: ProjectConfig;
15
+ readonly platform: RuntimePlatform;
16
+ readonly storage: RuntimeStorage;
17
+ readonly globalStorage?: RuntimeStorage;
18
+ readonly executionService: ExecutionService;
19
+ readonly actionsMap: Map<string, ActionDefinition>;
20
+ private readonly options;
21
+ private runtimeConfig;
22
+ private isClosed;
23
+ constructor(options?: ActionDockAppOptions);
24
+ /**
25
+ * 静态读取并聚合当前包的 Action 规范索引。
26
+ * 不产生全量模块导入与执行副作用。
27
+ */
28
+ private getStaticActionMap;
29
+ /**
30
+ * 静态读取并聚合当前包的 Playbook 规范索引。
31
+ */
32
+ private getStaticPlaybookMap;
33
+ info(options?: {
34
+ exposeDebugInfo?: boolean;
35
+ }): Promise<PackageInfo>;
36
+ listActions(options?: ListActionsOptions): Promise<ActionSummary[]>;
37
+ describeAction(id: string): Promise<ActionSpec>;
38
+ listPlaybooks(): Promise<PlaybookSummary[]>;
39
+ describePlaybook(id: string): Promise<PlaybookSpec>;
40
+ runAction(id: string, input: JsonValue, options?: ExecuteOptions): Promise<ExecutionResult>;
41
+ startAction(id: string, input: JsonValue, options?: ExecuteOptions): Promise<ExecutionTicket>;
42
+ getRun(runId: string): Promise<RunRecord | undefined>;
43
+ cancelRun(runId: string, reason?: string): Promise<CancelResult>;
44
+ events(runId: string, options?: {
45
+ after?: number | string;
46
+ signal?: AbortSignal;
47
+ maxQueueSize?: number;
48
+ }): AsyncIterable<ExecutionEvent>;
49
+ listConfig(): Promise<ConfigValueView[]>;
50
+ getConfig(key: string): Promise<ConfigValueView>;
51
+ setConfig(key: string, value: JsonValue): Promise<void>;
52
+ deleteConfig(key: string): Promise<boolean>;
53
+ getState<T extends JsonValue = JsonValue>(key: string, options?: StateScopeOptions): Promise<T | undefined>;
54
+ getState<T extends JsonValue = JsonValue>(actionId: string, key: string, options?: StateScopeOptions): Promise<T | undefined>;
55
+ setState<T extends JsonValue = JsonValue>(key: string, value: T, options?: StateScopeOptions): Promise<void>;
56
+ setState<T extends JsonValue = JsonValue>(actionId: string, key: string, value: T, options: StateScopeOptions): Promise<void>;
57
+ deleteState(key: string, options?: StateScopeOptions): Promise<boolean>;
58
+ deleteState(actionId: string, key: string, options?: StateScopeOptions): Promise<boolean>;
59
+ getActionState<T extends JsonValue = JsonValue>(actionId: string, key: string, options?: StateScopeOptions): Promise<T | undefined>;
60
+ setActionState<T extends JsonValue = JsonValue>(actionId: string, key: string, value: T, options?: StateScopeOptions): Promise<void>;
61
+ deleteActionState(actionId: string, key: string, options?: StateScopeOptions): Promise<boolean>;
62
+ listStateKeys(options?: StateScopeOptions): Promise<string[]>;
63
+ listStateKeys(actionId: string, options?: StateScopeOptions): Promise<string[]>;
64
+ clearState(options?: StateScopeOptions): Promise<number>;
65
+ clearState(actionId: string, options?: StateScopeOptions): Promise<number>;
66
+ close(options?: {
67
+ graceMs?: number;
68
+ }): Promise<void>;
69
+ }
70
+ /**
71
+ * 工厂函数:创建并初始化 ActionDockApp 实例。
72
+ */
73
+ export declare function createActionDockApp(options?: ActionDockAppOptions): Promise<ActionDockApp>;