@mono-agent/agent-app 0.6.2 → 0.9.0

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 (313) hide show
  1. package/README.md +259 -19
  2. package/dist/account-home.d.ts +6 -0
  3. package/dist/account-home.d.ts.map +1 -0
  4. package/dist/account-home.js +9 -0
  5. package/dist/account-home.js.map +1 -0
  6. package/dist/adapter-send-proxy.d.ts +18 -0
  7. package/dist/adapter-send-proxy.d.ts.map +1 -0
  8. package/dist/adapter-send-proxy.js +229 -0
  9. package/dist/adapter-send-proxy.js.map +1 -0
  10. package/dist/adapter-send-tools-main.js +62 -4
  11. package/dist/adapter-send-tools-main.js.map +1 -1
  12. package/dist/adapter-send-tools.d.ts +33 -6
  13. package/dist/adapter-send-tools.d.ts.map +1 -1
  14. package/dist/adapter-send-tools.js +485 -87
  15. package/dist/adapter-send-tools.js.map +1 -1
  16. package/dist/app-config.d.ts +3 -1
  17. package/dist/app-config.d.ts.map +1 -1
  18. package/dist/app-config.js +16 -5
  19. package/dist/app-config.js.map +1 -1
  20. package/dist/app.d.ts +27 -0
  21. package/dist/app.d.ts.map +1 -1
  22. package/dist/app.js +761 -147
  23. package/dist/app.js.map +1 -1
  24. package/dist/background-environment.d.ts +16 -0
  25. package/dist/background-environment.d.ts.map +1 -0
  26. package/dist/background-environment.js +68 -0
  27. package/dist/background-environment.js.map +1 -0
  28. package/dist/background-runtime.d.ts +62 -0
  29. package/dist/background-runtime.d.ts.map +1 -0
  30. package/dist/background-runtime.js +1115 -0
  31. package/dist/background-runtime.js.map +1 -0
  32. package/dist/background-snapshot-key.d.ts +13 -0
  33. package/dist/background-snapshot-key.d.ts.map +1 -0
  34. package/dist/background-snapshot-key.js +194 -0
  35. package/dist/background-snapshot-key.js.map +1 -0
  36. package/dist/background-snapshot.d.ts +96 -0
  37. package/dist/background-snapshot.d.ts.map +1 -0
  38. package/dist/background-snapshot.js +450 -0
  39. package/dist/background-snapshot.js.map +1 -0
  40. package/dist/background-worker-lease.d.ts +39 -0
  41. package/dist/background-worker-lease.d.ts.map +1 -0
  42. package/dist/background-worker-lease.js +356 -0
  43. package/dist/background-worker-lease.js.map +1 -0
  44. package/dist/background.d.ts +74 -2
  45. package/dist/background.d.ts.map +1 -1
  46. package/dist/background.js +815 -73
  47. package/dist/background.js.map +1 -1
  48. package/dist/broadcast-recorder.d.ts.map +1 -1
  49. package/dist/broadcast-recorder.js +24 -2
  50. package/dist/broadcast-recorder.js.map +1 -1
  51. package/dist/channel-plugins.d.ts +2 -0
  52. package/dist/channel-plugins.d.ts.map +1 -1
  53. package/dist/channel-plugins.js +8 -0
  54. package/dist/channel-plugins.js.map +1 -1
  55. package/dist/channels.d.ts +10 -0
  56. package/dist/channels.d.ts.map +1 -1
  57. package/dist/channels.js +87 -9
  58. package/dist/channels.js.map +1 -1
  59. package/dist/cli.d.ts +86 -4
  60. package/dist/cli.d.ts.map +1 -1
  61. package/dist/cli.js +2421 -143
  62. package/dist/cli.js.map +1 -1
  63. package/dist/config-reference.d.ts.map +1 -1
  64. package/dist/config-reference.js +448 -6
  65. package/dist/config-reference.js.map +1 -1
  66. package/dist/configuration-proposal-main.d.ts +3 -0
  67. package/dist/configuration-proposal-main.d.ts.map +1 -0
  68. package/dist/configuration-proposal-main.js +13 -0
  69. package/dist/configuration-proposal-main.js.map +1 -0
  70. package/dist/configuration-proposal-tool.d.ts +33 -0
  71. package/dist/configuration-proposal-tool.d.ts.map +1 -0
  72. package/dist/configuration-proposal-tool.js +188 -0
  73. package/dist/configuration-proposal-tool.js.map +1 -0
  74. package/dist/configured-agent.d.ts +16 -0
  75. package/dist/configured-agent.d.ts.map +1 -1
  76. package/dist/configured-agent.js +165 -18
  77. package/dist/configured-agent.js.map +1 -1
  78. package/dist/consumer-contract.d.ts +3 -0
  79. package/dist/consumer-contract.d.ts.map +1 -1
  80. package/dist/consumer-contract.js +44 -1
  81. package/dist/consumer-contract.js.map +1 -1
  82. package/dist/continuation-command.d.ts +15 -0
  83. package/dist/continuation-command.d.ts.map +1 -0
  84. package/dist/continuation-command.js +170 -0
  85. package/dist/continuation-command.js.map +1 -0
  86. package/dist/continuation-config.d.ts +25 -0
  87. package/dist/continuation-config.d.ts.map +1 -0
  88. package/dist/continuation-config.js +236 -0
  89. package/dist/continuation-config.js.map +1 -0
  90. package/dist/continuation-service.d.ts +99 -0
  91. package/dist/continuation-service.d.ts.map +1 -0
  92. package/dist/continuation-service.js +1313 -0
  93. package/dist/continuation-service.js.map +1 -0
  94. package/dist/continuation-store.d.ts +104 -0
  95. package/dist/continuation-store.d.ts.map +1 -0
  96. package/dist/continuation-store.js +688 -0
  97. package/dist/continuation-store.js.map +1 -0
  98. package/dist/continuations.d.ts +167 -0
  99. package/dist/continuations.d.ts.map +1 -0
  100. package/dist/continuations.js +71 -0
  101. package/dist/continuations.js.map +1 -0
  102. package/dist/doctor.d.ts +29 -5
  103. package/dist/doctor.d.ts.map +1 -1
  104. package/dist/doctor.js +1611 -116
  105. package/dist/doctor.js.map +1 -1
  106. package/dist/first-run-managed-memory.d.ts +39 -0
  107. package/dist/first-run-managed-memory.d.ts.map +1 -0
  108. package/dist/first-run-managed-memory.js +584 -0
  109. package/dist/first-run-managed-memory.js.map +1 -0
  110. package/dist/first-run-readiness.d.ts +111 -0
  111. package/dist/first-run-readiness.d.ts.map +1 -0
  112. package/dist/first-run-readiness.js +728 -0
  113. package/dist/first-run-readiness.js.map +1 -0
  114. package/dist/index.d.ts +17 -3
  115. package/dist/index.d.ts.map +1 -1
  116. package/dist/index.js +8 -1
  117. package/dist/index.js.map +1 -1
  118. package/dist/init.d.ts +95 -3
  119. package/dist/init.d.ts.map +1 -1
  120. package/dist/init.js +1218 -24
  121. package/dist/init.js.map +1 -1
  122. package/dist/interaction-bridge.d.ts +25 -1
  123. package/dist/interaction-bridge.d.ts.map +1 -1
  124. package/dist/interaction-bridge.js +281 -19
  125. package/dist/interaction-bridge.js.map +1 -1
  126. package/dist/launchd.d.ts +16 -6
  127. package/dist/launchd.d.ts.map +1 -1
  128. package/dist/launchd.js +30 -15
  129. package/dist/launchd.js.map +1 -1
  130. package/dist/local-configuration.d.ts +99 -0
  131. package/dist/local-configuration.d.ts.map +1 -0
  132. package/dist/local-configuration.js +1299 -0
  133. package/dist/local-configuration.js.map +1 -0
  134. package/dist/managed-runtime-packages.d.ts +9 -0
  135. package/dist/managed-runtime-packages.d.ts.map +1 -0
  136. package/dist/managed-runtime-packages.js +56 -0
  137. package/dist/managed-runtime-packages.js.map +1 -0
  138. package/dist/memory-command.d.ts +4 -0
  139. package/dist/memory-command.d.ts.map +1 -1
  140. package/dist/memory-command.js +751 -27
  141. package/dist/memory-command.js.map +1 -1
  142. package/dist/memory-embedding-service.d.ts +33 -0
  143. package/dist/memory-embedding-service.d.ts.map +1 -0
  144. package/dist/memory-embedding-service.js +207 -0
  145. package/dist/memory-embedding-service.js.map +1 -0
  146. package/dist/memory-recall.d.ts +43 -14
  147. package/dist/memory-recall.d.ts.map +1 -1
  148. package/dist/memory-recall.js +103 -33
  149. package/dist/memory-recall.js.map +1 -1
  150. package/dist/memory-retrieval.d.ts +66 -0
  151. package/dist/memory-retrieval.d.ts.map +1 -0
  152. package/dist/memory-retrieval.js +332 -0
  153. package/dist/memory-retrieval.js.map +1 -0
  154. package/dist/modules/base.d.ts +6 -5
  155. package/dist/modules/base.d.ts.map +1 -1
  156. package/dist/modules/base.js +11 -7
  157. package/dist/modules/base.js.map +1 -1
  158. package/dist/modules/catalog.d.ts.map +1 -1
  159. package/dist/modules/catalog.js +141 -25
  160. package/dist/modules/catalog.js.map +1 -1
  161. package/dist/modules/index.d.ts +2 -2
  162. package/dist/modules/index.d.ts.map +1 -1
  163. package/dist/modules/index.js +1 -1
  164. package/dist/modules/index.js.map +1 -1
  165. package/dist/modules/known-tools.d.ts +3 -0
  166. package/dist/modules/known-tools.d.ts.map +1 -1
  167. package/dist/modules/known-tools.js +11 -1
  168. package/dist/modules/known-tools.js.map +1 -1
  169. package/dist/modules/types.d.ts +20 -6
  170. package/dist/modules/types.d.ts.map +1 -1
  171. package/dist/modules/types.js.map +1 -1
  172. package/dist/notify-runtime.d.ts +26 -0
  173. package/dist/notify-runtime.d.ts.map +1 -0
  174. package/dist/notify-runtime.js +27 -0
  175. package/dist/notify-runtime.js.map +1 -0
  176. package/dist/notify-tool.d.ts +51 -0
  177. package/dist/notify-tool.d.ts.map +1 -0
  178. package/dist/notify-tool.js +182 -0
  179. package/dist/notify-tool.js.map +1 -0
  180. package/dist/package-version.d.ts +3 -0
  181. package/dist/package-version.d.ts.map +1 -0
  182. package/dist/package-version.js +14 -0
  183. package/dist/package-version.js.map +1 -0
  184. package/dist/pi-auth-store-inspection.d.ts +21 -0
  185. package/dist/pi-auth-store-inspection.d.ts.map +1 -0
  186. package/dist/pi-auth-store-inspection.js +120 -0
  187. package/dist/pi-auth-store-inspection.js.map +1 -0
  188. package/dist/pi-oauth-login-main.d.ts +3 -0
  189. package/dist/pi-oauth-login-main.d.ts.map +1 -0
  190. package/dist/pi-oauth-login-main.js +14 -0
  191. package/dist/pi-oauth-login-main.js.map +1 -0
  192. package/dist/pi-oauth-login.d.ts +22 -0
  193. package/dist/pi-oauth-login.d.ts.map +1 -0
  194. package/dist/pi-oauth-login.js +79 -0
  195. package/dist/pi-oauth-login.js.map +1 -0
  196. package/dist/proactive-notify.d.ts +2 -0
  197. package/dist/proactive-notify.d.ts.map +1 -1
  198. package/dist/proactive-notify.js +1 -0
  199. package/dist/proactive-notify.js.map +1 -1
  200. package/dist/process-incarnation.d.ts +23 -0
  201. package/dist/process-incarnation.d.ts.map +1 -0
  202. package/dist/process-incarnation.js +208 -0
  203. package/dist/process-incarnation.js.map +1 -0
  204. package/dist/project-skills.d.ts +40 -0
  205. package/dist/project-skills.d.ts.map +1 -0
  206. package/dist/project-skills.js +573 -0
  207. package/dist/project-skills.js.map +1 -0
  208. package/dist/provider-setup.d.ts +117 -2
  209. package/dist/provider-setup.d.ts.map +1 -1
  210. package/dist/provider-setup.js +1505 -49
  211. package/dist/provider-setup.js.map +1 -1
  212. package/dist/readiness-probe-worker.d.ts +12 -0
  213. package/dist/readiness-probe-worker.d.ts.map +1 -0
  214. package/dist/readiness-probe-worker.js +276 -0
  215. package/dist/readiness-probe-worker.js.map +1 -0
  216. package/dist/readiness-probe.d.ts +100 -0
  217. package/dist/readiness-probe.d.ts.map +1 -0
  218. package/dist/readiness-probe.js +780 -0
  219. package/dist/readiness-probe.js.map +1 -0
  220. package/dist/recipes/base.d.ts +15 -0
  221. package/dist/recipes/base.d.ts.map +1 -0
  222. package/dist/recipes/base.js +51 -0
  223. package/dist/recipes/base.js.map +1 -0
  224. package/dist/recipes/catalog.d.ts +4 -0
  225. package/dist/recipes/catalog.d.ts.map +1 -0
  226. package/dist/recipes/catalog.js +525 -0
  227. package/dist/recipes/catalog.js.map +1 -0
  228. package/dist/recipes/index.d.ts +11 -0
  229. package/dist/recipes/index.d.ts.map +1 -0
  230. package/dist/recipes/index.js +14 -0
  231. package/dist/recipes/index.js.map +1 -0
  232. package/dist/recipes/types.d.ts +70 -0
  233. package/dist/recipes/types.d.ts.map +1 -0
  234. package/dist/recipes/types.js +15 -0
  235. package/dist/recipes/types.js.map +1 -0
  236. package/dist/request-model-override.d.ts +43 -1
  237. package/dist/request-model-override.d.ts.map +1 -1
  238. package/dist/request-model-override.js +178 -19
  239. package/dist/request-model-override.js.map +1 -1
  240. package/dist/run-history.d.ts +32 -0
  241. package/dist/run-history.d.ts.map +1 -0
  242. package/dist/run-history.js +859 -0
  243. package/dist/run-history.js.map +1 -0
  244. package/dist/runs-health.d.ts.map +1 -1
  245. package/dist/runs-health.js +12 -4
  246. package/dist/runs-health.js.map +1 -1
  247. package/dist/runtime-option-extensions.d.ts +14 -0
  248. package/dist/runtime-option-extensions.d.ts.map +1 -0
  249. package/dist/runtime-option-extensions.js +98 -0
  250. package/dist/runtime-option-extensions.js.map +1 -0
  251. package/dist/runtime-routes.d.ts +9 -0
  252. package/dist/runtime-routes.d.ts.map +1 -0
  253. package/dist/runtime-routes.js +13 -0
  254. package/dist/runtime-routes.js.map +1 -0
  255. package/dist/sandbox-manager.d.ts +86 -0
  256. package/dist/sandbox-manager.d.ts.map +1 -0
  257. package/dist/sandbox-manager.js +1402 -0
  258. package/dist/sandbox-manager.js.map +1 -0
  259. package/dist/setup.d.ts +29 -0
  260. package/dist/setup.d.ts.map +1 -0
  261. package/dist/setup.js +97 -0
  262. package/dist/setup.js.map +1 -0
  263. package/dist/supermemory-plugin.d.ts +56 -0
  264. package/dist/supermemory-plugin.d.ts.map +1 -0
  265. package/dist/supermemory-plugin.js +142 -0
  266. package/dist/supermemory-plugin.js.map +1 -0
  267. package/dist/tui-command.d.ts +56 -0
  268. package/dist/tui-command.d.ts.map +1 -1
  269. package/dist/tui-command.js +305 -31
  270. package/dist/tui-command.js.map +1 -1
  271. package/dist/web-command.d.ts +8 -0
  272. package/dist/web-command.d.ts.map +1 -1
  273. package/dist/web-command.js +174 -17
  274. package/dist/web-command.js.map +1 -1
  275. package/dist/wizard/answers.d.ts +31 -4
  276. package/dist/wizard/answers.d.ts.map +1 -1
  277. package/dist/wizard/answers.js +141 -29
  278. package/dist/wizard/answers.js.map +1 -1
  279. package/dist/wizard/from-flags.d.ts +7 -0
  280. package/dist/wizard/from-flags.d.ts.map +1 -1
  281. package/dist/wizard/from-flags.js +36 -2
  282. package/dist/wizard/from-flags.js.map +1 -1
  283. package/dist/wizard/index.d.ts +4 -4
  284. package/dist/wizard/index.d.ts.map +1 -1
  285. package/dist/wizard/index.js +2 -2
  286. package/dist/wizard/index.js.map +1 -1
  287. package/dist/wizard/model-discovery.d.ts +33 -2
  288. package/dist/wizard/model-discovery.d.ts.map +1 -1
  289. package/dist/wizard/model-discovery.js +826 -108
  290. package/dist/wizard/model-discovery.js.map +1 -1
  291. package/dist/wizard/presets.d.ts +1 -1
  292. package/dist/wizard/presets.d.ts.map +1 -1
  293. package/dist/wizard/presets.js +7 -12
  294. package/dist/wizard/presets.js.map +1 -1
  295. package/dist/wizard/prompts.d.ts +56 -9
  296. package/dist/wizard/prompts.d.ts.map +1 -1
  297. package/dist/wizard/prompts.js +172 -20
  298. package/dist/wizard/prompts.js.map +1 -1
  299. package/dist/wizard/run.d.ts +59 -3
  300. package/dist/wizard/run.d.ts.map +1 -1
  301. package/dist/wizard/run.js +1290 -191
  302. package/dist/wizard/run.js.map +1 -1
  303. package/package.json +21 -16
  304. package/resources/srt/package-lock.json +66 -0
  305. package/resources/srt/package.json +9 -0
  306. package/schema/mono-agent.config.schema.json +587 -20
  307. package/skills/mono-agent-composer/SKILL.md +6 -6
  308. package/skills/mono-agent-composer/references/config-blueprint.md +11 -10
  309. package/skills/mono-agent-composer/references/discovery-questions.md +33 -18
  310. package/skills/mono-agent-composer/references/feature-coverage.md +14 -12
  311. package/skills/mono-agent-composer/references/package-map.md +2 -2
  312. package/skills/mono-agent-composer/references/playbooks.md +8 -7
  313. package/skills/mono-agent-composer/references/validation.md +3 -3
