@mono-agent/agent-app 0.3.0 → 0.4.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 (186) hide show
  1. package/README.md +24 -10
  2. package/dist/adapter-send-tools-main.d.ts +3 -0
  3. package/dist/adapter-send-tools-main.d.ts.map +1 -0
  4. package/dist/adapter-send-tools-main.js +20 -0
  5. package/dist/adapter-send-tools-main.js.map +1 -0
  6. package/dist/adapter-send-tools.d.ts +125 -0
  7. package/dist/adapter-send-tools.d.ts.map +1 -0
  8. package/dist/adapter-send-tools.js +629 -0
  9. package/dist/adapter-send-tools.js.map +1 -0
  10. package/dist/app-config.d.ts +86 -26
  11. package/dist/app-config.d.ts.map +1 -1
  12. package/dist/app-config.js +284 -90
  13. package/dist/app-config.js.map +1 -1
  14. package/dist/app.d.ts +51 -20
  15. package/dist/app.d.ts.map +1 -1
  16. package/dist/app.js +889 -119
  17. package/dist/app.js.map +1 -1
  18. package/dist/artifact-retention.d.ts +32 -0
  19. package/dist/artifact-retention.d.ts.map +1 -0
  20. package/dist/artifact-retention.js +111 -0
  21. package/dist/artifact-retention.js.map +1 -0
  22. package/dist/audit-runs.d.ts +12 -0
  23. package/dist/audit-runs.d.ts.map +1 -0
  24. package/dist/audit-runs.js +68 -0
  25. package/dist/audit-runs.js.map +1 -0
  26. package/dist/backfill.d.ts +75 -0
  27. package/dist/backfill.d.ts.map +1 -0
  28. package/dist/backfill.js +350 -0
  29. package/dist/backfill.js.map +1 -0
  30. package/dist/background.d.ts +8 -5
  31. package/dist/background.d.ts.map +1 -1
  32. package/dist/background.js +279 -53
  33. package/dist/background.js.map +1 -1
  34. package/dist/broadcast-recorder.d.ts +27 -0
  35. package/dist/broadcast-recorder.d.ts.map +1 -0
  36. package/dist/broadcast-recorder.js +82 -0
  37. package/dist/broadcast-recorder.js.map +1 -0
  38. package/dist/channel-config-view.d.ts +28 -0
  39. package/dist/channel-config-view.d.ts.map +1 -0
  40. package/dist/channel-config-view.js +79 -0
  41. package/dist/channel-config-view.js.map +1 -0
  42. package/dist/channel-gate.d.ts +22 -0
  43. package/dist/channel-gate.d.ts.map +1 -0
  44. package/dist/channel-gate.js +35 -0
  45. package/dist/channel-gate.js.map +1 -0
  46. package/dist/channel-plugins.d.ts +39 -0
  47. package/dist/channel-plugins.d.ts.map +1 -0
  48. package/dist/channel-plugins.js +346 -0
  49. package/dist/channel-plugins.js.map +1 -0
  50. package/dist/channels.d.ts +62 -66
  51. package/dist/channels.d.ts.map +1 -1
  52. package/dist/channels.js +850 -120
  53. package/dist/channels.js.map +1 -1
  54. package/dist/cli.d.ts +103 -4
  55. package/dist/cli.d.ts.map +1 -1
  56. package/dist/cli.js +984 -112
  57. package/dist/cli.js.map +1 -1
  58. package/dist/config-reference.d.ts +24 -0
  59. package/dist/config-reference.d.ts.map +1 -0
  60. package/dist/config-reference.js +580 -0
  61. package/dist/config-reference.js.map +1 -0
  62. package/dist/configured-agent.d.ts +104 -0
  63. package/dist/configured-agent.d.ts.map +1 -0
  64. package/dist/configured-agent.js +578 -0
  65. package/dist/configured-agent.js.map +1 -0
  66. package/dist/consumer-contract.d.ts +36 -0
  67. package/dist/consumer-contract.d.ts.map +1 -0
  68. package/dist/consumer-contract.js +290 -0
  69. package/dist/consumer-contract.js.map +1 -0
  70. package/dist/doctor.d.ts +17 -0
  71. package/dist/doctor.d.ts.map +1 -1
  72. package/dist/doctor.js +392 -95
  73. package/dist/doctor.js.map +1 -1
  74. package/dist/index.d.ts +14 -6
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +7 -3
  77. package/dist/index.js.map +1 -1
  78. package/dist/init.d.ts +23 -7
  79. package/dist/init.d.ts.map +1 -1
  80. package/dist/init.js +91 -26
  81. package/dist/init.js.map +1 -1
  82. package/dist/install-skill.d.ts +1 -1
  83. package/dist/install-skill.js +2 -2
  84. package/dist/install-skill.js.map +1 -1
  85. package/dist/interaction-bridge.d.ts +72 -0
  86. package/dist/interaction-bridge.d.ts.map +1 -0
  87. package/dist/interaction-bridge.js +354 -0
  88. package/dist/interaction-bridge.js.map +1 -0
  89. package/dist/launchd.d.ts +0 -2
  90. package/dist/launchd.d.ts.map +1 -1
  91. package/dist/launchd.js +0 -2
  92. package/dist/launchd.js.map +1 -1
  93. package/dist/memory-command.d.ts +10 -0
  94. package/dist/memory-command.d.ts.map +1 -0
  95. package/dist/memory-command.js +649 -0
  96. package/dist/memory-command.js.map +1 -0
  97. package/dist/memory-recall-main.d.ts +3 -0
  98. package/dist/memory-recall-main.d.ts.map +1 -0
  99. package/dist/memory-recall-main.js +30 -0
  100. package/dist/memory-recall-main.js.map +1 -0
  101. package/dist/memory-recall.d.ts +147 -0
  102. package/dist/memory-recall.d.ts.map +1 -0
  103. package/dist/memory-recall.js +345 -0
  104. package/dist/memory-recall.js.map +1 -0
  105. package/dist/memory-rituals.d.ts +8 -11
  106. package/dist/memory-rituals.d.ts.map +1 -1
  107. package/dist/memory-rituals.js +26 -25
  108. package/dist/memory-rituals.js.map +1 -1
  109. package/dist/metrics.d.ts +13 -0
  110. package/dist/metrics.d.ts.map +1 -0
  111. package/dist/metrics.js +105 -0
  112. package/dist/metrics.js.map +1 -0
  113. package/dist/notify-destinations.d.ts +23 -0
  114. package/dist/notify-destinations.d.ts.map +1 -0
  115. package/dist/notify-destinations.js +79 -0
  116. package/dist/notify-destinations.js.map +1 -0
  117. package/dist/posted-message-index.d.ts +61 -0
  118. package/dist/posted-message-index.d.ts.map +1 -0
  119. package/dist/posted-message-index.js +178 -0
  120. package/dist/posted-message-index.js.map +1 -0
  121. package/dist/proactive-notify.d.ts +32 -0
  122. package/dist/proactive-notify.d.ts.map +1 -0
  123. package/dist/proactive-notify.js +62 -0
  124. package/dist/proactive-notify.js.map +1 -0
  125. package/dist/recipes/base.d.ts +15 -0
  126. package/dist/recipes/base.d.ts.map +1 -0
  127. package/dist/recipes/base.js +51 -0
  128. package/dist/recipes/base.js.map +1 -0
  129. package/dist/recipes/catalog.d.ts +4 -0
  130. package/dist/recipes/catalog.d.ts.map +1 -0
  131. package/dist/recipes/catalog.js +509 -0
  132. package/dist/recipes/catalog.js.map +1 -0
  133. package/dist/recipes/index.d.ts +11 -0
  134. package/dist/recipes/index.d.ts.map +1 -0
  135. package/dist/recipes/index.js +14 -0
  136. package/dist/recipes/index.js.map +1 -0
  137. package/dist/recipes/types.d.ts +70 -0
  138. package/dist/recipes/types.d.ts.map +1 -0
  139. package/dist/recipes/types.js +15 -0
  140. package/dist/recipes/types.js.map +1 -0
  141. package/dist/request-model-override.d.ts +67 -0
  142. package/dist/request-model-override.d.ts.map +1 -0
  143. package/dist/request-model-override.js +96 -0
  144. package/dist/request-model-override.js.map +1 -0
  145. package/dist/runs-health.d.ts +22 -0
  146. package/dist/runs-health.d.ts.map +1 -0
  147. package/dist/runs-health.js +144 -0
  148. package/dist/runs-health.js.map +1 -0
  149. package/dist/seen-conversations.d.ts +22 -0
  150. package/dist/seen-conversations.d.ts.map +1 -0
  151. package/dist/seen-conversations.js +120 -0
  152. package/dist/seen-conversations.js.map +1 -0
  153. package/dist/sessions.d.ts +21 -0
  154. package/dist/sessions.d.ts.map +1 -0
  155. package/dist/sessions.js +45 -0
  156. package/dist/sessions.js.map +1 -0
  157. package/dist/setup.d.ts +29 -0
  158. package/dist/setup.d.ts.map +1 -0
  159. package/dist/setup.js +97 -0
  160. package/dist/setup.js.map +1 -0
  161. package/dist/trigger-overrides.d.ts +17 -0
  162. package/dist/trigger-overrides.d.ts.map +1 -0
  163. package/dist/trigger-overrides.js +30 -0
  164. package/dist/trigger-overrides.js.map +1 -0
  165. package/dist/tui-command.d.ts +56 -0
  166. package/dist/tui-command.d.ts.map +1 -0
  167. package/dist/tui-command.js +160 -0
  168. package/dist/tui-command.js.map +1 -0
  169. package/dist/ui.d.ts +54 -0
  170. package/dist/ui.d.ts.map +1 -0
  171. package/dist/ui.js +157 -0
  172. package/dist/ui.js.map +1 -0
  173. package/dist/web-command.d.ts +39 -0
  174. package/dist/web-command.d.ts.map +1 -0
  175. package/dist/web-command.js +151 -0
  176. package/dist/web-command.js.map +1 -0
  177. package/package.json +22 -17
  178. package/schema/mono-agent.config.schema.json +1686 -0
  179. package/skills/mono-agent-composer/SKILL.md +38 -12
  180. package/skills/mono-agent-composer/agents/openai.yaml +4 -0
  181. package/skills/mono-agent-composer/references/config-blueprint.md +84 -31
  182. package/skills/mono-agent-composer/references/discovery-questions.md +49 -36
  183. package/skills/mono-agent-composer/references/feature-coverage.md +26 -19
  184. package/skills/mono-agent-composer/references/package-map.md +20 -22
  185. package/skills/mono-agent-composer/references/playbooks.md +209 -0
  186. package/skills/mono-agent-composer/references/validation.md +14 -5
