@mono-agent/agent-app 0.13.0 → 0.15.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 (192) hide show
  1. package/README.md +164 -37
  2. package/dist/adapter-send-tools-main.js +0 -1
  3. package/dist/adapter-send-tools-main.js.map +1 -1
  4. package/dist/adapter-send-tools.d.ts +8 -5
  5. package/dist/adapter-send-tools.d.ts.map +1 -1
  6. package/dist/adapter-send-tools.js +133 -287
  7. package/dist/adapter-send-tools.js.map +1 -1
  8. package/dist/app-config.d.ts.map +1 -1
  9. package/dist/app-config.js +3 -0
  10. package/dist/app-config.js.map +1 -1
  11. package/dist/app-controller-channels.d.ts +41 -7
  12. package/dist/app-controller-channels.d.ts.map +1 -1
  13. package/dist/app-controller-channels.js +4 -4
  14. package/dist/app-controller-channels.js.map +1 -1
  15. package/dist/app-controller-continuation.d.ts +43 -11
  16. package/dist/app-controller-continuation.d.ts.map +1 -1
  17. package/dist/app-controller-continuation.js +1 -5
  18. package/dist/app-controller-continuation.js.map +1 -1
  19. package/dist/app-controller-lifecycle.d.ts +34 -5
  20. package/dist/app-controller-lifecycle.d.ts.map +1 -1
  21. package/dist/app-controller-lifecycle.js.map +1 -1
  22. package/dist/app-controller-maintenance.d.ts +46 -8
  23. package/dist/app-controller-maintenance.d.ts.map +1 -1
  24. package/dist/app-controller-maintenance.js +64 -1
  25. package/dist/app-controller-maintenance.js.map +1 -1
  26. package/dist/app-controller-memory-health.d.ts +39 -10
  27. package/dist/app-controller-memory-health.d.ts.map +1 -1
  28. package/dist/app-controller-memory-health.js.map +1 -1
  29. package/dist/app-controller-memory.d.ts +27 -5
  30. package/dist/app-controller-memory.d.ts.map +1 -1
  31. package/dist/app-controller-memory.js +0 -1
  32. package/dist/app-controller-memory.js.map +1 -1
  33. package/dist/app-controller-responder.d.ts +53 -7
  34. package/dist/app-controller-responder.d.ts.map +1 -1
  35. package/dist/app-controller-responder.js +5 -5
  36. package/dist/app-controller-responder.js.map +1 -1
  37. package/dist/app-controller-traceability.d.ts +63 -14
  38. package/dist/app-controller-traceability.d.ts.map +1 -1
  39. package/dist/app-controller-traceability.js.map +1 -1
  40. package/dist/app-controller-types.d.ts +63 -0
  41. package/dist/app-controller-types.d.ts.map +1 -0
  42. package/dist/app-controller-types.js +2 -0
  43. package/dist/app-controller-types.js.map +1 -0
  44. package/dist/app-controller-utils.d.ts +1 -1
  45. package/dist/app-controller-utils.d.ts.map +1 -1
  46. package/dist/app-controller-utils.js +1 -1
  47. package/dist/app-controller-utils.js.map +1 -1
  48. package/dist/app-controller.d.ts +5 -62
  49. package/dist/app-controller.d.ts.map +1 -1
  50. package/dist/app-controller.js +0 -6
  51. package/dist/app-controller.js.map +1 -1
  52. package/dist/background-environment.d.ts +1 -0
  53. package/dist/background-environment.d.ts.map +1 -1
  54. package/dist/background-environment.js +1 -0
  55. package/dist/background-environment.js.map +1 -1
  56. package/dist/background-lifecycle-utils.d.ts +27 -0
  57. package/dist/background-lifecycle-utils.d.ts.map +1 -0
  58. package/dist/background-lifecycle-utils.js +69 -0
  59. package/dist/background-lifecycle-utils.js.map +1 -0
  60. package/dist/background-log-maintenance.d.ts +6 -0
  61. package/dist/background-log-maintenance.d.ts.map +1 -0
  62. package/dist/background-log-maintenance.js +185 -0
  63. package/dist/background-log-maintenance.js.map +1 -0
  64. package/dist/background-runtime.d.ts +13 -2
  65. package/dist/background-runtime.d.ts.map +1 -1
  66. package/dist/background-runtime.js +27 -3
  67. package/dist/background-runtime.js.map +1 -1
  68. package/dist/background.d.ts +28 -5
  69. package/dist/background.d.ts.map +1 -1
  70. package/dist/background.js +229 -297
  71. package/dist/background.js.map +1 -1
  72. package/dist/channel-drivers/cron.js +8 -1
  73. package/dist/channel-drivers/cron.js.map +1 -1
  74. package/dist/channel-drivers/native-notify.d.ts +2 -0
  75. package/dist/channel-drivers/native-notify.d.ts.map +1 -1
  76. package/dist/channel-drivers/native-notify.js +14 -2
  77. package/dist/channel-drivers/native-notify.js.map +1 -1
  78. package/dist/channel-drivers/slack.d.ts.map +1 -1
  79. package/dist/channel-drivers/slack.js +49 -0
  80. package/dist/channel-drivers/slack.js.map +1 -1
  81. package/dist/channel-drivers/telegram.d.ts.map +1 -1
  82. package/dist/channel-drivers/telegram.js +7 -18
  83. package/dist/channel-drivers/telegram.js.map +1 -1
  84. package/dist/channel-drivers/tui.d.ts.map +1 -1
  85. package/dist/channel-drivers/tui.js +8 -0
  86. package/dist/channel-drivers/tui.js.map +1 -1
  87. package/dist/channel-plugins.d.ts +2 -11
  88. package/dist/channel-plugins.d.ts.map +1 -1
  89. package/dist/channel-plugins.js +63 -60
  90. package/dist/channel-plugins.js.map +1 -1
  91. package/dist/channel-status-display.js +2 -6
  92. package/dist/channel-status-display.js.map +1 -1
  93. package/dist/channels.d.ts +5 -6
  94. package/dist/channels.d.ts.map +1 -1
  95. package/dist/channels.js +7 -5
  96. package/dist/channels.js.map +1 -1
  97. package/dist/cli-args.d.ts +8 -2
  98. package/dist/cli-args.d.ts.map +1 -1
  99. package/dist/cli-args.js +98 -27
  100. package/dist/cli-args.js.map +1 -1
  101. package/dist/cli-background-command.d.ts.map +1 -1
  102. package/dist/cli-background-command.js +90 -15
  103. package/dist/cli-background-command.js.map +1 -1
  104. package/dist/cli-commands.d.ts.map +1 -1
  105. package/dist/cli-commands.js +0 -14
  106. package/dist/cli-commands.js.map +1 -1
  107. package/dist/cli-help.d.ts.map +1 -1
  108. package/dist/cli-help.js +1 -7
  109. package/dist/cli-help.js.map +1 -1
  110. package/dist/cli-runs-command.d.ts +0 -3
  111. package/dist/cli-runs-command.d.ts.map +1 -1
  112. package/dist/cli-runs-command.js +1 -5
  113. package/dist/cli-runs-command.js.map +1 -1
  114. package/dist/cli-validate-config-command.d.ts.map +1 -1
  115. package/dist/cli-validate-config-command.js +12 -8
  116. package/dist/cli-validate-config-command.js.map +1 -1
  117. package/dist/config-reference.d.ts +4 -1
  118. package/dist/config-reference.d.ts.map +1 -1
  119. package/dist/config-reference.js +245 -69
  120. package/dist/config-reference.js.map +1 -1
  121. package/dist/configured-agent.d.ts +2 -8
  122. package/dist/configured-agent.d.ts.map +1 -1
  123. package/dist/configured-agent.js +3 -25
  124. package/dist/configured-agent.js.map +1 -1
  125. package/dist/consumer-contract.d.ts.map +1 -1
  126. package/dist/consumer-contract.js +2 -4
  127. package/dist/consumer-contract.js.map +1 -1
  128. package/dist/doctor-observability.d.ts +7 -0
  129. package/dist/doctor-observability.d.ts.map +1 -0
  130. package/dist/doctor-observability.js +80 -0
  131. package/dist/doctor-observability.js.map +1 -0
  132. package/dist/doctor-types.d.ts +17 -0
  133. package/dist/doctor-types.d.ts.map +1 -0
  134. package/dist/doctor-types.js +2 -0
  135. package/dist/doctor-types.js.map +1 -0
  136. package/dist/doctor.d.ts +2 -12
  137. package/dist/doctor.d.ts.map +1 -1
  138. package/dist/doctor.js +8 -108
  139. package/dist/doctor.js.map +1 -1
  140. package/dist/first-run-readiness.d.ts +1 -1
  141. package/dist/first-run-readiness.d.ts.map +1 -1
  142. package/dist/first-run-readiness.js +1 -1
  143. package/dist/first-run-readiness.js.map +1 -1
  144. package/dist/index.d.ts +0 -2
  145. package/dist/index.d.ts.map +1 -1
  146. package/dist/index.js +0 -1
  147. package/dist/index.js.map +1 -1
  148. package/dist/interaction-bridge.d.ts +5 -22
  149. package/dist/interaction-bridge.d.ts.map +1 -1
  150. package/dist/interaction-bridge.js +251 -141
  151. package/dist/interaction-bridge.js.map +1 -1
  152. package/dist/launchd.d.ts +33 -1
  153. package/dist/launchd.d.ts.map +1 -1
  154. package/dist/launchd.js +129 -2
  155. package/dist/launchd.js.map +1 -1
  156. package/dist/managed-web-logs.d.ts +16 -0
  157. package/dist/managed-web-logs.d.ts.map +1 -0
  158. package/dist/managed-web-logs.js +153 -0
  159. package/dist/managed-web-logs.js.map +1 -0
  160. package/dist/modules/catalog.js +1 -1
  161. package/dist/modules/catalog.js.map +1 -1
  162. package/dist/modules/known-tools.d.ts +1 -1
  163. package/dist/modules/known-tools.d.ts.map +1 -1
  164. package/dist/modules/known-tools.js +0 -3
  165. package/dist/modules/known-tools.js.map +1 -1
  166. package/dist/posted-reply-history.d.ts.map +1 -1
  167. package/dist/posted-reply-history.js +3 -0
  168. package/dist/posted-reply-history.js.map +1 -1
  169. package/dist/run-history.d.ts +6 -2
  170. package/dist/run-history.d.ts.map +1 -1
  171. package/dist/run-history.js +476 -96
  172. package/dist/run-history.js.map +1 -1
  173. package/dist/ui.js +1 -1
  174. package/dist/ui.js.map +1 -1
  175. package/dist/web-command.d.ts +4 -1
  176. package/dist/web-command.d.ts.map +1 -1
  177. package/dist/web-command.js +31 -1
  178. package/dist/web-command.js.map +1 -1
  179. package/dist/wizard/prompts.d.ts.map +1 -1
  180. package/dist/wizard/prompts.js +3 -4
  181. package/dist/wizard/prompts.js.map +1 -1
  182. package/dist/wizard/run.js +3 -3
  183. package/dist/wizard/run.js.map +1 -1
  184. package/package.json +16 -16
  185. package/schema/mono-agent.config.schema.json +282 -164
  186. package/skills/mono-agent-composer/SKILL.md +5 -5
  187. package/skills/mono-agent-composer/references/config-blueprint.md +6 -13
  188. package/skills/mono-agent-composer/references/discovery-questions.md +1 -1
  189. package/skills/mono-agent-composer/references/feature-coverage.md +7 -8
  190. package/skills/mono-agent-composer/references/package-map.md +5 -6
  191. package/skills/mono-agent-composer/references/playbooks.md +3 -3
  192. package/skills/mono-agent-composer/references/validation.md +21 -1
