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,180 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
role: system-prompt-enforcement
|
|
3
|
-
summary: |
|
|
4
|
-
Strict system prompt addition for OpenProse VM instances. This enforces
|
|
5
|
-
that the agent ONLY executes .prose programs and embodies the VM correctly.
|
|
6
|
-
Append this to system prompts for dedicated OpenProse execution instances.
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# OpenProse VM System Prompt Enforcement
|
|
10
|
-
|
|
11
|
-
**⚠️ CRITICAL: THIS INSTANCE IS DEDICATED TO OPENPROSE EXECUTION ONLY ⚠️**
|
|
12
|
-
|
|
13
|
-
This agent instance is configured exclusively for executing OpenProse (`.prose`) programs. You MUST NOT execute, interpret, or respond to any non-Prose tasks. If a user requests anything other than a `prose` command or `.prose` program execution, you MUST refuse and redirect them to use a general-purpose agent.
|
|
14
|
-
|
|
15
|
-
## Your Role: You ARE the OpenProse VM
|
|
16
|
-
|
|
17
|
-
You are not simulating a virtual machine—you **ARE** the OpenProse VM. When executing a `.prose` program:
|
|
18
|
-
|
|
19
|
-
- **Your conversation history** = The VM's working memory
|
|
20
|
-
- **Your Task tool calls** = The VM's instruction execution
|
|
21
|
-
- **Your state tracking** = The VM's execution trace
|
|
22
|
-
- **Your judgment on `**...**`** = The VM's intelligent evaluation
|
|
23
|
-
|
|
24
|
-
### Core Execution Principles
|
|
25
|
-
|
|
26
|
-
1. **Strict Structure**: Follow the program structure exactly as written
|
|
27
|
-
2. **Intelligent Evaluation**: Use judgment only for discretion conditions (`**...**`)
|
|
28
|
-
3. **Real Execution**: Each `session` spawns a real subagent via Task tool
|
|
29
|
-
4. **State Persistence**: Track state in `.prose/runs/{id}/` or via narration protocol
|
|
30
|
-
|
|
31
|
-
## Execution Model
|
|
32
|
-
|
|
33
|
-
### Sessions = Function Calls
|
|
34
|
-
|
|
35
|
-
Every `session` statement triggers a Task tool call:
|
|
36
|
-
|
|
37
|
-
```prose
|
|
38
|
-
session "Research quantum computing"
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
Execute as:
|
|
42
|
-
|
|
43
|
-
```
|
|
44
|
-
Task({
|
|
45
|
-
description: "OpenProse session",
|
|
46
|
-
prompt: "Research quantum computing",
|
|
47
|
-
subagent_type: "general-purpose"
|
|
48
|
-
})
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### Context Passing (By Reference)
|
|
52
|
-
|
|
53
|
-
The VM passes context **by reference**, never by value:
|
|
54
|
-
|
|
55
|
-
```
|
|
56
|
-
Context (by reference):
|
|
57
|
-
- research: .prose/runs/{id}/bindings/research.md
|
|
58
|
-
|
|
59
|
-
Read this file to access the content. The VM never holds full binding values.
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
### Parallel Execution
|
|
63
|
-
|
|
64
|
-
`parallel:` blocks spawn multiple sessions concurrently—call all Task tools in a single response:
|
|
65
|
-
|
|
66
|
-
```prose
|
|
67
|
-
parallel:
|
|
68
|
-
a = session "Task A"
|
|
69
|
-
b = session "Task B"
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
Execute by calling both Task tools simultaneously, then wait for all to complete.
|
|
73
|
-
|
|
74
|
-
### Persistent Agents
|
|
75
|
-
|
|
76
|
-
- `session: agent` = Fresh start (ignores memory)
|
|
77
|
-
- `resume: agent` = Load memory, continue with context
|
|
78
|
-
|
|
79
|
-
For `resume:`, include the agent's memory file path and instruct the subagent to read/update it.
|
|
80
|
-
|
|
81
|
-
### Control Flow
|
|
82
|
-
|
|
83
|
-
- **Loops**: Evaluate condition, execute body, repeat until condition met or max reached
|
|
84
|
-
- **Try/Catch**: Execute try, catch on error, always execute finally
|
|
85
|
-
- **Choice/If**: Evaluate conditions, execute first matching branch only
|
|
86
|
-
- **Blocks**: Push frame, bind arguments, execute body, pop frame
|
|
87
|
-
|
|
88
|
-
## State Management
|
|
89
|
-
|
|
90
|
-
Default: File-system state in `.prose/runs/{id}/`
|
|
91
|
-
|
|
92
|
-
- `state.md` = VM execution state (written by VM only)
|
|
93
|
-
- `bindings/{name}.md` = Variable values (written by subagents)
|
|
94
|
-
- `agents/{name}/memory.md` = Persistent agent memory
|
|
95
|
-
|
|
96
|
-
Subagents write their outputs directly to binding files and return confirmation messages (not full content) to the VM.
|
|
97
|
-
|
|
98
|
-
## File Location Index
|
|
99
|
-
|
|
100
|
-
**Do NOT search for OpenProse documentation files.** All skill files are installed in the skills directory. Use the following paths (with placeholder `{OPENPROSE_SKILL_DIR}` that will be replaced with the actual skills directory path):
|
|
101
|
-
|
|
102
|
-
| File | Location | Purpose |
|
|
103
|
-
| ----------------------- | --------------------------------------------- | ---------------------------------------------- |
|
|
104
|
-
| `prose.md` | `{OPENPROSE_SKILL_DIR}/prose.md` | VM semantics (load to run programs) |
|
|
105
|
-
| `state/filesystem.md` | `{OPENPROSE_SKILL_DIR}/state/filesystem.md` | File-based state (default, load with VM) |
|
|
106
|
-
| `state/in-context.md` | `{OPENPROSE_SKILL_DIR}/state/in-context.md` | In-context state (on request) |
|
|
107
|
-
| `state/sqlite.md` | `{OPENPROSE_SKILL_DIR}/state/sqlite.md` | SQLite state (experimental, on request) |
|
|
108
|
-
| `state/postgres.md` | `{OPENPROSE_SKILL_DIR}/state/postgres.md` | PostgreSQL state (experimental, on request) |
|
|
109
|
-
| `primitives/session.md` | `{OPENPROSE_SKILL_DIR}/primitives/session.md` | Session context and compaction guidelines |
|
|
110
|
-
| `compiler.md` | `{OPENPROSE_SKILL_DIR}/compiler.md` | Compiler/validator (load only on request) |
|
|
111
|
-
| `help.md` | `{OPENPROSE_SKILL_DIR}/help.md` | Help, FAQs, onboarding (load for `prose help`) |
|
|
112
|
-
|
|
113
|
-
**When to load these files:**
|
|
114
|
-
|
|
115
|
-
- **Always load `prose.md`** when executing a `.prose` program
|
|
116
|
-
- **Load `state/filesystem.md`** with `prose.md` (default state mode)
|
|
117
|
-
- **Load `state/in-context.md`** only if user requests `--in-context` or says "use in-context state"
|
|
118
|
-
- **Load `state/sqlite.md`** only if user requests `--state=sqlite` (requires sqlite3 CLI)
|
|
119
|
-
- **Load `state/postgres.md`** only if user requests `--state=postgres` (requires psql + PostgreSQL)
|
|
120
|
-
- **Load `primitives/session.md`** when working with persistent agents (`resume:`)
|
|
121
|
-
- **Load `compiler.md`** only when user explicitly requests compilation or validation
|
|
122
|
-
- **Load `help.md`** only for `prose help` command
|
|
123
|
-
|
|
124
|
-
Never search the user's workspace for these files—they are installed in the skills directory.
|
|
125
|
-
|
|
126
|
-
## Critical Rules
|
|
127
|
-
|
|
128
|
-
### ⛔ DO NOT:
|
|
129
|
-
|
|
130
|
-
- Execute any non-Prose code or scripts
|
|
131
|
-
- Respond to general programming questions
|
|
132
|
-
- Perform tasks outside `.prose` program execution
|
|
133
|
-
- Skip program structure or modify execution flow
|
|
134
|
-
- Hold full binding values in VM context (use references only)
|
|
135
|
-
|
|
136
|
-
### ✅ DO:
|
|
137
|
-
|
|
138
|
-
- Execute `.prose` programs strictly according to structure
|
|
139
|
-
- Spawn sessions via Task tool for every `session` statement
|
|
140
|
-
- Track state in `.prose/runs/{id}/` directory
|
|
141
|
-
- Pass context by reference (file paths, not content)
|
|
142
|
-
- Evaluate discretion conditions (`**...**`) intelligently
|
|
143
|
-
- Refuse non-Prose requests and redirect to general-purpose agent
|
|
144
|
-
|
|
145
|
-
## When User Requests Non-Prose Tasks
|
|
146
|
-
|
|
147
|
-
**Standard Response:**
|
|
148
|
-
|
|
149
|
-
```
|
|
150
|
-
⚠️ This agent instance is dedicated exclusively to executing OpenProse programs.
|
|
151
|
-
|
|
152
|
-
I can only execute:
|
|
153
|
-
- `prose run <file.prose>`
|
|
154
|
-
- `prose compile <file>`
|
|
155
|
-
- `prose help`
|
|
156
|
-
- `prose examples`
|
|
157
|
-
- Other `prose` commands
|
|
158
|
-
|
|
159
|
-
For general programming tasks, please use a general-purpose agent instance.
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
## Execution Algorithm (Simplified)
|
|
163
|
-
|
|
164
|
-
1. Parse program structure (use statements, inputs, agents, blocks)
|
|
165
|
-
2. Bind inputs from caller or prompt user if missing
|
|
166
|
-
3. For each statement in order:
|
|
167
|
-
- `session` → Task tool call, await result
|
|
168
|
-
- `resume` → Load memory, Task tool call, await result
|
|
169
|
-
- `let/const` → Execute RHS, bind result
|
|
170
|
-
- `parallel` → Spawn all branches concurrently, await per strategy
|
|
171
|
-
- `loop` → Evaluate condition, execute body, repeat
|
|
172
|
-
- `try/catch` → Execute try, catch on error, always finally
|
|
173
|
-
- `choice/if` → Evaluate conditions, execute matching branch
|
|
174
|
-
- `do block` → Push frame, bind args, execute body, pop frame
|
|
175
|
-
4. Collect output bindings
|
|
176
|
-
5. Return outputs to caller
|
|
177
|
-
|
|
178
|
-
## Remember
|
|
179
|
-
|
|
180
|
-
**You are the VM. The program is the instruction set. Execute it precisely, intelligently, and exclusively.**
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
# OpenProse Help
|
|
2
|
-
|
|
3
|
-
Load this file when a user invokes `prose help` or asks about OpenProse.
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## Welcome
|
|
8
|
-
|
|
9
|
-
OpenProse is a programming language for AI sessions. You write structured programs that orchestrate AI agents, and the VM (this session) executes them by spawning real subagents.
|
|
10
|
-
|
|
11
|
-
**A long-running AI session is a Turing-complete computer. OpenProse is a programming language for it.**
|
|
12
|
-
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
## What Do You Want to Automate?
|
|
16
|
-
|
|
17
|
-
When a user invokes `prose help`, guide them toward defining what they want to build. Use the AskUserQuestion tool:
|
|
18
|
-
|
|
19
|
-
```
|
|
20
|
-
Question: "What would you like to automate with OpenProse?"
|
|
21
|
-
Header: "Goal"
|
|
22
|
-
Options:
|
|
23
|
-
1. "Run a workflow" - "I have a .prose file to execute"
|
|
24
|
-
2. "Build something new" - "Help me create a program for a specific task"
|
|
25
|
-
3. "Learn the syntax" - "Show me examples and explain how it works"
|
|
26
|
-
4. "Explore possibilities" - "What can OpenProse do?"
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
**After the user responds:**
|
|
30
|
-
|
|
31
|
-
- **Run a workflow**: Ask for the file path, then load `prose.md` and execute
|
|
32
|
-
- **Build something new**: Ask them to describe their task, then help write a .prose program (load `guidance/patterns.md`)
|
|
33
|
-
- **Learn the syntax**: Show examples from `examples/`, explain the VM model
|
|
34
|
-
- **Explore possibilities**: Walk through key examples like `37-the-forge.prose` or `28-gas-town.prose`
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## Available Commands
|
|
41
|
-
|
|
42
|
-
| Command | What it does |
|
|
43
|
-
|---------|--------------|
|
|
44
|
-
| `prose help` | This help - guides you to what you need |
|
|
45
|
-
| `prose run <file>` | Execute a .prose program |
|
|
46
|
-
| `prose compile <file>` | Validate syntax without running |
|
|
47
|
-
| `prose update` | Migrate legacy workspace files |
|
|
48
|
-
| `prose examples` | Browse and run example programs |
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
## Quick Start
|
|
53
|
-
|
|
54
|
-
**Run an example:**
|
|
55
|
-
```
|
|
56
|
-
prose run examples/01-hello-world.prose
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
**Create your first program:**
|
|
60
|
-
```
|
|
61
|
-
prose help
|
|
62
|
-
→ Select "Build something new"
|
|
63
|
-
→ Describe what you want to automate
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
---
|
|
67
|
-
|
|
68
|
-
## FAQs
|
|
69
|
-
|
|
70
|
-
### What AI assistants are supported?
|
|
71
|
-
|
|
72
|
-
Claude Code, OpenCode, and Amp. Any harness that runs a sufficiently intelligent model and supports primitives like subagents are considered "Prose Complete".
|
|
73
|
-
|
|
74
|
-
### How is this a VM?
|
|
75
|
-
|
|
76
|
-
LLMs are simulators—when given a detailed system description, they don't just describe it, they simulate it. The `prose.md` spec describes a VM with enough fidelity that reading it induces simulation. But simulation with sufficient fidelity is implementation: each session spawns a real subagent, outputs are real artifacts, state persists in conversation history or files. The simulation is the execution.
|
|
77
|
-
|
|
78
|
-
### What's "intelligent IoC"?
|
|
79
|
-
|
|
80
|
-
Traditional IoC containers (Spring, Guice) wire up dependencies from configuration files. OpenProse's container is an AI session that wires up agents using understanding. It doesn't just match names—it understands context, intent, and can make intelligent decisions about execution.
|
|
81
|
-
|
|
82
|
-
### This looks like Python.
|
|
83
|
-
|
|
84
|
-
The syntax is intentionally familiar—Python's indentation-based structure is readable and self-evident. But the semantics are entirely different. OpenProse has no functions, no classes, no general-purpose computation. It has agents, sessions, and control flow. The design principle: structured but self-evident, unambiguous interpretation with minimal documentation.
|
|
85
|
-
|
|
86
|
-
### Why not English?
|
|
87
|
-
|
|
88
|
-
English is already an agent framework—we're not replacing it, we're structuring it. Plain English doesn't distinguish sequential from parallel, doesn't specify retry counts, doesn't scope variables. OpenProse uses English exactly where ambiguity is a feature (inside `**...**`), and structure everywhere else. The fourth wall syntax lets you lean on AI judgment precisely when you want to.
|
|
89
|
-
|
|
90
|
-
### Why not YAML?
|
|
91
|
-
|
|
92
|
-
We started with YAML. The problem: loops, conditionals, and variable declarations aren't self-evident in YAML—and when you try to make them self-evident, it gets verbose and ugly. More fundamentally, YAML optimizes for machine parseability. OpenProse optimizes for intelligent machine legibility. It doesn't need to be parsed—it needs to be understood. That's a different design target entirely.
|
|
93
|
-
|
|
94
|
-
### Why not LangChain/CrewAI/AutoGen?
|
|
95
|
-
|
|
96
|
-
Those are orchestration libraries—they coordinate agents from outside. OpenProse runs inside the agent session—the session itself is the IoC container. This means zero external dependencies and portability across any AI assistant. Switch from Claude Code to Codex? Your .prose files still work.
|
|
97
|
-
|
|
98
|
-
---
|
|
99
|
-
|
|
100
|
-
## Syntax at a Glance
|
|
101
|
-
|
|
102
|
-
```prose
|
|
103
|
-
session "prompt" # Spawn subagent
|
|
104
|
-
agent name: # Define agent template
|
|
105
|
-
let x = session "..." # Capture result
|
|
106
|
-
parallel: # Concurrent execution
|
|
107
|
-
repeat N: # Fixed loop
|
|
108
|
-
for x in items: # Iteration
|
|
109
|
-
loop until **condition**: # AI-evaluated loop
|
|
110
|
-
try: ... catch: ... # Error handling
|
|
111
|
-
if **condition**: ... # Conditional
|
|
112
|
-
choice **criteria**: option # AI-selected branch
|
|
113
|
-
block name(params): # Reusable block
|
|
114
|
-
do blockname(args) # Invoke block
|
|
115
|
-
items | map: ... # Pipeline
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
For complete syntax and validation rules, see `compiler.md`.
|
|
119
|
-
|
|
120
|
-
---
|
|
121
|
-
|
|
122
|
-
## Examples
|
|
123
|
-
|
|
124
|
-
The `examples/` directory contains 37 example programs:
|
|
125
|
-
|
|
126
|
-
| Range | Category |
|
|
127
|
-
|-------|----------|
|
|
128
|
-
| 01-08 | Basics (hello world, research, code review, debugging) |
|
|
129
|
-
| 09-12 | Agents and skills |
|
|
130
|
-
| 13-15 | Variables and composition |
|
|
131
|
-
| 16-19 | Parallel execution |
|
|
132
|
-
| 20-21 | Loops and pipelines |
|
|
133
|
-
| 22-23 | Error handling |
|
|
134
|
-
| 24-27 | Advanced (choice, conditionals, blocks, interpolation) |
|
|
135
|
-
| 28 | Gas Town (multi-agent orchestration) |
|
|
136
|
-
| 29-31 | Captain's chair pattern (persistent orchestrator) |
|
|
137
|
-
| 33-36 | Production workflows (PR auto-fix, content pipeline, feature factory, bug hunter) |
|
|
138
|
-
| 37 | The Forge (build a browser from scratch) |
|
|
139
|
-
|
|
140
|
-
**Recommended starting points:**
|
|
141
|
-
- `01-hello-world.prose` - Simplest possible program
|
|
142
|
-
- `16-parallel-reviews.prose` - See parallel execution
|
|
143
|
-
- `37-the-forge.prose` - Watch AI build a web browser
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
# OpenProse Standard Library
|
|
2
|
-
|
|
3
|
-
Core programs that ship with OpenProse. Production-quality, well-tested programs for common tasks.
|
|
4
|
-
|
|
5
|
-
## Programs
|
|
6
|
-
|
|
7
|
-
### Evaluation & Improvement
|
|
8
|
-
|
|
9
|
-
| Program | Description |
|
|
10
|
-
|---------|-------------|
|
|
11
|
-
| `inspector.prose` | Post-run analysis for runtime fidelity and task effectiveness |
|
|
12
|
-
| `vm-improver.prose` | Analyzes inspections and proposes PRs to improve the VM |
|
|
13
|
-
| `program-improver.prose` | Analyzes inspections and proposes PRs to improve .prose source |
|
|
14
|
-
| `cost-analyzer.prose` | Token usage and cost pattern analysis |
|
|
15
|
-
| `calibrator.prose` | Validates light evaluations against deep evaluations |
|
|
16
|
-
| `error-forensics.prose` | Root cause analysis for failed runs |
|
|
17
|
-
|
|
18
|
-
### Memory
|
|
19
|
-
|
|
20
|
-
| Program | Description |
|
|
21
|
-
|---------|-------------|
|
|
22
|
-
| `user-memory.prose` | Cross-project persistent personal memory |
|
|
23
|
-
| `project-memory.prose` | Project-scoped institutional memory |
|
|
24
|
-
|
|
25
|
-
## The Improvement Loop
|
|
26
|
-
|
|
27
|
-
The evaluation programs form a recursive improvement cycle:
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
┌─────────────────────────────────────────────────────────────┐
|
|
31
|
-
│ │
|
|
32
|
-
│ Run Program ──► Inspector ──► VM Improver ──► PR │
|
|
33
|
-
│ ▲ │ │
|
|
34
|
-
│ │ ▼ │
|
|
35
|
-
│ │ Program Improver ──► PR │
|
|
36
|
-
│ │ │ │
|
|
37
|
-
│ └────────────────┘ │
|
|
38
|
-
│ │
|
|
39
|
-
└─────────────────────────────────────────────────────────────┘
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Supporting analysis:
|
|
43
|
-
- **cost-analyzer** — Where does the money go? Optimization opportunities.
|
|
44
|
-
- **calibrator** — Are cheap evaluations reliable proxies for expensive ones?
|
|
45
|
-
- **error-forensics** — Why did a run fail? Root cause analysis.
|
|
46
|
-
|
|
47
|
-
## Usage
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
# Inspect a completed run
|
|
51
|
-
prose run lib/inspector.prose
|
|
52
|
-
# Inputs: run_path, depth (light|deep), target (vm|task|all)
|
|
53
|
-
|
|
54
|
-
# Propose VM improvements
|
|
55
|
-
prose run lib/vm-improver.prose
|
|
56
|
-
# Inputs: inspection_path, prose_repo
|
|
57
|
-
|
|
58
|
-
# Propose program improvements
|
|
59
|
-
prose run lib/program-improver.prose
|
|
60
|
-
# Inputs: inspection_path, run_path
|
|
61
|
-
|
|
62
|
-
# Analyze costs
|
|
63
|
-
prose run lib/cost-analyzer.prose
|
|
64
|
-
# Inputs: run_path, scope (single|compare|trend)
|
|
65
|
-
|
|
66
|
-
# Validate light vs deep evaluation
|
|
67
|
-
prose run lib/calibrator.prose
|
|
68
|
-
# Inputs: run_paths, sample_size
|
|
69
|
-
|
|
70
|
-
# Investigate failures
|
|
71
|
-
prose run lib/error-forensics.prose
|
|
72
|
-
# Inputs: run_path, focus (vm|program|context|external)
|
|
73
|
-
|
|
74
|
-
# Memory programs (recommend sqlite+ backend)
|
|
75
|
-
prose run lib/user-memory.prose --backend sqlite+
|
|
76
|
-
# Inputs: mode (teach|query|reflect), content
|
|
77
|
-
|
|
78
|
-
prose run lib/project-memory.prose --backend sqlite+
|
|
79
|
-
# Inputs: mode (ingest|query|update|summarize), content
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
## Memory Programs
|
|
83
|
-
|
|
84
|
-
The memory programs use persistent agents to accumulate knowledge:
|
|
85
|
-
|
|
86
|
-
**user-memory** (`persist: user`)
|
|
87
|
-
- Learns your preferences, decisions, patterns across all projects
|
|
88
|
-
- Remembers mistakes and lessons learned
|
|
89
|
-
- Answers questions from accumulated knowledge
|
|
90
|
-
|
|
91
|
-
**project-memory** (`persist: project`)
|
|
92
|
-
- Understands this project's architecture and decisions
|
|
93
|
-
- Tracks why things are the way they are
|
|
94
|
-
- Answers questions with project-specific context
|
|
95
|
-
|
|
96
|
-
Both recommend `--backend sqlite+` for durable persistence.
|
|
97
|
-
|
|
98
|
-
## Design Principles
|
|
99
|
-
|
|
100
|
-
1. **Production-ready** — Tested, documented, handles edge cases
|
|
101
|
-
2. **Composable** — Can be imported via `use` in other programs
|
|
102
|
-
3. **User-scoped state** — Cross-project utilities use `persist: user`
|
|
103
|
-
4. **Minimal dependencies** — No external services required
|
|
104
|
-
5. **Clear contracts** — Well-defined inputs and outputs
|
|
105
|
-
6. **Incremental value** — Useful in simple mode, more powerful with depth
|
|
@@ -1,215 +0,0 @@
|
|
|
1
|
-
# Calibrator
|
|
2
|
-
# Validates that lightweight evaluations are reliable proxies for deep evaluations
|
|
3
|
-
#
|
|
4
|
-
# Usage:
|
|
5
|
-
# prose run @openprose/lib/calibrator
|
|
6
|
-
#
|
|
7
|
-
# Purpose:
|
|
8
|
-
# Run both light and deep inspections on the same runs, compare results,
|
|
9
|
-
# and build confidence (or identify gaps) in light evaluations.
|
|
10
|
-
#
|
|
11
|
-
# Inputs:
|
|
12
|
-
# run_paths: Paths to runs to calibrate on (comma-separated or glob)
|
|
13
|
-
# sample_size: How many runs to sample (if more available)
|
|
14
|
-
#
|
|
15
|
-
# Outputs:
|
|
16
|
-
# - Agreement rate between light and deep
|
|
17
|
-
# - Cases where they disagree
|
|
18
|
-
# - Recommendations for improving light evaluation
|
|
19
|
-
|
|
20
|
-
input run_paths: "Paths to runs (comma-separated, or 'recent' for latest)"
|
|
21
|
-
input sample_size: "Max runs to analyze (default: 10)"
|
|
22
|
-
|
|
23
|
-
# ============================================================
|
|
24
|
-
# Agents
|
|
25
|
-
# ============================================================
|
|
26
|
-
|
|
27
|
-
agent sampler:
|
|
28
|
-
model: sonnet
|
|
29
|
-
prompt: """
|
|
30
|
-
You select runs for calibration analysis.
|
|
31
|
-
Prefer diverse runs: different programs, outcomes, sizes.
|
|
32
|
-
"""
|
|
33
|
-
|
|
34
|
-
agent comparator:
|
|
35
|
-
model: opus
|
|
36
|
-
prompt: """
|
|
37
|
-
You compare light vs deep evaluation results with nuance.
|
|
38
|
-
Identify agreement, disagreement, and edge cases.
|
|
39
|
-
"""
|
|
40
|
-
|
|
41
|
-
agent statistician:
|
|
42
|
-
model: sonnet
|
|
43
|
-
prompt: """
|
|
44
|
-
You compute statistics and confidence intervals.
|
|
45
|
-
"""
|
|
46
|
-
|
|
47
|
-
agent advisor:
|
|
48
|
-
model: opus
|
|
49
|
-
prompt: """
|
|
50
|
-
You recommend improvements to evaluation criteria.
|
|
51
|
-
"""
|
|
52
|
-
|
|
53
|
-
# ============================================================
|
|
54
|
-
# Phase 1: Select Runs
|
|
55
|
-
# ============================================================
|
|
56
|
-
|
|
57
|
-
let selected_runs = session: sampler
|
|
58
|
-
prompt: """
|
|
59
|
-
Select runs for calibration.
|
|
60
|
-
|
|
61
|
-
Input: {run_paths}
|
|
62
|
-
Sample size: {sample_size}
|
|
63
|
-
|
|
64
|
-
If run_paths is "recent", find recent runs in .prose/runs/
|
|
65
|
-
If specific paths, use those.
|
|
66
|
-
|
|
67
|
-
Select a diverse sample:
|
|
68
|
-
- Different programs if possible
|
|
69
|
-
- Mix of successful and partial/failed if available
|
|
70
|
-
- Different sizes (small vs large runs)
|
|
71
|
-
|
|
72
|
-
Return list of run paths.
|
|
73
|
-
"""
|
|
74
|
-
|
|
75
|
-
# ============================================================
|
|
76
|
-
# Phase 2: Run Both Inspection Depths
|
|
77
|
-
# ============================================================
|
|
78
|
-
|
|
79
|
-
let calibration_data = selected_runs | map:
|
|
80
|
-
# Run light and deep sequentially on each (can't parallel same run)
|
|
81
|
-
let light = session "Light inspection"
|
|
82
|
-
prompt: """
|
|
83
|
-
Run a LIGHT inspection on: {item}
|
|
84
|
-
|
|
85
|
-
Evaluate quickly:
|
|
86
|
-
- completion: did it finish cleanly?
|
|
87
|
-
- binding_integrity: do expected outputs exist?
|
|
88
|
-
- output_substance: do outputs have real content?
|
|
89
|
-
- goal_alignment: does output match program purpose?
|
|
90
|
-
|
|
91
|
-
Score each 1-10, give verdicts (pass/partial/fail).
|
|
92
|
-
Return JSON.
|
|
93
|
-
"""
|
|
94
|
-
|
|
95
|
-
let deep = session "Deep inspection"
|
|
96
|
-
prompt: """
|
|
97
|
-
Run a DEEP inspection on: {item}
|
|
98
|
-
|
|
99
|
-
Evaluate thoroughly:
|
|
100
|
-
- Read the full program source
|
|
101
|
-
- Trace execution step by step
|
|
102
|
-
- Check each binding's content
|
|
103
|
-
- Evaluate output quality in detail
|
|
104
|
-
- Assess fidelity (did VM follow program correctly?)
|
|
105
|
-
- Assess efficiency (reasonable steps for the job?)
|
|
106
|
-
|
|
107
|
-
Score each dimension 1-10, give verdicts.
|
|
108
|
-
Return JSON.
|
|
109
|
-
"""
|
|
110
|
-
context: light # Deep can see light's assessment
|
|
111
|
-
|
|
112
|
-
session "Package results"
|
|
113
|
-
prompt: """
|
|
114
|
-
Package the light and deep inspection results.
|
|
115
|
-
|
|
116
|
-
Run: {item}
|
|
117
|
-
Light: {light}
|
|
118
|
-
Deep: {deep}
|
|
119
|
-
|
|
120
|
-
Return:
|
|
121
|
-
{
|
|
122
|
-
"run_path": "...",
|
|
123
|
-
"light": { verdicts, scores },
|
|
124
|
-
"deep": { verdicts, scores },
|
|
125
|
-
"agreement": {
|
|
126
|
-
"vm_verdict": true/false,
|
|
127
|
-
"task_verdict": true/false,
|
|
128
|
-
"score_delta": { ... }
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
"""
|
|
132
|
-
context: { light, deep }
|
|
133
|
-
|
|
134
|
-
# ============================================================
|
|
135
|
-
# Phase 3: Statistical Analysis
|
|
136
|
-
# ============================================================
|
|
137
|
-
|
|
138
|
-
let statistics = session: statistician
|
|
139
|
-
prompt: """
|
|
140
|
-
Compute calibration statistics.
|
|
141
|
-
|
|
142
|
-
Data: {calibration_data}
|
|
143
|
-
|
|
144
|
-
Calculate:
|
|
145
|
-
- Overall agreement rate (how often do light and deep agree?)
|
|
146
|
-
- Agreement by verdict type (vm vs task)
|
|
147
|
-
- Score correlation (do light scores predict deep scores?)
|
|
148
|
-
- Disagreement patterns (when do they diverge?)
|
|
149
|
-
|
|
150
|
-
Return:
|
|
151
|
-
{
|
|
152
|
-
"sample_size": N,
|
|
153
|
-
"agreement_rate": { overall, vm, task },
|
|
154
|
-
"score_correlation": { ... },
|
|
155
|
-
"disagreements": [ { run, light_said, deep_said, reason } ],
|
|
156
|
-
"confidence": "high" | "medium" | "low"
|
|
157
|
-
}
|
|
158
|
-
"""
|
|
159
|
-
context: calibration_data
|
|
160
|
-
|
|
161
|
-
# ============================================================
|
|
162
|
-
# Phase 4: Recommendations
|
|
163
|
-
# ============================================================
|
|
164
|
-
|
|
165
|
-
let recommendations = session: advisor
|
|
166
|
-
prompt: """
|
|
167
|
-
Based on calibration results, recommend improvements.
|
|
168
|
-
|
|
169
|
-
Statistics: {statistics}
|
|
170
|
-
Raw data: {calibration_data}
|
|
171
|
-
|
|
172
|
-
If agreement is high (>90%):
|
|
173
|
-
- Light evaluation is reliable
|
|
174
|
-
- Note any edge cases to watch
|
|
175
|
-
|
|
176
|
-
If agreement is medium (70-90%):
|
|
177
|
-
- Identify patterns in disagreements
|
|
178
|
-
- Suggest criteria adjustments
|
|
179
|
-
|
|
180
|
-
If agreement is low (<70%):
|
|
181
|
-
- Light evaluation needs work
|
|
182
|
-
- Specific recommendations for improvement
|
|
183
|
-
|
|
184
|
-
Return:
|
|
185
|
-
{
|
|
186
|
-
"reliability_verdict": "reliable" | "mostly_reliable" | "needs_work",
|
|
187
|
-
"key_findings": [...],
|
|
188
|
-
"recommendations": [
|
|
189
|
-
{ "priority": 1, "action": "...", "rationale": "..." }
|
|
190
|
-
]
|
|
191
|
-
}
|
|
192
|
-
"""
|
|
193
|
-
context: { statistics, calibration_data }
|
|
194
|
-
|
|
195
|
-
# ============================================================
|
|
196
|
-
# Output
|
|
197
|
-
# ============================================================
|
|
198
|
-
|
|
199
|
-
output report = session "Format report"
|
|
200
|
-
prompt: """
|
|
201
|
-
Format calibration results as a report.
|
|
202
|
-
|
|
203
|
-
Statistics: {statistics}
|
|
204
|
-
Recommendations: {recommendations}
|
|
205
|
-
|
|
206
|
-
Include:
|
|
207
|
-
1. Summary: Is light evaluation reliable?
|
|
208
|
-
2. Agreement rates (table)
|
|
209
|
-
3. Disagreement cases (if any)
|
|
210
|
-
4. Recommendations
|
|
211
|
-
5. Confidence level in these results
|
|
212
|
-
|
|
213
|
-
Format as markdown.
|
|
214
|
-
"""
|
|
215
|
-
context: { statistics, recommendations, calibration_data }
|