@@ -0,0 +1,39 @@
1
+ import { startSessionWebServer } from "@mono-agent/session-web";
2
+ import type { SessionWebServerHandle } from "@mono-agent/session-web";
3
+ export declare const DEFAULT_WEB_PORT = 4599;
4
+ export interface RunWebOptions {
5
+ readonly configPath: string;
6
+ readonly cwd: string;
7
+ readonly env: Record<string, string | undefined>;
8
+ /** --host: bind address (default 127.0.0.1). */
9
+ readonly host?: string;
10
+ /** --port: bind port (default 4599). */
11
+ readonly port?: number;
12
+ /** --no-open: suppress the browser launch (default: open). */
13
+ readonly open?: boolean;
14
+ /** --allow-non-loopback: bind a non-loopback host (refused by default). */
15
+ readonly allowNonLoopback?: boolean;
16
+ /** --include-memory: show memory-maintenance runs in the web operator surface. */
17
+ readonly includeMemory?: boolean;
18
+ }
19
+ /** Test seams: server boot, browser open, and the shutdown wait are injectable. */
20
+ export interface RunWebDeps {
21
+ readonly startServer?: typeof startSessionWebServer;
22
+ readonly openUrl?: (url: string) => void;
23
+ readonly waitForShutdown?: () => Promise<void>;
24
+ readonly onReady?: (handle: SessionWebServerHandle) => void;
25
+ readonly stdout?: {
26
+ write(text: string): void;
27
+ };
28
+ readonly stderr?: {
29
+ write(text: string): void;
30
+ };
31
+ }
32
+ /**
33
+ * `mono-agent web`: discover every running agent on this machine (trace-source
34
+ * registry, the same mechanism as `mono-agent tui`) and serve the read-only
35
+ * Session Recorder PWA that visualises their runs live. Unlike `tui`, it shows
36
+ * ALL instances at once and needs no TTY — it runs until interrupted.
37
+ */
38
+ export declare function runWeb(options: RunWebOptions, deps?: RunWebDeps): Promise<number>;
39
+ //# sourceMappingURL=web-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-command.d.ts","sourceRoot":"","sources":["../src/web-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAKtE,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACjD,gDAAgD;IAChD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,2EAA2E;IAC3E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,kFAAkF;IAClF,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,mFAAmF;AACnF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,qBAAqB,CAAC;IACpD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAC5D,QAAQ,CAAC,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAChD,QAAQ,CAAC,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CACjD;AAED;;;;;GAKG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAqD3F"}
@@ -0,0 +1,151 @@
1
+ import { resolve } from "node:path";
2
+ import { pruneTraceSources } from "@mono-agent/observability";
3
+ import { startSessionWebServer } from "@mono-agent/session-web";
4
+ import { generateBearerToken, isLoopbackHost } from "@mono-agent/agent-contracts";
5
+ import { resolveAppTraceRegistryDir, resolveGlobalTraceRegistryDir } from "./app-config.js";
6
+ export const DEFAULT_WEB_PORT = 4599;
7
+ /**
8
+ * `mono-agent web`: discover every running agent on this machine (trace-source
9
+ * registry, the same mechanism as `mono-agent tui`) and serve the read-only
10
+ * Session Recorder PWA that visualises their runs live. Unlike `tui`, it shows
11
+ * ALL instances at once and needs no TTY — it runs until interrupted.
12
+ */
13
+ export async function runWeb(options, deps = {}) {
14
+ const stdout = deps.stdout ?? process.stdout;
15
+ const stderr = deps.stderr ?? process.stderr;
16
+ const configuredRegistryDir = await resolveAppTraceRegistryDir({
17
+ env: options.env,
18
+ cwd: options.cwd,
19
+ configPath: options.configPath,
20
+ });
21
+ const globalRegistryDir = resolveGlobalTraceRegistryDir(options.env);
22
+ const registryDirs = dedupePaths([configuredRegistryDir, globalRegistryDir]);
23
+ await Promise.all(registryDirs.map((registryDir) => pruneTraceSources({ registryDir })));
24
+ const authToken = requiresServerAuth(options.host) ? generateBearerToken() : undefined;
25
+ const port = options.port ?? DEFAULT_WEB_PORT;
26
+ const startServer = deps.startServer ?? startSessionWebServer;
27
+ let handle;
28
+ try {
29
+ handle = await startServer({
30
+ registryDirs,
31
+ env: options.env,
32
+ ...(options.host === undefined ? {} : { host: options.host }),
33
+ port,
34
+ ...(options.allowNonLoopback === undefined ? {} : { allowNonLoopback: options.allowNonLoopback }),
35
+ ...(authToken === undefined ? {} : { authToken }),
36
+ ...(options.includeMemory === undefined ? {} : { includeMemory: options.includeMemory }),
37
+ });
38
+ }
39
+ catch (error) {
40
+ stderr.write(`mono-agent web failed to start: ${error instanceof Error ? error.message : String(error)}\n`);
41
+ return 1;
42
+ }
43
+ const browserUrl = authToken === undefined ? handle.url : withAuthToken(handle.url, authToken);
44
+ stdout.write(`mono-agent web → ${browserUrl}\n`);
45
+ stdout.write(`Watching ${registryDirs.length} registr${registryDirs.length === 1 ? "y" : "ies"} for agents. Press Ctrl-C to stop.\n`);
46
+ stdout.write(`${reverseProxyHint(handle.url)}\n`);
47
+ stdout.write(`${reachabilityHint(handle.url)}\n`);
48
+ if (options.open ?? true) {
49
+ try {
50
+ (deps.openUrl ?? openInBrowser)(browserUrl);
51
+ }
52
+ catch {
53
+ // Best-effort: a headless host without a browser is fine — the URL is printed.
54
+ }
55
+ }
56
+ deps.onReady?.(handle);
57
+ await (deps.waitForShutdown ?? waitForSignal)();
58
+ await handle.stop();
59
+ stdout.write("mono-agent web stopped.\n");
60
+ return 0;
61
+ }
62
+ /**
63
+ * A one-line hint about who can reach the server and how to expose it over a
64
+ * tailnet. Loopback (default) → recommend `tailscale serve` (adds HTTPS + a
65
+ * MagicDNS name, keeping the PWA installable). Non-loopback → note it is already
66
+ * reachable over the LAN/tailnet at this port.
67
+ */
68
+ function reachabilityHint(url) {
69
+ let port = "";
70
+ let host = "";
71
+ try {
72
+ const parsed = new URL(url);
73
+ port = parsed.port;
74
+ host = parsed.hostname;
75
+ }
76
+ catch {
77
+ /* leave blank */
78
+ }
79
+ if (host.length > 0 && !isLoopbackHost(host)) {
80
+ return "Bound non-loopback: reachable over your LAN/Tailnet at this port (use the machine's Tailscale IP or MagicDNS name). For HTTPS + a PWA-installable URL, prefer `tailscale serve` instead.";
81
+ }
82
+ return `Loopback only. To reach it over Tailscale with HTTPS + your MagicDNS name (keeps the PWA installable): tailscale serve --bg ${port || "<port>"}`;
83
+ }
84
+ function reverseProxyHint(url) {
85
+ let target = url;
86
+ try {
87
+ const parsed = new URL(url);
88
+ parsed.username = "";
89
+ parsed.password = "";
90
+ parsed.search = "";
91
+ parsed.hash = "";
92
+ target = parsed.toString();
93
+ }
94
+ catch {
95
+ /* use the original URL */
96
+ }
97
+ return `Reverse proxies should target ${target} (default port ${DEFAULT_WEB_PORT}; override with --port).`;
98
+ }
99
+ function requiresServerAuth(host) {
100
+ return host !== undefined && !isLoopbackHost(host);
101
+ }
102
+ function withAuthToken(url, token) {
103
+ const parsed = new URL(url);
104
+ parsed.searchParams.set("token", token);
105
+ return parsed.toString();
106
+ }
107
+ /** Resolve + dedupe registry dirs, preserving precedence order. */
108
+ function dedupePaths(dirs) {
109
+ const seen = new Set();
110
+ const out = [];
111
+ for (const dir of dirs) {
112
+ const resolved = resolve(dir);
113
+ if (!seen.has(resolved)) {
114
+ seen.add(resolved);
115
+ out.push(resolved);
116
+ }
117
+ }
118
+ return out;
119
+ }
120
+ /** Resolve once SIGINT/SIGTERM arrives — the foreground command's stop signal. */
121
+ function waitForSignal() {
122
+ return new Promise((resolvePromise) => {
123
+ const onSignal = () => {
124
+ process.off("SIGINT", onSignal);
125
+ process.off("SIGTERM", onSignal);
126
+ resolvePromise();
127
+ };
128
+ process.once("SIGINT", onSignal);
129
+ process.once("SIGTERM", onSignal);
130
+ });
131
+ }
132
+ /** Best-effort OS browser launch. Never throws into the caller's happy path. */
133
+ function openInBrowser(url) {
134
+ void (async () => {
135
+ try {
136
+ const { spawn } = await import("node:child_process");
137
+ const platform = process.platform;
138
+ const command = platform === "darwin" ? "open" : platform === "win32" ? "cmd" : "xdg-open";
139
+ const args = platform === "win32" ? ["/c", "start", "", url] : [url];
140
+ const child = spawn(command, args, { stdio: "ignore", detached: true });
141
+ child.on("error", () => {
142
+ /* no browser available — the URL was printed */
143
+ });
144
+ child.unref();
145
+ }
146
+ catch {
147
+ /* ignore */
148
+ }
149
+ })();
150
+ }
151
+ //# sourceMappingURL=web-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-command.js","sourceRoot":"","sources":["../src/web-command.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mono-agent/agent-app",
3
- "version": "0.3.0",
4
- "description": "Config-first mono-agent host: builds a responder and starts every configured communication channel, operator console, and traceability from one mono-agent.config.json.",
3
+ "version": "0.4.1",
4
+ "description": "Config-first mono-agent host: builds a responder and starts every configured communication channel and traceability from one mono-agent.config.json.",
5
5
  "type": "module",