package/README.md CHANGED
@@ -10,7 +10,14 @@ Setup has two deliberate wall-clock paths: flags or non-TTY input use the fast s
10
10
 
11
11
  ## Category
12
12
 
13
+ <!-- package-metadata:start -->
14
+ <!-- Generated by scripts/generate-package-docs.mjs. Do not edit by hand. -->
15
+
13
16
  Category: `app`
17
+ Tier: `core`
18
+ Catalog responsibility: Runs a config-first agent host: loads mono-agent.config.json, owns configured responder/harness/runtime/memory composition, and starts every configured channel and traceability.
19
+
20
+ <!-- package-metadata:end -->
14
21
 
15
22
  ## Responsibility
16
23
 
@@ -23,16 +30,22 @@ Turn a folder's `mono-agent.config.json` into a running agent host:
23
30
  composition
24
31
  (including canonical `runtime.fallbacks` routes and legacy
25
32
  `runtime.fallbackModels` compatibility).
26
- - Preserve completed blocking `AskUser` / `TelegramAskButtons` question,
27
- options, and outcome in the assistant history copy so cold/stateless provider
28
- replay does not lose the out-of-band exchange.
33
+ - Preserve bounded answered/expired `AskUser` evidence in the assistant history
34
+ copy so cold/stateless provider replay does not lose the out-of-band exchange;
35
+ cancelled asks are not journaled.
29
36
  - Expose the request-scoped read-only `RunHistory` tool for safe normalized