@@ -1,4 +1,6 @@
1
- import { DEFAULT_MODEL, memoryBlock } from "./base.js";
1
+ import { validateCronExpression } from "@mono-agent/cron-adapter";
2
+ import { DEFAULT_MEMORY_EMBEDDING_ENDPOINTS, memoryEmbeddingEndpointProblem, } from "../memory-embedding-service.js";
3
+ import { DEFAULT_PI_MEMORY_MODEL, memoryBlock } from "./base.js";
2
4
  /** Split a comma-separated input value into trimmed, non-empty entries. */
3
5
  function splitCsv(v) {
4
6
  return v ? v.split(",").map((s) => s.trim()).filter(Boolean) : [];
@@ -61,9 +63,10 @@ const channelTelegram = {
61
63
  {
62
64
  id: "telegramToken",
63
65
  label: "Telegram bot token",
64
- description: "BotFather token. Externalized to .env.example; never written into JSON.",
66
+ description: "BotFather token. Saved to .env; .env.example contains only a placeholder. Never written into JSON.",
65
67
  secret: true,
66
- envVar: "MONO_AGENT_TELEGRAM_TOKEN",
68
+ envVar: "MONO_AGENT_TELEGRAM_BOT_TOKEN",
69
+ required: true,
67
70
  },
68
71
  ],
69
72
  configFragment: (values) => {
@@ -75,10 +78,10 @@ const channelTelegram = {
75
78
  },
76
79
  };
77
80
  },
