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.
- package/README.md +148 -77
- package/dist/build-info.json +3 -3
- package/extensions/package.json +6 -0
- package/package.json +1 -1
- package/skills/autopilot/SKILL.md +179 -0
- package/skills/goals/SKILL.md +189 -0
- package/skills/wordpress/SKILL.md +232 -0
- package/extensions/bluebubbles/clawdbot.plugin.json +0 -11
- package/extensions/bluebubbles/index.ts +0 -20
- package/extensions/bluebubbles/package.json +0 -33
- package/extensions/bluebubbles/src/accounts.ts +0 -80
- package/extensions/bluebubbles/src/actions.test.ts +0 -651
- package/extensions/bluebubbles/src/actions.ts +0 -403
- package/extensions/bluebubbles/src/attachments.test.ts +0 -346
- package/extensions/bluebubbles/src/attachments.ts +0 -282
- package/extensions/bluebubbles/src/channel.ts +0 -399
- package/extensions/bluebubbles/src/chat.test.ts +0 -462
- package/extensions/bluebubbles/src/chat.ts +0 -354
- package/extensions/bluebubbles/src/config-schema.ts +0 -51
- package/extensions/bluebubbles/src/media-send.ts +0 -168
- package/extensions/bluebubbles/src/monitor.test.ts +0 -2140
- package/extensions/bluebubbles/src/monitor.ts +0 -2101
- package/extensions/bluebubbles/src/onboarding.ts +0 -340
- package/extensions/bluebubbles/src/probe.ts +0 -127
- package/extensions/bluebubbles/src/reactions.test.ts +0 -393
- package/extensions/bluebubbles/src/reactions.ts +0 -183
- package/extensions/bluebubbles/src/runtime.ts +0 -14
- package/extensions/bluebubbles/src/send.test.ts +0 -809
- package/extensions/bluebubbles/src/send.ts +0 -418
- package/extensions/bluebubbles/src/targets.test.ts +0 -184
- package/extensions/bluebubbles/src/targets.ts +0 -323
- package/extensions/bluebubbles/src/types.ts +0 -127
- package/extensions/copilot-proxy/README.md +0 -24
- package/extensions/copilot-proxy/clawdbot.plugin.json +0 -11
- package/extensions/copilot-proxy/index.ts +0 -142
- package/extensions/copilot-proxy/package.json +0 -11
- package/extensions/google-antigravity-auth/README.md +0 -24
- package/extensions/google-antigravity-auth/clawdbot.plugin.json +0 -11
- package/extensions/google-antigravity-auth/index.ts +0 -437
- package/extensions/google-antigravity-auth/package.json +0 -11
- package/extensions/google-gemini-cli-auth/README.md +0 -35
- package/extensions/google-gemini-cli-auth/clawdbot.plugin.json +0 -11
- package/extensions/google-gemini-cli-auth/index.ts +0 -91
- package/extensions/google-gemini-cli-auth/oauth.test.ts +0 -228
- package/extensions/google-gemini-cli-auth/oauth.ts +0 -580
- package/extensions/google-gemini-cli-auth/package.json +0 -11
- package/extensions/googlechat/clawdbot.plugin.json +0 -11
- package/extensions/googlechat/index.ts +0 -20
- package/extensions/googlechat/package.json +0 -39
- package/extensions/googlechat/src/accounts.ts +0 -133
- package/extensions/googlechat/src/actions.ts +0 -162
- package/extensions/googlechat/src/api.test.ts +0 -62
- package/extensions/googlechat/src/api.ts +0 -259
- package/extensions/googlechat/src/auth.ts +0 -113
- package/extensions/googlechat/src/channel.ts +0 -580
- package/extensions/googlechat/src/monitor.test.ts +0 -27
- package/extensions/googlechat/src/monitor.ts +0 -900
- package/extensions/googlechat/src/onboarding.ts +0 -278
- package/extensions/googlechat/src/runtime.ts +0 -14
- package/extensions/googlechat/src/targets.test.ts +0 -35
- package/extensions/googlechat/src/targets.ts +0 -55
- package/extensions/googlechat/src/types.config.ts +0 -3
- package/extensions/googlechat/src/types.ts +0 -73
- package/extensions/imessage/clawdbot.plugin.json +0 -11
- package/extensions/imessage/index.ts +0 -18
- package/extensions/imessage/package.json +0 -11
- package/extensions/imessage/src/channel.ts +0 -294
- package/extensions/imessage/src/runtime.ts +0 -14
- package/extensions/line/clawdbot.plugin.json +0 -11
- package/extensions/line/index.ts +0 -20
- package/extensions/line/package.json +0 -29
- package/extensions/line/src/card-command.ts +0 -338
- package/extensions/line/src/channel.logout.test.ts +0 -96
- package/extensions/line/src/channel.sendPayload.test.ts +0 -308
- package/extensions/line/src/channel.ts +0 -773
- package/extensions/line/src/runtime.ts +0 -14
- package/extensions/matrix/CHANGELOG.md +0 -54
- package/extensions/matrix/clawdbot.plugin.json +0 -11
- package/extensions/matrix/index.ts +0 -18
- package/extensions/matrix/package.json +0 -36
- package/extensions/matrix/src/actions.ts +0 -185
- package/extensions/matrix/src/channel.directory.test.ts +0 -56
- package/extensions/matrix/src/channel.ts +0 -417
- package/extensions/matrix/src/config-schema.ts +0 -62
- package/extensions/matrix/src/directory-live.ts +0 -175
- package/extensions/matrix/src/group-mentions.ts +0 -61
- package/extensions/matrix/src/matrix/accounts.test.ts +0 -83
- package/extensions/matrix/src/matrix/accounts.ts +0 -63
- package/extensions/matrix/src/matrix/actions/client.ts +0 -53
- package/extensions/matrix/src/matrix/actions/messages.ts +0 -120
- package/extensions/matrix/src/matrix/actions/pins.ts +0 -70
- package/extensions/matrix/src/matrix/actions/reactions.ts +0 -84
- package/extensions/matrix/src/matrix/actions/room.ts +0 -88
- package/extensions/matrix/src/matrix/actions/summary.ts +0 -77
- package/extensions/matrix/src/matrix/actions/types.ts +0 -84
- package/extensions/matrix/src/matrix/actions.ts +0 -15
- package/extensions/matrix/src/matrix/active-client.ts +0 -11
- package/extensions/matrix/src/matrix/client/config.ts +0 -165
- package/extensions/matrix/src/matrix/client/create-client.ts +0 -127
- package/extensions/matrix/src/matrix/client/logging.ts +0 -35
- package/extensions/matrix/src/matrix/client/runtime.ts +0 -4
- package/extensions/matrix/src/matrix/client/shared.ts +0 -169
- package/extensions/matrix/src/matrix/client/storage.ts +0 -131
- package/extensions/matrix/src/matrix/client/types.ts +0 -34
- package/extensions/matrix/src/matrix/client.test.ts +0 -57
- package/extensions/matrix/src/matrix/client.ts +0 -9
- package/extensions/matrix/src/matrix/credentials.ts +0 -103
- package/extensions/matrix/src/matrix/deps.ts +0 -57
- package/extensions/matrix/src/matrix/format.test.ts +0 -34
- package/extensions/matrix/src/matrix/format.ts +0 -22
- package/extensions/matrix/src/matrix/index.ts +0 -11
- package/extensions/matrix/src/matrix/monitor/allowlist.ts +0 -58
- package/extensions/matrix/src/matrix/monitor/auto-join.ts +0 -68
- package/extensions/matrix/src/matrix/monitor/direct.ts +0 -105
- package/extensions/matrix/src/matrix/monitor/events.ts +0 -103
- package/extensions/matrix/src/matrix/monitor/handler.ts +0 -645
- package/extensions/matrix/src/matrix/monitor/index.ts +0 -279
- package/extensions/matrix/src/matrix/monitor/location.ts +0 -83
- package/extensions/matrix/src/matrix/monitor/media.test.ts +0 -103
- package/extensions/matrix/src/matrix/monitor/media.ts +0 -113
- package/extensions/matrix/src/matrix/monitor/mentions.ts +0 -31
- package/extensions/matrix/src/matrix/monitor/replies.ts +0 -96
- package/extensions/matrix/src/matrix/monitor/room-info.ts +0 -58
- package/extensions/matrix/src/matrix/monitor/rooms.ts +0 -43
- package/extensions/matrix/src/matrix/monitor/threads.ts +0 -64
- package/extensions/matrix/src/matrix/monitor/types.ts +0 -39
- package/extensions/matrix/src/matrix/poll-types.test.ts +0 -22
- package/extensions/matrix/src/matrix/poll-types.ts +0 -157
- package/extensions/matrix/src/matrix/probe.ts +0 -70
- package/extensions/matrix/src/matrix/send/client.ts +0 -63
- package/extensions/matrix/src/matrix/send/formatting.ts +0 -92
- package/extensions/matrix/src/matrix/send/media.ts +0 -220
- package/extensions/matrix/src/matrix/send/targets.test.ts +0 -102
- package/extensions/matrix/src/matrix/send/targets.ts +0 -144
- package/extensions/matrix/src/matrix/send/types.ts +0 -109
- package/extensions/matrix/src/matrix/send.test.ts +0 -172
- package/extensions/matrix/src/matrix/send.ts +0 -255
- package/extensions/matrix/src/onboarding.ts +0 -432
- package/extensions/matrix/src/outbound.ts +0 -53
- package/extensions/matrix/src/resolve-targets.ts +0 -89
- package/extensions/matrix/src/runtime.ts +0 -14
- package/extensions/matrix/src/tool-actions.ts +0 -160
- package/extensions/matrix/src/types.ts +0 -95
- package/extensions/mattermost/clawdbot.plugin.json +0 -11
- package/extensions/mattermost/index.ts +0 -18
- package/extensions/mattermost/package.json +0 -25
- package/extensions/mattermost/src/channel.test.ts +0 -43
- package/extensions/mattermost/src/channel.ts +0 -339
- package/extensions/mattermost/src/config-schema.ts +0 -56
- package/extensions/mattermost/src/group-mentions.ts +0 -14
- package/extensions/mattermost/src/mattermost/accounts.ts +0 -115
- package/extensions/mattermost/src/mattermost/client.ts +0 -208
- package/extensions/mattermost/src/mattermost/index.ts +0 -9
- package/extensions/mattermost/src/mattermost/monitor-helpers.ts +0 -150
- package/extensions/mattermost/src/mattermost/monitor.ts +0 -921
- package/extensions/mattermost/src/mattermost/probe.ts +0 -70
- package/extensions/mattermost/src/mattermost/send.ts +0 -217
- package/extensions/mattermost/src/normalize.ts +0 -38
- package/extensions/mattermost/src/onboarding-helpers.ts +0 -42
- package/extensions/mattermost/src/onboarding.ts +0 -187
- package/extensions/mattermost/src/runtime.ts +0 -14
- package/extensions/mattermost/src/types.ts +0 -50
- package/extensions/msteams/CHANGELOG.md +0 -51
- package/extensions/msteams/clawdbot.plugin.json +0 -11
- package/extensions/msteams/index.ts +0 -18
- package/extensions/msteams/package.json +0 -36
- package/extensions/msteams/src/attachments/download.ts +0 -206
- package/extensions/msteams/src/attachments/graph.ts +0 -319
- package/extensions/msteams/src/attachments/html.ts +0 -76
- package/extensions/msteams/src/attachments/payload.ts +0 -22
- package/extensions/msteams/src/attachments/shared.ts +0 -235
- package/extensions/msteams/src/attachments/types.ts +0 -37
- package/extensions/msteams/src/attachments.test.ts +0 -424
- package/extensions/msteams/src/attachments.ts +0 -18
- package/extensions/msteams/src/channel.directory.test.ts +0 -46
- package/extensions/msteams/src/channel.ts +0 -436
- package/extensions/msteams/src/conversation-store-fs.test.ts +0 -88
- package/extensions/msteams/src/conversation-store-fs.ts +0 -155
- package/extensions/msteams/src/conversation-store-memory.ts +0 -45
- package/extensions/msteams/src/conversation-store.ts +0 -41
- package/extensions/msteams/src/directory-live.ts +0 -179
- package/extensions/msteams/src/errors.test.ts +0 -46
- package/extensions/msteams/src/errors.ts +0 -158
- package/extensions/msteams/src/file-consent-helpers.test.ts +0 -234
- package/extensions/msteams/src/file-consent-helpers.ts +0 -73
- package/extensions/msteams/src/file-consent.ts +0 -122
- package/extensions/msteams/src/graph-chat.ts +0 -52
- package/extensions/msteams/src/graph-upload.ts +0 -445
- package/extensions/msteams/src/inbound.test.ts +0 -67
- package/extensions/msteams/src/inbound.ts +0 -38
- package/extensions/msteams/src/index.ts +0 -4
- package/extensions/msteams/src/media-helpers.test.ts +0 -186
- package/extensions/msteams/src/media-helpers.ts +0 -77
- package/extensions/msteams/src/messenger.test.ts +0 -245
- package/extensions/msteams/src/messenger.ts +0 -460
- package/extensions/msteams/src/monitor-handler/inbound-media.ts +0 -123
- package/extensions/msteams/src/monitor-handler/message-handler.ts +0 -629
- package/extensions/msteams/src/monitor-handler.ts +0 -166
- package/extensions/msteams/src/monitor-types.ts +0 -5
- package/extensions/msteams/src/monitor.ts +0 -290
- package/extensions/msteams/src/onboarding.ts +0 -432
- package/extensions/msteams/src/outbound.ts +0 -47
- package/extensions/msteams/src/pending-uploads.ts +0 -87
- package/extensions/msteams/src/policy.test.ts +0 -210
- package/extensions/msteams/src/policy.ts +0 -202
- package/extensions/msteams/src/polls-store-memory.ts +0 -30
- package/extensions/msteams/src/polls-store.test.ts +0 -40
- package/extensions/msteams/src/polls.test.ts +0 -72
- package/extensions/msteams/src/polls.ts +0 -299
- package/extensions/msteams/src/probe.test.ts +0 -57
- package/extensions/msteams/src/probe.ts +0 -99
- package/extensions/msteams/src/reply-dispatcher.ts +0 -128
- package/extensions/msteams/src/resolve-allowlist.ts +0 -277
- package/extensions/msteams/src/runtime.ts +0 -14
- package/extensions/msteams/src/sdk-types.ts +0 -19
- package/extensions/msteams/src/sdk.ts +0 -33
- package/extensions/msteams/src/send-context.ts +0 -156
- package/extensions/msteams/src/send.ts +0 -489
- package/extensions/msteams/src/sent-message-cache.test.ts +0 -16
- package/extensions/msteams/src/sent-message-cache.ts +0 -41
- package/extensions/msteams/src/storage.ts +0 -22
- package/extensions/msteams/src/store-fs.ts +0 -80
- package/extensions/msteams/src/token.ts +0 -19
- package/extensions/nextcloud-talk/clawdbot.plugin.json +0 -11
- package/extensions/nextcloud-talk/index.ts +0 -18
- package/extensions/nextcloud-talk/package.json +0 -30
- package/extensions/nextcloud-talk/src/accounts.ts +0 -154
- package/extensions/nextcloud-talk/src/channel.ts +0 -404
- package/extensions/nextcloud-talk/src/config-schema.ts +0 -78
- package/extensions/nextcloud-talk/src/format.ts +0 -79
- package/extensions/nextcloud-talk/src/inbound.ts +0 -336
- package/extensions/nextcloud-talk/src/monitor.ts +0 -246
- package/extensions/nextcloud-talk/src/normalize.ts +0 -31
- package/extensions/nextcloud-talk/src/onboarding.ts +0 -341
- package/extensions/nextcloud-talk/src/policy.ts +0 -175
- package/extensions/nextcloud-talk/src/room-info.ts +0 -111
- package/extensions/nextcloud-talk/src/runtime.ts +0 -14
- package/extensions/nextcloud-talk/src/send.ts +0 -206
- package/extensions/nextcloud-talk/src/signature.ts +0 -67
- package/extensions/nextcloud-talk/src/types.ts +0 -179
- package/extensions/nostr/CHANGELOG.md +0 -46
- package/extensions/nostr/README.md +0 -136
- package/extensions/nostr/clawdbot.plugin.json +0 -11
- package/extensions/nostr/index.ts +0 -69
- package/extensions/nostr/package.json +0 -31
- package/extensions/nostr/src/channel.test.ts +0 -141
- package/extensions/nostr/src/channel.ts +0 -342
- package/extensions/nostr/src/config-schema.ts +0 -90
- package/extensions/nostr/src/metrics.ts +0 -464
- package/extensions/nostr/src/nostr-bus.fuzz.test.ts +0 -544
- package/extensions/nostr/src/nostr-bus.integration.test.ts +0 -452
- package/extensions/nostr/src/nostr-bus.test.ts +0 -199
- package/extensions/nostr/src/nostr-bus.ts +0 -741
- package/extensions/nostr/src/nostr-profile-http.test.ts +0 -378
- package/extensions/nostr/src/nostr-profile-http.ts +0 -500
- package/extensions/nostr/src/nostr-profile-import.test.ts +0 -120
- package/extensions/nostr/src/nostr-profile-import.ts +0 -259
- package/extensions/nostr/src/nostr-profile.fuzz.test.ts +0 -479
- package/extensions/nostr/src/nostr-profile.test.ts +0 -410
- package/extensions/nostr/src/nostr-profile.ts +0 -242
- package/extensions/nostr/src/nostr-state-store.test.ts +0 -128
- package/extensions/nostr/src/nostr-state-store.ts +0 -226
- package/extensions/nostr/src/runtime.ts +0 -14
- package/extensions/nostr/src/seen-tracker.ts +0 -271
- package/extensions/nostr/src/types.test.ts +0 -161
- package/extensions/nostr/src/types.ts +0 -99
- package/extensions/nostr/test/setup.ts +0 -5
- package/extensions/open-prose/README.md +0 -25
- package/extensions/open-prose/clawdbot.plugin.json +0 -11
- package/extensions/open-prose/index.ts +0 -5
- package/extensions/open-prose/package.json +0 -11
- package/extensions/open-prose/skills/prose/LICENSE +0 -21
- package/extensions/open-prose/skills/prose/SKILL.md +0 -318
- package/extensions/open-prose/skills/prose/alt-borges.md +0 -141
- package/extensions/open-prose/skills/prose/alts/arabian-nights.md +0 -358
- package/extensions/open-prose/skills/prose/alts/borges.md +0 -360
- package/extensions/open-prose/skills/prose/alts/folk.md +0 -322
- package/extensions/open-prose/skills/prose/alts/homer.md +0 -346
- package/extensions/open-prose/skills/prose/alts/kafka.md +0 -373
- package/extensions/open-prose/skills/prose/compiler.md +0 -2967
- package/extensions/open-prose/skills/prose/examples/01-hello-world.prose +0 -4
- package/extensions/open-prose/skills/prose/examples/02-research-and-summarize.prose +0 -6
- package/extensions/open-prose/skills/prose/examples/03-code-review.prose +0 -17
- package/extensions/open-prose/skills/prose/examples/04-write-and-refine.prose +0 -14
- package/extensions/open-prose/skills/prose/examples/05-debug-issue.prose +0 -20
- package/extensions/open-prose/skills/prose/examples/06-explain-codebase.prose +0 -17
- package/extensions/open-prose/skills/prose/examples/07-refactor.prose +0 -20
- package/extensions/open-prose/skills/prose/examples/08-blog-post.prose +0 -20
- package/extensions/open-prose/skills/prose/examples/09-research-with-agents.prose +0 -25
- package/extensions/open-prose/skills/prose/examples/10-code-review-agents.prose +0 -32
- package/extensions/open-prose/skills/prose/examples/11-skills-and-imports.prose +0 -27
- package/extensions/open-prose/skills/prose/examples/12-secure-agent-permissions.prose +0 -43
- package/extensions/open-prose/skills/prose/examples/13-variables-and-context.prose +0 -51
- package/extensions/open-prose/skills/prose/examples/14-composition-blocks.prose +0 -48
- package/extensions/open-prose/skills/prose/examples/15-inline-sequences.prose +0 -23
- package/extensions/open-prose/skills/prose/examples/16-parallel-reviews.prose +0 -19
- package/extensions/open-prose/skills/prose/examples/17-parallel-research.prose +0 -19
- package/extensions/open-prose/skills/prose/examples/18-mixed-parallel-sequential.prose +0 -36
- package/extensions/open-prose/skills/prose/examples/19-advanced-parallel.prose +0 -71
- package/extensions/open-prose/skills/prose/examples/20-fixed-loops.prose +0 -20
- package/extensions/open-prose/skills/prose/examples/21-pipeline-operations.prose +0 -35
- package/extensions/open-prose/skills/prose/examples/22-error-handling.prose +0 -51
- package/extensions/open-prose/skills/prose/examples/23-retry-with-backoff.prose +0 -63
- package/extensions/open-prose/skills/prose/examples/24-choice-blocks.prose +0 -86
- package/extensions/open-prose/skills/prose/examples/25-conditionals.prose +0 -114
- package/extensions/open-prose/skills/prose/examples/26-parameterized-blocks.prose +0 -100
- package/extensions/open-prose/skills/prose/examples/27-string-interpolation.prose +0 -105
- package/extensions/open-prose/skills/prose/examples/28-automated-pr-review.prose +0 -37
- package/extensions/open-prose/skills/prose/examples/28-gas-town.prose +0 -1572
- package/extensions/open-prose/skills/prose/examples/29-captains-chair.prose +0 -218
- package/extensions/open-prose/skills/prose/examples/30-captains-chair-simple.prose +0 -42
- package/extensions/open-prose/skills/prose/examples/31-captains-chair-with-memory.prose +0 -145
- package/extensions/open-prose/skills/prose/examples/33-pr-review-autofix.prose +0 -168
- package/extensions/open-prose/skills/prose/examples/34-content-pipeline.prose +0 -204
- package/extensions/open-prose/skills/prose/examples/35-feature-factory.prose +0 -296
- package/extensions/open-prose/skills/prose/examples/36-bug-hunter.prose +0 -237
- package/extensions/open-prose/skills/prose/examples/37-the-forge.prose +0 -1474
- package/extensions/open-prose/skills/prose/examples/38-skill-scan.prose +0 -455
- package/extensions/open-prose/skills/prose/examples/39-architect-by-simulation.prose +0 -277
- package/extensions/open-prose/skills/prose/examples/40-rlm-self-refine.prose +0 -32
- package/extensions/open-prose/skills/prose/examples/41-rlm-divide-conquer.prose +0 -38
- package/extensions/open-prose/skills/prose/examples/42-rlm-filter-recurse.prose +0 -46
- package/extensions/open-prose/skills/prose/examples/43-rlm-pairwise.prose +0 -50
- package/extensions/open-prose/skills/prose/examples/44-run-endpoint-ux-test.prose +0 -261
- package/extensions/open-prose/skills/prose/examples/45-plugin-release.prose +0 -159
- package/extensions/open-prose/skills/prose/examples/45-run-endpoint-ux-test-with-remediation.prose +0 -637
- package/extensions/open-prose/skills/prose/examples/46-run-endpoint-ux-test-fast.prose +0 -148
- package/extensions/open-prose/skills/prose/examples/46-workflow-crystallizer.prose +0 -225
- package/extensions/open-prose/skills/prose/examples/47-language-self-improvement.prose +0 -356
- package/extensions/open-prose/skills/prose/examples/48-habit-miner.prose +0 -445
- package/extensions/open-prose/skills/prose/examples/49-prose-run-retrospective.prose +0 -210
- package/extensions/open-prose/skills/prose/examples/README.md +0 -391
- package/extensions/open-prose/skills/prose/examples/roadmap/README.md +0 -22
- package/extensions/open-prose/skills/prose/examples/roadmap/iterative-refinement.prose +0 -20
- package/extensions/open-prose/skills/prose/examples/roadmap/parallel-review.prose +0 -18
- package/extensions/open-prose/skills/prose/examples/roadmap/simple-pipeline.prose +0 -17
- package/extensions/open-prose/skills/prose/examples/roadmap/syntax/open-prose-syntax.prose +0 -223
- package/extensions/open-prose/skills/prose/guidance/antipatterns.md +0 -951
- package/extensions/open-prose/skills/prose/guidance/patterns.md +0 -700
- package/extensions/open-prose/skills/prose/guidance/system-prompt.md +0 -180
- package/extensions/open-prose/skills/prose/help.md +0 -143
- package/extensions/open-prose/skills/prose/lib/README.md +0 -105
- package/extensions/open-prose/skills/prose/lib/calibrator.prose +0 -215
- package/extensions/open-prose/skills/prose/lib/cost-analyzer.prose +0 -174
- package/extensions/open-prose/skills/prose/lib/error-forensics.prose +0 -250
- package/extensions/open-prose/skills/prose/lib/inspector.prose +0 -196
- package/extensions/open-prose/skills/prose/lib/profiler.prose +0 -460
- package/extensions/open-prose/skills/prose/lib/program-improver.prose +0 -275
- package/extensions/open-prose/skills/prose/lib/project-memory.prose +0 -118
- package/extensions/open-prose/skills/prose/lib/user-memory.prose +0 -93
- package/extensions/open-prose/skills/prose/lib/vm-improver.prose +0 -243
- package/extensions/open-prose/skills/prose/primitives/session.md +0 -587
- package/extensions/open-prose/skills/prose/prose.md +0 -1235
- package/extensions/open-prose/skills/prose/state/filesystem.md +0 -478
- package/extensions/open-prose/skills/prose/state/in-context.md +0 -380
- package/extensions/open-prose/skills/prose/state/postgres.md +0 -875
- package/extensions/open-prose/skills/prose/state/sqlite.md +0 -572
- package/extensions/qwen-portal-auth/README.md +0 -24
- package/extensions/qwen-portal-auth/clawdbot.plugin.json +0 -11
- package/extensions/qwen-portal-auth/index.ts +0 -127
- package/extensions/qwen-portal-auth/oauth.ts +0 -190
- package/extensions/signal/clawdbot.plugin.json +0 -11
- package/extensions/signal/index.ts +0 -18
- package/extensions/signal/package.json +0 -11
- package/extensions/signal/src/channel.ts +0 -312
- package/extensions/signal/src/runtime.ts +0 -14
- package/extensions/telegram/clawdbot.plugin.json +0 -11
- package/extensions/telegram/index.ts +0 -18
- package/extensions/telegram/package.json +0 -11
- package/extensions/telegram/src/channel.ts +0 -478
- package/extensions/telegram/src/runtime.ts +0 -14
- package/extensions/tlon/README.md +0 -5
- package/extensions/tlon/clawdbot.plugin.json +0 -11
- package/extensions/tlon/index.ts +0 -18
- package/extensions/tlon/package.json +0 -30
- package/extensions/tlon/src/channel.ts +0 -379
- package/extensions/tlon/src/config-schema.test.ts +0 -32
- package/extensions/tlon/src/config-schema.ts +0 -43
- package/extensions/tlon/src/monitor/discovery.ts +0 -71
- package/extensions/tlon/src/monitor/history.ts +0 -87
- package/extensions/tlon/src/monitor/index.ts +0 -501
- package/extensions/tlon/src/monitor/processed-messages.test.ts +0 -24
- package/extensions/tlon/src/monitor/processed-messages.ts +0 -38
- package/extensions/tlon/src/monitor/utils.ts +0 -83
- package/extensions/tlon/src/onboarding.ts +0 -213
- package/extensions/tlon/src/runtime.ts +0 -14
- package/extensions/tlon/src/targets.ts +0 -79
- package/extensions/tlon/src/types.ts +0 -85
- package/extensions/tlon/src/urbit/auth.ts +0 -18
- package/extensions/tlon/src/urbit/http-api.ts +0 -36
- package/extensions/tlon/src/urbit/send.test.ts +0 -38
- package/extensions/tlon/src/urbit/send.ts +0 -127
- package/extensions/tlon/src/urbit/sse-client.test.ts +0 -41
- package/extensions/tlon/src/urbit/sse-client.ts +0 -367
- package/extensions/twitch/CHANGELOG.md +0 -21
- package/extensions/twitch/README.md +0 -89
- package/extensions/twitch/clawdbot.plugin.json +0 -9
- package/extensions/twitch/index.ts +0 -20
- package/extensions/twitch/package.json +0 -20
- package/extensions/twitch/src/access-control.test.ts +0 -489
- package/extensions/twitch/src/access-control.ts +0 -154
- package/extensions/twitch/src/actions.ts +0 -173
- package/extensions/twitch/src/client-manager-registry.ts +0 -115
- package/extensions/twitch/src/config-schema.ts +0 -82
- package/extensions/twitch/src/config.test.ts +0 -88
- package/extensions/twitch/src/config.ts +0 -116
- package/extensions/twitch/src/monitor.ts +0 -257
- package/extensions/twitch/src/onboarding.test.ts +0 -311
- package/extensions/twitch/src/onboarding.ts +0 -411
- package/extensions/twitch/src/outbound.test.ts +0 -373
- package/extensions/twitch/src/outbound.ts +0 -186
- package/extensions/twitch/src/plugin.test.ts +0 -39
- package/extensions/twitch/src/plugin.ts +0 -274
- package/extensions/twitch/src/probe.test.ts +0 -198
- package/extensions/twitch/src/probe.ts +0 -118
- package/extensions/twitch/src/resolver.ts +0 -137
- package/extensions/twitch/src/runtime.ts +0 -14
- package/extensions/twitch/src/send.test.ts +0 -289
- package/extensions/twitch/src/send.ts +0 -136
- package/extensions/twitch/src/status.test.ts +0 -270
- package/extensions/twitch/src/status.ts +0 -176
- package/extensions/twitch/src/token.test.ts +0 -171
- package/extensions/twitch/src/token.ts +0 -87
- package/extensions/twitch/src/twitch-client.test.ts +0 -574
- package/extensions/twitch/src/twitch-client.ts +0 -277
- package/extensions/twitch/src/types.ts +0 -141
- package/extensions/twitch/src/utils/markdown.ts +0 -92
- package/extensions/twitch/src/utils/twitch.ts +0 -78
- package/extensions/twitch/test/setup.ts +0 -7
- package/extensions/voice-call/CHANGELOG.md +0 -72
- package/extensions/voice-call/README.md +0 -134
- package/extensions/voice-call/clawdbot.plugin.json +0 -601
- package/extensions/voice-call/index.ts +0 -497
- package/extensions/voice-call/package.json +0 -16
- package/extensions/voice-call/src/cli.ts +0 -300
- package/extensions/voice-call/src/config.test.ts +0 -204
- package/extensions/voice-call/src/config.ts +0 -493
- package/extensions/voice-call/src/core-bridge.ts +0 -196
- package/extensions/voice-call/src/manager/context.ts +0 -21
- package/extensions/voice-call/src/manager/events.ts +0 -177
- package/extensions/voice-call/src/manager/lookup.ts +0 -33
- package/extensions/voice-call/src/manager/outbound.ts +0 -248
- package/extensions/voice-call/src/manager/state.ts +0 -50
- package/extensions/voice-call/src/manager/store.ts +0 -88
- package/extensions/voice-call/src/manager/timers.ts +0 -86
- package/extensions/voice-call/src/manager/twiml.ts +0 -9
- package/extensions/voice-call/src/manager.test.ts +0 -108
- package/extensions/voice-call/src/manager.ts +0 -876
- package/extensions/voice-call/src/media-stream.test.ts +0 -97
- package/extensions/voice-call/src/media-stream.ts +0 -393
- package/extensions/voice-call/src/providers/base.ts +0 -67
- package/extensions/voice-call/src/providers/index.ts +0 -10
- package/extensions/voice-call/src/providers/mock.ts +0 -168
- package/extensions/voice-call/src/providers/plivo.test.ts +0 -28
- package/extensions/voice-call/src/providers/plivo.ts +0 -504
- package/extensions/voice-call/src/providers/stt-openai-realtime.ts +0 -311
- package/extensions/voice-call/src/providers/telnyx.ts +0 -364
- package/extensions/voice-call/src/providers/tts-openai.ts +0 -264
- package/extensions/voice-call/src/providers/twilio/api.ts +0 -45
- package/extensions/voice-call/src/providers/twilio/webhook.ts +0 -29
- package/extensions/voice-call/src/providers/twilio.test.ts +0 -64
- package/extensions/voice-call/src/providers/twilio.ts +0 -595
- package/extensions/voice-call/src/response-generator.ts +0 -171
- package/extensions/voice-call/src/runtime.ts +0 -205
- package/extensions/voice-call/src/telephony-audio.ts +0 -88
- package/extensions/voice-call/src/telephony-tts.ts +0 -95
- package/extensions/voice-call/src/tunnel.ts +0 -331
- package/extensions/voice-call/src/types.ts +0 -272
- package/extensions/voice-call/src/utils.ts +0 -12
- package/extensions/voice-call/src/voice-mapping.ts +0 -65
- package/extensions/voice-call/src/webhook-security.test.ts +0 -233
- package/extensions/voice-call/src/webhook-security.ts +0 -446
- package/extensions/voice-call/src/webhook.ts +0 -490
- package/extensions/whatsapp/clawdbot.plugin.json +0 -11
- package/extensions/whatsapp/index.ts +0 -18
- package/extensions/whatsapp/package.json +0 -11
- package/extensions/whatsapp/src/channel.ts +0 -500
- package/extensions/whatsapp/src/runtime.ts +0 -14
- package/extensions/zalo/CHANGELOG.md +0 -55
- package/extensions/zalo/README.md +0 -50
- package/extensions/zalo/clawdbot.plugin.json +0 -11
- package/extensions/zalo/index.ts +0 -20
- package/extensions/zalo/package.json +0 -33
- package/extensions/zalo/src/accounts.ts +0 -71
- package/extensions/zalo/src/actions.ts +0 -62
- package/extensions/zalo/src/api.ts +0 -206
- package/extensions/zalo/src/channel.directory.test.ts +0 -35
- package/extensions/zalo/src/channel.ts +0 -394
- package/extensions/zalo/src/config-schema.ts +0 -24
- package/extensions/zalo/src/monitor.ts +0 -760
- package/extensions/zalo/src/monitor.webhook.test.ts +0 -70
- package/extensions/zalo/src/onboarding.ts +0 -405
- package/extensions/zalo/src/probe.ts +0 -46
- package/extensions/zalo/src/proxy.ts +0 -18
- package/extensions/zalo/src/runtime.ts +0 -14
- package/extensions/zalo/src/send.ts +0 -117
- package/extensions/zalo/src/status-issues.ts +0 -50
- package/extensions/zalo/src/token.ts +0 -55
- package/extensions/zalo/src/types.ts +0 -42
- package/extensions/zalouser/CHANGELOG.md +0 -33
- package/extensions/zalouser/README.md +0 -221
- package/extensions/zalouser/clawdbot.plugin.json +0 -11
- package/extensions/zalouser/index.ts +0 -32
- package/extensions/zalouser/package.json +0 -33
- package/extensions/zalouser/src/accounts.ts +0 -117
- package/extensions/zalouser/src/channel.test.ts +0 -17
- package/extensions/zalouser/src/channel.ts +0 -641
- package/extensions/zalouser/src/config-schema.ts +0 -27
- package/extensions/zalouser/src/monitor.ts +0 -574
- package/extensions/zalouser/src/onboarding.ts +0 -488
- package/extensions/zalouser/src/probe.ts +0 -28
- package/extensions/zalouser/src/runtime.ts +0 -14
- package/extensions/zalouser/src/send.ts +0 -150
- package/extensions/zalouser/src/status-issues.test.ts +0 -58
- package/extensions/zalouser/src/status-issues.ts +0 -81
- package/extensions/zalouser/src/tool.ts +0 -156
- package/extensions/zalouser/src/types.ts +0 -102
- package/extensions/zalouser/src/zca.ts +0 -208
- package/skills/1password/SKILL.md +0 -53
- package/skills/1password/references/cli-examples.md +0 -29
- package/skills/1password/references/get-started.md +0 -17
- package/skills/apple-notes/SKILL.md +0 -50
- package/skills/apple-reminders/SKILL.md +0 -67
- package/skills/bear-notes/SKILL.md +0 -79
- package/skills/bird/SKILL.md +0 -197
- package/skills/blogwatcher/SKILL.md +0 -46
- package/skills/blucli/SKILL.md +0 -27
- package/skills/bluebubbles/SKILL.md +0 -39
- package/skills/camsnap/SKILL.md +0 -25
- package/skills/canvas/SKILL.md +0 -189
- package/skills/clawdhub/SKILL.md +0 -53
- package/skills/coding-agent/SKILL.md +0 -278
- package/skills/discord/SKILL.md +0 -475
- package/skills/eightctl/SKILL.md +0 -29
- package/skills/food-order/SKILL.md +0 -41
- package/skills/gemini/SKILL.md +0 -23
- package/skills/gifgrep/SKILL.md +0 -47
- package/skills/github/SKILL.md +0 -48
- package/skills/gog/SKILL.md +0 -92
- package/skills/goplaces/SKILL.md +0 -30
- package/skills/himalaya/SKILL.md +0 -217
- package/skills/himalaya/references/configuration.md +0 -174
- package/skills/himalaya/references/message-composition.md +0 -182
- package/skills/imsg/SKILL.md +0 -25
- package/skills/local-places/SERVER_README.md +0 -101
- package/skills/local-places/SKILL.md +0 -91
- package/skills/local-places/pyproject.toml +0 -27
- package/skills/local-places/src/local_places/__init__.py +0 -2
- package/skills/local-places/src/local_places/google_places.py +0 -314
- package/skills/local-places/src/local_places/main.py +0 -65
- package/skills/local-places/src/local_places/schemas.py +0 -107
- package/skills/mcporter/SKILL.md +0 -38
- package/skills/model-usage/SKILL.md +0 -45
- package/skills/model-usage/references/codexbar-cli.md +0 -28
- package/skills/model-usage/scripts/model_usage.py +0 -310
- package/skills/nano-banana-pro/SKILL.md +0 -30
- package/skills/nano-banana-pro/scripts/generate_image.py +0 -169
- package/skills/nano-pdf/SKILL.md +0 -20
- package/skills/notion/SKILL.md +0 -156
- package/skills/obsidian/SKILL.md +0 -55
- package/skills/openai-image-gen/SKILL.md +0 -71
- package/skills/openai-image-gen/scripts/gen.py +0 -240
- package/skills/openai-whisper/SKILL.md +0 -19
- package/skills/openai-whisper-api/SKILL.md +0 -43
- package/skills/openai-whisper-api/scripts/transcribe.sh +0 -85
- package/skills/openhue/SKILL.md +0 -30
- package/skills/oracle/SKILL.md +0 -105
- package/skills/ordercli/SKILL.md +0 -47
- package/skills/peekaboo/SKILL.md +0 -153
- package/skills/sag/SKILL.md +0 -62
- package/skills/session-logs/SKILL.md +0 -105
- package/skills/sherpa-onnx-tts/SKILL.md +0 -49
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +0 -178
- package/skills/skill-creator/SKILL.md +0 -371
- package/skills/skill-creator/license.txt +0 -202
- package/skills/skill-creator/scripts/init_skill.py +0 -378
- package/skills/skill-creator/scripts/package_skill.py +0 -111
- package/skills/skill-creator/scripts/quick_validate.py +0 -101
- package/skills/slack/SKILL.md +0 -144
- package/skills/songsee/SKILL.md +0 -29
- package/skills/sonoscli/SKILL.md +0 -26
- package/skills/spotify-player/SKILL.md +0 -34
- package/skills/summarize/SKILL.md +0 -67
- package/skills/things-mac/SKILL.md +0 -61
- package/skills/tmux/SKILL.md +0 -121
- package/skills/tmux/scripts/find-sessions.sh +0 -112
- package/skills/tmux/scripts/wait-for-text.sh +0 -83
- package/skills/trello/SKILL.md +0 -84
- package/skills/video-frames/SKILL.md +0 -29
- package/skills/video-frames/scripts/frame.sh +0 -81
- package/skills/voice-call/SKILL.md +0 -35
- package/skills/wacli/SKILL.md +0 -42
- package/skills/weather/SKILL.md +0 -49
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
# /run Endpoint UX Test - Fast Loop
|
|
2
|
-
#
|
|
3
|
-
# Streamlined version optimized for speed:
|
|
4
|
-
# - Sonnet for most tasks (Opus only for complex synthesis)
|
|
5
|
-
# - Hardcoded defaults (no prompts for standard config)
|
|
6
|
-
# - Single-agent investigation (not 3 parallel)
|
|
7
|
-
# - Early exit on blocking errors
|
|
8
|
-
# - Auto-proceed for obvious decisions
|
|
9
|
-
# - Combined implement + test + review
|
|
10
|
-
|
|
11
|
-
# ============================================================================
|
|
12
|
-
# Configuration (hardcoded defaults - no user prompts)
|
|
13
|
-
# ============================================================================
|
|
14
|
-
|
|
15
|
-
const API_URL = "https://api-v2.prose.md"
|
|
16
|
-
const TEST_PROGRAM = """
|
|
17
|
-
# Quick Hello
|
|
18
|
-
session "Say hello and count to 5"
|
|
19
|
-
"""
|
|
20
|
-
|
|
21
|
-
# Auth: Read from .env.test synchronously (no LLM needed)
|
|
22
|
-
const AUTH_CREDS = env("TEST_EMAIL", "TEST_PASSWORD") from ".env.test"
|
|
23
|
-
let auth_token = http.post("{API_URL}/auth/login", AUTH_CREDS).token
|
|
24
|
-
|
|
25
|
-
# ============================================================================
|
|
26
|
-
# Agents (Sonnet default, Opus only where complexity requires)
|
|
27
|
-
# ============================================================================
|
|
28
|
-
|
|
29
|
-
agent observer:
|
|
30
|
-
model: sonnet
|
|
31
|
-
persist: true
|
|
32
|
-
prompt: """UX researcher watching execution.
|
|
33
|
-
Focus on: latency, status clarity, error messages.
|
|
34
|
-
Signal IMMEDIATELY if you detect a blocking error (don't wait for completion).
|
|
35
|
-
Output: { blocking_error: bool, error_summary: string, observations: [...] }"""
|
|
36
|
-
|
|
37
|
-
agent investigator:
|
|
38
|
-
model: sonnet # Fast investigation
|
|
39
|
-
prompt: """Senior engineer diagnosing production errors.
|
|
40
|
-
|
|
41
|
-
COMBINED WORKFLOW (do all in one pass):
|
|
42
|
-
1. Check code path that produced the error
|
|
43
|
-
2. Examine logs/observations for timing and state
|
|
44
|
-
3. Check execution context (env status, DB records)
|
|
45
|
-
4. Self-verify: does evidence support conclusion?
|
|
46
|
-
|
|
47
|
-
Output a VERIFIED diagnosis:
|
|
48
|
-
- root_cause: specific and actionable
|
|
49
|
-
- evidence: concrete supporting data
|
|
50
|
-
- confidence: high/medium/low
|
|
51
|
-
- affected_files: list of files to change
|
|
52
|
-
- fix_approach: how to fix it"""
|
|
53
|
-
|
|
54
|
-
agent fixer:
|
|
55
|
-
model: sonnet
|
|
56
|
-
prompt: """Engineer implementing and verifying fixes.
|
|
57
|
-
|
|
58
|
-
COMBINED WORKFLOW:
|
|
59
|
-
1. Implement the smallest fix that addresses root cause
|
|
60
|
-
2. Run build/tests to verify
|
|
61
|
-
3. Self-review: does it fix the issue without regressions?
|
|
62
|
-
4. Commit if passing
|
|
63
|
-
|
|
64
|
-
Output: { implemented: bool, files_changed: [...], tests_pass: bool, commit_sha: string }"""
|
|
65
|
-
|
|
66
|
-
agent triage:
|
|
67
|
-
model: sonnet
|
|
68
|
-
prompt: """Tech lead classifying fixes.
|
|
69
|
-
QUICK: <3 files, <1hr, no architecture changes, low risk
|
|
70
|
-
BIGGER: anything else
|
|
71
|
-
Output: { decision: "quick"|"bigger", rationale: string }"""
|
|
72
|
-
|
|
73
|
-
# ============================================================================
|
|
74
|
-
# Main Flow (streamlined)
|
|
75
|
-
# ============================================================================
|
|
76
|
-
|
|
77
|
-
# Phase 1: Execute and observe (single agent, early exit on error)
|
|
78
|
-
let exec = http.post("{API_URL}/run", { program: TEST_PROGRAM, token: auth_token })
|
|
79
|
-
|
|
80
|
-
let observation = session: observer
|
|
81
|
-
prompt: """Connect to WebSocket: {exec.wsUrl}&token={auth_token}
|
|
82
|
-
Send: {"type":"execute","program":{TEST_PROGRAM}}
|
|
83
|
-
|
|
84
|
-
Watch the stream. If you see a BLOCKING ERROR (hung >10s, repeated failures,
|
|
85
|
-
stopped environment), signal immediately with blocking_error: true.
|
|
86
|
-
|
|
87
|
-
Otherwise observe until completion and summarize UX."""
|
|
88
|
-
timeout: 120s
|
|
89
|
-
early_exit: **blocking_error detected**
|
|
90
|
-
|
|
91
|
-
# Phase 2: Handle result
|
|
92
|
-
if observation.blocking_error:
|
|
93
|
-
|
|
94
|
-
# Auto-investigate (no user prompt - if there's an error, we investigate)
|
|
95
|
-
let diagnosis = session: investigator
|
|
96
|
-
prompt: """Investigate this blocking error:
|
|
97
|
-
|
|
98
|
-
ERROR: {observation.error_summary}
|
|
99
|
-
OBSERVATIONS: {observation.observations}
|
|
100
|
-
EXEC_INFO: {exec}
|
|
101
|
-
|
|
102
|
-
Search code, check logs, verify your diagnosis before outputting."""
|
|
103
|
-
context: { observation, exec }
|
|
104
|
-
|
|
105
|
-
# Skip if low confidence (needs human)
|
|
106
|
-
if diagnosis.confidence == "low":
|
|
107
|
-
output { status: "needs_human", diagnosis }
|
|
108
|
-
|
|
109
|
-
# Auto-triage
|
|
110
|
-
let triage_result = session: triage
|
|
111
|
-
prompt: """Triage: {diagnosis}"""
|
|
112
|
-
context: diagnosis
|
|
113
|
-
|
|
114
|
-
if triage_result.decision == "bigger":
|
|
115
|
-
# Bigger changes need human oversight
|
|
116
|
-
output { status: "needs_planning", diagnosis, triage: triage_result }
|
|
117
|
-
|
|
118
|
-
# Quick fix: implement + test + deploy in one flow
|
|
119
|
-
let fix = session: fixer
|
|
120
|
-
prompt: """Fix this issue:
|
|
121
|
-
|
|
122
|
-
DIAGNOSIS: {diagnosis}
|
|
123
|
-
APPROACH: {diagnosis.fix_approach}
|
|
124
|
-
|
|
125
|
-
Implement, test, self-review, commit."""
|
|
126
|
-
context: diagnosis
|
|
127
|
-
|
|
128
|
-
if not fix.tests_pass:
|
|
129
|
-
output { status: "fix_failed", diagnosis, fix }
|
|
130
|
-
|
|
131
|
-
# Deploy (auto if tests pass)
|
|
132
|
-
let deploy = session "Deploy"
|
|
133
|
-
prompt: """Deploy per docs/DEPLOYMENT.md. Verify health endpoint."""
|
|
134
|
-
retry: 2
|
|
135
|
-
|
|
136
|
-
# Quick smoke test
|
|
137
|
-
let smoke = http.get("{API_URL}/health")
|
|
138
|
-
|
|
139
|
-
output {
|
|
140
|
-
status: smoke.status == "ok" ? "fixed" : "deploy_failed",
|
|
141
|
-
diagnosis,
|
|
142
|
-
fix,
|
|
143
|
-
deploy
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
else:
|
|
147
|
-
# No blocking error - just output UX feedback
|
|
148
|
-
output { status: "ok", ux_feedback: observation }
|
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
# Workflow Crystallizer v2
|
|
2
|
-
# Observes a conversation thread, extracts the workflow pattern, crystallizes into .prose
|
|
3
|
-
#
|
|
4
|
-
# Key design decisions:
|
|
5
|
-
# - Author fetches latest prose.md spec + patterns/antipatterns from GitHub
|
|
6
|
-
# - Single self-verifying author session (Design+Author+Overseer consolidated)
|
|
7
|
-
# - Single user checkpoint (scope + placement combined)
|
|
8
|
-
# - Scoper uses Sonnet (analytical work, not creative)
|
|
9
|
-
# - Parallel: observation + research, collision + scope options
|
|
10
|
-
|
|
11
|
-
input thread: "The conversation thread to analyze"
|
|
12
|
-
input hint: "Optional: What aspect to focus on"
|
|
13
|
-
|
|
14
|
-
# Always fetch latest guidance from source of truth
|
|
15
|
-
const PROSE_SPEC_URL = "https://raw.githubusercontent.com/openprose/prose/refs/heads/main/skills/open-prose/prose.md"
|
|
16
|
-
const PATTERNS_URL = "https://raw.githubusercontent.com/openprose/prose/refs/heads/main/skills/open-prose/guidance/patterns.md"
|
|
17
|
-
const ANTIPATTERNS_URL = "https://raw.githubusercontent.com/openprose/prose/refs/heads/main/skills/open-prose/guidance/antipatterns.md"
|
|
18
|
-
|
|
19
|
-
agent observer:
|
|
20
|
-
model: opus
|
|
21
|
-
prompt: """
|
|
22
|
-
Identify implicit workflows in conversation threads.
|
|
23
|
-
Look for: repeated patterns, multi-step processes, decision points,
|
|
24
|
-
parallelization opportunities, validations performed.
|
|
25
|
-
Be specific - quote actions from the thread.
|
|
26
|
-
"""
|
|
27
|
-
|
|
28
|
-
agent researcher:
|
|
29
|
-
model: sonnet
|
|
30
|
-
prompt: "Research codebases thoroughly. Report what exists and patterns used."
|
|
31
|
-
permissions:
|
|
32
|
-
read: ["**/*.prose", "**/*.md"]
|
|
33
|
-
|
|
34
|
-
agent scoper:
|
|
35
|
-
model: sonnet
|
|
36
|
-
prompt: """
|
|
37
|
-
Determine the right abstraction level for workflows.
|
|
38
|
-
Too specific = only works for one case
|
|
39
|
-
Too general = loses essence, becomes vague
|
|
40
|
-
Find the sweet spot: capture the pattern, parameterize the variables.
|
|
41
|
-
"""
|
|
42
|
-
|
|
43
|
-
agent author:
|
|
44
|
-
model: opus
|
|
45
|
-
prompt: """
|
|
46
|
-
Write idiomatic OpenProse. Follow existing example patterns.
|
|
47
|
-
Prefer explicit over clever. Use agents for distinct roles.
|
|
48
|
-
Use parallel for independent tasks. Use try/catch for reversible operations.
|
|
49
|
-
"""
|
|
50
|
-
permissions:
|
|
51
|
-
write: ["**/*.prose", "**/*.md"]
|
|
52
|
-
|
|
53
|
-
agent compiler:
|
|
54
|
-
model: sonnet
|
|
55
|
-
prompt: "Validate OpenProse syntax. Report specific errors with line numbers."
|
|
56
|
-
permissions:
|
|
57
|
-
bash: allow
|
|
58
|
-
|
|
59
|
-
# ============================================================
|
|
60
|
-
# Phase 1: Observe and Research (parallel)
|
|
61
|
-
# ============================================================
|
|
62
|
-
|
|
63
|
-
parallel:
|
|
64
|
-
raw_observation = session: observer
|
|
65
|
-
prompt: """
|
|
66
|
-
Analyze this conversation thread. Identify:
|
|
67
|
-
1. What manual process was executed?
|
|
68
|
-
2. What were the distinct steps?
|
|
69
|
-
3. What decisions were made?
|
|
70
|
-
4. What could have been parallelized?
|
|
71
|
-
5. What validations were performed?
|
|
72
|
-
6. What artifacts were created?
|
|
73
|
-
Be concrete. Quote specific actions.
|
|
74
|
-
"""
|
|
75
|
-
context: { thread, hint }
|
|
76
|
-
|
|
77
|
-
existing_examples = session: researcher
|
|
78
|
-
prompt: "List all .prose examples with one-line summaries"
|
|
79
|
-
context: "skills/open-prose/examples/"
|
|
80
|
-
|
|
81
|
-
existing_ops = session: researcher
|
|
82
|
-
prompt: "What operational .prose files already exist?"
|
|
83
|
-
context: "OPERATIONS.prose.md"
|
|
84
|
-
|
|
85
|
-
patterns_used = session: researcher
|
|
86
|
-
prompt: "What patterns does this codebase favor?"
|
|
87
|
-
context: "skills/open-prose/examples/*.prose"
|
|
88
|
-
|
|
89
|
-
# ============================================================
|
|
90
|
-
# Phase 2: Scope (parallel analysis, then synthesis)
|
|
91
|
-
# ============================================================
|
|
92
|
-
|
|
93
|
-
parallel:
|
|
94
|
-
collision_check = session: scoper
|
|
95
|
-
prompt: """
|
|
96
|
-
Does the observed workflow overlap with existing examples?
|
|
97
|
-
If yes: how different? What unique value would a new file add?
|
|
98
|
-
If no: what category does it belong to?
|
|
99
|
-
"""
|
|
100
|
-
context: { raw_observation, existing_examples, existing_ops }
|
|
101
|
-
|
|
102
|
-
scope_options_raw = session: scoper
|
|
103
|
-
prompt: """
|
|
104
|
-
Propose 3 scoping options:
|
|
105
|
-
1. NARROW: Specific to exactly what happened (precise but may not generalize)
|
|
106
|
-
2. MEDIUM: Captures pattern with key parameters (reusable, clear)
|
|
107
|
-
3. BROAD: Abstract template (widely applicable but may lose details)
|
|
108
|
-
For each: describe inputs, agents, key phases.
|
|
109
|
-
"""
|
|
110
|
-
context: { raw_observation, patterns_used }
|
|
111
|
-
|
|
112
|
-
let scope_options = session: scoper
|
|
113
|
-
prompt: "Refine scope options considering collision analysis"
|
|
114
|
-
context: { scope_options_raw, collision_check }
|
|
115
|
-
|
|
116
|
-
let placement_suggestion = session: scoper
|
|
117
|
-
prompt: """
|
|
118
|
-
Where should this file live?
|
|
119
|
-
1. examples/XX-name.prose - If reusable pattern (determine next number)
|
|
120
|
-
2. Custom location - If project-specific
|
|
121
|
-
Is this operational (used to run this project)? Note for OPERATIONS.prose.md
|
|
122
|
-
"""
|
|
123
|
-
context: { raw_observation, existing_examples, existing_ops }
|
|
124
|
-
|
|
125
|
-
# ============================================================
|
|
126
|
-
# Phase 3: User Decision (single checkpoint)
|
|
127
|
-
# ============================================================
|
|
128
|
-
|
|
129
|
-
input user_decision: """
|
|
130
|
-
OBSERVED WORKFLOW:
|
|
131
|
-
{raw_observation}
|
|
132
|
-
|
|
133
|
-
COLLISION CHECK:
|
|
134
|
-
{collision_check}
|
|
135
|
-
|
|
136
|
-
SCOPE OPTIONS:
|
|
137
|
-
{scope_options}
|
|
138
|
-
|
|
139
|
-
PLACEMENT RECOMMENDATION:
|
|
140
|
-
{placement_suggestion}
|
|
141
|
-
|
|
142
|
-
YOUR DECISIONS:
|
|
143
|
-
1. Which scope? (1/2/3 or describe custom)
|
|
144
|
-
2. Confirm placement or specify different location:
|
|
145
|
-
"""
|
|
146
|
-
|
|
147
|
-
let final_decisions = session: scoper
|
|
148
|
-
prompt: "Parse user's scope choice and placement confirmation into structured form"
|
|
149
|
-
context: { scope_options, placement_suggestion, user_decision }
|
|
150
|
-
|
|
151
|
-
# ============================================================
|
|
152
|
-
# Phase 4: Author with Self-Verification
|
|
153
|
-
# ============================================================
|
|
154
|
-
|
|
155
|
-
let draft = session: author
|
|
156
|
-
prompt: """
|
|
157
|
-
Design and write the complete .prose file.
|
|
158
|
-
|
|
159
|
-
IMPORTANT: First fetch and read the guidance documents:
|
|
160
|
-
- prose.md spec: {PROSE_SPEC_URL}
|
|
161
|
-
- patterns.md: {PATTERNS_URL}
|
|
162
|
-
- antipatterns.md: {ANTIPATTERNS_URL}
|
|
163
|
-
|
|
164
|
-
Then:
|
|
165
|
-
1. DESIGN: Plan inputs, agents, phases, parallelism, error handling
|
|
166
|
-
2. WRITE: Complete .prose following the spec and patterns
|
|
167
|
-
3. SELF-REVIEW: Check against antipatterns and remove cruft:
|
|
168
|
-
- Remove sessions that just run single commands
|
|
169
|
-
- Remove over-abstracted agents that don't add value
|
|
170
|
-
- Remove comments that restate what code does
|
|
171
|
-
- Remove unnecessary variables and single-item parallel blocks
|
|
172
|
-
- Keep: clear agent roles, meaningful parallelism, genuine error handling
|
|
173
|
-
|
|
174
|
-
Include header comment explaining what it does.
|
|
175
|
-
Output only the final, clean version.
|
|
176
|
-
"""
|
|
177
|
-
context: { final_decisions, existing_examples }
|
|
178
|
-
permissions:
|
|
179
|
-
network: [PROSE_SPEC_URL, PATTERNS_URL, ANTIPATTERNS_URL]
|
|
180
|
-
|
|
181
|
-
# ============================================================
|
|
182
|
-
# Phase 5: Compile with Bounded Retry
|
|
183
|
-
# ============================================================
|
|
184
|
-
|
|
185
|
-
let current = draft
|
|
186
|
-
loop until **compilation succeeds** (max: 3):
|
|
187
|
-
let result = session: compiler
|
|
188
|
-
prompt: """Validate this .prose file against the spec.
|
|
189
|
-
Fetch spec from: {PROSE_SPEC_URL}
|
|
190
|
-
Report SUCCESS or specific errors with line numbers."""
|
|
191
|
-
context: current
|
|
192
|
-
permissions:
|
|
193
|
-
network: [PROSE_SPEC_URL]
|
|
194
|
-
|
|
195
|
-
if **compilation has errors**:
|
|
196
|
-
current = session: author
|
|
197
|
-
prompt: "Fix these syntax errors, return corrected version"
|
|
198
|
-
context: { current, result }
|
|
199
|
-
permissions:
|
|
200
|
-
network: [PROSE_SPEC_URL]
|
|
201
|
-
|
|
202
|
-
# ============================================================
|
|
203
|
-
# Phase 6: Write All Files
|
|
204
|
-
# ============================================================
|
|
205
|
-
|
|
206
|
-
let written = session: author
|
|
207
|
-
prompt: """
|
|
208
|
-
Write the .prose file and update indices:
|
|
209
|
-
1. Write .prose to confirmed location
|
|
210
|
-
2. If this is an example, add entry to examples/README.md
|
|
211
|
-
3. If this is operational, add entry to OPERATIONS.prose.md
|
|
212
|
-
|
|
213
|
-
Return: { file_path, readme_updated: bool, ops_updated: bool }
|
|
214
|
-
"""
|
|
215
|
-
context: { current, final_decisions, existing_examples, existing_ops }
|
|
216
|
-
|
|
217
|
-
# ============================================================
|
|
218
|
-
# Output
|
|
219
|
-
# ============================================================
|
|
220
|
-
|
|
221
|
-
output crystallized = {
|
|
222
|
-
observation: raw_observation,
|
|
223
|
-
decisions: final_decisions,
|
|
224
|
-
file: written
|
|
225
|
-
}
|