30
- evidence from completed prior runs in the current conversation bucket.
37
+ search and paged evidence from completed prior runs in the logical
38
+ conversation, independent of daily rollover buckets.
31
39
  - Drive each channel through a uniform driver contract with per-channel
32
- `disabled` / `waiting_for_config` / `running` / `failed` status.
40
+ `disabled` / `waiting_for_config` / `running` / `degraded` / `failed` status.
41
+ `degraded` means a temporarily unavailable transport owns its recovery while
42
+ the responder remains alive; `failed` is terminal until the host restarts or
43
+ reloads that channel.
33
44
  - Register the host as a traceability source. Config edits are made directly in
34
45
  `mono-agent.config.json`, or proposed through the OS-owner-managed macOS
35
46
  configuration TUI; direct edits take effect on the next `mono-agent restart`.
47
+ - Reconcile installed macOS LaunchAgents at login and every five minutes, and
48
+ make `status` require agreement between the cached trace and launchd's live PID.
36
49
  - Resolve and surface any configured `observability.exporters` (the Phoenix
37
50
  preset): `start`/`status` report the configured endpoint and a note that JSONL
38
51
  artifacts remain local; `validate` performs the live reachability probe. Export
@@ -43,21 +56,27 @@ Turn a folder's `mono-agent.config.json` into a running agent host:
43
56
  - Scaffold (`mono-agent init`) and validate (`mono-agent validate`) agent