78
- envExampleLines: () => ["# Telegram bot token from @BotFather", "MONO_AGENT_TELEGRAM_TOKEN="],
81
+ envExampleLines: () => ["# Telegram bot token from @BotFather", "MONO_AGENT_TELEGRAM_BOT_TOKEN="],
79
82
  recommendedTools: ["TelegramSendMessage", "TelegramAskButtons"],
80
83
  validateExpectations: [
81
- { sectionId: "channel:telegram", mustBe: "ok", note: "Set MONO_AGENT_TELEGRAM_TOKEN in .env." },
84
+ { sectionId: "channel:telegram", mustBe: "ok", note: "Set MONO_AGENT_TELEGRAM_BOT_TOKEN in .env." },
82
85
  ],
83
86
  };
84
87
  const channelSlack = {
@@ -96,16 +99,18 @@ const channelSlack = {
96
99
  {
97
100
  id: "botToken",
98
101
  label: "Slack bot token",
99
- description: "xoxb-… token. Externalized to .env.example.",
102
+ description: "xoxb-… token. Saved to .env; .env.example contains only a placeholder.",
100
103
  secret: true,
101
104
  envVar: "MONO_AGENT_SLACK_BOT_TOKEN",
105
+ required: true,
102
106
  },
103
107
  {
104
108
  id: "appToken",
105
109
  label: "Slack app token",
106
- description: "xapp-… connections:write token for Socket Mode.",
110
+ description: "xapp-… connections:write token for Socket Mode. Saved to .env only.",
107
111
  secret: true,
108
112
  envVar: "MONO_AGENT_SLACK_APP_TOKEN",
113
+ required: true,
109
114
  },
110
115
  ],
111
116
  configFragment: (values) => {
@@ -141,9 +146,10 @@ const channelOpenaiApi = {
141
146
  {
142
147
  id: "apiKey",
143
148
  label: "Client bearer key",
144
- description: "Optional bearer clients must present (sk-…). Externalized to .env.example.",
149
+ description: "Optional bearer clients must present (sk-…). Saved to .env; .env.example contains only a placeholder.",
145
150
  secret: true,
146
151
  envVar: "MONO_AGENT_OPENAI_API_KEY",
152
+ required: false,
147
153
  },
148
154
  ],
149
155
  configFragment: () => ({ openaiApi: { enabled: true } }),
@@ -160,11 +166,26 @@ const channelCron = {
160
166
  {
161
167
  id: "cronExpression",
162
168
  label: "Cron expression",
163
- description: "When the digest runs (default 08:00 daily).",
169
+ description: "Five-field UTC schedule for the digest (default 08:00 UTC daily).",
164
170
  default: "0 8 * * *",
171
+ validate: (value) => {
172
+ const result = validateCronExpression(value);
173
+ if (result.ok)
174
+ return undefined;
175
+ if (result.code === "required") {
176
+ return "Enter a cron expression using five fields: minute hour day-of-month month day-of-week.";
177
+ }
178
+ if (result.code === "field_count") {
179
+ return "Use exactly five fields: minute hour day-of-month month day-of-week (for example, 0 8 * * *).";
180
+ }
181
+ return `Invalid cron expression: ${result.reason}`;
182
+ },
165
183
  },
166
184
  ],
167
- configFragment: () => ({ cron: { enabled: true } }),
185
+ // Directory-backed jobs are active by being present and enabled in cron/*.md.
186
+ // Setting cron.enabled would select the legacy single-job form, which also
187
+ // requires inline expression/prompt fields and prevents folder jobs loading.
188
+ configFragment: () => ({ cron: { dir: "cron" } }),
168
189
  files: (values) => [
169
190
  {
170
191
  path: "cron/digest.md",
@@ -182,7 +203,7 @@ const channelCron = {
182
203
  },
183
204
  ],
184
205
  validateExpectations: [
185
- { sectionId: "channel:cron", mustBe: "ok", note: "Author at least one cron/*.md job." },
206
+ { sectionId: "channel:cron", mustBe: "ok", note: "Use at least one valid enabled cron/*.md job." },
186
207
  ],
187
208
  };
188
209
  const channelA2a = {
@@ -191,13 +212,15 @@ const channelA2a = {
191
212
  title: "A2A provider",
192
213
  summary: "Expose the agent over A2A (Agent Card + provider endpoint).",
193
214
  riskLevel: "medium",
215
+ wizardSelectable: false,
194
216
  inputs: [
195
217
  {
196
218
  id: "bearerToken",
197
219
  label: "A2A bearer token",
198
- description: "Bearer required from A2A consumers when requireBearer is set. Externalized to .env.example.",
220
+ description: "Bearer required from A2A consumers when requireBearer is set. Saved to .env; never written into JSON.",
199
221
  secret: true,
200
222
  envVar: "MONO_AGENT_A2A_BEARER_TOKEN",
223
+ required: false,
201
224
  },
202
225
  ],
203
226
  configFragment: () => a2aProviderPluginSection(),
@@ -210,6 +233,85 @@ const channelA2a = {
210
233
  // ---------------------------------------------------------------------------
211
234
  // Memory
212
235
  // ---------------------------------------------------------------------------
236
+ const DEFAULT_MEMORY_EMBEDDING_MODEL = "nomic-embed-text:v1.5";
237
+ const DEFAULT_LMSTUDIO_EMBEDDING_MODEL = "text-embedding-nomic-embed-text-v1.5";
238
+ const DEFAULT_MEMORY_EMBEDDING_DIMENSION = "768";
239
+ const managedMemoryEmbeddingInputs = [
240
+ {
241
+ id: "embeddingProvider",
242
+ label: "Embedding service",
243
+ description: "Local embedding service: ollama or lmstudio.",
244
+ default: "ollama",
245
+ validate: (value) => value === "ollama" || value === "lmstudio"
246
+ ? undefined
247
+ : "Choose ollama or lmstudio.",
248
+ },
249
+ {
250
+ id: "embeddingEndpoint",
251
+ label: "Embedding service endpoint",
252
+ description: "Absolute HTTP(S) service root; the wizard discovers the provider-specific API paths.",
253
+ validate: memoryEmbeddingEndpointProblem,
254
+ },
255
+ {
256
+ id: "embeddingModel",
257
+ label: "Embedding model",
258
+ description: "Exact service-native model id selected from typed embedding discovery.",
259
+ validate: validateRequiredSingleLine,
260
+ },
261
+ {
262
+ id: "embeddingDimension",
263
+ label: "Embedding dimension",
264
+ description: "Positive vector dimension returned by the selected embedding model.",
265
+ validate: validatePositiveInteger,
266
+ },
267
+ {
268
+ id: "embeddingApiKeyEnv",
269
+ label: "Optional embedding API-key environment variable",
270
+ description: "Environment-variable name containing a bearer token; leave blank for keyless local service.",
271
+ validate: validateOptionalEnvironmentName,
272
+ },
273
+ ];
274
+ function managedMemoryEmbeddings(values) {
275
+ const provider = values.embeddingProvider === "lmstudio" ? "lmstudio" : "ollama";
276
+ const endpoint = values.embeddingEndpoint?.trim()
277
+ || DEFAULT_MEMORY_EMBEDDING_ENDPOINTS[provider];
278
+ const model = values.embeddingModel?.trim()
279
+ || (provider === "lmstudio" ? DEFAULT_LMSTUDIO_EMBEDDING_MODEL : DEFAULT_MEMORY_EMBEDDING_MODEL);
280
+ const parsedDimension = Number(values.embeddingDimension ?? DEFAULT_MEMORY_EMBEDDING_DIMENSION);
281
+ const dim = Number.isSafeInteger(parsedDimension) && parsedDimension > 0
282
+ ? parsedDimension
283
+ : Number(DEFAULT_MEMORY_EMBEDDING_DIMENSION);
284
+ const apiKeyEnv = values.embeddingApiKeyEnv?.trim();
285
+ return {
286
+ provider,
287
+ endpoint,
288
+ model,
289
+ dim,
290
+ ...(apiKeyEnv === undefined || apiKeyEnv.length === 0 ? {} : { apiKeyEnv }),
291
+ };
292
+ }
293
+ function managedMemoryEnvExampleLines(values) {
294
+ const apiKeyEnv = values.embeddingApiKeyEnv?.trim();
295
+ return apiKeyEnv === undefined || apiKeyEnv.length === 0
296
+ ? []
297
+ : ["# Optional local embedding service bearer token", `${apiKeyEnv}=`];
298
+ }
299
+ function validateRequiredSingleLine(value) {
300
+ const trimmed = value?.trim() ?? "";
301
+ return trimmed.length > 0 && !/[\u0000-\u001f\u007f]/u.test(trimmed)
302
+ ? undefined
303
+ : "Enter a non-empty single-line model id.";
304
+ }
305
+ function validatePositiveInteger(value) {
306
+ const parsed = Number(value);
307
+ return Number.isSafeInteger(parsed) && parsed > 0 ? undefined : "Enter a positive integer dimension.";
308
+ }
309
+ function validateOptionalEnvironmentName(value) {
310
+ const trimmed = value?.trim() ?? "";
311
+ return trimmed.length === 0 || /^[A-Za-z_][A-Za-z0-9_]*$/u.test(trimmed)
312
+ ? undefined
313
+ : "Use an environment-variable name such as LM_STUDIO_API_KEY.";
314
+ }
213
315
  const memoryLite = {
214
316
  id: "memory:lite",
215
317
  kind: "memory",
@@ -217,28 +319,29 @@ const memoryLite = {
217
319
  summary: "SQLite full-text recall, zero external dependencies.",
218
320
  riskLevel: "low",
219
321
  inputs: [],
220
- configFragment: () => ({ memory: memoryBlock("lite") }),
322
+ configFragment: () => ({ memory: { ...memoryBlock("lite"), recallTool: { enabled: true } } }),
221
323
  validateExpectations: [{ sectionId: "memory", mustBe: "ok" }],
222
324
  };
223
325
  const memoryJournal = {
224
326
  id: "memory:journal",
225
327
  kind: "memory",
226
328
  title: "Journal (semantic recall)",
227
- summary: "Semantic recall via local ollama embeddings.",
329
+ summary: "Semantic recall via local Ollama or LM Studio embeddings.",
228
330
  riskLevel: "low",
229
- inputs: [],
230
- configFragment: () => ({
331
+ inputs: managedMemoryEmbeddingInputs,
332
+ configFragment: (values) => ({
231
333
  memory: {
232
334
  ...memoryBlock("journal"),
233
- embeddings: { provider: "ollama", model: "nomic-embed-text" },
335
+ embeddings: managedMemoryEmbeddings(values),
234
336
  recallTool: { enabled: true },
235
337
  },
236
338
  }),
339
+ envExampleLines: managedMemoryEnvExampleLines,
237
340
  validateExpectations: [
238
341
  {
239
342
  sectionId: "memory",
240
343
  mustBe: "ok",
241
- note: "Start ollama (or configure embeddings) so memory leaves `waiting`.",
344
+ note: "The selected Ollama or LM Studio service must be reachable and return the configured embedding dimension.",
242
345
  },
243
346
  ],
244
347
  };
@@ -246,22 +349,29 @@ const memoryBujo = {
246
349
  id: "memory:bujo",
247
350
  kind: "memory",
248
351
  title: "BuJo (capture + recall)",
249
- summary: "Daily-log capture plus semantic recall (needs ollama).",
352
+ summary: "Daily-log capture plus semantic recall via Ollama or LM Studio.",
250
353
  riskLevel: "medium",
251
- inputs: [],
354
+ inputs: managedMemoryEmbeddingInputs,
252
355
  configFragment: (values) => ({
253
356
  memory: {
254
357
  ...memoryBlock("bujo"),
255
- embeddings: { provider: "ollama", model: "nomic-embed-text" },
256
- llm: { provider: "agent-host", model: values.model ?? DEFAULT_MODEL },
358
+ embeddings: managedMemoryEmbeddings(values),
359
+ // Direct Codex is CLI-only, while the memory LLM has an SDK-only safety
360
+ // contract. Route every direct Codex primary through the equivalent Pi
361
+ // Terra model for this internal call, not only the default candidate.
362
+ llm: {
363
+ provider: "agent-host",
364
+ model: values.model?.startsWith("codex:") ? DEFAULT_PI_MEMORY_MODEL : values.model ?? DEFAULT_PI_MEMORY_MODEL,
365
+ },
257
366
  recallTool: { enabled: true },
258
367
  },
259
368
  }),
369
+ envExampleLines: managedMemoryEnvExampleLines,
260
370
  validateExpectations: [
261
371
  {
262
372
  sectionId: "memory",
263
373
  mustBe: "ok",
264
- note: "Start ollama (or configure embeddings) so memory leaves `waiting`.",
374
+ note: "The selected Ollama or LM Studio service must be reachable and return the configured embedding dimension.",
265
375
  },
266
376
  ],
267
377
  };
@@ -271,6 +381,11 @@ const memorySupermemory = {
271
381
  title: "Supermemory (external server)",
272
382
  summary: "External Supermemory instance for server-side extraction + recall.",
273
383
  riskLevel: "medium",
384
+ // The package is optional and no longer part of agent-app's dependency
385
+ // closure. Existing presets/config composition can still resolve the module
386
+ // explicitly, but the core interactive wizard must not advertise an
387
+ // unavailable backend as though it were built in.
388
+ wizardSelectable: false,
274
389
  inputs: [
275
390
  {
276
391
  id: "supermemoryBaseUrl",
@@ -280,10 +395,11 @@ const memorySupermemory = {
280
395
  },
281
396
  {
282
397
  id: "supermemoryApiKey",
283
- label: "Supermemory API key",
284
- description: "Bearer key printed by supermemory-server on first boot. Externalized to .env.example.",
398
+ label: "Supermemory API key (optional)",
399
+ description: "Bearer key for hosted or authenticated instances. Omit it for a keyless local service. Saved to .env; .env.example contains only a placeholder.",
285
400
  secret: true,
286
401
  envVar: "MONO_AGENT_MEMORY_SUPERMEMORY_API_KEY",
402
+ required: false,
287
403
  },
288
404
  ],
289
405
  configFragment: (values) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/modules/catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/modules/catalog.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ export type { CapabilityModule, GeneratedFile, ModuleInput, ModuleInputValues, M
2
2
  export { resolveModuleInputs } from "./types.js";
3
3
  export type { BaseConfigContext } from "./base.js";
4
4
  export { baseConfig, DEFAULT_MODEL, memoryBlock, MODEL_INPUT } from "./base.js";
5
- export type { AdapterSendToolName, BuiltinToolName } from "./known-tools.js";
6
- export { ADAPTER_SEND_TOOL_NAMES, ALLOW_ALL_TOOLS, BUILTIN_TOOL_NAMES, canonicalToolName, DEFAULT_SAFE_TOOLS, isAllowAllTools, isKnownToolName, isMcpToolName, LEGACY_TOOL_ALIASES, suggestToolName, } from "./known-tools.js";
5
+ export type { AdapterSendToolName, AppToolName, BuiltinToolName } from "./known-tools.js";
6
+ export { ADAPTER_SEND_TOOL_NAMES, ALLOW_ALL_TOOLS, APP_TOOL_NAMES, BUILTIN_TOOL_NAMES, canonicalToolName, DEFAULT_SAFE_TOOLS, isAllowAllTools, isKnownToolName, isMcpToolName, LEGACY_TOOL_ALIASES, suggestToolName, } from "./known-tools.js";
7
7
  export { CAPABILITY_MODULES, findModule, modulesByKind } from "./catalog.js";
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAEhF,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAEhF,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export { resolveModuleInputs } from "./types.js";
2
2
  export { baseConfig, DEFAULT_MODEL, memoryBlock, MODEL_INPUT } from "./base.js";
3
- export { ADAPTER_SEND_TOOL_NAMES, ALLOW_ALL_TOOLS, BUILTIN_TOOL_NAMES, canonicalToolName, DEFAULT_SAFE_TOOLS, isAllowAllTools, isKnownToolName, isMcpToolName, LEGACY_TOOL_ALIASES, suggestToolName, } from "./known-tools.js";
3
+ export { ADAPTER_SEND_TOOL_NAMES, ALLOW_ALL_TOOLS, APP_TOOL_NAMES, BUILTIN_TOOL_NAMES, canonicalToolName, DEFAULT_SAFE_TOOLS, isAllowAllTools, isKnownToolName, isMcpToolName, LEGACY_TOOL_ALIASES, suggestToolName, } from "./known-tools.js";
4
4
  export { CAPABILITY_MODULES, findModule, modulesByKind } from "./catalog.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGhF,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGhF,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
@@ -8,6 +8,8 @@ import { ALLOW_ALL_TOOLS } from "@mono-agent/config";
8
8
  export { ALLOW_ALL_TOOLS };
9
9
  /** Built-in tools gated by `tools.allowedTools` (pi-bridge.js). */
10
10
  export declare const BUILTIN_TOOL_NAMES: readonly ["Read", "Write", "Edit", "Glob", "Grep", "Bash", "WebFetch", "WebSearch"];
11
+ /** App-owned tools injected by the configured host and governed by tool policy. */
12
+ export declare const APP_TOOL_NAMES: readonly ["RunHistory"];
11
13
  /** Adapter send tools — require BOTH an `allowedTools` entry AND an enabled channel. */
12
14
  export declare const ADAPTER_SEND_TOOL_NAMES: readonly ["SlackSendMessage", "TelegramSendMessage", "TelegramAskButtons", "TelegramSendFile", "AskUser"];
13
15
  /**
@@ -24,6 +26,7 @@ export declare function canonicalToolName(name: string): string;
24
26
  /** Safe read-only default pre-checked for every new agent. */
25
27
  export declare const DEFAULT_SAFE_TOOLS: readonly ["Read", "Glob", "Grep"];
26
28
  export type BuiltinToolName = (typeof BUILTIN_TOOL_NAMES)[number];
29
+ export type AppToolName = (typeof APP_TOOL_NAMES)[number];
27
30
  export type AdapterSendToolName = (typeof ADAPTER_SEND_TOOL_NAMES)[number];
28
31
  /**
29
32
  * True when `name` is a built-in, an adapter send tool, or a canonical alias-value
@@ -1 +1 @@
1
- {"version":3,"file":"known-tools.d.ts","sourceRoot":"","sources":["../../src/modules/known-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,uFAAuF;AACvF,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,qFASrB,CAAC;AAEX,wFAAwF;AACxF,eAAO,MAAM,uBAAuB,2GAM1B,CAAC;AAEX;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAUtD,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,mCAAoC,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAa3E;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,uEAAuE;AACvE,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAEhE;AAED,4FAA4F;AAC5F,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGhE"}
1
+ {"version":3,"file":"known-tools.d.ts","sourceRoot":"","sources":["../../src/modules/known-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,uFAAuF;AACvF,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,qFASrB,CAAC;AAEX,mFAAmF;AACnF,eAAO,MAAM,cAAc,yBAEjB,CAAC;AAEX,wFAAwF;AACxF,eAAO,MAAM,uBAAuB,2GAM1B,CAAC;AAEX;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAWtD,CAAC;AAEF,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,8DAA8D;AAC9D,eAAO,MAAM,kBAAkB,mCAAoC,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAClE,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAC1D,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAkB3E;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,uEAAuE;AACvE,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAEhE;AAED,4FAA4F;AAC5F,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGhE"}
@@ -17,6 +17,10 @@ export const BUILTIN_TOOL_NAMES = [
17
17
  "WebFetch",
18
18
  "WebSearch",
19
19
  ];
20
+ /** App-owned tools injected by the configured host and governed by tool policy. */
21
+ export const APP_TOOL_NAMES = [
22
+ "RunHistory",
23
+ ];
20
24
  /** Adapter send tools — require BOTH an `allowedTools` entry AND an enabled channel. */
21
25
  export const ADAPTER_SEND_TOOL_NAMES = [
22
26
  "SlackSendMessage",
@@ -40,6 +44,7 @@ export const LEGACY_TOOL_ALIASES = {
40
44
  telegram_send_document: "TelegramSendFile",
41
45
  telegram_send_photo: "TelegramSendFile",
42
46
  ask_user: "AskUser",
47
+ run_history: "RunHistory",
43
48
  memory_recall: "MemoryRecall",
44
49
  read_skill: "ReadSkill",
45
50
  ask_collaborator: "AskCollaborator",
@@ -58,7 +63,12 @@ export const DEFAULT_SAFE_TOOLS = ["Read", "Glob", "Grep"];
58
63
  * config listing `ReadSkill` must validate as cleanly as one listing `read_skill`.
59
64
  */
60
65
  const KNOWN_TOOL_NAMES = [
61
- ...new Set([...BUILTIN_TOOL_NAMES, ...ADAPTER_SEND_TOOL_NAMES, ...Object.values(LEGACY_TOOL_ALIASES)]),
66
+ ...new Set([
67
+ ...BUILTIN_TOOL_NAMES,
68
+ ...APP_TOOL_NAMES,
69
+ ...ADAPTER_SEND_TOOL_NAMES,
70
+ ...Object.values(LEGACY_TOOL_ALIASES),
71
+ ]),
62
72
  ];
63
73
  /**
64
74
  * True when `name` is a built-in, an adapter send tool, or a canonical alias-value
@@ -1 +1 @@
1
- {"version":3,"file":"known-tools.js","sourceRoot":"","sources":["../../src/modules/known-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,uFAAuF;AACvF,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,mEAAmE;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,UAAU;IACV,WAAW;CACH,CAAC;AAEX,wFAAwF;AACxF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,kBAAkB;IAClB,qBAAqB;IACrB,oBAAoB;IACpB,kBAAkB;IAClB,SAAS;CACD,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA2B;IACzD,kBAAkB,EAAE,kBAAkB;IACtC,qBAAqB,EAAE,qBAAqB;IAC5C,YAAY,EAAE,oBAAoB;IAClC,sBAAsB,EAAE,kBAAkB;IAC1C,mBAAmB,EAAE,kBAAkB;IACvC,QAAQ,EAAE,SAAS;IACnB,aAAa,EAAE,cAAc;IAC7B,UAAU,EAAE,WAAW;IACvB,gBAAgB,EAAE,iBAAiB;CACpC,CAAC;AAEF,uFAAuF;AACvF,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,mBAAmB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAC3C,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAKpE;;;;;;GAMG;AACH,MAAM,gBAAgB,GAAsB;IAC1C,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,kBAAkB,EAAE,GAAG,uBAAuB,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;CAC/G,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,IAAI,KAAK,eAAe,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,mBAAmB,CAAC;AACpG,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,eAAe,CAAC,IAAuB;IACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACxC,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACnC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"known-tools.js","sourceRoot":"","sources":["../../src/modules/known-tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,uFAAuF;AACvF,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,mEAAmE;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,UAAU;IACV,WAAW;CACH,CAAC;AAEX,mFAAmF;AACnF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY;CACJ,CAAC;AAEX,wFAAwF;AACxF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,kBAAkB;IAClB,qBAAqB;IACrB,oBAAoB;IACpB,kBAAkB;IAClB,SAAS;CACD,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA2B;IACzD,kBAAkB,EAAE,kBAAkB;IACtC,qBAAqB,EAAE,qBAAqB;IAC5C,YAAY,EAAE,oBAAoB;IAClC,sBAAsB,EAAE,kBAAkB;IAC1C,mBAAmB,EAAE,kBAAkB;IACvC,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,YAAY;IACzB,aAAa,EAAE,cAAc;IAC7B,UAAU,EAAE,WAAW;IACvB,gBAAgB,EAAE,iBAAiB;CACpC,CAAC;AAEF,uFAAuF;AACvF,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,mBAAmB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAC3C,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAMpE;;;;;;GAMG;AACH,MAAM,gBAAgB,GAAsB;IAC1C,GAAG,IAAI,GAAG,CAAS;QACjB,GAAG,kBAAkB;QACrB,GAAG,cAAc;QACjB,GAAG,uBAAuB;QAC1B,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC;KACtC,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,IAAI,KAAK,eAAe,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,mBAAmB,CAAC;AACpG,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,eAAe,CAAC,IAAuB;IACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACxC,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACnC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC;AAC3E,CAAC"}
@@ -8,17 +8,28 @@ export type ModuleKind = "channel" | "memory" | "sandbox" | "observability" | "p
8
8
  * they only emit a `.env.example` placeholder via {@link CapabilityModule.envExampleLines}.
9
9
  * (Same shape as the old `RecipeInput`.)
10
10
  */
11
- export interface ModuleInput {
11
+ interface ModuleInputBase {
12
12
  readonly id: string;
13
13
  readonly label: string;
14
14
  readonly description: string;
15
15
  /** Default used when the wizard/CLI does not override the input. */
16
16
  readonly default?: string;
17
- /** Secret inputs are externalized to `.env.example`, never inlined in JSON. */
18
- readonly secret?: boolean;
19
- /** The `MONO_AGENT_*` env var a secret input maps to (for `.env.example`). */
20
- readonly envVar?: string;
21
17
  }
18
+ /** A non-secret module input, safe to store in the composed JSON fragment. */
19
+ export interface PublicModuleInput extends ModuleInputBase {
20
+ readonly secret?: false;
21
+ /** Return a user-facing validation error, or undefined when the value is valid. */
22
+ readonly validate?: (value: string | undefined) => string | undefined;
23
+ }
24
+ /** A secret module input, always externalized and never included in config JSON. */
25
+ export interface SecretModuleInput extends ModuleInputBase {
26
+ readonly secret: true;
27
+ /** The `MONO_AGENT_*` env var this secret maps to. */
28
+ readonly envVar: string;
29
+ /** Whether this capability cannot operate until the value is supplied. */
30
+ readonly required?: boolean;
31
+ }
32
+ export type ModuleInput = PublicModuleInput | SecretModuleInput;
22
33
  /** Resolved input values keyed by {@link ModuleInput.id}. */
23
34
  export type ModuleInputValues = Readonly<Record<string, string | undefined>>;
24
35
  /** An auxiliary file a module scaffolds beside the config (e.g. a cron job markdown). */
@@ -33,7 +44,7 @@ export interface GeneratedFile {
33
44
  * incomplete when a required section is not yet at the promised status.
34
45
  */
35
46
  export interface ModuleValidateExpectation {
36
- /** Doctor section id: `runtime|memory|sandbox|tools|observability|channel:<driver>`. */
47
+ /** Doctor section id: `runtime|credentials|memory|sandbox|tools|observability|channel:<driver>`. */
37
48
  readonly sectionId: string;
38
49
  /** The status the section must reach for the module to be considered live. */
39
50
  readonly mustBe: ValidationStatus;
@@ -54,6 +65,8 @@ export interface CapabilityModule {
54
65
  /** One-line wizard hint. */
55
66
  readonly summary: string;
56
67
  readonly riskLevel: "low" | "medium" | "high";
68
+ /** False for optional plugin capabilities that are not installed by the app. */
69
+ readonly wizardSelectable?: boolean;
57
70
  /** The `docs/playbooks/<file>` this module mirrors, parity-checked to exist. */
58
71
  readonly playbook?: string;
59
72
  readonly inputs: readonly ModuleInput[];
@@ -70,4 +83,5 @@ export interface CapabilityModule {
70
83
  }
71
84
  /** Resolve declared input defaults, then layer overrides on top. */
72
85
  export declare function resolveModuleInputs(module: CapabilityModule, overrides?: ModuleInputValues): ModuleInputValues;
86
+ export {};
73
87
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/modules/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,qFAAqF;AACrF,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,eAAe,GAAG,UAAU,CAAC;AAEzF;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,oEAAoE;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,6DAA6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;AAE7E,yFAAyF;AACzF,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,wFAAwF;IACxF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,oEAAoE;IACpE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iFAAiF;IACjF,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9C,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;IACxC,+EAA+E;IAC/E,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/G,iGAAiG;IACjG,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,SAAS,MAAM,EAAE,CAAC;IAC5E,2FAA2F;IAC3F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,yDAAyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,SAAS,aAAa,EAAE,CAAC;IACzE,kEAAkE;IAClE,QAAQ,CAAC,oBAAoB,EAAE,SAAS,yBAAyB,EAAE,CAAC;CACrE;AAED,oEAAoE;AACpE,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,gBAAgB,EACxB,SAAS,GAAE,iBAAsB,GAChC,iBAAiB,CAYnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/modules/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/modules/types.ts"],"names":[],"mappings":"AA8EA,oEAAoE;AACpE,MAAM,UAAU,mBAAmB,CACjC,MAAwB,EACxB,YAA+B,EAAE;IAEjC,MAAM,MAAM,GAAuC,EAAE,CAAC;IACtD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC;IAC1D,CAAC;IACD,iFAAiF;IACjF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/modules/types.ts"],"names":[],"mappings":"AA8FA,oEAAoE;AACpE,MAAM,UAAU,mBAAmB,CACjC,MAAwB,EACxB,YAA+B,EAAE;IAEjC,MAAM,MAAM,GAAuC,EAAE,CAAC;IACtD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC;IAC1D,CAAC;IACD,iFAAiF;IACjF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { type NotifyToolsServer } from "./notify-tool.js";
2
+ /**
3
+ * Per-request input the harness hands each runtime-options extension. We only
4
+ * need the request's metadata to decide whether this is a proactive trigger.
5
+ */
6
+ interface NotifyRuntimeExtensionInput {
7
+ readonly request: {
8
+ readonly metadata?: Record<string, unknown> | undefined;
9
+ };
10
+ }
11
+ interface NotifyRuntimeExtensionResult {
12
+ readonly runtimeOptions: {
13
+ readonly mcpServers?: Record<string, unknown>;
14
+ };
15
+ readonly cleanup: () => Promise<void>;
16
+ }
17
+ /**
18
+ * Runtime extension that exposes the `notify_conversation`/`list_notify_destinations`
19
+ * tools, but ONLY on proactive trigger turns — cron and webhook — identified by the
20
+ * request metadata (`metadata.cron`/`metadata.webhook`, robust regardless of how the
21
+ * turn's conversationId is scoped). Live channel turns (telegram/slack/etc.) never see
22
+ * these tools: a live turn is already in its conversation and just replies.
23
+ */
24
+ export declare function createNotifyToolsRuntimeExtension(server: Pick<NotifyToolsServer, "url" | "token">): (input: NotifyRuntimeExtensionInput) => Promise<NotifyRuntimeExtensionResult>;
25
+ export {};
26
+ //# sourceMappingURL=notify-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notify-runtime.d.ts","sourceRoot":"","sources":["../src/notify-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAExF;;;GAGG;AACH,UAAU,2BAA2B;IACnC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;KAAE,CAAC;CAC/E;AAED,UAAU,4BAA4B;IACpC,QAAQ,CAAC,cAAc,EAAE;QAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAID;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,GAAG,OAAO,CAAC,GAC/C,CAAC,KAAK,EAAE,2BAA2B,KAAK,OAAO,CAAC,4BAA4B,CAAC,CAa/E"}
@@ -0,0 +1,27 @@
1
+ import { NOTIFY_TOOLS_MCP_SERVER_NAME } from "./notify-tool.js";
2
+ const EMPTY = { runtimeOptions: {}, cleanup: async () => { } };
3
+ /**
4
+ * Runtime extension that exposes the `notify_conversation`/`list_notify_destinations`
5
+ * tools, but ONLY on proactive trigger turns — cron and webhook — identified by the
6
+ * request metadata (`metadata.cron`/`metadata.webhook`, robust regardless of how the
7
+ * turn's conversationId is scoped). Live channel turns (telegram/slack/etc.) never see
8
+ * these tools: a live turn is already in its conversation and just replies.
9
+ */
10
+ export function createNotifyToolsRuntimeExtension(server) {
11
+ const entry = {
12
+ [NOTIFY_TOOLS_MCP_SERVER_NAME]: {
13
+ type: "http",
14
+ url: server.url,
15
+ headers: { Authorization: `Bearer ${server.token}` },
16
+ },
17
+ };
18
+ return async (input) => {
19
+ return isProactiveTrigger(input.request.metadata)
20
+ ? { runtimeOptions: { mcpServers: entry }, cleanup: async () => { } }
21
+ : EMPTY;
22
+ };
23
+ }
24
+ function isProactiveTrigger(metadata) {
25
+ return metadata !== undefined && (metadata.cron !== undefined || metadata.webhook !== undefined);
26
+ }
27
+ //# sourceMappingURL=notify-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notify-runtime.js","sourceRoot":"","sources":["../src/notify-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAA0B,MAAM,kBAAkB,CAAC;AAexF,MAAM,KAAK,GAAiC,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,CAAC;AAE5F;;;;;;GAMG;AACH,MAAM,UAAU,iCAAiC,CAC/C,MAAgD;IAEhD,MAAM,KAAK,GAAG;QACZ,CAAC,4BAA4B,CAAC,EAAE;YAC9B,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,CAAC,KAAK,EAAE,EAAE;SACrD;KACF,CAAC;IACF,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE;QACrB,OAAO,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC/C,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE;YACpE,CAAC,CAAC,KAAK,CAAC;IACZ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,QAA6C;IACvE,OAAO,QAAQ,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;AACnG,CAAC"}