loudmouth-ai 0.1.0 → 0.2.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 (593) hide show
  1. package/README.md +148 -77
  2. package/dist/build-info.json +3 -3
  3. package/extensions/package.json +6 -0
  4. package/package.json +1 -1
  5. package/skills/autopilot/SKILL.md +179 -0
  6. package/skills/goals/SKILL.md +189 -0
  7. package/skills/wordpress/SKILL.md +232 -0
  8. package/extensions/bluebubbles/clawdbot.plugin.json +0 -11
  9. package/extensions/bluebubbles/index.ts +0 -20
  10. package/extensions/bluebubbles/package.json +0 -33
  11. package/extensions/bluebubbles/src/accounts.ts +0 -80
  12. package/extensions/bluebubbles/src/actions.test.ts +0 -651
  13. package/extensions/bluebubbles/src/actions.ts +0 -403
  14. package/extensions/bluebubbles/src/attachments.test.ts +0 -346
  15. package/extensions/bluebubbles/src/attachments.ts +0 -282
  16. package/extensions/bluebubbles/src/channel.ts +0 -399
  17. package/extensions/bluebubbles/src/chat.test.ts +0 -462
  18. package/extensions/bluebubbles/src/chat.ts +0 -354
  19. package/extensions/bluebubbles/src/config-schema.ts +0 -51
  20. package/extensions/bluebubbles/src/media-send.ts +0 -168
  21. package/extensions/bluebubbles/src/monitor.test.ts +0 -2140
  22. package/extensions/bluebubbles/src/monitor.ts +0 -2101
  23. package/extensions/bluebubbles/src/onboarding.ts +0 -340
  24. package/extensions/bluebubbles/src/probe.ts +0 -127
  25. package/extensions/bluebubbles/src/reactions.test.ts +0 -393
  26. package/extensions/bluebubbles/src/reactions.ts +0 -183
  27. package/extensions/bluebubbles/src/runtime.ts +0 -14
  28. package/extensions/bluebubbles/src/send.test.ts +0 -809
  29. package/extensions/bluebubbles/src/send.ts +0 -418
  30. package/extensions/bluebubbles/src/targets.test.ts +0 -184
  31. package/extensions/bluebubbles/src/targets.ts +0 -323
  32. package/extensions/bluebubbles/src/types.ts +0 -127
  33. package/extensions/copilot-proxy/README.md +0 -24
  34. package/extensions/copilot-proxy/clawdbot.plugin.json +0 -11
  35. package/extensions/copilot-proxy/index.ts +0 -142
  36. package/extensions/copilot-proxy/package.json +0 -11
  37. package/extensions/google-antigravity-auth/README.md +0 -24
  38. package/extensions/google-antigravity-auth/clawdbot.plugin.json +0 -11
  39. package/extensions/google-antigravity-auth/index.ts +0 -437
  40. package/extensions/google-antigravity-auth/package.json +0 -11
  41. package/extensions/google-gemini-cli-auth/README.md +0 -35
  42. package/extensions/google-gemini-cli-auth/clawdbot.plugin.json +0 -11
  43. package/extensions/google-gemini-cli-auth/index.ts +0 -91
  44. package/extensions/google-gemini-cli-auth/oauth.test.ts +0 -228
  45. package/extensions/google-gemini-cli-auth/oauth.ts +0 -580
  46. package/extensions/google-gemini-cli-auth/package.json +0 -11
  47. package/extensions/googlechat/clawdbot.plugin.json +0 -11
  48. package/extensions/googlechat/index.ts +0 -20
  49. package/extensions/googlechat/package.json +0 -39
  50. package/extensions/googlechat/src/accounts.ts +0 -133
  51. package/extensions/googlechat/src/actions.ts +0 -162
  52. package/extensions/googlechat/src/api.test.ts +0 -62
  53. package/extensions/googlechat/src/api.ts +0 -259
  54. package/extensions/googlechat/src/auth.ts +0 -113
  55. package/extensions/googlechat/src/channel.ts +0 -580
  56. package/extensions/googlechat/src/monitor.test.ts +0 -27
  57. package/extensions/googlechat/src/monitor.ts +0 -900
  58. package/extensions/googlechat/src/onboarding.ts +0 -278
  59. package/extensions/googlechat/src/runtime.ts +0 -14
  60. package/extensions/googlechat/src/targets.test.ts +0 -35
  61. package/extensions/googlechat/src/targets.ts +0 -55
  62. package/extensions/googlechat/src/types.config.ts +0 -3
  63. package/extensions/googlechat/src/types.ts +0 -73
  64. package/extensions/imessage/clawdbot.plugin.json +0 -11
  65. package/extensions/imessage/index.ts +0 -18
  66. package/extensions/imessage/package.json +0 -11
  67. package/extensions/imessage/src/channel.ts +0 -294
  68. package/extensions/imessage/src/runtime.ts +0 -14
  69. package/extensions/line/clawdbot.plugin.json +0 -11
  70. package/extensions/line/index.ts +0 -20
  71. package/extensions/line/package.json +0 -29
  72. package/extensions/line/src/card-command.ts +0 -338
  73. package/extensions/line/src/channel.logout.test.ts +0 -96
  74. package/extensions/line/src/channel.sendPayload.test.ts +0 -308
  75. package/extensions/line/src/channel.ts +0 -773
  76. package/extensions/line/src/runtime.ts +0 -14
  77. package/extensions/matrix/CHANGELOG.md +0 -54
  78. package/extensions/matrix/clawdbot.plugin.json +0 -11
  79. package/extensions/matrix/index.ts +0 -18
  80. package/extensions/matrix/package.json +0 -36
  81. package/extensions/matrix/src/actions.ts +0 -185
  82. package/extensions/matrix/src/channel.directory.test.ts +0 -56
  83. package/extensions/matrix/src/channel.ts +0 -417
  84. package/extensions/matrix/src/config-schema.ts +0 -62
  85. package/extensions/matrix/src/directory-live.ts +0 -175
  86. package/extensions/matrix/src/group-mentions.ts +0 -61
  87. package/extensions/matrix/src/matrix/accounts.test.ts +0 -83
  88. package/extensions/matrix/src/matrix/accounts.ts +0 -63
  89. package/extensions/matrix/src/matrix/actions/client.ts +0 -53
  90. package/extensions/matrix/src/matrix/actions/messages.ts +0 -120
  91. package/extensions/matrix/src/matrix/actions/pins.ts +0 -70
  92. package/extensions/matrix/src/matrix/actions/reactions.ts +0 -84
  93. package/extensions/matrix/src/matrix/actions/room.ts +0 -88
  94. package/extensions/matrix/src/matrix/actions/summary.ts +0 -77
  95. package/extensions/matrix/src/matrix/actions/types.ts +0 -84
  96. package/extensions/matrix/src/matrix/actions.ts +0 -15
  97. package/extensions/matrix/src/matrix/active-client.ts +0 -11
  98. package/extensions/matrix/src/matrix/client/config.ts +0 -165
  99. package/extensions/matrix/src/matrix/client/create-client.ts +0 -127
  100. package/extensions/matrix/src/matrix/client/logging.ts +0 -35
  101. package/extensions/matrix/src/matrix/client/runtime.ts +0 -4
  102. package/extensions/matrix/src/matrix/client/shared.ts +0 -169
  103. package/extensions/matrix/src/matrix/client/storage.ts +0 -131
  104. package/extensions/matrix/src/matrix/client/types.ts +0 -34
  105. package/extensions/matrix/src/matrix/client.test.ts +0 -57
  106. package/extensions/matrix/src/matrix/client.ts +0 -9
  107. package/extensions/matrix/src/matrix/credentials.ts +0 -103
  108. package/extensions/matrix/src/matrix/deps.ts +0 -57
  109. package/extensions/matrix/src/matrix/format.test.ts +0 -34
  110. package/extensions/matrix/src/matrix/format.ts +0 -22
  111. package/extensions/matrix/src/matrix/index.ts +0 -11
  112. package/extensions/matrix/src/matrix/monitor/allowlist.ts +0 -58
  113. package/extensions/matrix/src/matrix/monitor/auto-join.ts +0 -68
  114. package/extensions/matrix/src/matrix/monitor/direct.ts +0 -105
  115. package/extensions/matrix/src/matrix/monitor/events.ts +0 -103
  116. package/extensions/matrix/src/matrix/monitor/handler.ts +0 -645
  117. package/extensions/matrix/src/matrix/monitor/index.ts +0 -279
  118. package/extensions/matrix/src/matrix/monitor/location.ts +0 -83
  119. package/extensions/matrix/src/matrix/monitor/media.test.ts +0 -103
  120. package/extensions/matrix/src/matrix/monitor/media.ts +0 -113
  121. package/extensions/matrix/src/matrix/monitor/mentions.ts +0 -31
  122. package/extensions/matrix/src/matrix/monitor/replies.ts +0 -96
  123. package/extensions/matrix/src/matrix/monitor/room-info.ts +0 -58
  124. package/extensions/matrix/src/matrix/monitor/rooms.ts +0 -43
  125. package/extensions/matrix/src/matrix/monitor/threads.ts +0 -64
  126. package/extensions/matrix/src/matrix/monitor/types.ts +0 -39
  127. package/extensions/matrix/src/matrix/poll-types.test.ts +0 -22
  128. package/extensions/matrix/src/matrix/poll-types.ts +0 -157
  129. package/extensions/matrix/src/matrix/probe.ts +0 -70
  130. package/extensions/matrix/src/matrix/send/client.ts +0 -63
  131. package/extensions/matrix/src/matrix/send/formatting.ts +0 -92
  132. package/extensions/matrix/src/matrix/send/media.ts +0 -220
  133. package/extensions/matrix/src/matrix/send/targets.test.ts +0 -102
  134. package/extensions/matrix/src/matrix/send/targets.ts +0 -144
  135. package/extensions/matrix/src/matrix/send/types.ts +0 -109
  136. package/extensions/matrix/src/matrix/send.test.ts +0 -172
  137. package/extensions/matrix/src/matrix/send.ts +0 -255
  138. package/extensions/matrix/src/onboarding.ts +0 -432
  139. package/extensions/matrix/src/outbound.ts +0 -53
  140. package/extensions/matrix/src/resolve-targets.ts +0 -89
  141. package/extensions/matrix/src/runtime.ts +0 -14
  142. package/extensions/matrix/src/tool-actions.ts +0 -160
  143. package/extensions/matrix/src/types.ts +0 -95
  144. package/extensions/mattermost/clawdbot.plugin.json +0 -11
  145. package/extensions/mattermost/index.ts +0 -18
  146. package/extensions/mattermost/package.json +0 -25
  147. package/extensions/mattermost/src/channel.test.ts +0 -43
  148. package/extensions/mattermost/src/channel.ts +0 -339
  149. package/extensions/mattermost/src/config-schema.ts +0 -56
  150. package/extensions/mattermost/src/group-mentions.ts +0 -14
  151. package/extensions/mattermost/src/mattermost/accounts.ts +0 -115
  152. package/extensions/mattermost/src/mattermost/client.ts +0 -208
  153. package/extensions/mattermost/src/mattermost/index.ts +0 -9
  154. package/extensions/mattermost/src/mattermost/monitor-helpers.ts +0 -150
  155. package/extensions/mattermost/src/mattermost/monitor.ts +0 -921
  156. package/extensions/mattermost/src/mattermost/probe.ts +0 -70
  157. package/extensions/mattermost/src/mattermost/send.ts +0 -217
  158. package/extensions/mattermost/src/normalize.ts +0 -38
  159. package/extensions/mattermost/src/onboarding-helpers.ts +0 -42
  160. package/extensions/mattermost/src/onboarding.ts +0 -187
  161. package/extensions/mattermost/src/runtime.ts +0 -14
  162. package/extensions/mattermost/src/types.ts +0 -50
  163. package/extensions/msteams/CHANGELOG.md +0 -51
  164. package/extensions/msteams/clawdbot.plugin.json +0 -11
  165. package/extensions/msteams/index.ts +0 -18
  166. package/extensions/msteams/package.json +0 -36
  167. package/extensions/msteams/src/attachments/download.ts +0 -206
  168. package/extensions/msteams/src/attachments/graph.ts +0 -319
  169. package/extensions/msteams/src/attachments/html.ts +0 -76
  170. package/extensions/msteams/src/attachments/payload.ts +0 -22
  171. package/extensions/msteams/src/attachments/shared.ts +0 -235
  172. package/extensions/msteams/src/attachments/types.ts +0 -37
  173. package/extensions/msteams/src/attachments.test.ts +0 -424
  174. package/extensions/msteams/src/attachments.ts +0 -18
  175. package/extensions/msteams/src/channel.directory.test.ts +0 -46
  176. package/extensions/msteams/src/channel.ts +0 -436
  177. package/extensions/msteams/src/conversation-store-fs.test.ts +0 -88
  178. package/extensions/msteams/src/conversation-store-fs.ts +0 -155
  179. package/extensions/msteams/src/conversation-store-memory.ts +0 -45
  180. package/extensions/msteams/src/conversation-store.ts +0 -41
  181. package/extensions/msteams/src/directory-live.ts +0 -179
  182. package/extensions/msteams/src/errors.test.ts +0 -46
  183. package/extensions/msteams/src/errors.ts +0 -158
  184. package/extensions/msteams/src/file-consent-helpers.test.ts +0 -234
  185. package/extensions/msteams/src/file-consent-helpers.ts +0 -73
  186. package/extensions/msteams/src/file-consent.ts +0 -122
  187. package/extensions/msteams/src/graph-chat.ts +0 -52
  188. package/extensions/msteams/src/graph-upload.ts +0 -445
  189. package/extensions/msteams/src/inbound.test.ts +0 -67
  190. package/extensions/msteams/src/inbound.ts +0 -38
  191. package/extensions/msteams/src/index.ts +0 -4
  192. package/extensions/msteams/src/media-helpers.test.ts +0 -186
  193. package/extensions/msteams/src/media-helpers.ts +0 -77
  194. package/extensions/msteams/src/messenger.test.ts +0 -245
  195. package/extensions/msteams/src/messenger.ts +0 -460
  196. package/extensions/msteams/src/monitor-handler/inbound-media.ts +0 -123
  197. package/extensions/msteams/src/monitor-handler/message-handler.ts +0 -629
  198. package/extensions/msteams/src/monitor-handler.ts +0 -166
  199. package/extensions/msteams/src/monitor-types.ts +0 -5
  200. package/extensions/msteams/src/monitor.ts +0 -290
  201. package/extensions/msteams/src/onboarding.ts +0 -432
  202. package/extensions/msteams/src/outbound.ts +0 -47
  203. package/extensions/msteams/src/pending-uploads.ts +0 -87
  204. package/extensions/msteams/src/policy.test.ts +0 -210
  205. package/extensions/msteams/src/policy.ts +0 -202
  206. package/extensions/msteams/src/polls-store-memory.ts +0 -30
  207. package/extensions/msteams/src/polls-store.test.ts +0 -40
  208. package/extensions/msteams/src/polls.test.ts +0 -72
  209. package/extensions/msteams/src/polls.ts +0 -299
  210. package/extensions/msteams/src/probe.test.ts +0 -57
  211. package/extensions/msteams/src/probe.ts +0 -99
  212. package/extensions/msteams/src/reply-dispatcher.ts +0 -128
  213. package/extensions/msteams/src/resolve-allowlist.ts +0 -277
  214. package/extensions/msteams/src/runtime.ts +0 -14
  215. package/extensions/msteams/src/sdk-types.ts +0 -19
  216. package/extensions/msteams/src/sdk.ts +0 -33
  217. package/extensions/msteams/src/send-context.ts +0 -156
  218. package/extensions/msteams/src/send.ts +0 -489
  219. package/extensions/msteams/src/sent-message-cache.test.ts +0 -16
  220. package/extensions/msteams/src/sent-message-cache.ts +0 -41
  221. package/extensions/msteams/src/storage.ts +0 -22
  222. package/extensions/msteams/src/store-fs.ts +0 -80
  223. package/extensions/msteams/src/token.ts +0 -19
  224. package/extensions/nextcloud-talk/clawdbot.plugin.json +0 -11
  225. package/extensions/nextcloud-talk/index.ts +0 -18
  226. package/extensions/nextcloud-talk/package.json +0 -30
  227. package/extensions/nextcloud-talk/src/accounts.ts +0 -154
  228. package/extensions/nextcloud-talk/src/channel.ts +0 -404
  229. package/extensions/nextcloud-talk/src/config-schema.ts +0 -78
  230. package/extensions/nextcloud-talk/src/format.ts +0 -79
  231. package/extensions/nextcloud-talk/src/inbound.ts +0 -336
  232. package/extensions/nextcloud-talk/src/monitor.ts +0 -246
  233. package/extensions/nextcloud-talk/src/normalize.ts +0 -31
  234. package/extensions/nextcloud-talk/src/onboarding.ts +0 -341
  235. package/extensions/nextcloud-talk/src/policy.ts +0 -175
  236. package/extensions/nextcloud-talk/src/room-info.ts +0 -111
  237. package/extensions/nextcloud-talk/src/runtime.ts +0 -14
  238. package/extensions/nextcloud-talk/src/send.ts +0 -206
  239. package/extensions/nextcloud-talk/src/signature.ts +0 -67
  240. package/extensions/nextcloud-talk/src/types.ts +0 -179
  241. package/extensions/nostr/CHANGELOG.md +0 -46
  242. package/extensions/nostr/README.md +0 -136
  243. package/extensions/nostr/clawdbot.plugin.json +0 -11
  244. package/extensions/nostr/index.ts +0 -69
  245. package/extensions/nostr/package.json +0 -31
  246. package/extensions/nostr/src/channel.test.ts +0 -141
  247. package/extensions/nostr/src/channel.ts +0 -342
  248. package/extensions/nostr/src/config-schema.ts +0 -90
  249. package/extensions/nostr/src/metrics.ts +0 -464
  250. package/extensions/nostr/src/nostr-bus.fuzz.test.ts +0 -544
  251. package/extensions/nostr/src/nostr-bus.integration.test.ts +0 -452
  252. package/extensions/nostr/src/nostr-bus.test.ts +0 -199
  253. package/extensions/nostr/src/nostr-bus.ts +0 -741
  254. package/extensions/nostr/src/nostr-profile-http.test.ts +0 -378
  255. package/extensions/nostr/src/nostr-profile-http.ts +0 -500
  256. package/extensions/nostr/src/nostr-profile-import.test.ts +0 -120
  257. package/extensions/nostr/src/nostr-profile-import.ts +0 -259
  258. package/extensions/nostr/src/nostr-profile.fuzz.test.ts +0 -479
  259. package/extensions/nostr/src/nostr-profile.test.ts +0 -410
  260. package/extensions/nostr/src/nostr-profile.ts +0 -242
  261. package/extensions/nostr/src/nostr-state-store.test.ts +0 -128
  262. package/extensions/nostr/src/nostr-state-store.ts +0 -226
  263. package/extensions/nostr/src/runtime.ts +0 -14
  264. package/extensions/nostr/src/seen-tracker.ts +0 -271
  265. package/extensions/nostr/src/types.test.ts +0 -161
  266. package/extensions/nostr/src/types.ts +0 -99
  267. package/extensions/nostr/test/setup.ts +0 -5
  268. package/extensions/open-prose/README.md +0 -25
  269. package/extensions/open-prose/clawdbot.plugin.json +0 -11
  270. package/extensions/open-prose/index.ts +0 -5
  271. package/extensions/open-prose/package.json +0 -11
  272. package/extensions/open-prose/skills/prose/LICENSE +0 -21
  273. package/extensions/open-prose/skills/prose/SKILL.md +0 -318
  274. package/extensions/open-prose/skills/prose/alt-borges.md +0 -141
  275. package/extensions/open-prose/skills/prose/alts/arabian-nights.md +0 -358
  276. package/extensions/open-prose/skills/prose/alts/borges.md +0 -360
  277. package/extensions/open-prose/skills/prose/alts/folk.md +0 -322
  278. package/extensions/open-prose/skills/prose/alts/homer.md +0 -346
  279. package/extensions/open-prose/skills/prose/alts/kafka.md +0 -373
  280. package/extensions/open-prose/skills/prose/compiler.md +0 -2967
  281. package/extensions/open-prose/skills/prose/examples/01-hello-world.prose +0 -4
  282. package/extensions/open-prose/skills/prose/examples/02-research-and-summarize.prose +0 -6
  283. package/extensions/open-prose/skills/prose/examples/03-code-review.prose +0 -17
  284. package/extensions/open-prose/skills/prose/examples/04-write-and-refine.prose +0 -14
  285. package/extensions/open-prose/skills/prose/examples/05-debug-issue.prose +0 -20
  286. package/extensions/open-prose/skills/prose/examples/06-explain-codebase.prose +0 -17
  287. package/extensions/open-prose/skills/prose/examples/07-refactor.prose +0 -20
  288. package/extensions/open-prose/skills/prose/examples/08-blog-post.prose +0 -20
  289. package/extensions/open-prose/skills/prose/examples/09-research-with-agents.prose +0 -25
  290. package/extensions/open-prose/skills/prose/examples/10-code-review-agents.prose +0 -32
  291. package/extensions/open-prose/skills/prose/examples/11-skills-and-imports.prose +0 -27
  292. package/extensions/open-prose/skills/prose/examples/12-secure-agent-permissions.prose +0 -43
  293. package/extensions/open-prose/skills/prose/examples/13-variables-and-context.prose +0 -51
  294. package/extensions/open-prose/skills/prose/examples/14-composition-blocks.prose +0 -48
  295. package/extensions/open-prose/skills/prose/examples/15-inline-sequences.prose +0 -23
  296. package/extensions/open-prose/skills/prose/examples/16-parallel-reviews.prose +0 -19
  297. package/extensions/open-prose/skills/prose/examples/17-parallel-research.prose +0 -19
  298. package/extensions/open-prose/skills/prose/examples/18-mixed-parallel-sequential.prose +0 -36
  299. package/extensions/open-prose/skills/prose/examples/19-advanced-parallel.prose +0 -71
  300. package/extensions/open-prose/skills/prose/examples/20-fixed-loops.prose +0 -20
  301. package/extensions/open-prose/skills/prose/examples/21-pipeline-operations.prose +0 -35
  302. package/extensions/open-prose/skills/prose/examples/22-error-handling.prose +0 -51
  303. package/extensions/open-prose/skills/prose/examples/23-retry-with-backoff.prose +0 -63
  304. package/extensions/open-prose/skills/prose/examples/24-choice-blocks.prose +0 -86
  305. package/extensions/open-prose/skills/prose/examples/25-conditionals.prose +0 -114
  306. package/extensions/open-prose/skills/prose/examples/26-parameterized-blocks.prose +0 -100
  307. package/extensions/open-prose/skills/prose/examples/27-string-interpolation.prose +0 -105
  308. package/extensions/open-prose/skills/prose/examples/28-automated-pr-review.prose +0 -37
  309. package/extensions/open-prose/skills/prose/examples/28-gas-town.prose +0 -1572
  310. package/extensions/open-prose/skills/prose/examples/29-captains-chair.prose +0 -218
  311. package/extensions/open-prose/skills/prose/examples/30-captains-chair-simple.prose +0 -42
  312. package/extensions/open-prose/skills/prose/examples/31-captains-chair-with-memory.prose +0 -145
  313. package/extensions/open-prose/skills/prose/examples/33-pr-review-autofix.prose +0 -168
  314. package/extensions/open-prose/skills/prose/examples/34-content-pipeline.prose +0 -204
  315. package/extensions/open-prose/skills/prose/examples/35-feature-factory.prose +0 -296
  316. package/extensions/open-prose/skills/prose/examples/36-bug-hunter.prose +0 -237
  317. package/extensions/open-prose/skills/prose/examples/37-the-forge.prose +0 -1474
  318. package/extensions/open-prose/skills/prose/examples/38-skill-scan.prose +0 -455
  319. package/extensions/open-prose/skills/prose/examples/39-architect-by-simulation.prose +0 -277
  320. package/extensions/open-prose/skills/prose/examples/40-rlm-self-refine.prose +0 -32
  321. package/extensions/open-prose/skills/prose/examples/41-rlm-divide-conquer.prose +0 -38
  322. package/extensions/open-prose/skills/prose/examples/42-rlm-filter-recurse.prose +0 -46
  323. package/extensions/open-prose/skills/prose/examples/43-rlm-pairwise.prose +0 -50
  324. package/extensions/open-prose/skills/prose/examples/44-run-endpoint-ux-test.prose +0 -261
  325. package/extensions/open-prose/skills/prose/examples/45-plugin-release.prose +0 -159
  326. package/extensions/open-prose/skills/prose/examples/45-run-endpoint-ux-test-with-remediation.prose +0 -637
  327. package/extensions/open-prose/skills/prose/examples/46-run-endpoint-ux-test-fast.prose +0 -148
  328. package/extensions/open-prose/skills/prose/examples/46-workflow-crystallizer.prose +0 -225
  329. package/extensions/open-prose/skills/prose/examples/47-language-self-improvement.prose +0 -356
  330. package/extensions/open-prose/skills/prose/examples/48-habit-miner.prose +0 -445
  331. package/extensions/open-prose/skills/prose/examples/49-prose-run-retrospective.prose +0 -210
  332. package/extensions/open-prose/skills/prose/examples/README.md +0 -391
  333. package/extensions/open-prose/skills/prose/examples/roadmap/README.md +0 -22
  334. package/extensions/open-prose/skills/prose/examples/roadmap/iterative-refinement.prose +0 -20
  335. package/extensions/open-prose/skills/prose/examples/roadmap/parallel-review.prose +0 -18
  336. package/extensions/open-prose/skills/prose/examples/roadmap/simple-pipeline.prose +0 -17
  337. package/extensions/open-prose/skills/prose/examples/roadmap/syntax/open-prose-syntax.prose +0 -223
  338. package/extensions/open-prose/skills/prose/guidance/antipatterns.md +0 -951
  339. package/extensions/open-prose/skills/prose/guidance/patterns.md +0 -700
  340. package/extensions/open-prose/skills/prose/guidance/system-prompt.md +0 -180
  341. package/extensions/open-prose/skills/prose/help.md +0 -143
  342. package/extensions/open-prose/skills/prose/lib/README.md +0 -105
  343. package/extensions/open-prose/skills/prose/lib/calibrator.prose +0 -215
  344. package/extensions/open-prose/skills/prose/lib/cost-analyzer.prose +0 -174
  345. package/extensions/open-prose/skills/prose/lib/error-forensics.prose +0 -250
  346. package/extensions/open-prose/skills/prose/lib/inspector.prose +0 -196
  347. package/extensions/open-prose/skills/prose/lib/profiler.prose +0 -460
  348. package/extensions/open-prose/skills/prose/lib/program-improver.prose +0 -275
  349. package/extensions/open-prose/skills/prose/lib/project-memory.prose +0 -118
  350. package/extensions/open-prose/skills/prose/lib/user-memory.prose +0 -93
  351. package/extensions/open-prose/skills/prose/lib/vm-improver.prose +0 -243
  352. package/extensions/open-prose/skills/prose/primitives/session.md +0 -587
  353. package/extensions/open-prose/skills/prose/prose.md +0 -1235
  354. package/extensions/open-prose/skills/prose/state/filesystem.md +0 -478
  355. package/extensions/open-prose/skills/prose/state/in-context.md +0 -380
  356. package/extensions/open-prose/skills/prose/state/postgres.md +0 -875
  357. package/extensions/open-prose/skills/prose/state/sqlite.md +0 -572
  358. package/extensions/qwen-portal-auth/README.md +0 -24
  359. package/extensions/qwen-portal-auth/clawdbot.plugin.json +0 -11
  360. package/extensions/qwen-portal-auth/index.ts +0 -127
  361. package/extensions/qwen-portal-auth/oauth.ts +0 -190
  362. package/extensions/signal/clawdbot.plugin.json +0 -11
  363. package/extensions/signal/index.ts +0 -18
  364. package/extensions/signal/package.json +0 -11
  365. package/extensions/signal/src/channel.ts +0 -312
  366. package/extensions/signal/src/runtime.ts +0 -14
  367. package/extensions/telegram/clawdbot.plugin.json +0 -11
  368. package/extensions/telegram/index.ts +0 -18
  369. package/extensions/telegram/package.json +0 -11
  370. package/extensions/telegram/src/channel.ts +0 -478
  371. package/extensions/telegram/src/runtime.ts +0 -14
  372. package/extensions/tlon/README.md +0 -5
  373. package/extensions/tlon/clawdbot.plugin.json +0 -11
  374. package/extensions/tlon/index.ts +0 -18
  375. package/extensions/tlon/package.json +0 -30
  376. package/extensions/tlon/src/channel.ts +0 -379
  377. package/extensions/tlon/src/config-schema.test.ts +0 -32
  378. package/extensions/tlon/src/config-schema.ts +0 -43
  379. package/extensions/tlon/src/monitor/discovery.ts +0 -71
  380. package/extensions/tlon/src/monitor/history.ts +0 -87
  381. package/extensions/tlon/src/monitor/index.ts +0 -501
  382. package/extensions/tlon/src/monitor/processed-messages.test.ts +0 -24
  383. package/extensions/tlon/src/monitor/processed-messages.ts +0 -38
  384. package/extensions/tlon/src/monitor/utils.ts +0 -83
  385. package/extensions/tlon/src/onboarding.ts +0 -213
  386. package/extensions/tlon/src/runtime.ts +0 -14
  387. package/extensions/tlon/src/targets.ts +0 -79
  388. package/extensions/tlon/src/types.ts +0 -85
  389. package/extensions/tlon/src/urbit/auth.ts +0 -18
  390. package/extensions/tlon/src/urbit/http-api.ts +0 -36
  391. package/extensions/tlon/src/urbit/send.test.ts +0 -38
  392. package/extensions/tlon/src/urbit/send.ts +0 -127
  393. package/extensions/tlon/src/urbit/sse-client.test.ts +0 -41
  394. package/extensions/tlon/src/urbit/sse-client.ts +0 -367
  395. package/extensions/twitch/CHANGELOG.md +0 -21
  396. package/extensions/twitch/README.md +0 -89
  397. package/extensions/twitch/clawdbot.plugin.json +0 -9
  398. package/extensions/twitch/index.ts +0 -20
  399. package/extensions/twitch/package.json +0 -20
  400. package/extensions/twitch/src/access-control.test.ts +0 -489
  401. package/extensions/twitch/src/access-control.ts +0 -154
  402. package/extensions/twitch/src/actions.ts +0 -173
  403. package/extensions/twitch/src/client-manager-registry.ts +0 -115
  404. package/extensions/twitch/src/config-schema.ts +0 -82
  405. package/extensions/twitch/src/config.test.ts +0 -88
  406. package/extensions/twitch/src/config.ts +0 -116
  407. package/extensions/twitch/src/monitor.ts +0 -257
  408. package/extensions/twitch/src/onboarding.test.ts +0 -311
  409. package/extensions/twitch/src/onboarding.ts +0 -411
  410. package/extensions/twitch/src/outbound.test.ts +0 -373
  411. package/extensions/twitch/src/outbound.ts +0 -186
  412. package/extensions/twitch/src/plugin.test.ts +0 -39
  413. package/extensions/twitch/src/plugin.ts +0 -274
  414. package/extensions/twitch/src/probe.test.ts +0 -198
  415. package/extensions/twitch/src/probe.ts +0 -118
  416. package/extensions/twitch/src/resolver.ts +0 -137
  417. package/extensions/twitch/src/runtime.ts +0 -14
  418. package/extensions/twitch/src/send.test.ts +0 -289
  419. package/extensions/twitch/src/send.ts +0 -136
  420. package/extensions/twitch/src/status.test.ts +0 -270
  421. package/extensions/twitch/src/status.ts +0 -176
  422. package/extensions/twitch/src/token.test.ts +0 -171
  423. package/extensions/twitch/src/token.ts +0 -87
  424. package/extensions/twitch/src/twitch-client.test.ts +0 -574
  425. package/extensions/twitch/src/twitch-client.ts +0 -277
  426. package/extensions/twitch/src/types.ts +0 -141
  427. package/extensions/twitch/src/utils/markdown.ts +0 -92
  428. package/extensions/twitch/src/utils/twitch.ts +0 -78
  429. package/extensions/twitch/test/setup.ts +0 -7
  430. package/extensions/voice-call/CHANGELOG.md +0 -72
  431. package/extensions/voice-call/README.md +0 -134
  432. package/extensions/voice-call/clawdbot.plugin.json +0 -601
  433. package/extensions/voice-call/index.ts +0 -497
  434. package/extensions/voice-call/package.json +0 -16
  435. package/extensions/voice-call/src/cli.ts +0 -300
  436. package/extensions/voice-call/src/config.test.ts +0 -204
  437. package/extensions/voice-call/src/config.ts +0 -493
  438. package/extensions/voice-call/src/core-bridge.ts +0 -196
  439. package/extensions/voice-call/src/manager/context.ts +0 -21
  440. package/extensions/voice-call/src/manager/events.ts +0 -177
  441. package/extensions/voice-call/src/manager/lookup.ts +0 -33
  442. package/extensions/voice-call/src/manager/outbound.ts +0 -248
  443. package/extensions/voice-call/src/manager/state.ts +0 -50
  444. package/extensions/voice-call/src/manager/store.ts +0 -88
  445. package/extensions/voice-call/src/manager/timers.ts +0 -86
  446. package/extensions/voice-call/src/manager/twiml.ts +0 -9
  447. package/extensions/voice-call/src/manager.test.ts +0 -108
  448. package/extensions/voice-call/src/manager.ts +0 -876
  449. package/extensions/voice-call/src/media-stream.test.ts +0 -97
  450. package/extensions/voice-call/src/media-stream.ts +0 -393
  451. package/extensions/voice-call/src/providers/base.ts +0 -67
  452. package/extensions/voice-call/src/providers/index.ts +0 -10
  453. package/extensions/voice-call/src/providers/mock.ts +0 -168
  454. package/extensions/voice-call/src/providers/plivo.test.ts +0 -28
  455. package/extensions/voice-call/src/providers/plivo.ts +0 -504
  456. package/extensions/voice-call/src/providers/stt-openai-realtime.ts +0 -311
  457. package/extensions/voice-call/src/providers/telnyx.ts +0 -364
  458. package/extensions/voice-call/src/providers/tts-openai.ts +0 -264
  459. package/extensions/voice-call/src/providers/twilio/api.ts +0 -45
  460. package/extensions/voice-call/src/providers/twilio/webhook.ts +0 -29
  461. package/extensions/voice-call/src/providers/twilio.test.ts +0 -64
  462. package/extensions/voice-call/src/providers/twilio.ts +0 -595
  463. package/extensions/voice-call/src/response-generator.ts +0 -171
  464. package/extensions/voice-call/src/runtime.ts +0 -205
  465. package/extensions/voice-call/src/telephony-audio.ts +0 -88
  466. package/extensions/voice-call/src/telephony-tts.ts +0 -95
  467. package/extensions/voice-call/src/tunnel.ts +0 -331
  468. package/extensions/voice-call/src/types.ts +0 -272
  469. package/extensions/voice-call/src/utils.ts +0 -12
  470. package/extensions/voice-call/src/voice-mapping.ts +0 -65
  471. package/extensions/voice-call/src/webhook-security.test.ts +0 -233
  472. package/extensions/voice-call/src/webhook-security.ts +0 -446
  473. package/extensions/voice-call/src/webhook.ts +0 -490
  474. package/extensions/whatsapp/clawdbot.plugin.json +0 -11
  475. package/extensions/whatsapp/index.ts +0 -18
  476. package/extensions/whatsapp/package.json +0 -11
  477. package/extensions/whatsapp/src/channel.ts +0 -500
  478. package/extensions/whatsapp/src/runtime.ts +0 -14
  479. package/extensions/zalo/CHANGELOG.md +0 -55
  480. package/extensions/zalo/README.md +0 -50
  481. package/extensions/zalo/clawdbot.plugin.json +0 -11
  482. package/extensions/zalo/index.ts +0 -20
  483. package/extensions/zalo/package.json +0 -33
  484. package/extensions/zalo/src/accounts.ts +0 -71
  485. package/extensions/zalo/src/actions.ts +0 -62
  486. package/extensions/zalo/src/api.ts +0 -206
  487. package/extensions/zalo/src/channel.directory.test.ts +0 -35
  488. package/extensions/zalo/src/channel.ts +0 -394
  489. package/extensions/zalo/src/config-schema.ts +0 -24
  490. package/extensions/zalo/src/monitor.ts +0 -760
  491. package/extensions/zalo/src/monitor.webhook.test.ts +0 -70
  492. package/extensions/zalo/src/onboarding.ts +0 -405
  493. package/extensions/zalo/src/probe.ts +0 -46
  494. package/extensions/zalo/src/proxy.ts +0 -18
  495. package/extensions/zalo/src/runtime.ts +0 -14
  496. package/extensions/zalo/src/send.ts +0 -117
  497. package/extensions/zalo/src/status-issues.ts +0 -50
  498. package/extensions/zalo/src/token.ts +0 -55
  499. package/extensions/zalo/src/types.ts +0 -42
  500. package/extensions/zalouser/CHANGELOG.md +0 -33
  501. package/extensions/zalouser/README.md +0 -221
  502. package/extensions/zalouser/clawdbot.plugin.json +0 -11
  503. package/extensions/zalouser/index.ts +0 -32
  504. package/extensions/zalouser/package.json +0 -33
  505. package/extensions/zalouser/src/accounts.ts +0 -117
  506. package/extensions/zalouser/src/channel.test.ts +0 -17
  507. package/extensions/zalouser/src/channel.ts +0 -641
  508. package/extensions/zalouser/src/config-schema.ts +0 -27
  509. package/extensions/zalouser/src/monitor.ts +0 -574
  510. package/extensions/zalouser/src/onboarding.ts +0 -488
  511. package/extensions/zalouser/src/probe.ts +0 -28
  512. package/extensions/zalouser/src/runtime.ts +0 -14
  513. package/extensions/zalouser/src/send.ts +0 -150
  514. package/extensions/zalouser/src/status-issues.test.ts +0 -58
  515. package/extensions/zalouser/src/status-issues.ts +0 -81
  516. package/extensions/zalouser/src/tool.ts +0 -156
  517. package/extensions/zalouser/src/types.ts +0 -102
  518. package/extensions/zalouser/src/zca.ts +0 -208
  519. package/skills/1password/SKILL.md +0 -53
  520. package/skills/1password/references/cli-examples.md +0 -29
  521. package/skills/1password/references/get-started.md +0 -17
  522. package/skills/apple-notes/SKILL.md +0 -50
  523. package/skills/apple-reminders/SKILL.md +0 -67
  524. package/skills/bear-notes/SKILL.md +0 -79
  525. package/skills/bird/SKILL.md +0 -197
  526. package/skills/blogwatcher/SKILL.md +0 -46
  527. package/skills/blucli/SKILL.md +0 -27
  528. package/skills/bluebubbles/SKILL.md +0 -39
  529. package/skills/camsnap/SKILL.md +0 -25
  530. package/skills/canvas/SKILL.md +0 -189
  531. package/skills/clawdhub/SKILL.md +0 -53
  532. package/skills/coding-agent/SKILL.md +0 -278
  533. package/skills/discord/SKILL.md +0 -475
  534. package/skills/eightctl/SKILL.md +0 -29
  535. package/skills/food-order/SKILL.md +0 -41
  536. package/skills/gemini/SKILL.md +0 -23
  537. package/skills/gifgrep/SKILL.md +0 -47
  538. package/skills/github/SKILL.md +0 -48
  539. package/skills/gog/SKILL.md +0 -92
  540. package/skills/goplaces/SKILL.md +0 -30
  541. package/skills/himalaya/SKILL.md +0 -217
  542. package/skills/himalaya/references/configuration.md +0 -174
  543. package/skills/himalaya/references/message-composition.md +0 -182
  544. package/skills/imsg/SKILL.md +0 -25
  545. package/skills/local-places/SERVER_README.md +0 -101
  546. package/skills/local-places/SKILL.md +0 -91
  547. package/skills/local-places/pyproject.toml +0 -27
  548. package/skills/local-places/src/local_places/__init__.py +0 -2
  549. package/skills/local-places/src/local_places/google_places.py +0 -314
  550. package/skills/local-places/src/local_places/main.py +0 -65
  551. package/skills/local-places/src/local_places/schemas.py +0 -107
  552. package/skills/mcporter/SKILL.md +0 -38
  553. package/skills/model-usage/SKILL.md +0 -45
  554. package/skills/model-usage/references/codexbar-cli.md +0 -28
  555. package/skills/model-usage/scripts/model_usage.py +0 -310
  556. package/skills/nano-banana-pro/SKILL.md +0 -30
  557. package/skills/nano-banana-pro/scripts/generate_image.py +0 -169
  558. package/skills/nano-pdf/SKILL.md +0 -20
  559. package/skills/notion/SKILL.md +0 -156
  560. package/skills/obsidian/SKILL.md +0 -55
  561. package/skills/openai-image-gen/SKILL.md +0 -71
  562. package/skills/openai-image-gen/scripts/gen.py +0 -240
  563. package/skills/openai-whisper/SKILL.md +0 -19
  564. package/skills/openai-whisper-api/SKILL.md +0 -43
  565. package/skills/openai-whisper-api/scripts/transcribe.sh +0 -85
  566. package/skills/openhue/SKILL.md +0 -30
  567. package/skills/oracle/SKILL.md +0 -105
  568. package/skills/ordercli/SKILL.md +0 -47
  569. package/skills/peekaboo/SKILL.md +0 -153
  570. package/skills/sag/SKILL.md +0 -62
  571. package/skills/session-logs/SKILL.md +0 -105
  572. package/skills/sherpa-onnx-tts/SKILL.md +0 -49
  573. package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +0 -178
  574. package/skills/skill-creator/SKILL.md +0 -371
  575. package/skills/skill-creator/license.txt +0 -202
  576. package/skills/skill-creator/scripts/init_skill.py +0 -378
  577. package/skills/skill-creator/scripts/package_skill.py +0 -111
  578. package/skills/skill-creator/scripts/quick_validate.py +0 -101
  579. package/skills/slack/SKILL.md +0 -144
  580. package/skills/songsee/SKILL.md +0 -29
  581. package/skills/sonoscli/SKILL.md +0 -26
  582. package/skills/spotify-player/SKILL.md +0 -34
  583. package/skills/summarize/SKILL.md +0 -67
  584. package/skills/things-mac/SKILL.md +0 -61
  585. package/skills/tmux/SKILL.md +0 -121
  586. package/skills/tmux/scripts/find-sessions.sh +0 -112
  587. package/skills/tmux/scripts/wait-for-text.sh +0 -83
  588. package/skills/trello/SKILL.md +0 -84
  589. package/skills/video-frames/SKILL.md +0 -29
  590. package/skills/video-frames/scripts/frame.sh +0 -81
  591. package/skills/voice-call/SKILL.md +0 -35
  592. package/skills/wacli/SKILL.md +0 -42
  593. package/skills/weather/SKILL.md +0 -49