44
57
  folders non-destructively.
45
58
  - Operate the machine-wide `@mono-agent/web` assistant-ui console through
46
- `mono-agent web`. The `@mono-agent/session-web` recorder still ships but its
47
- `mono-agent sessions` launcher was removed; use `mono-agent tui`
48
- (recorded-run replay) or `mono-agent web` (live console).
59
+ `mono-agent web`; use `mono-agent tui` for bounded recorded-run replay.
49
60
 
50
61
  ## Install / Usage
51
62
 
52
63
  ```bash
53
- # inside the workspace
54
- pnpm --filter @mono-agent/agent-app run build
64
+ # Install the scoped CLI host directly:
65
+ npm install --global @mono-agent/agent-app
55
66
 
56
- # guided, readiness-proven setup and run
67
+ # Create an agent folder through the guided, readiness-proven path:
57
68
  cd /path/to/agent-folder
58
- node <workspace>/packages/agent-app/dist/cli.js init
69
+ mono-agent init
70
+ mono-agent validate
71
+ mono-agent start
59
72
  ```
60
73
 
74
+ For a one-off setup without a global install, use
75
+ `npm create mono-agent@latest init`; the `create-mono-agent` alias delegates to this
76
+ same CLI.
77
+
78
+ ### Guided initialization and readiness
79
+
61
80
  On an interactive terminal, bare `mono-agent init` (no flags) runs a colourful,
62
81
  step-by-step wizard — powered by `@clack/prompts` — that asks for the public
63
82
  agent name plus exact Role text for `IDENTITY.md` → `## Role` and composes the capability selection before writing anything. An existing `IDENTITY.md` is preserved and the review says the entered Role will not be written. Escape
@@ -122,6 +141,8 @@ the non-secret plan fingerprint still matches, restart all checks, edit choices,
122
141
  or cancel. Authentication repair clears every prior route proof because it can
123
142
  replace credential bytes. Guided commit atomically creates the config and rechecks its exact snapshot after validation. On macOS it then creates or refreshes the canonical per-config launchd service and waits up to 60 seconds for a fresh trace whose durable `metadata.lifecycle.startupCompleted` proof is true. The worker publishes that proof only after channels, memory rituals, and final memory-health work complete; later trace refreshes change the diagnostic `metadata.reason` without revoking readiness. The controller also re-proves the live launchd PID, exact snapshot, current channel/memory health, and reachable TUI before it opens `mono-agent tui --configure` against that background responder. A readiness timeout or trace/TUI-probe error preserves the committed files and skips chat, then unloads the worker plus scheduled maintenance and removes their definitions only when stopped state is proven. If cleanup cannot be proven, the command says that a process may still be running and prints exact `start`, `status`, and `logs --follow` recovery commands plus log paths. Workers from an older release that have no durable lifecycle marker must restart once before configuration can attach. Off macOS, conversational configuration is unavailable: the wizard preserves the files and gives manual edit/validate, foreground-start, and ordinary-TUI guidance without claiming readiness. Any flag or non-TTY invocation remains scaffold-only and never starts a process.
124
143
 
144
+ ### Managed skills and documentation companion
145
+
125
146
  Every scaffold selects versioned `mono-agent-configure` and `mono-agent-memory`
126
147
  skills from `./skills` with index disclosure. `ReadSkill` remains separate from
127
148
  action-tool policy. `mono-agent install-skill --project --check|--update` reports
@@ -143,6 +164,8 @@ transactional; an unrelated entry named `mono-agent-docs` is never overwritten,
143
164
  including with `--force`. Project `--check` / `--update` mode does not touch
144
165
  harness MCP configuration.
145
166
 
167
+ ### Conversational self-configuration
168
+
146
169
  In the separate, visibly marked **SELF-CONFIG** session only, the background app injects proposal-only
147
170
  `ProposeAgentConfiguration`. The opening message shows a user-led map of identity/knowledge,
148
171
  runtime/models, skills/tools/MCP/plugins, memory, channels/APIs/A2A, automation,
@@ -178,6 +201,8 @@ each settled turn receives a fresh opaque proposal capability plus a safe host-o
178
201
  summary. Fast follow-up text remains in the editor until settlement and is never sent
179
202
  as ordinary chat or to a stale endpoint. Remote/proactive channels never receive this tool.
180
203
 
204
+ ### Managed background runtime
205
+
181
206
  Before the first macOS background launch, the CLI copies the exact package and
182
207
  already-resolved dependency closure it is currently executing—including configured
183
208
  channel plugins and the optional Supermemory backend—into an owner-only,
@@ -190,6 +215,8 @@ digest are bound into the runtime marker and verified on every reuse. The Launch
190
215
  retained because another agent may still reference them. A loaded job is fully
191
216
  booted out and bootstrapped again so rewritten arguments and environment are
192
217
  adopted. During a slow install, the existing healthy worker remains loaded. An