6
6
  "license": "UNLICENSED",
7
7
  "private": false,
@@ -14,28 +14,33 @@
14
14
  }
15
15
  },
16
16
  "bin": {
17
- "mono-agent": "./dist/cli.js"
17
+ "mono-agent": "./dist/cli.js",
18
+ "mono-agent-memory-recall": "./dist/memory-recall-main.js"
18
19
  },
19
20
  "files": [
20
21
  "dist",
22
+ "schema",
21
23
  "skills",
22
24
  "README.md"
23
25
  ],
24
26
  "dependencies": {
25
- "@mono-agent/a2a-adapter": "0.3.0",
26
- "@mono-agent/agent-contracts": "0.3.0",
27
- "@mono-agent/agent-host": "0.3.0",
28
- "@mono-agent/config": "0.3.0",
29
- "@mono-agent/cron-adapter": "0.3.0",
30
- "@mono-agent/observability": "0.3.0",
31
- "@mono-agent/openai-api-adapter": "0.3.0",
32
- "@mono-agent/operator-console": "0.3.0",
33
- "@mono-agent/runtime-adapter": "0.3.0",
34
- "@mono-agent/settings": "0.3.0",
35
- "@mono-agent/slack-adapter": "0.3.0",
36
- "@mono-agent/telegram-adapter": "0.3.0",
37
- "@mono-agent/webhook-adapter": "0.3.0",
38
- "@mono-agent/whatsapp-adapter": "0.3.0"
27
+ "@modelcontextprotocol/sdk": "^1.29.0",
28
+ "@mono-agent/agent-contracts": "0.4.1",
29
+ "@mono-agent/agent-harness": "0.4.1",
30
+ "@mono-agent/config": "0.4.1",
31
+ "@mono-agent/cron-adapter": "0.4.1",
32
+ "@mono-agent/operator-adapter": "0.4.1",
33
+ "@mono-agent/memory": "0.4.1",
34
+ "@mono-agent/memory-supermemory": "0.4.1",
35
+ "@mono-agent/observability": "0.4.1",
36
+ "@mono-agent/openai-api-adapter": "0.4.1",
37
+ "@mono-agent/runtime-adapter": "0.4.1",
38
+ "@mono-agent/session-web": "0.4.1",
39
+ "@mono-agent/slack-adapter": "0.4.1",
40
+ "@mono-agent/telegram-adapter": "0.4.1",
41
+ "@mono-agent/tui": "0.4.1",
42
+ "@mono-agent/webhook-adapter": "0.4.1",
43
+ "zod": "^4.4.3"
39
44
  },
40
45
  "publishConfig": {
41
46
  "access": "public"