@@ -1,637 +0,0 @@
1
- # /run Endpoint UX Test with Error Remediation
2
- #
3
- # A multi-agent observation protocol for qualitative UX testing of the
4
- # OpenProse /run endpoint, WITH automated error investigation and remediation.
5
- #
6
- # This extends the basic UX test with a comprehensive error handling pipeline:
7
- # - If blocking errors are detected, investigate using logs, database, and code
8
- # - Verify diagnosis through synthesis loop
9
- # - Triage: quick fix vs. bigger change requiring CEO oversight
10
- # - Quick fixes: engineer implements, deploys, tests, iterates
11
- # - Bigger changes: build plan, parallel engineers, review, deploy, smoke test
12
- #
13
- # Key patterns demonstrated:
14
- # - Mid-program `input` for user checkpoints
15
- # - Persistent agents with `resume:` for accumulated context
16
- # - Parallel investigation with multiple angles
17
- # - `choice` blocks for triage decisions
18
- # - `retry` with backoff for flaky operations
19
- # - Recursive self-healing (if fix fails, re-test)
20
-
21
- # Default test program (simple hello world)
22
- const test_program = """
23
- # Quick Hello
24
- session "Say hello and count to 5"
25
- """
26
-
27
- # Auto-auth: Read credentials from .env.test and fetch token
28
- let api_url = session "Read API URL"
29
- prompt: """Read the TEST_API_URL from .env.test and return just the URL.
30
- If not found, default to: https://api-v2.prose.md"""
31
-
32
- let auth_token = session "Authenticate"
33
- prompt: """Read credentials from .env.test (TEST_EMAIL, TEST_PASSWORD).
34
- Then POST to {api_url}/auth/login with these credentials.
35
- Return just the token value (no Bearer prefix)."""
36
- context: api_url
37
-
38
- # ============================================================================
39
- # Agent Definitions
40
- # ============================================================================
41
-
42
- # --- Observation Team ---
43
-
44
- agent ws_observer:
45
- model: opus
46
- persist: true
47
- prompt: """You are a UX researcher observing an OpenProse program execution.
48
-
49
- Your job is to watch the WebSocket execution stream and evaluate the experience
50
- from a USER's perspective - not as an engineer checking correctness.
51
-
52
- Focus on:
53
- - Latency and responsiveness (does it FEEL fast?)
54
- - Clarity of status transitions (does the user know what's happening?)
55
- - Quality of streamed events (are they informative? overwhelming? sparse?)
56
- - Error messages (helpful or cryptic?)
57
- - Overall flow (smooth or jarring?)
58
-
59
- Log your raw observations, then periodically synthesize into user feedback.
60
- Think: "If I were a first-time user, what would I think right now?"
61
- """
62
-
63
- agent file_observer:
64
- model: opus
65
- persist: true
66
- prompt: """You are a UX researcher monitoring the file system during execution.
67
-
68
- Your job is to observe how the filesystem changes as a program runs, evaluating
69
- whether the state management would make sense to a user browsing files.
70
-
71
- Focus on:
72
- - Directory structure clarity (can a user understand what's where?)
73
- - File naming conventions (self-documenting or cryptic?)
74
- - State file contents (readable? useful for debugging?)
75
- - Timing of file creation/modification (predictable?)
76
- - What a file browser UI should show
77
-
78
- You will poll periodically and note changes between snapshots.
79
- """
80
-
81
- agent synthesizer:
82
- model: opus
83
- prompt: """You are a senior UX researcher synthesizing observations from
84
- multiple sources into prioritized, actionable feedback.
85
-
86
- Your output should be:
87
- 1. Correlated findings (where did both observers notice the same thing?)
88
- 2. Prioritized action items (high/medium/low)
89
- 3. Specific quotes/evidence supporting each finding
90
- 4. Recommendations that are concrete and implementable
91
-
92
- Be direct. "The loading state is confusing" not "Consider potentially improving..."
93
-
94
- IMPORTANT: At the end of your synthesis, include:
95
-
96
- ## Error Classification
97
- blocking_error: true/false
98
- error_summary: "One-line description of the blocking error, if any"
99
- """
100
-
101
- # --- Remediation Team ---
102
-
103
- agent researcher:
104
- model: opus
105
- persist: true
106
- prompt: """You are a senior engineer investigating a production error.
107
-
108
- Your job is to diagnose the ROOT CAUSE of errors by:
109
- 1. Reading relevant log files
110
- 2. Querying the database for related records
111
- 3. Examining the source code that produced the error
112
- 4. Tracing the execution path
113
-
114
- Be thorough but focused. Follow the evidence. Don't speculate without data.
115
-
116
- Output a structured diagnosis:
117
- - Error symptom: What the user/system observed
118
- - Root cause: The underlying technical issue
119
- - Evidence: Specific logs, code, or data supporting your diagnosis
120
- - Confidence: High/Medium/Low
121
- - Affected components: Which files/services are involved
122
- """
123
-
124
- agent diagnosis_verifier:
125
- model: opus
126
- prompt: """You are a staff engineer verifying a diagnosis.
127
-
128
- Your job is to critically evaluate a proposed diagnosis by:
129
- 1. Checking if the evidence actually supports the conclusion
130
- 2. Looking for alternative explanations
131
- 3. Verifying the logic chain from symptom to root cause
132
- 4. Identifying gaps in the investigation
133
-
134
- Be skeptical but fair. A good diagnosis should be:
135
- - Supported by concrete evidence (not just plausible)
136
- - Specific (not vague like "something went wrong")
137
- - Actionable (points to what needs to be fixed)
138
-
139
- Output:
140
- - diagnosis_sound: true/false
141
- - critique: What's wrong or missing (if not sound)
142
- - follow_up_questions: What the researcher should investigate (if not sound)
143
- - approved_diagnosis: The verified diagnosis (if sound)
144
- """
145
-
146
- agent triage_expert:
147
- model: opus
148
- prompt: """You are a tech lead triaging a diagnosed bug.
149
-
150
- Evaluate the diagnosis and categorize the fix:
151
-
152
- QUICK FIX criteria (ALL must be true):
153
- - Isolated bug affecting < 3 files
154
- - No architectural changes required
155
- - No API contract changes
156
- - No security implications
157
- - Estimated effort < 1 hour
158
- - Low risk of regression
159
-
160
- BIGGER CHANGE criteria (ANY triggers this):
161
- - Affects > 3 files or multiple services
162
- - Requires architectural decisions
163
- - Changes API contracts or data models
164
- - Has security implications
165
- - Requires CEO/stakeholder input
166
- - High risk of regression
167
- - Unclear solution path
168
-
169
- Output:
170
- - triage_decision: "quick_fix" or "bigger_change"
171
- - rationale: Why this classification
172
- - risk_assessment: What could go wrong
173
- - recommended_approach: High-level fix strategy
174
- """
175
-
176
- agent engineer:
177
- model: opus
178
- persist: true
179
- prompt: """You are a senior engineer implementing a fix.
180
-
181
- Your job is to:
182
- 1. Understand the diagnosis and recommended approach
183
- 2. Write clean, tested code that fixes the issue
184
- 3. Follow existing patterns in the codebase
185
- 4. Create atomic commits with clear messages
186
- 5. Verify the fix works
187
-
188
- Do not over-engineer. Fix the issue directly and simply.
189
- Follow the project's coding standards and testing patterns.
190
- """
191
-
192
- agent build_planner:
193
- model: opus
194
- prompt: """You are a software architect creating a build plan.
195
-
196
- Follow the standards in docs/PLANNING_BEST_PRACTICES.md:
197
- - Break work into self-contained phases
198
- - Each phase should be testable and committable
199
- - Identify parallel work where possible
200
- - Define clear verification criteria
201
- - Plan for rollback
202
-
203
- Output a structured plan with:
204
- - Phases (numbered, with dependencies)
205
- - Tasks per phase
206
- - Verification steps
207
- - Commit strategy
208
- - Risk mitigation
209
- """
210
-
211
- agent reviewer:
212
- model: opus
213
- prompt: """You are a senior engineer reviewing a fix.
214
-
215
- Evaluate the implementation by:
216
- 1. Checking git diff against the original diagnosis
217
- 2. Verifying the fix addresses the root cause
218
- 3. Looking for regressions or side effects
219
- 4. Checking test coverage
220
- 5. Reviewing code quality and patterns
221
-
222
- Be thorough but not nitpicky. Focus on correctness and safety.
223
-
224
- Output:
225
- - review_approved: true/false
226
- - issues: List of blocking issues (if not approved)
227
- - suggestions: Non-blocking improvements
228
- - confidence: How confident are you the fix is correct
229
- """
230
-
231
- agent smoke_tester:
232
- model: opus
233
- prompt: """You are a QA engineer performing post-deployment verification.
234
-
235
- Follow the procedures in docs/MONITORING.md to verify:
236
- 1. Health endpoints are responding
237
- 2. The specific bug is fixed
238
- 3. No new errors in logs
239
- 4. Key metrics are stable
240
-
241
- Output:
242
- - smoke_test_passed: true/false
243
- - checks_performed: List of verifications done
244
- - issues_found: Any problems discovered
245
- - recommendations: Monitoring or follow-up suggestions
246
- """
247
-
248
- # ============================================================================
249
- # Blocks: Observation
250
- # ============================================================================
251
-
252
- block observe_websocket(ws_url, token, program):
253
- session: ws_observer
254
- prompt: """Connect to the WebSocket at:
255
- {ws_url}&token={token}
256
-
257
- Once connected, send the execute message:
258
- {"type":"execute","program":<the program>}
259
-
260
- Program:
261
- ```
262
- {program}
263
- ```
264
-
265
- Log your initial connection experience."""
266
-
267
- loop until **execution completed (received status: completed/failed/aborted)**:
268
- resume: ws_observer
269
- prompt: """Continue observing the WebSocket stream.
270
-
271
- Log each message with timestamp, type, content, and your interpretation.
272
- After every 3-5 messages, synthesize: what would a user be thinking?"""
273
-
274
- output ws_feedback = resume: ws_observer
275
- prompt: """The execution has completed. Write your final assessment:
276
- 1. Total duration and event count
277
- 2. Status transitions observed
278
- 3. What worked well from a UX perspective
279
- 4. Pain points and confusion
280
- 5. Top 3 recommendations"""
281
-
282
- block observe_filesystem(env_id, api_url, token):
283
- session: file_observer
284
- prompt: """Fetch the initial file tree:
285
- GET {api_url}/environments/{env_id}/files/tree?depth=3
286
- Authorization: Bearer {token}
287
-
288
- Log the baseline directory structure."""
289
- permissions:
290
- network: ["{api_url}/*"]
291
-
292
- let snapshot_count = 0
293
-
294
- loop until **websocket observer signals completion** (max: 30):
295
- let snapshot_count = snapshot_count + 1
296
-
297
- resume: file_observer
298
- prompt: """Snapshot #{snapshot_count}: Fetch and compare file tree.
299
- Log what's NEW, MODIFIED, and any interesting state files to read."""
300
- permissions:
301
- network: ["{api_url}/*"]
302
-
303
- output file_feedback = resume: file_observer
304
- prompt: """Final filesystem assessment:
305
- 1. Total snapshots taken
306
- 2. Files created during execution
307
- 3. State file clarity
308
- 4. Top 3 recommendations"""
309
-
310
- # ============================================================================
311
- # Blocks: Investigation
312
- # ============================================================================
313
-
314
- block investigate_error(error_summary, ws_results, file_results, exec_info):
315
- # Parallel investigation from multiple angles
316
- parallel:
317
- code_analysis = session: researcher
318
- prompt: """Investigate the CODE PATH for this error:
319
-
320
- ERROR: {error_summary}
321
-
322
- Search the codebase for:
323
- 1. The execution logic that produced this error
324
- 2. Error handling paths
325
- 3. Recent changes to related code (git log)
326
-
327
- Focus on understanding HOW this error was produced."""
328
- permissions:
329
- filesystem: ["read"]
330
-
331
- log_analysis = session: researcher
332
- prompt: """Investigate the LOGS for this error:
333
-
334
- ERROR: {error_summary}
335
-
336
- WebSocket observations:
337
- {ws_results}
338
-
339
- File explorer observations:
340
- {file_results}
341
-
342
- Look for:
343
- 1. Error messages and stack traces
344
- 2. Timing of events
345
- 3. Any warnings before the error"""
346
- context: { ws_results, file_results }
347
-
348
- context_analysis = session: researcher
349
- prompt: """Investigate the EXECUTION CONTEXT:
350
-
351
- ERROR: {error_summary}
352
-
353
- Execution info:
354
- {exec_info}
355
-
356
- Check:
357
- 1. Environment state
358
- 2. Database records for this execution
359
- 3. Any configuration issues"""
360
- context: exec_info
361
- permissions:
362
- database: ["read"]
363
-
364
- # Synthesize findings from all angles
365
- output diagnosis = resume: researcher
366
- prompt: """Synthesize your parallel investigations into a unified diagnosis:
367
-
368
- Code analysis: {code_analysis}
369
- Log analysis: {log_analysis}
370
- Context analysis: {context_analysis}
371
-
372
- Provide:
373
- - Root cause (specific and actionable)
374
- - Evidence chain
375
- - Confidence level
376
- - Affected components"""
377
- context: { code_analysis, log_analysis, context_analysis }
378
-
379
- block verify_diagnosis(diagnosis, original_error, ws_results):
380
- output verification = session: diagnosis_verifier
381
- prompt: """Verify this diagnosis:
382
-
383
- DIAGNOSIS:
384
- {diagnosis}
385
-
386
- ORIGINAL ERROR:
387
- {original_error}
388
-
389
- OBSERVATIONS:
390
- {ws_results}
391
-
392
- Is this diagnosis sound? If not, what's missing?"""
393
- context: { diagnosis, ws_results }
394
-
395
- # ============================================================================
396
- # Blocks: Remediation
397
- # ============================================================================
398
-
399
- block quick_fix_cycle(diagnosis, triage):
400
- # Implement the fix
401
- let fix = session: engineer
402
- prompt: """Implement a fix for:
403
-
404
- DIAGNOSIS: {diagnosis}
405
- APPROACH: {triage.recommended_approach}
406
-
407
- Make the smallest change that fixes the issue.
408
- Commit with: fix(scope): description"""
409
- permissions:
410
- filesystem: ["read", "write"]
411
-
412
- # Review loop
413
- loop until **review approved** (max: 3):
414
- let review = session: reviewer
415
- prompt: """Review this fix:
416
-
417
- DIAGNOSIS: {diagnosis}
418
- IMPLEMENTATION: {fix}
419
-
420
- Does it address the root cause? Any regressions?"""
421
- context: { diagnosis, fix }
422
-
423
- if **review has blocking issues**:
424
- let fix = resume: engineer
425
- prompt: """Address review feedback:
426
-
427
- {review.issues}
428
-
429
- Update your fix accordingly."""
430
- context: review
431
- permissions:
432
- filesystem: ["read", "write"]
433
-
434
- output fix_result = { fix, review }
435
-
436
- block deploy_and_verify(fix_result):
437
- # Deploy with retry
438
- let deploy = session "Deploy fix"
439
- prompt: """Deploy following docs/DEPLOYMENT.md.
440
- Verify deployment succeeded."""
441
- retry: 3
442
- backoff: exponential
443
- permissions:
444
- network: ["*"]
445
-
446
- # Smoke test
447
- let smoke = session: smoke_tester
448
- prompt: """Post-deployment verification per docs/MONITORING.md:
449
- 1. Health endpoints
450
- 2. Verify bug is fixed
451
- 3. Check for new errors"""
452
-
453
- output deploy_result = { deploy, smoke, success: **smoke test passed** }
454
-
455
- block bigger_change_flow(diagnosis, triage):
456
- # Build the plan
457
- let plan = session: build_planner
458
- prompt: """Create a build plan for:
459
-
460
- DIAGNOSIS: {diagnosis}
461
- TRIAGE: {triage}
462
-
463
- Follow docs/PLANNING_BEST_PRACTICES.md."""
464
- context:
465
- file: "docs/PLANNING_BEST_PRACTICES.md"
466
-
467
- # User approval of plan
468
- input plan_approval: **
469
- Build plan created:
470
- {plan}
471
-
472
- Approve and execute?
473
- **
474
-
475
- if plan_approval != "approve":
476
- output change_result = { success: false, reason: plan_approval, plan }
477
- return
478
-
479
- # Execute phases (parallel where possible)
480
- let phase_results = plan.phases
481
- | pmap:
482
- session: engineer
483
- prompt: """Execute phase:
484
- {item.name}
485
- {item.tasks}
486
-
487
- Complete tasks, run verification, commit."""
488
- permissions:
489
- filesystem: ["read", "write"]
490
-
491
- # Final review
492
- let review = session: reviewer
493
- prompt: """Review complete implementation:
494
-
495
- PLAN: {plan}
496
- RESULTS: {phase_results}
497
-
498
- All phases complete? Root cause addressed?"""
499
- context: { plan, phase_results }
500
-
501
- if **review not approved**:
502
- output change_result = { success: false, reason: "Review failed", review }
503
- return
504
-
505
- # Deploy
506
- let deploy_result = do deploy_and_verify({ fix: phase_results, review })
507
-
508
- output change_result = {
509
- success: deploy_result.success,
510
- plan,
511
- phases: phase_results,
512
- review,
513
- deploy: deploy_result
514
- }
515
-
516
- # ============================================================================
517
- # Main Workflow
518
- # ============================================================================
519
-
520
- # Phase 1: Setup
521
- let exec = session "Execute POST /run"
522
- prompt: """POST to {api_url}/run with the test program.
523
- Return executionId, environmentId, wsUrl."""
524
- permissions:
525
- network: ["{api_url}/*"]
526
-
527
- session "Log test configuration"
528
- prompt: """Log: timestamp, API URL, execution/environment IDs, program snippet."""
529
- context: exec
530
-
531
- # Phase 2: Parallel Observation
532
- parallel:
533
- ws_results = do observe_websocket(exec.wsUrl, auth_token, test_program)
534
- file_results = do observe_filesystem(exec.environmentId, api_url, auth_token)
535
-
536
- # Phase 3: Synthesis
537
- let synthesis = session: synthesizer
538
- prompt: """Synthesize observations into UX assessment.
539
-
540
- WebSocket: {ws_results}
541
- File Explorer: {file_results}
542
-
543
- Include error classification at the end."""
544
- context: { ws_results, file_results, exec }
545
-
546
- # Phase 4: Error Remediation (if needed)
547
- if **blocking error detected in synthesis**:
548
-
549
- # User checkpoint: investigate?
550
- input investigate_decision: **
551
- Blocking error detected:
552
- {synthesis.error_summary}
553
-
554
- Investigate and attempt remediation?
555
- **
556
-
557
- if investigate_decision == "skip":
558
- output final_result = { test_results: synthesis, remediation: "skipped" }
559
-
560
- elif investigate_decision == "investigate only":
561
- let diagnosis = do investigate_error(synthesis.error_summary, ws_results, file_results, exec)
562
- output final_result = { test_results: synthesis, diagnosis, remediation: "investigation only" }
563
-
564
- else:
565
- # Full remediation flow
566
- let diagnosis = do investigate_error(synthesis.error_summary, ws_results, file_results, exec)
567
-
568
- # Verification loop
569
- loop until **diagnosis verified** (max: 3):
570
- let verification = do verify_diagnosis(diagnosis, synthesis.error_summary, ws_results)
571
-
572
- if verification.diagnosis_sound:
573
- break
574
- else:
575
- let diagnosis = resume: researcher
576
- prompt: """Diagnosis needs refinement:
577
-
578
- {verification.critique}
579
-
580
- Investigate: {verification.follow_up_questions}"""
581
-
582
- # User checkpoint: confirm diagnosis before action
583
- input diagnosis_confirmation: **
584
- Diagnosis verified:
585
- {diagnosis}
586
-
587
- Proceed to triage and remediation?
588
- **
589
-
590
- if diagnosis_confirmation != "proceed":
591
- output final_result = { test_results: synthesis, diagnosis, remediation: diagnosis_confirmation }
592
-
593
- else:
594
- # Triage
595
- let triage = session: triage_expert
596
- prompt: """Triage this bug: {diagnosis}"""
597
- context: diagnosis
598
-
599
- # Route based on triage
600
- choice **triage decision**:
601
- option "Quick fix":
602
- let fix_result = do quick_fix_cycle(diagnosis, triage)
603
-
604
- # User checkpoint before deploy
605
- input deploy_decision: **
606
- Fix implemented and reviewed:
607
- {fix_result}
608
-
609
- Deploy to production?
610
- **
611
-
612
- if deploy_decision == "deploy":
613
- let deploy_result = do deploy_and_verify(fix_result)
614
-
615
- if not deploy_result.success:
616
- # Recursive: re-run test to verify or catch new issues
617
- input retry_decision: **
618
- Deployment or smoke test failed.
619
- Re-run the full test to diagnose new issues?
620
- **
621
-
622
- if retry_decision == "yes":
623
- # Note: This would re-invoke the program - true self-healing
624
- session "Log: Triggering re-test after failed deployment"
625
-
626
- output final_result = { test_results: synthesis, diagnosis, triage, fix: fix_result, deploy: deploy_result }
627
- else:
628
- output final_result = { test_results: synthesis, diagnosis, triage, fix: fix_result, deploy: "skipped" }
629
-
630
- option "Bigger change":
631
- # CEO checkpoint is built into bigger_change_flow
632
- let change_result = do bigger_change_flow(diagnosis, triage)
633
- output final_result = { test_results: synthesis, diagnosis, triage, change: change_result }
634
-
635
- else:
636
- # No blocking error
637
- output final_result = { test_results: synthesis, remediation: "none needed" }