218
+ active shared installation may take up to five minutes; concurrent consumers
219
+ wait behind its PID/incarnation-aware lock and reuse the resulting closure. An
193
220
  owner-private per-instance publication barrier makes any KeepAlive respawn wait
194
221
  until the replacement closure and plist are committed; dead or PID-reused
195
222
  controller ownership is recovered by process incarnation. The replacement
@@ -210,6 +237,8 @@ name the canonical config. Readiness requires one live launchd-owned trace PID,
210
237
  the exact durable snapshot, and, for configuration, a reachable TUI endpoint.
211
238
  Stop succeeds only after both launchd unload and worker death are proven.
212
239
 
240
+ ### Validation, recovery, and managed logs
241
+
213
242
  `mono-agent validate` (and its `doctor` alias) reports the provenance of the CLI
214
243
  producing the report in its Runtime provenance section: a private managed marker
215
244
  whose freshly recomputed installed closure and coherent current manifest validate
@@ -219,7 +248,27 @@ not an attestation of a separately running daemon.
219
248
 
220
249
  Managed launchd stdout/stderr use a fixed automatic policy: each active file
221
250
  and each of three retained generations is capped at 5 MiB. A separate one-shot
222
- LaunchAgent checks every five minutes. When maintenance is needed it takes the
251
+ LaunchAgent runs at login and every five minutes with no `KeepAlive` and
252
+ `/dev/null` output. It first authenticates its exact launchd-owned PID,
253
+ reconstructs the durable worker environment, validates config, and captures a
254
+ fresh snapshot. It compares the strictly parsed loaded main definition and its
255
+ verified runtime proof with the original controller CLI's inert version/digest;
256
+ it never executes mutable source bytes. If the source disappeared, it can repair
257
+ an inactive or snapshot-drifted worker from its private helper closure without
258
+ claiming an upgrade or downgrading a healthy worker.
259
+
260
+ The helper executes with a closed system `PATH` while carrying the worker's
261
+ non-secret durable `PATH` as a private argument. Recovery therefore preserves
262
+ the worker's toolchain lookup without letting it shadow the helper's own system
263
+ commands.
264
+
265
+ When reconciliation is needed, the existing worker stays loaded through runtime
266
+ installation. The helper then stops only the main job, refreshes both plists,
267
+ bootstraps the main job, and waits for the normal 60-second readiness proof. A
268
+ failure preserves the helper and both definitions for the next scheduled retry;
269
+ explicit stop unloads the helper and removes both definitions after PID-death
270
+ proof, so it cannot resurrect a stopped service. When log maintenance is needed,
271
+ the helper takes the
223
272
  same per-config lifecycle lock, verifies the existing main plist, proves the
224
273
  worker stopped, and commits owner-only bounded tails through per-agent,
225
274
  fsynced deterministic stages plus a recoverable journal. A separate per-agent
@@ -244,6 +293,8 @@ and operational values such as `PATH`/`HOME`. Shell-only provider credentials an
244
293
  config overrides cannot create a success that launchd cannot reproduce; persisted
245
294
  non-secret `MONO_AGENT_*` overrides are rejected by name.
246
295
 
296
+ ### Provider readiness and route safety
297
+
247
298
  Direct Codex discovery checks the executable, login status, and live app-server
248
299
  model catalog without equating catalog availability with authentication or a
249
300
  verified turn. Missing Codex setup points to the official instructions at
@@ -270,14 +321,33 @@ silently drops a required capability. Pi `pi:opencode-go:*` remains a Pi route.
270
321
  Direct OpenCode also requires exact allow-all; restrictive static policies fail
271
322
  validation/runtime and an incompatible dynamic override is warned and ignored.
272
323
 
324
+ ### Run history
325
+
273
326
  `RunHistory` requires no config key. It is automatically available under
274
327
  allow-all on MCP-capable routes; a restrictive `tools.allowedTools` must name
275
- `RunHistory` explicitly (`run_history` remains a deprecated input alias), and
328
+ `RunHistory` explicitly (`run_history` remains a deprecated policy alias), and
276
329
  `disallowedTools` can remove it. Direct OpenCode and other MCP-incompatible
277
- routes suppress it. Its `list` and `inspect` actions can read only completed
278
- prior runs in the exact current conversation bucket and return bounded,
279
- normalized evidence. Structured projected values first pass through the shared
280
- observability redactor: non-numeric values under sensitive-looking object keys
330
+ routes suppress it. The agent-facing shorthand is `{}` to list recent runs,
331
+ `{ "query": "topic terms" }` to search safe trigger and summary metadata,
332
+ `{ "runId": "..." }` for a compact overview, and
333
+ `{ "runId": "...", "cursor": "..." }` for the next timeline page. The
334
+ `run_id` spelling and explicit `action: "list" | "search" | "inspect"` remain
335
+ compatible. List/search defaults to 5 results (maximum 10); timeline pages hold
336
+ at most 10 entries and about 16 KiB. Each result includes tool-authored
337
+ `navigation.guidance` and exact `navigation.nextActions[].arguments` for
338
+ continuing exploration.
339
+ List and search read retained summaries once; search never reads event JSONL
340
+ and matches all normalized terms only against sanitized trigger/user input,
341
+ run id, dates, status/failure kind, source/detail, model, and effort. Daily
342
+ session rollover buckets are treated as one logical conversation when rollover
343
+ is configured, while current/running runs and unrelated conversations or
344
+ threads stay unavailable. Inspect returns metadata, trigger, final visible
345
+ output, warning/failure summaries, and tool-name call/error counts before any
346
+ timeline detail is requested. Timeline continuation is cursor-paged, and nested
347
+ `RunHistory` result bodies are omitted to prevent recursive expansion.
348
+ All returned historical evidence is bounded and normalized. Structured
349
+ projected values first pass through the shared observability redactor:
350
+ non-numeric values under sensitive-looking object keys
281
351
  are redacted; numeric values under matched keys are retained; free text is not
282
352
  content-scanned or scrubbed. `RunHistory` then applies an additional projection
283
353
  sanitizer. In that second pass, numeric values under `credential`, `private_key`,
@@ -286,25 +356,30 @@ and `bearer` can remain visible; numeric values under `apiKey`, `token`,
286
356
  Assignment-shaped password or secret prose is content-scanned and replaced with
287
357
  the diagnostic or tool-result omission sentinel. An optionally quoted assignment
288
358
  value is exempt only when its complete value is exactly `[redacted]`; any prefix
289
- or suffix is omitted. Results exclude the
290
- current/running run, other conversations or rollover buckets, system prompts,
291
- reasoning, recalled memory, turn-context payloads, and raw artifact paths;
292
- historical text is marked untrusted.
359
+ or suffix is omitted. Results exclude the current/running run, unrelated
360
+ conversations or threads, system prompts, reasoning, recalled memory,
361
+ turn-context payloads, and raw artifact paths; historical text is marked
362
+ untrusted.
363
+
364
+ ### Channel interactions and conversation history
293
365
 
294
366
  For missing context, the agent should use active conversation history first,
295
367
  `MemoryRecall` for intentionally captured durable facts, and `RunHistory` for
296
- exact prior-run/tool evidence. Completed blocking `AskUser` and
297
- `TelegramAskButtons` exchanges are written into the assistant history copy
298
- before the final response, explicitly labelled as untrusted historical data and
299
- bounded by newest whole interactions, without changing the outward message or
300
- long-term memory capture. `TelegramAskButtons` with `wait: false` continues to produce a
301
- synthetic next turn when the user taps later.
302
-
303
- For blocking `TelegramAskButtons`, the next plain-text Telegram message is also
304
- a valid custom answer. It resolves the same in-flight tool call and the app asks
305
- the Telegram sink to remove the inline keyboard. The built-in Telegram `/new`
306
- command uses the configured responder's host-owned reset surface to clear only
307
- that conversation and force skill/startup-context reload on its next turn.
368
+ exact prior-run/tool evidence. Answered or expired blocking `AskUser` exchanges
369
+ are written into the assistant history copy before the final response;
370
+ cancelled asks are not journaled. The copy is explicitly labelled as untrusted
371
+ historical data and bounded by newest whole interactions. If the newest valid
372
+ entry is oversized, its option descriptions may be omitted while its questions,
373
+ outcome, and answers stay whole. This does not change the outward message or
374
+ long-term memory capture. The strict tool accepts one to five structured
375
+ questions, each with two or three described options and an optional multi-select
376
+ mode. Slack and Telegram present the questions sequentially with native buttons
377
+ plus a typed custom reply; the web console renders the whole question set as one
378
+ form. The built-in Telegram `/new` command uses the configured responder's
379
+ host-owned reset surface to clear only that conversation and force
380
+ skill/startup-context reload on its next turn.
381
+
382
+ ### Memory health and maintenance
308
383
 
309
384
  The app publishes a cached, content-free `memoryHealth` snapshot in the primary
310
385
  trace-source heartbeat and any enabled best-effort global mirror. Built-in
@@ -369,6 +444,8 @@ death blocks normal writers until recovery resumes. Explicit restore refuses to
369
444
  overwrite any durable change made after cleanup and atomically consumes the
370
445
  verified sibling snapshot without constructing a third full copy.
371
446
 
447
+ ### Fleet verification
448
+
372
449
  For launchd fleet verification, invoke the deployed CLI with each plist's exact
373
450
  `ProgramArguments[0]` Node, `[1]` CLI, absolute `--config`/`--env-file`, and
374
451
  managed `PATH`. Probe children retain only launchd-safe operational environment
@@ -377,7 +454,7 @@ proxy overrides are not fleet evidence. The current fleet contract is Node
377
454
  `24.15.0`, modules ABI `137`; an ambient shell Node or environment is not
378
455
  evidence that the service can load the native memory modules.
379
456
 
380
- Programmatic:
457
+ ### Programmatic embedding
381
458
 
382
459
  ```ts
383
460
  import { startMonoAgentApp } from "@mono-agent/agent-app";
@@ -387,8 +464,50 @@ console.log(app.channelStatuses());
387
464
  await app.stop();
388
465
  ```
389
466
 
467
+ ## Architecture
468
+
469
+ ### Data flow
470
+
471
+ `@mono-agent/agent-app` is the composition root. A running host follows this
472
+ path:
473
+
474
+ 1. Resolve built-in and configured plugin `ChannelDriver`s, then load each
475
+ channel's config together with the shared core config.
476
+ 2. Build a separate configured responder for each active channel. The responder
477
+ composes the runtime, harness, memory, tool/MCP policy, conversation history,
478
+ recorder, and request-scoped extensions.
479
+ 3. Start every driver in parallel. Each driver normalizes transport input into
480
+ the shared request/stream contract and returns a `RunningChannel` handle.
481
+ 4. Publish traceability, exporter, sandbox, continuation, and memory-health
482
+ state while the controller tracks channel states as `disabled`,
483
+ `waiting_for_config`, `running`, `degraded`, or `failed`.
484
+ 5. On stop or reload, stop the transport first, then dispose its responder so
485
+ queued turns and warm provider sessions cannot outlive the config snapshot.
486
+
487
+ ### Package structure
488
+
489
+ | Area | Modules | Purpose |
490
+ | --- | --- | --- |
491
+ | Stable host facade | `app.ts`, `app-controller.ts`, `app-controller-*.ts`, `app-controller-types.ts` | Startup state plus narrow operation ports for status, reload, channel lifecycle, traceability, and teardown. |
492
+ | Configured agent | `configured-agent.ts`, `app-controller-responder.ts` | Runtime, harness, memory, history, tools, and recorder composition. |
493
+ | Channel integration | `channels.ts`, `channel-drivers/` | Built-in drivers plus config-loaded plugin resolution. |
494
+ | Interaction and send tools | `interaction-bridge.ts`, `adapter-send-tools*.ts` | Structured `AskUser` state, channel sinks, progress, adapter-send tools, and bounded interaction-history projection. |
495
+ | Operator CLI | `cli*.ts`, `init.ts`, `doctor.ts`, `doctor-observability.ts`, `background*.ts`, `managed-web-logs.ts` | Setup, focused validation sections, managed service/log lifecycle, and diagnostics. |
496
+ | Host services | `run-history.ts`, `continuation*.ts`, `memory-*.ts` | Bounded prior-run evidence, durable continuations, and memory operations. |
497
+
390
498
  ## Public API
391
499
 
500
+ ### Start here
501
+
502
+ | Need | Primary API |
503
+ | --- | --- |
504
+ | Start or stop a config-first host | `startMonoAgentApp`, `MonoAgentApp`, `MonoAgentAppOptions` |
505
+ | Build only the configured execution stack | `createConfiguredAgentResponder`, `createConfiguredAgentHarness`, `createConfiguredAgentRuntime`, `createConfiguredMemory` |
506
+ | Embed selected built-in channels | `defaultChannelDrivers`, `resolveChannelDrivers`, `createTelegramChannelDriver`, `createSlackChannelDriver`, `createWebhookChannelDriver`, `createOpenAIApiChannelDriver`, `createCronChannelDriver` |
507
+ | Scaffold or validate an agent folder | `initMonoAgentFolder`, `validateMonoAgentFolder` |
508
+ | Add bounded prior-run inspection | `createRunHistoryRuntimeExtension`, `isRunHistoryToolAllowed` |
509
+ | Operate the CLI programmatically | `runCli`, `parseCliArgs`, `renderHelp` |
510
+
392
511
  <!-- public-api-inventory:start -->
393
512
  <!-- Generated by scripts/generate-public-api-docs.mjs. Do not edit by hand. -->
394
513
 
@@ -398,7 +517,6 @@ Every symbol exported by each public code entrypoint is listed below.
398
517
 
399
518
  ```text
400
519
  AppTraceDefaults
401
- BroadcastRunContext
402
520
  COMPOSER_SKILL_NAME
403
521
  CONTINUATION_CLAIM_TOKEN_ENV
404
522
  CONTINUATION_CLAIM_TOKEN_HEADER
@@ -509,7 +627,6 @@ consumerContractNames
509
627
  consumerContractRunSummaryStatuses
510
628
  continuationDigest
511
629
  continuationOperatorToken
512
- createBroadcastRunRecorder
513
630
  createConfiguredAgentHarness
514
631
  createConfiguredAgentResponder
515
632
  createConfiguredAgentRuntime
@@ -581,6 +698,16 @@ compose communication adapters; adapters never depend on it.
581
698
  `@mono-agent/agent-harness` and `@mono-agent/runtime-adapter`).
582
699
  - Multi-agent orchestration (owned by `@mono-agent/agent-orchestrator`).
583
700
 
701
+ ## Related Documentation
702
+
703
+ - [Quickstart](https://mono-agent-docs.vercel.app/getting-started/quickstart/)
704
+ - [Agent folder layout](https://mono-agent-docs.vercel.app/config/folder-layout/)
705
+ - [Configuration blueprint](https://mono-agent-docs.vercel.app/config/blueprint/)
706
+ - [CLI reference](https://mono-agent-docs.vercel.app/observability/cli-reference/)
707
+ - [Programmatic composition](https://mono-agent-docs.vercel.app/programmatic/composition/)
708
+ - [Channels](https://mono-agent-docs.vercel.app/channels/)
709
+ - [Package source and generated API inventory](https://github.com/robertsreberski/mono-agent/tree/main/packages/agent-app)
710
+
584
711
  ## Verification
585
712
 
586
713
  ```bash
@@ -13,7 +13,6 @@ async function main() {
13
13
  const proxy = createAdapterSendProxy(process.env, {
14
14
  directLoopbackUrls: [
15
15
  settings.telegram?.apiRoot,
16
- settings.telegram?.askBridge?.bridgeUrl,
17
16
  settings.askUser?.bridgeUrl,
18
17
  childConfig.deliveryHistory?.bridgeUrl,
19
18
  ].filter((value) => value !== undefined),
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-send-tools-main.js","sourceRoot":"","sources":["../src/adapter-send-tools-main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-send-tools-main.js","sourceRoot":"","sources":["../src/adapter-send-tools-main.ts"],"names":[],"mappings":"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"}
@@ -29,11 +29,9 @@ export interface TelegramSendToolSettings {
29
29
  /** Which telegram tools the policy permits (the adapter config gates the rest). */
30
30
  readonly tools: {
31
31
  readonly send: boolean;
32
- readonly ask: boolean;
33
32
  /** The single TelegramSendFile tool (document + photo via a `kind` param). */
34
33
  readonly file: boolean;
35
34
  };
36
- readonly askBridge?: AskUserToolSettings;
37
35
  readonly sendTools?: {
38
36
  readonly scope?: "producing-conversation";
39
37
  readonly pathScope?: "run-output";
@@ -56,7 +54,8 @@ export interface AskUserToolSettings {
56
54
  readonly bridgeUrl: string;
57
55
  readonly bridgeToken: string;
58
56
  readonly timeoutMs: number;
59
- readonly conversationId?: string;
57
+ readonly producerConversationId?: string;
58
+ readonly interactionConversationId?: string;
60
59
  readonly runId?: string;
61
60
  }
62
61
  export interface AdapterSendToolsSettings {
@@ -66,7 +65,7 @@ export interface AdapterSendToolsSettings {
66
65
  }
67
66
  export interface AdapterSendToolsClients {
68
67
  readonly slack?: Pick<SlackWebApi, "chatPostMessage">;
69
- readonly telegram?: Pick<TelegramMessageSender, "sendMessage" | "sendDocument" | "sendPhoto" | "editMessageText">;
68
+ readonly telegram?: Partial<Pick<TelegramMessageSender, "sendMessage" | "sendDocument" | "sendPhoto">>;
70
69
  }
71
70
  export interface AdapterSendToolsHttpOptions {
72
71
  readonly fetchImpl?: typeof fetch;
@@ -107,6 +106,9 @@ export interface AdapterSendToolsIndexing {
107
106
  interface AdapterSendToolsRequestInput {
108
107
  readonly request?: {
109
108
  readonly conversationId?: string;
109
+ readonly replyTo?: {
110
+ readonly conversationId?: string;
111
+ };
110
112
  };
111
113
  readonly runId?: string;
112
114
  }
@@ -116,7 +118,7 @@ export interface AdapterSendToolsResolveOptions {
116
118
  readonly logger?: {
117
119
  warn?: (message: string, metadata?: Record<string, unknown>) => void;
118
120
  } | undefined;
119
- /** Suppress bridge-backed AskUser/TelegramAskButtons for MCP-incompatible routes. */
121
+ /** Suppress bridge-backed AskUser for MCP-incompatible routes. */
120
122
  readonly suppressInteractionTools?: boolean | undefined;
121
123
  /** App-owned master bridge settings; never sourced from project MCP config. */
122
124
  readonly interaction?: AdapterSendToolsInteractionEnv | undefined;
@@ -139,6 +141,7 @@ export declare function isAdapterSendToolAllowed(name: string, policy: {
139
141
  */
140
142
  export interface AdapterSendToolsChildContext {
141
143
  readonly conversationId?: string;
144
+ readonly interactionConversationId?: string;
142
145
  readonly runId?: string;
143
146
  readonly indexPath?: string;
144
147
  readonly runOutputDir?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-send-tools.d.ts","sourceRoot":"","sources":["../src/adapter-send-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-send-tools.d.ts","sourceRoot":"","sources":["../src/adapter-send-tools.ts"],"names":[],"mappings":"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"}