@0xmaxma/claude-gateway 1.8.13 → 2.0.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 +28 -1605
- package/config.template.json +7 -1
- package/dist/agent/runner.d.ts +394 -0
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/runner.js +867 -38
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/skill-learning/index.d.ts +6 -4
- package/dist/agent/skill-learning/index.d.ts.map +1 -1
- package/dist/agent/skill-learning/index.js +3 -3
- package/dist/agent/skill-learning/index.js.map +1 -1
- package/dist/agent/skill-learning/notifier.d.ts +3 -4
- package/dist/agent/skill-learning/notifier.d.ts.map +1 -1
- package/dist/agent/skill-learning/notifier.js +15 -13
- package/dist/agent/skill-learning/notifier.js.map +1 -1
- package/dist/agent/skill-learning/reviewer.d.ts.map +1 -1
- package/dist/agent/skill-learning/reviewer.js +3 -1
- package/dist/agent/skill-learning/reviewer.js.map +1 -1
- package/dist/api/connectors-router.d.ts.map +1 -1
- package/dist/api/connectors-router.js +110 -4
- package/dist/api/connectors-router.js.map +1 -1
- package/dist/api/gateway-router.d.ts +1 -0
- package/dist/api/gateway-router.d.ts.map +1 -1
- package/dist/api/gateway-router.js +13 -1
- package/dist/api/gateway-router.js.map +1 -1
- package/dist/api/line-webhook-router.d.ts +2 -2
- package/dist/api/line-webhook-router.d.ts.map +1 -1
- package/dist/api/line-webhook-router.js +264 -230
- package/dist/api/line-webhook-router.js.map +1 -1
- package/dist/api/router.d.ts.map +1 -1
- package/dist/api/router.js +372 -11
- package/dist/api/router.js.map +1 -1
- package/dist/api/share-router.d.ts.map +1 -1
- package/dist/api/share-router.js +29 -10
- package/dist/api/share-router.js.map +1 -1
- package/dist/api/slack-client.d.ts +2 -0
- package/dist/api/slack-client.d.ts.map +1 -1
- package/dist/api/slack-client.js +6 -2
- package/dist/api/slack-client.js.map +1 -1
- package/dist/api/slack-webhook-router.d.ts +3 -0
- package/dist/api/slack-webhook-router.d.ts.map +1 -1
- package/dist/api/slack-webhook-router.js +226 -131
- package/dist/api/slack-webhook-router.js.map +1 -1
- package/dist/api/voice-router.d.ts +21 -0
- package/dist/api/voice-router.d.ts.map +1 -0
- package/dist/api/voice-router.js +372 -0
- package/dist/api/voice-router.js.map +1 -0
- package/dist/api/voice-settings-router.d.ts +5 -0
- package/dist/api/voice-settings-router.d.ts.map +1 -0
- package/dist/api/voice-settings-router.js +318 -0
- package/dist/api/voice-settings-router.js.map +1 -0
- package/dist/api/wechat-access.d.ts +45 -0
- package/dist/api/wechat-access.d.ts.map +1 -0
- package/dist/api/wechat-access.js +48 -0
- package/dist/api/wechat-access.js.map +1 -0
- package/dist/apps/agent-container-migration.d.ts +11 -0
- package/dist/apps/agent-container-migration.d.ts.map +1 -0
- package/dist/apps/agent-container-migration.js +85 -0
- package/dist/apps/agent-container-migration.js.map +1 -0
- package/dist/apps/installer.d.ts +1 -1
- package/dist/apps/installer.d.ts.map +1 -1
- package/dist/apps/installer.js +2 -1
- package/dist/apps/installer.js.map +1 -1
- package/dist/cli/commands/tasks.d.ts +5 -0
- package/dist/cli/commands/tasks.d.ts.map +1 -0
- package/dist/cli/commands/tasks.js +92 -0
- package/dist/cli/commands/tasks.js.map +1 -0
- package/dist/cli/http-client.d.ts +2 -0
- package/dist/cli/http-client.d.ts.map +1 -1
- package/dist/cli/http-client.js +8 -3
- package/dist/cli/http-client.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/config/config-write-lock.d.ts +2 -0
- package/dist/config/config-write-lock.d.ts.map +1 -1
- package/dist/config/config-write-lock.js +5 -0
- package/dist/config/config-write-lock.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +87 -2
- package/dist/config/loader.js.map +1 -1
- package/dist/config/migrator.d.ts.map +1 -1
- package/dist/config/migrator.js +12 -1
- package/dist/config/migrator.js.map +1 -1
- package/dist/config/watcher.d.ts.map +1 -1
- package/dist/config/watcher.js +6 -0
- package/dist/config/watcher.js.map +1 -1
- package/dist/connectors/resolve.d.ts.map +1 -1
- package/dist/connectors/resolve.js +3 -1
- package/dist/connectors/resolve.js.map +1 -1
- package/dist/connectors/types.d.ts +8 -0
- package/dist/connectors/types.d.ts.map +1 -1
- package/dist/cron/manager.d.ts.map +1 -1
- package/dist/cron/manager.js +21 -2
- package/dist/cron/manager.js.map +1 -1
- package/dist/discord/receiver.d.ts +2 -1
- package/dist/discord/receiver.d.ts.map +1 -1
- package/dist/discord/receiver.js +5 -1
- package/dist/discord/receiver.js.map +1 -1
- package/dist/history/db.d.ts +3 -0
- package/dist/history/db.d.ts.map +1 -1
- package/dist/history/db.js +21 -1
- package/dist/history/db.js.map +1 -1
- package/dist/history/types.d.ts +12 -1
- package/dist/history/types.d.ts.map +1 -1
- package/dist/history/types.js +10 -1
- package/dist/history/types.js.map +1 -1
- package/dist/index.js +48 -9
- package/dist/index.js.map +1 -1
- package/dist/orchestration/bounded-queue.d.ts +15 -0
- package/dist/orchestration/bounded-queue.d.ts.map +1 -0
- package/dist/orchestration/bounded-queue.js +58 -0
- package/dist/orchestration/bounded-queue.js.map +1 -0
- package/dist/orchestration/bridge.d.ts +55 -0
- package/dist/orchestration/bridge.d.ts.map +1 -0
- package/dist/orchestration/bridge.js +234 -0
- package/dist/orchestration/bridge.js.map +1 -0
- package/dist/orchestration/browser-routing.d.ts +7 -0
- package/dist/orchestration/browser-routing.d.ts.map +1 -0
- package/dist/orchestration/browser-routing.js +22 -0
- package/dist/orchestration/browser-routing.js.map +1 -0
- package/dist/orchestration/capabilities.d.ts +49 -0
- package/dist/orchestration/capabilities.d.ts.map +1 -0
- package/dist/orchestration/capabilities.js +417 -0
- package/dist/orchestration/capabilities.js.map +1 -0
- package/dist/orchestration/capacity.d.ts +14 -0
- package/dist/orchestration/capacity.d.ts.map +1 -0
- package/dist/orchestration/capacity.js +52 -0
- package/dist/orchestration/capacity.js.map +1 -0
- package/dist/orchestration/channel-activity.d.ts +21 -0
- package/dist/orchestration/channel-activity.d.ts.map +1 -0
- package/dist/orchestration/channel-activity.js +72 -0
- package/dist/orchestration/channel-activity.js.map +1 -0
- package/dist/orchestration/channel-controls.d.ts +32 -0
- package/dist/orchestration/channel-controls.d.ts.map +1 -0
- package/dist/orchestration/channel-controls.js +105 -0
- package/dist/orchestration/channel-controls.js.map +1 -0
- package/dist/orchestration/channel-input-media.d.ts +11 -0
- package/dist/orchestration/channel-input-media.d.ts.map +1 -0
- package/dist/orchestration/channel-input-media.js +54 -0
- package/dist/orchestration/channel-input-media.js.map +1 -0
- package/dist/orchestration/channel-media.d.ts +4 -0
- package/dist/orchestration/channel-media.d.ts.map +1 -0
- package/dist/orchestration/channel-media.js +70 -0
- package/dist/orchestration/channel-media.js.map +1 -0
- package/dist/orchestration/channel-speech.d.ts +7 -0
- package/dist/orchestration/channel-speech.d.ts.map +1 -0
- package/dist/orchestration/channel-speech.js +65 -0
- package/dist/orchestration/channel-speech.js.map +1 -0
- package/dist/orchestration/cli-skills.d.ts +12 -0
- package/dist/orchestration/cli-skills.d.ts.map +1 -0
- package/dist/orchestration/cli-skills.js +132 -0
- package/dist/orchestration/cli-skills.js.map +1 -0
- package/dist/orchestration/config.d.ts +256 -0
- package/dist/orchestration/config.d.ts.map +1 -0
- package/dist/orchestration/config.js +110 -0
- package/dist/orchestration/config.js.map +1 -0
- package/dist/orchestration/container.d.ts +21 -0
- package/dist/orchestration/container.d.ts.map +1 -0
- package/dist/orchestration/container.js +195 -0
- package/dist/orchestration/container.js.map +1 -0
- package/dist/orchestration/control-delivery.d.ts +5 -0
- package/dist/orchestration/control-delivery.d.ts.map +1 -0
- package/dist/orchestration/control-delivery.js +50 -0
- package/dist/orchestration/control-delivery.js.map +1 -0
- package/dist/orchestration/conversation-intake.d.ts +32 -0
- package/dist/orchestration/conversation-intake.d.ts.map +1 -0
- package/dist/orchestration/conversation-intake.js +92 -0
- package/dist/orchestration/conversation-intake.js.map +1 -0
- package/dist/orchestration/decisions.d.ts +27 -0
- package/dist/orchestration/decisions.d.ts.map +1 -0
- package/dist/orchestration/decisions.js +148 -0
- package/dist/orchestration/decisions.js.map +1 -0
- package/dist/orchestration/delivery.d.ts +30 -0
- package/dist/orchestration/delivery.d.ts.map +1 -0
- package/dist/orchestration/delivery.js +219 -0
- package/dist/orchestration/delivery.js.map +1 -0
- package/dist/orchestration/display-stream.d.ts +4 -0
- package/dist/orchestration/display-stream.d.ts.map +1 -0
- package/dist/orchestration/display-stream.js +77 -0
- package/dist/orchestration/display-stream.js.map +1 -0
- package/dist/orchestration/events.d.ts +30 -0
- package/dist/orchestration/events.d.ts.map +1 -0
- package/dist/orchestration/events.js +65 -0
- package/dist/orchestration/events.js.map +1 -0
- package/dist/orchestration/execution-observation.d.ts +38 -0
- package/dist/orchestration/execution-observation.d.ts.map +1 -0
- package/dist/orchestration/execution-observation.js +25 -0
- package/dist/orchestration/execution-observation.js.map +1 -0
- package/dist/orchestration/file-delivery.d.ts +16 -0
- package/dist/orchestration/file-delivery.d.ts.map +1 -0
- package/dist/orchestration/file-delivery.js +139 -0
- package/dist/orchestration/file-delivery.js.map +1 -0
- package/dist/orchestration/gateway-config.d.ts +17 -0
- package/dist/orchestration/gateway-config.d.ts.map +1 -0
- package/dist/orchestration/gateway-config.js +128 -0
- package/dist/orchestration/gateway-config.js.map +1 -0
- package/dist/orchestration/history.d.ts +13 -0
- package/dist/orchestration/history.d.ts.map +1 -0
- package/dist/orchestration/history.js +48 -0
- package/dist/orchestration/history.js.map +1 -0
- package/dist/orchestration/identity.d.ts +6 -0
- package/dist/orchestration/identity.d.ts.map +1 -0
- package/dist/orchestration/identity.js +13 -0
- package/dist/orchestration/identity.js.map +1 -0
- package/dist/orchestration/inference-errors.d.ts +3 -0
- package/dist/orchestration/inference-errors.d.ts.map +1 -0
- package/dist/orchestration/inference-errors.js +16 -0
- package/dist/orchestration/inference-errors.js.map +1 -0
- package/dist/orchestration/input-images.d.ts +12 -0
- package/dist/orchestration/input-images.d.ts.map +1 -0
- package/dist/orchestration/input-images.js +66 -0
- package/dist/orchestration/input-images.js.map +1 -0
- package/dist/orchestration/instance-lock.d.ts +5 -0
- package/dist/orchestration/instance-lock.d.ts.map +1 -0
- package/dist/orchestration/instance-lock.js +33 -0
- package/dist/orchestration/instance-lock.js.map +1 -0
- package/dist/orchestration/line-loading.d.ts +21 -0
- package/dist/orchestration/line-loading.d.ts.map +1 -0
- package/dist/orchestration/line-loading.js +89 -0
- package/dist/orchestration/line-loading.js.map +1 -0
- package/dist/orchestration/media.d.ts +3 -0
- package/dist/orchestration/media.d.ts.map +1 -0
- package/dist/orchestration/media.js +46 -0
- package/dist/orchestration/media.js.map +1 -0
- package/dist/orchestration/migrations/schema.d.ts +3 -0
- package/dist/orchestration/migrations/schema.d.ts.map +1 -0
- package/dist/orchestration/migrations/schema.js +80 -0
- package/dist/orchestration/migrations/schema.js.map +1 -0
- package/dist/orchestration/notification-mailbox.d.ts +5 -0
- package/dist/orchestration/notification-mailbox.d.ts.map +1 -0
- package/dist/orchestration/notification-mailbox.js +29 -0
- package/dist/orchestration/notification-mailbox.js.map +1 -0
- package/dist/orchestration/process-activity.d.ts +23 -0
- package/dist/orchestration/process-activity.d.ts.map +1 -0
- package/dist/orchestration/process-activity.js +95 -0
- package/dist/orchestration/process-activity.js.map +1 -0
- package/dist/orchestration/process-supervisor.d.ts +15 -0
- package/dist/orchestration/process-supervisor.d.ts.map +1 -0
- package/dist/orchestration/process-supervisor.js +92 -0
- package/dist/orchestration/process-supervisor.js.map +1 -0
- package/dist/orchestration/process-turn.d.ts +35 -0
- package/dist/orchestration/process-turn.d.ts.map +1 -0
- package/dist/orchestration/process-turn.js +246 -0
- package/dist/orchestration/process-turn.js.map +1 -0
- package/dist/orchestration/progress-review.d.ts +28 -0
- package/dist/orchestration/progress-review.d.ts.map +1 -0
- package/dist/orchestration/progress-review.js +48 -0
- package/dist/orchestration/progress-review.js.map +1 -0
- package/dist/orchestration/recovery.d.ts +8 -0
- package/dist/orchestration/recovery.d.ts.map +1 -0
- package/dist/orchestration/recovery.js +35 -0
- package/dist/orchestration/recovery.js.map +1 -0
- package/dist/orchestration/reply-context.d.ts +7 -0
- package/dist/orchestration/reply-context.d.ts.map +1 -0
- package/dist/orchestration/reply-context.js +54 -0
- package/dist/orchestration/reply-context.js.map +1 -0
- package/dist/orchestration/runtime.d.ts +232 -0
- package/dist/orchestration/runtime.d.ts.map +1 -0
- package/dist/orchestration/runtime.js +962 -0
- package/dist/orchestration/runtime.js.map +1 -0
- package/dist/orchestration/skills.d.ts +17 -0
- package/dist/orchestration/skills.d.ts.map +1 -0
- package/dist/orchestration/skills.js +32 -0
- package/dist/orchestration/skills.js.map +1 -0
- package/dist/orchestration/source-policy.d.ts +6 -0
- package/dist/orchestration/source-policy.d.ts.map +1 -0
- package/dist/orchestration/source-policy.js +16 -0
- package/dist/orchestration/source-policy.js.map +1 -0
- package/dist/orchestration/speech.d.ts +24 -0
- package/dist/orchestration/speech.d.ts.map +1 -0
- package/dist/orchestration/speech.js +61 -0
- package/dist/orchestration/speech.js.map +1 -0
- package/dist/orchestration/stop-controls.d.ts +30 -0
- package/dist/orchestration/stop-controls.d.ts.map +1 -0
- package/dist/orchestration/stop-controls.js +79 -0
- package/dist/orchestration/stop-controls.js.map +1 -0
- package/dist/orchestration/store.d.ts +86 -0
- package/dist/orchestration/store.d.ts.map +1 -0
- package/dist/orchestration/store.js +275 -0
- package/dist/orchestration/store.js.map +1 -0
- package/dist/orchestration/task-controls.d.ts +130 -0
- package/dist/orchestration/task-controls.d.ts.map +1 -0
- package/dist/orchestration/task-controls.js +55 -0
- package/dist/orchestration/task-controls.js.map +1 -0
- package/dist/orchestration/task-files.d.ts +29 -0
- package/dist/orchestration/task-files.d.ts.map +1 -0
- package/dist/orchestration/task-files.js +200 -0
- package/dist/orchestration/task-files.js.map +1 -0
- package/dist/orchestration/task-report.d.ts +7 -0
- package/dist/orchestration/task-report.d.ts.map +1 -0
- package/dist/orchestration/task-report.js +33 -0
- package/dist/orchestration/task-report.js.map +1 -0
- package/dist/orchestration/tasks/checkpoint-hook.d.ts +19 -0
- package/dist/orchestration/tasks/checkpoint-hook.d.ts.map +1 -0
- package/dist/orchestration/tasks/checkpoint-hook.js +49 -0
- package/dist/orchestration/tasks/checkpoint-hook.js.map +1 -0
- package/dist/orchestration/tasks/cleanup.d.ts +18 -0
- package/dist/orchestration/tasks/cleanup.d.ts.map +1 -0
- package/dist/orchestration/tasks/cleanup.js +113 -0
- package/dist/orchestration/tasks/cleanup.js.map +1 -0
- package/dist/orchestration/tasks/driver.d.ts +23 -0
- package/dist/orchestration/tasks/driver.d.ts.map +1 -0
- package/dist/orchestration/tasks/driver.js +209 -0
- package/dist/orchestration/tasks/driver.js.map +1 -0
- package/dist/orchestration/tasks/failure.d.ts +5 -0
- package/dist/orchestration/tasks/failure.d.ts.map +1 -0
- package/dist/orchestration/tasks/failure.js +17 -0
- package/dist/orchestration/tasks/failure.js.map +1 -0
- package/dist/orchestration/tasks/pool.d.ts +18 -0
- package/dist/orchestration/tasks/pool.d.ts.map +1 -0
- package/dist/orchestration/tasks/pool.js +73 -0
- package/dist/orchestration/tasks/pool.js.map +1 -0
- package/dist/orchestration/tasks/scheduler.d.ts +38 -0
- package/dist/orchestration/tasks/scheduler.d.ts.map +1 -0
- package/dist/orchestration/tasks/scheduler.js +160 -0
- package/dist/orchestration/tasks/scheduler.js.map +1 -0
- package/dist/orchestration/tasks/service.d.ts +109 -0
- package/dist/orchestration/tasks/service.d.ts.map +1 -0
- package/dist/orchestration/tasks/service.js +697 -0
- package/dist/orchestration/tasks/service.js.map +1 -0
- package/dist/orchestration/tasks/shared-workspace.d.ts +25 -0
- package/dist/orchestration/tasks/shared-workspace.d.ts.map +1 -0
- package/dist/orchestration/tasks/shared-workspace.js +162 -0
- package/dist/orchestration/tasks/shared-workspace.js.map +1 -0
- package/dist/orchestration/tasks/task-directive.d.ts +6 -0
- package/dist/orchestration/tasks/task-directive.d.ts.map +1 -0
- package/dist/orchestration/tasks/task-directive.js +41 -0
- package/dist/orchestration/tasks/task-directive.js.map +1 -0
- package/dist/orchestration/tasks/timing.d.ts +15 -0
- package/dist/orchestration/tasks/timing.d.ts.map +1 -0
- package/dist/orchestration/tasks/timing.js +48 -0
- package/dist/orchestration/tasks/timing.js.map +1 -0
- package/dist/orchestration/tasks/tool-repetition.d.ts +3 -0
- package/dist/orchestration/tasks/tool-repetition.d.ts.map +1 -0
- package/dist/orchestration/tasks/tool-repetition.js +30 -0
- package/dist/orchestration/tasks/tool-repetition.js.map +1 -0
- package/dist/orchestration/tasks/workspace.d.ts +24 -0
- package/dist/orchestration/tasks/workspace.d.ts.map +1 -0
- package/dist/orchestration/tasks/workspace.js +147 -0
- package/dist/orchestration/tasks/workspace.js.map +1 -0
- package/dist/orchestration/telegram-speech.d.ts +17 -0
- package/dist/orchestration/telegram-speech.d.ts.map +1 -0
- package/dist/orchestration/telegram-speech.js +55 -0
- package/dist/orchestration/telegram-speech.js.map +1 -0
- package/dist/orchestration/telegram-tool-status.d.ts +23 -0
- package/dist/orchestration/telegram-tool-status.d.ts.map +1 -0
- package/dist/orchestration/telegram-tool-status.js +207 -0
- package/dist/orchestration/telegram-tool-status.js.map +1 -0
- package/dist/orchestration/telegram-voices.d.ts +42 -0
- package/dist/orchestration/telegram-voices.d.ts.map +1 -0
- package/dist/orchestration/telegram-voices.js +70 -0
- package/dist/orchestration/telegram-voices.js.map +1 -0
- package/dist/orchestration/tool-activity.d.ts +10 -0
- package/dist/orchestration/tool-activity.d.ts.map +1 -0
- package/dist/orchestration/tool-activity.js +38 -0
- package/dist/orchestration/tool-activity.js.map +1 -0
- package/dist/orchestration/types.d.ts +177 -0
- package/dist/orchestration/types.d.ts.map +1 -0
- package/dist/orchestration/types.js +13 -0
- package/dist/orchestration/types.js.map +1 -0
- package/dist/orchestration/voice-reply-policy.d.ts +8 -0
- package/dist/orchestration/voice-reply-policy.d.ts.map +1 -0
- package/dist/orchestration/voice-reply-policy.js +46 -0
- package/dist/orchestration/voice-reply-policy.js.map +1 -0
- package/dist/orchestration/worker-shares.d.ts +8 -0
- package/dist/orchestration/worker-shares.d.ts.map +1 -0
- package/dist/orchestration/worker-shares.js +59 -0
- package/dist/orchestration/worker-shares.js.map +1 -0
- package/dist/orchestration/workflow.d.ts +121 -0
- package/dist/orchestration/workflow.d.ts.map +1 -0
- package/dist/orchestration/workflow.js +69 -0
- package/dist/orchestration/workflow.js.map +1 -0
- package/dist/session/input-image.d.ts +10 -0
- package/dist/session/input-image.d.ts.map +1 -0
- package/dist/session/input-image.js +3 -0
- package/dist/session/input-image.js.map +1 -0
- package/dist/session/process.d.ts +15 -3
- package/dist/session/process.d.ts.map +1 -1
- package/dist/session/process.js +144 -35
- package/dist/session/process.js.map +1 -1
- package/dist/session/runtime-profile.d.ts +36 -0
- package/dist/session/runtime-profile.d.ts.map +1 -0
- package/dist/session/runtime-profile.js +63 -0
- package/dist/session/runtime-profile.js.map +1 -0
- package/dist/session/store.d.ts.map +1 -1
- package/dist/session/store.js +23 -1
- package/dist/session/store.js.map +1 -1
- package/dist/share/share-store.d.ts +3 -1
- package/dist/share/share-store.d.ts.map +1 -1
- package/dist/share/share-store.js +13 -2
- package/dist/share/share-store.js.map +1 -1
- package/dist/shared/line-request-order.d.ts +2 -0
- package/dist/shared/line-request-order.d.ts.map +1 -0
- package/dist/shared/line-request-order.js +16 -0
- package/dist/shared/line-request-order.js.map +1 -0
- package/dist/shared/task-elapsed.d.ts +3 -0
- package/dist/shared/task-elapsed.d.ts.map +1 -0
- package/dist/shared/task-elapsed.js +12 -0
- package/dist/shared/task-elapsed.js.map +1 -0
- package/dist/shared/task-updated-time.d.ts +3 -0
- package/dist/shared/task-updated-time.d.ts.map +1 -0
- package/dist/shared/task-updated-time.js +15 -0
- package/dist/shared/task-updated-time.js.map +1 -0
- package/dist/skills/loader.d.ts +2 -0
- package/dist/skills/loader.d.ts.map +1 -1
- package/dist/skills/loader.js.map +1 -1
- package/dist/telegram/chunks.d.ts +19 -0
- package/dist/telegram/chunks.d.ts.map +1 -0
- package/dist/telegram/chunks.js +129 -0
- package/dist/telegram/chunks.js.map +1 -0
- package/dist/telegram/markdown.d.ts.map +1 -1
- package/dist/telegram/markdown.js +18 -3
- package/dist/telegram/markdown.js.map +1 -1
- package/dist/telegram/receiver.d.ts +2 -1
- package/dist/telegram/receiver.d.ts.map +1 -1
- package/dist/telegram/receiver.js +6 -1
- package/dist/telegram/receiver.js.map +1 -1
- package/dist/types.d.ts +54 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/web-ui.d.ts.map +1 -1
- package/dist/ui/web-ui.js +31 -5
- package/dist/ui/web-ui.js.map +1 -1
- package/dist/voice/diagnostics.d.ts +29 -0
- package/dist/voice/diagnostics.d.ts.map +1 -0
- package/dist/voice/diagnostics.js +37 -0
- package/dist/voice/diagnostics.js.map +1 -0
- package/dist/voice/errors.d.ts +19 -0
- package/dist/voice/errors.d.ts.map +1 -0
- package/dist/voice/errors.js +133 -0
- package/dist/voice/errors.js.map +1 -0
- package/dist/voice/line-audio.d.ts +4 -0
- package/dist/voice/line-audio.d.ts.map +1 -0
- package/dist/voice/line-audio.js +27 -0
- package/dist/voice/line-audio.js.map +1 -0
- package/dist/voice/managed-quota.d.ts +5 -0
- package/dist/voice/managed-quota.d.ts.map +1 -0
- package/dist/voice/managed-quota.js +35 -0
- package/dist/voice/managed-quota.js.map +1 -0
- package/dist/voice/mp3.d.ts +3 -0
- package/dist/voice/mp3.d.ts.map +1 -0
- package/dist/voice/mp3.js +30 -0
- package/dist/voice/mp3.js.map +1 -0
- package/dist/voice/notes.d.ts +9 -0
- package/dist/voice/notes.d.ts.map +1 -0
- package/dist/voice/notes.js +68 -0
- package/dist/voice/notes.js.map +1 -0
- package/dist/voice/playback.d.ts +22 -0
- package/dist/voice/playback.d.ts.map +1 -0
- package/dist/voice/playback.js +52 -0
- package/dist/voice/playback.js.map +1 -0
- package/dist/voice/preview.d.ts +6 -0
- package/dist/voice/preview.d.ts.map +1 -0
- package/dist/voice/preview.js +44 -0
- package/dist/voice/preview.js.map +1 -0
- package/dist/voice/protocol.d.ts +10 -0
- package/dist/voice/protocol.d.ts.map +1 -0
- package/dist/voice/protocol.js +30 -0
- package/dist/voice/protocol.js.map +1 -0
- package/dist/voice/providers/cartesia-tts.d.ts +26 -0
- package/dist/voice/providers/cartesia-tts.d.ts.map +1 -0
- package/dist/voice/providers/cartesia-tts.js +95 -0
- package/dist/voice/providers/cartesia-tts.js.map +1 -0
- package/dist/voice/providers/deepgram-stt.d.ts +20 -0
- package/dist/voice/providers/deepgram-stt.d.ts.map +1 -0
- package/dist/voice/providers/deepgram-stt.js +66 -0
- package/dist/voice/providers/deepgram-stt.js.map +1 -0
- package/dist/voice/providers/elevenlabs-stt.d.ts +20 -0
- package/dist/voice/providers/elevenlabs-stt.d.ts.map +1 -0
- package/dist/voice/providers/elevenlabs-stt.js +92 -0
- package/dist/voice/providers/elevenlabs-stt.js.map +1 -0
- package/dist/voice/providers/elevenlabs-tts.d.ts +26 -0
- package/dist/voice/providers/elevenlabs-tts.d.ts.map +1 -0
- package/dist/voice/providers/elevenlabs-tts.js +82 -0
- package/dist/voice/providers/elevenlabs-tts.js.map +1 -0
- package/dist/voice/providers/encoded-audio-tts.d.ts +21 -0
- package/dist/voice/providers/encoded-audio-tts.d.ts.map +1 -0
- package/dist/voice/providers/encoded-audio-tts.js +175 -0
- package/dist/voice/providers/encoded-audio-tts.js.map +1 -0
- package/dist/voice/providers/fake.d.ts +39 -0
- package/dist/voice/providers/fake.d.ts.map +1 -0
- package/dist/voice/providers/fake.js +41 -0
- package/dist/voice/providers/fake.js.map +1 -0
- package/dist/voice/providers/gemini-live-stt.d.ts +21 -0
- package/dist/voice/providers/gemini-live-stt.d.ts.map +1 -0
- package/dist/voice/providers/gemini-live-stt.js +158 -0
- package/dist/voice/providers/gemini-live-stt.js.map +1 -0
- package/dist/voice/providers/gemini.d.ts +60 -0
- package/dist/voice/providers/gemini.d.ts.map +1 -0
- package/dist/voice/providers/gemini.js +124 -0
- package/dist/voice/providers/gemini.js.map +1 -0
- package/dist/voice/providers/model-ref.d.ts +9 -0
- package/dist/voice/providers/model-ref.d.ts.map +1 -0
- package/dist/voice/providers/model-ref.js +31 -0
- package/dist/voice/providers/model-ref.js.map +1 -0
- package/dist/voice/providers/openrouter.d.ts +39 -0
- package/dist/voice/providers/openrouter.d.ts.map +1 -0
- package/dist/voice/providers/openrouter.js +154 -0
- package/dist/voice/providers/openrouter.js.map +1 -0
- package/dist/voice/providers/paxalabs-stt.d.ts +12 -0
- package/dist/voice/providers/paxalabs-stt.d.ts.map +1 -0
- package/dist/voice/providers/paxalabs-stt.js +41 -0
- package/dist/voice/providers/paxalabs-stt.js.map +1 -0
- package/dist/voice/providers/paxalabs-tts.d.ts +23 -0
- package/dist/voice/providers/paxalabs-tts.d.ts.map +1 -0
- package/dist/voice/providers/paxalabs-tts.js +80 -0
- package/dist/voice/providers/paxalabs-tts.js.map +1 -0
- package/dist/voice/providers/recorded-stt.d.ts +34 -0
- package/dist/voice/providers/recorded-stt.d.ts.map +1 -0
- package/dist/voice/providers/recorded-stt.js +59 -0
- package/dist/voice/providers/recorded-stt.js.map +1 -0
- package/dist/voice/providers/registry.d.ts +10 -0
- package/dist/voice/providers/registry.d.ts.map +1 -0
- package/dist/voice/providers/registry.js +77 -0
- package/dist/voice/providers/registry.js.map +1 -0
- package/dist/voice/providers/socket.d.ts +10 -0
- package/dist/voice/providers/socket.d.ts.map +1 -0
- package/dist/voice/providers/socket.js +91 -0
- package/dist/voice/providers/socket.js.map +1 -0
- package/dist/voice/providers/upstream.d.ts +9 -0
- package/dist/voice/providers/upstream.d.ts.map +1 -0
- package/dist/voice/providers/upstream.js +51 -0
- package/dist/voice/providers/upstream.js.map +1 -0
- package/dist/voice/providers/voice-catalog.d.ts +17 -0
- package/dist/voice/providers/voice-catalog.d.ts.map +1 -0
- package/dist/voice/providers/voice-catalog.js +167 -0
- package/dist/voice/providers/voice-catalog.js.map +1 -0
- package/dist/voice/queue.d.ts +2 -0
- package/dist/voice/queue.d.ts.map +1 -0
- package/dist/voice/queue.js +6 -0
- package/dist/voice/queue.js.map +1 -0
- package/dist/voice/session.d.ts +86 -0
- package/dist/voice/session.d.ts.map +1 -0
- package/dist/voice/session.js +464 -0
- package/dist/voice/session.js.map +1 -0
- package/dist/voice/turn-manager.d.ts +27 -0
- package/dist/voice/turn-manager.d.ts.map +1 -0
- package/dist/voice/turn-manager.js +75 -0
- package/dist/voice/turn-manager.js.map +1 -0
- package/dist/voice/types.d.ts +78 -0
- package/dist/voice/types.d.ts.map +1 -0
- package/dist/voice/types.js +18 -0
- package/dist/voice/types.js.map +1 -0
- package/dist/voice/wav.d.ts +2 -0
- package/dist/voice/wav.d.ts.map +1 -0
- package/dist/voice/wav.js +21 -0
- package/dist/voice/wav.js.map +1 -0
- package/dist/wechat/ilink-client.d.ts +207 -0
- package/dist/wechat/ilink-client.d.ts.map +1 -0
- package/dist/wechat/ilink-client.js +660 -0
- package/dist/wechat/ilink-client.js.map +1 -0
- package/dist/wechat/manager.d.ts +93 -0
- package/dist/wechat/manager.d.ts.map +1 -0
- package/dist/wechat/manager.js +409 -0
- package/dist/wechat/manager.js.map +1 -0
- package/dist/whatsapp/manager.d.ts.map +1 -1
- package/dist/whatsapp/manager.js +51 -1
- package/dist/whatsapp/manager.js.map +1 -1
- package/mcp/capability-catalog.ts +206 -0
- package/mcp/modules.ts +56 -0
- package/mcp/server.ts +18 -35
- package/mcp/tools/browser/module.ts +1 -1
- package/mcp/tools/browser/skills/open-browser/SKILL.md +5 -3
- package/mcp/tools/discord/commands.ts +17 -1
- package/mcp/tools/discord/inbound.ts +11 -0
- package/mcp/tools/discord/module.ts +42 -2
- package/mcp/tools/discord/receiver-server.ts +10 -0
- package/mcp/tools/discord/types.ts +4 -1
- package/mcp/tools/image/module.ts +3 -1
- package/mcp/tools/receiver-spool.test.ts +28 -0
- package/mcp/tools/receiver-spool.ts +56 -0
- package/mcp/tools/share-file/module.ts +9 -1
- package/mcp/tools/shared/share-client.ts +19 -0
- package/mcp/tools/tasks/module.ts +35 -0
- package/mcp/tools/telegram/media-group.ts +21 -0
- package/mcp/tools/telegram/receiver-server.ts +232 -11
- package/mcp/tools/telegram/selection-confirmation.ts +20 -0
- package/mcp/tools/telegram/task-browser.ts +117 -0
- package/mcp/tools/telegram/task-detail.ts +36 -0
- package/mcp/tools/telegram/task-elapsed.ts +1 -0
- package/mcp/tools/telegram/typing.ts +6 -116
- package/mcp/tools/video/module.ts +1 -1
- package/mcp/tools/wechat/client.ts +49 -0
- package/mcp/tools/wechat/module.ts +88 -0
- package/mcp/types.ts +5 -0
- package/package.json +2 -1
- package/resource/claude_gateway.jpeg +0 -0
- package/scripts/orchestration/bench-store.cjs +30 -0
- package/scripts/orchestration/inspect.cjs +16 -0
- package/scripts/orchestration/probe-profile.cjs +67 -0
- package/scripts/orchestration/reconcile.cjs +21 -0
- package/scripts/orchestration/smoke-elevenlabs.cjs +90 -0
- package/scripts/orchestration/smoke-media.cjs +70 -0
- package/scripts/orchestration/smoke-text.cjs +101 -0
- package/scripts/orchestration/smoke-vision.cjs +49 -0
|
@@ -63,7 +63,7 @@ const MAX_IMAGE_BYTES = media_store_1.MediaStore.maxUploadBytes;
|
|
|
63
63
|
* Returns null on an empty body; throws on HTTP failure or over-cap size — the
|
|
64
64
|
* caller logs and forwards the turn regardless.
|
|
65
65
|
*/
|
|
66
|
-
async function downloadSlackImage(botToken, fileUrl, fileId) {
|
|
66
|
+
async function downloadSlackImage(botToken, fileUrl, fileId, audioMime, fileName) {
|
|
67
67
|
// Defence in depth: the signature check upstream already guarantees the event
|
|
68
68
|
// (and thus `url_private`) is authentic Slack data, but never send the bot
|
|
69
69
|
// token anywhere other than Slack's own file host. If a future refactor ever
|
|
@@ -71,7 +71,10 @@ async function downloadSlackImage(botToken, fileUrl, fileId) {
|
|
|
71
71
|
// shape, this stops the token from leaking to an attacker-chosen host.
|
|
72
72
|
let host;
|
|
73
73
|
try {
|
|
74
|
-
|
|
74
|
+
const parsed = new URL(fileUrl);
|
|
75
|
+
if (parsed.protocol !== 'https:' || parsed.username || parsed.password)
|
|
76
|
+
throw Error('invalid file url');
|
|
77
|
+
host = parsed.hostname;
|
|
75
78
|
}
|
|
76
79
|
catch {
|
|
77
80
|
throw new Error('invalid file url');
|
|
@@ -79,7 +82,7 @@ async function downloadSlackImage(botToken, fileUrl, fileId) {
|
|
|
79
82
|
if (host !== 'slack.com' && !host.endsWith('.slack.com')) {
|
|
80
83
|
throw new Error(`refusing to send bot token to non-Slack host: ${host}`);
|
|
81
84
|
}
|
|
82
|
-
const res = await fetch(fileUrl, { headers: { Authorization: `Bearer ${botToken}` } });
|
|
85
|
+
const res = await fetch(fileUrl, { headers: { Authorization: `Bearer ${botToken}` }, redirect: 'error', signal: AbortSignal.timeout(30000) });
|
|
83
86
|
if (!res.ok)
|
|
84
87
|
throw new Error(`HTTP ${res.status}`);
|
|
85
88
|
// Cheap early reject on the declared length, then enforce the cap again while
|
|
@@ -111,8 +114,8 @@ async function downloadSlackImage(botToken, fileUrl, fileId) {
|
|
|
111
114
|
// Include the Slack file id (like LINE's `line-img-${messageId}-…`) so two
|
|
112
115
|
// events landing in the same millisecond on a shared tmpdir can't collide.
|
|
113
116
|
const suffix = fileId ? `${fileId}-${Date.now()}` : `${Date.now()}`;
|
|
114
|
-
const dest = path.join(os.tmpdir(), `slack-img-${suffix}.${(0, image_sniff_1.sniffImageExt)(buf)}`);
|
|
115
|
-
fs.writeFileSync(dest, buf);
|
|
117
|
+
const dest = path.join(os.tmpdir(), `slack-img-${suffix.replace(/[^A-Za-z0-9-]/g, '')}.${fileName ? path.extname(fileName).replace(/[^A-Za-z0-9.]/g, '').slice(1, 12) || 'bin' : audioMime ? { 'audio/mpeg': 'mp3', 'audio/mp4': 'm4a', 'audio/ogg': 'ogg', 'audio/wav': 'wav', 'audio/webm': 'webm' }[audioMime] ?? 'audio' : (0, image_sniff_1.sniffImageExt)(buf)}`);
|
|
118
|
+
fs.writeFileSync(dest, buf, { mode: 0o600 });
|
|
116
119
|
return dest;
|
|
117
120
|
}
|
|
118
121
|
/**
|
|
@@ -130,6 +133,18 @@ function pairingMessage(code, kind) {
|
|
|
130
133
|
`Your pairing code: ${code}\n` +
|
|
131
134
|
`Share this code with the admin to get access${enWhere}. (No need to reply with it.)`);
|
|
132
135
|
}
|
|
136
|
+
function isSlackAudio(file) {
|
|
137
|
+
return !!(file.mimetype?.startsWith('audio/') || file.subtype === 'slack_audio' || file.media_display_type === 'audio');
|
|
138
|
+
}
|
|
139
|
+
function slackAudioMime(file) {
|
|
140
|
+
if (!isSlackAudio(file))
|
|
141
|
+
return;
|
|
142
|
+
if (file.mimetype === 'video/mp4')
|
|
143
|
+
return 'audio/mp4';
|
|
144
|
+
if (file.mimetype === 'video/webm')
|
|
145
|
+
return 'audio/webm';
|
|
146
|
+
return file.mimetype?.startsWith('audio/') ? file.mimetype : 'audio/mp4';
|
|
147
|
+
}
|
|
133
148
|
/**
|
|
134
149
|
* Strip a leading/embedded bot self-mention (`<@U…>`) from `app_mention` text.
|
|
135
150
|
* Slack delivers the raw text with the mention markup inline (e.g.
|
|
@@ -173,8 +188,11 @@ function normalizeSlackEvent(event, resolved, botUserId) {
|
|
|
173
188
|
ts: event.event_ts ?? event.ts ?? '',
|
|
174
189
|
slack_chat_type: r.kind, // 'user' | 'group'
|
|
175
190
|
};
|
|
176
|
-
if (event.thread_ts)
|
|
191
|
+
if (event.thread_ts) {
|
|
177
192
|
meta.thread_ts = event.thread_ts;
|
|
193
|
+
if (event.thread_ts !== event.ts)
|
|
194
|
+
meta.replied_message_id = event.thread_ts;
|
|
195
|
+
}
|
|
178
196
|
return { content: stripBotMention(event.text ?? '', botUserId), meta };
|
|
179
197
|
}
|
|
180
198
|
/** Verify `X-Slack-Signature` (HMAC-SHA256 of "v0:{timestamp}:{rawBody}") and reject stale requests. */
|
|
@@ -249,157 +267,234 @@ function createSlackWebhookHandler(agents, logDir, opts = {}) {
|
|
|
249
267
|
}
|
|
250
268
|
let payload;
|
|
251
269
|
try {
|
|
252
|
-
|
|
270
|
+
if (req.header('content-type')?.includes('application/x-www-form-urlencoded')) {
|
|
271
|
+
const form = new URLSearchParams(buf.toString('utf8'));
|
|
272
|
+
payload = form.has('payload') ? JSON.parse(form.get('payload')) : { ...Object.fromEntries(form), type: 'slash_command' };
|
|
273
|
+
}
|
|
274
|
+
else
|
|
275
|
+
payload = JSON.parse(buf.toString('utf8'));
|
|
253
276
|
}
|
|
254
277
|
catch (err) {
|
|
255
278
|
logger.warn('Slack webhook: bad JSON', { error: err.message });
|
|
256
279
|
res.status(400).json({ error: 'bad JSON' });
|
|
257
280
|
return;
|
|
258
281
|
}
|
|
282
|
+
if (payload.type === 'block_actions' || payload.type === 'slash_command') {
|
|
283
|
+
const slash = payload.type === 'slash_command', user = payload.user, channel = payload.channel;
|
|
284
|
+
const chatId = slash ? String(payload.channel_id ?? '') : channel?.id ?? '', userId = slash ? String(payload.user_id ?? '') : user?.id ?? '';
|
|
285
|
+
const actions = payload.actions;
|
|
286
|
+
const data = actions?.[0]?.value ?? actions?.[0]?.action_id ?? '';
|
|
287
|
+
const command = String(payload.command ?? '');
|
|
288
|
+
if (slash ? !['/session', '/sessions', '/voice', '/voices', '/tasks', '/stop', '/help'].includes(command) : !/^orch:[a-f0-9-]{36}$/.test(data)) {
|
|
289
|
+
res.status(200).json({ text: 'Unknown command.' });
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
292
|
+
const resolved = { conversationId: chatId, senderId: userId, kind: chatId.startsWith('D') ? 'user' : 'group' };
|
|
293
|
+
if (!userId || !chatId || !(0, slack_access_1.isResolvedSourceAllowed)(cfg, resolved)) {
|
|
294
|
+
res.status(200).json({ response_type: 'ephemeral', text: 'Not authorized.' });
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
const message = payload.message;
|
|
298
|
+
res.status(200).end(); // Slack requires acknowledgement before catalog/network work.
|
|
299
|
+
try {
|
|
300
|
+
await fetch(`http://127.0.0.1:${runner.getCallbackPort()}/channel`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, signal: AbortSignal.timeout(30000), body: JSON.stringify({ content: slash ? `${command} ${String(payload.text ?? '')}`.trim() : `/orch ${data.slice(5)}`, meta: { source: 'slack', chat_id: chatId, user_id: userId, slack_chat_type: resolved.kind, ...(!slash && message?.ts ? { control_message_id: message.ts } : {}), ...(message?.thread_ts ? { thread_ts: message.thread_ts } : {}) } }) });
|
|
301
|
+
}
|
|
302
|
+
catch {
|
|
303
|
+
logger.warn('Slack control callback unavailable');
|
|
304
|
+
}
|
|
305
|
+
return;
|
|
306
|
+
}
|
|
259
307
|
// URL verification handshake (signature already verified above — Slack
|
|
260
308
|
// signs this request type too). Must respond with the raw challenge, not JSON-wrapped.
|
|
261
309
|
if (payload.type === 'url_verification') {
|
|
262
310
|
res.status(200).json({ challenge: payload.challenge });
|
|
263
311
|
return;
|
|
264
312
|
}
|
|
265
|
-
//
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
const
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
313
|
+
// Orchestrated conversations retain durable admission while draining after opt-out.
|
|
314
|
+
const orchestrationConfig = runner.getAgentConfig().orchestration;
|
|
315
|
+
const durableIngress = runner.requiresDurableChannelIngress?.('slack') ?? (orchestrationConfig?.enabled && (orchestrationConfig.channels ?? ['api']).includes('slack'));
|
|
316
|
+
if (!durableIngress)
|
|
317
|
+
res.status(200).json({ ok: true });
|
|
318
|
+
try {
|
|
319
|
+
if (payload.type !== 'event_callback')
|
|
320
|
+
return;
|
|
321
|
+
const eventId = typeof payload.event_id === 'string' ? payload.event_id : '';
|
|
322
|
+
if (!durableIngress && eventId && isDuplicateSlackEvent(eventId)) {
|
|
323
|
+
logger.debug('Slack webhook: duplicate event_id (Slack retry), skipping', { eventId });
|
|
324
|
+
return;
|
|
325
|
+
}
|
|
326
|
+
const event = payload.event;
|
|
327
|
+
if (!event)
|
|
328
|
+
return;
|
|
329
|
+
// The bot's own Slack user id — carried on every event_callback in
|
|
330
|
+
// `authorizations` — used to strip the bot's self-mention from
|
|
331
|
+
// app_mention text (see normalizeSlackEvent below).
|
|
332
|
+
const authorizations = payload.authorizations;
|
|
333
|
+
const botUserId = authorizations?.[0]?.user_id;
|
|
334
|
+
const deniedAgentId = runner.getAgentConfig().id;
|
|
335
|
+
const resolved = (0, slack_access_1.resolveSlackSource)(event);
|
|
336
|
+
// Bot-loop protection before the access gate too — a bot's own message
|
|
337
|
+
// should never mint a pairing knock either.
|
|
338
|
+
if (event.bot_id)
|
|
339
|
+
return;
|
|
340
|
+
if (!(0, slack_access_1.isResolvedSourceAllowed)(cfg, resolved)) {
|
|
341
|
+
logger.debug('Slack webhook: source not allowed', {
|
|
342
|
+
agentId: deniedAgentId,
|
|
343
|
+
kind: resolved.kind,
|
|
344
|
+
policy: (resolved.kind === 'user' ? cfg?.dmPolicy : cfg?.groupPolicy) ?? '(closed)',
|
|
345
|
+
conversationId: resolved.conversationId,
|
|
346
|
+
});
|
|
347
|
+
const knockId = resolved.kind === 'user' ? resolved.senderId : resolved.conversationId;
|
|
348
|
+
if (knockId) {
|
|
349
|
+
const sourcePolicy = resolved.kind === 'user' ? cfg?.dmPolicy : cfg?.groupPolicy;
|
|
350
|
+
const isPairing = cfg?.pairing !== false && sourcePolicy !== 'open' && sourcePolicy !== 'disabled';
|
|
351
|
+
const prev = (0, pending_senders_1.getPendingSender)('slack', deniedAgentId, knockId);
|
|
352
|
+
const code = prev?.code ?? (isPairing ? (0, pending_senders_1.generatePairingCode)() : undefined);
|
|
353
|
+
const client = cfg?.botToken
|
|
354
|
+
? new slack_client_1.SlackClient({ botToken: cfg.botToken, logDir, apiBase: opts.apiBase })
|
|
355
|
+
: null;
|
|
356
|
+
let wasNew = false;
|
|
357
|
+
if (resolved.kind === 'user') {
|
|
358
|
+
wasNew = (0, pending_senders_1.recordDeniedSender)('slack', deniedAgentId, knockId, undefined, Date.now(), code);
|
|
359
|
+
// Best-effort display-name backfill — mirrors LINE's getProfile() call.
|
|
360
|
+
if (client) {
|
|
361
|
+
void client
|
|
362
|
+
.getUserDisplayName(knockId)
|
|
363
|
+
.then((name) => {
|
|
364
|
+
const e = (0, pending_senders_1.getPendingSender)('slack', deniedAgentId, knockId);
|
|
365
|
+
if (e && name && !e.displayName)
|
|
366
|
+
e.displayName = name;
|
|
367
|
+
})
|
|
368
|
+
.catch(() => { });
|
|
369
|
+
}
|
|
317
370
|
}
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
371
|
+
else if (resolved.kind === 'group') {
|
|
372
|
+
wasNew = (0, pending_senders_1.recordDeniedConversation)('slack', deniedAgentId, knockId, 'group', undefined, Date.now(), code);
|
|
373
|
+
// Best-effort channel-name backfill — mirrors LINE's getGroupSummary() call.
|
|
374
|
+
if (client) {
|
|
375
|
+
void client
|
|
376
|
+
.getChannelName(knockId)
|
|
377
|
+
.then((name) => {
|
|
378
|
+
const e = (0, pending_senders_1.getPendingSender)('slack', deniedAgentId, knockId);
|
|
379
|
+
if (e && name && !e.displayName)
|
|
380
|
+
e.displayName = name;
|
|
381
|
+
})
|
|
382
|
+
.catch(() => { });
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
// Send the pairing code exactly once — on first contact only.
|
|
386
|
+
if (isPairing && wasNew && code && client) {
|
|
387
|
+
const target = resolved.conversationId;
|
|
323
388
|
void client
|
|
324
|
-
.
|
|
325
|
-
.
|
|
326
|
-
const e = (0, pending_senders_1.getPendingSender)('slack', deniedAgentId, knockId);
|
|
327
|
-
if (e && name && !e.displayName)
|
|
328
|
-
e.displayName = name;
|
|
329
|
-
})
|
|
330
|
-
.catch(() => { });
|
|
389
|
+
.postMessage(target, pairingMessage(code, resolved.kind === 'group' ? 'group' : 'user'))
|
|
390
|
+
.catch((err) => logger.debug('Slack pairing code reply failed', { error: err.message }));
|
|
331
391
|
}
|
|
332
392
|
}
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
393
|
+
return;
|
|
394
|
+
}
|
|
395
|
+
const norm = normalizeSlackEvent(event, resolved, botUserId);
|
|
396
|
+
if (!norm)
|
|
397
|
+
return;
|
|
398
|
+
// Channel activation gate: unless requireMention is explicitly false,
|
|
399
|
+
// only respond to app_mention events in channels (DMs always pass).
|
|
400
|
+
// event.type === 'app_mention' already IS the "bot was mentioned" signal
|
|
401
|
+
// at the Slack API level — a plain 'message' event in a channel never
|
|
402
|
+
// reaches this handler unless the workspace also subscribes to broader
|
|
403
|
+
// message.* events, so this check is a defensive no-op today but keeps
|
|
404
|
+
// the same explicit posture LINE's requireMention gate has.
|
|
405
|
+
if (resolved.kind === 'group' &&
|
|
406
|
+
cfg?.requireMention !== false &&
|
|
407
|
+
event.type !== 'app_mention') {
|
|
408
|
+
logger.debug('Slack webhook: channel message without bot mention, ignoring', {
|
|
409
|
+
agentId: deniedAgentId,
|
|
410
|
+
conversationId: resolved.conversationId,
|
|
411
|
+
});
|
|
412
|
+
return;
|
|
413
|
+
}
|
|
414
|
+
// Ack-reaction (2c): added here on receipt; removed by the `slack_reply`
|
|
415
|
+
// MCP tool (mcp/tools/slack/module.ts) once the agent's reply actually
|
|
416
|
+
// posts, using the same `chat_id`/`message_id` passed through `norm.meta`
|
|
417
|
+
// below — this file only ever adds it, never removes it.
|
|
418
|
+
const token = cfg?.botToken;
|
|
419
|
+
if (token) {
|
|
420
|
+
const client = new slack_client_1.SlackClient({ botToken: token, logDir, apiBase: opts.apiBase });
|
|
421
|
+
if (event.ts) {
|
|
422
|
+
void client.addReaction(resolved.conversationId, event.ts).catch(() => { });
|
|
339
423
|
}
|
|
340
424
|
}
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
425
|
+
// Inbound image: fetch the first image attachment's bytes with the bot token
|
|
426
|
+
// and hand the agent an absolute path (meta.image_path) — the same contract
|
|
427
|
+
// LINE uses, so the runner persists it to MediaStore and tells the agent to
|
|
428
|
+
// Read it. Best-effort: a failure only logs, the text turn still forwards.
|
|
429
|
+
// Scope is images only; other file types are left alone for now.
|
|
430
|
+
const managed = !!(orchestrationConfig?.enabled && (orchestrationConfig.channels ?? ['api']).includes('slack'));
|
|
431
|
+
let quoted;
|
|
432
|
+
if (managed && token && norm.meta.replied_message_id) {
|
|
433
|
+
try {
|
|
434
|
+
const response = await new slack_client_1.SlackClient({ botToken: token, logDir, apiBase: opts.apiBase }).threadRoot(resolved.conversationId, norm.meta.replied_message_id);
|
|
435
|
+
const messages = response.ok && Array.isArray(response.messages) ? response.messages : [];
|
|
436
|
+
quoted = messages.find(message => message.ts === norm.meta.replied_message_id);
|
|
437
|
+
if (quoted) {
|
|
438
|
+
norm.meta.replied_text = quoted.text ?? '';
|
|
439
|
+
norm.meta.replied_user = quoted.user ?? quoted.bot_id ?? '';
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
catch { /* ID-only quote is resolved from scoped local history when possible. */ }
|
|
443
|
+
}
|
|
444
|
+
const files = (event.files ?? []).filter(f => (managed || f.mimetype?.startsWith('image/')) && (f.url_private_download || f.url_private)).slice(0, managed ? 10 : 1);
|
|
445
|
+
const quotedFiles = (quoted?.files ?? []).filter(f => f.url_private_download || f.url_private).slice(0, 10);
|
|
446
|
+
const staged = [];
|
|
447
|
+
if (token)
|
|
448
|
+
for (const file of [...files, ...quotedFiles]) {
|
|
449
|
+
try {
|
|
450
|
+
const mediaPath = await downloadSlackImage(token, file.url_private_download ?? file.url_private, file.id, slackAudioMime(file), !file.mimetype?.startsWith('image/') && !isSlackAudio(file) ? file.name ?? 'attachment.bin' : undefined);
|
|
451
|
+
if (mediaPath)
|
|
452
|
+
staged.push({ path: mediaPath, name: file.name, quoted: quotedFiles.includes(file), kind: isSlackAudio(file) ? 'audio' : file.mimetype?.startsWith('image/') ? 'image' : 'file' });
|
|
453
|
+
}
|
|
454
|
+
catch {
|
|
455
|
+
norm.meta.attachment_error = 'One or more attached files could not be downloaded. Do not claim to have read them.';
|
|
456
|
+
logger.warn('Slack webhook: attachment download failed', { fileId: file.id });
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
if (staged.length) {
|
|
460
|
+
norm.meta.image_path = staged[0].path;
|
|
461
|
+
norm.meta.media_ephemeral = '1';
|
|
462
|
+
if (managed)
|
|
463
|
+
norm.meta.attachments_json = JSON.stringify(staged);
|
|
464
|
+
norm.meta.attachment_name = staged[0].name ?? '';
|
|
465
|
+
if (!staged[0].quoted && staged[0].kind === 'audio') {
|
|
466
|
+
norm.meta.media_type = 'audio';
|
|
467
|
+
norm.meta.attachment_kind = 'voice';
|
|
468
|
+
if (!norm.content)
|
|
469
|
+
norm.content = '(voice message)';
|
|
470
|
+
}
|
|
471
|
+
else if (staged[0].kind === 'file') {
|
|
472
|
+
norm.meta.media_type = 'file';
|
|
473
|
+
norm.meta.attachment_kind = 'document';
|
|
474
|
+
if (!norm.content)
|
|
475
|
+
norm.content = '(file attachment)';
|
|
476
|
+
}
|
|
371
477
|
}
|
|
372
|
-
}
|
|
373
|
-
// Inbound image: fetch the first image attachment's bytes with the bot token
|
|
374
|
-
// and hand the agent an absolute path (meta.image_path) — the same contract
|
|
375
|
-
// LINE uses, so the runner persists it to MediaStore and tells the agent to
|
|
376
|
-
// Read it. Best-effort: a failure only logs, the text turn still forwards.
|
|
377
|
-
// Scope is images only; other file types are left alone for now.
|
|
378
|
-
const imageFile = event.files?.find((f) => typeof f.mimetype === 'string' && f.mimetype.startsWith('image/') && f.url_private);
|
|
379
|
-
if (token && imageFile?.url_private) {
|
|
380
478
|
try {
|
|
381
|
-
const
|
|
382
|
-
|
|
383
|
-
|
|
479
|
+
const forwarded = await fetch(`http://127.0.0.1:${runner.getCallbackPort()}/channel`, {
|
|
480
|
+
method: 'POST',
|
|
481
|
+
headers: { 'Content-Type': 'application/json' },
|
|
482
|
+
body: JSON.stringify(norm),
|
|
483
|
+
});
|
|
484
|
+
if (durableIngress && !forwarded.ok)
|
|
485
|
+
throw new Error('Durable input admission failed');
|
|
384
486
|
}
|
|
385
487
|
catch (err) {
|
|
386
|
-
|
|
387
|
-
|
|
488
|
+
if (durableIngress && !res.headersSent)
|
|
489
|
+
res.status(503).json({ error: 'Input admission unavailable' });
|
|
490
|
+
logger.error('Slack webhook: failed to forward to callback', {
|
|
388
491
|
error: err.message,
|
|
389
492
|
});
|
|
390
493
|
}
|
|
391
494
|
}
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
headers: { 'Content-Type': 'application/json' },
|
|
396
|
-
body: JSON.stringify(norm),
|
|
397
|
-
});
|
|
398
|
-
}
|
|
399
|
-
catch (err) {
|
|
400
|
-
logger.error('Slack webhook: failed to forward to callback', {
|
|
401
|
-
error: err.message,
|
|
402
|
-
});
|
|
495
|
+
finally {
|
|
496
|
+
if (!res.headersSent)
|
|
497
|
+
res.status(200).json({ ok: true });
|
|
403
498
|
}
|
|
404
499
|
};
|
|
405
500
|
return { verify, handlePost };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack-webhook-router.js","sourceRoot":"","sources":["../../src/api/slack-webhook-router.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slack-webhook-router.js","sourceRoot":"","sources":["../../src/api/slack-webhook-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { IncomingMessage } from 'http';
|
|
2
|
+
import { Duplex } from 'stream';
|
|
3
|
+
import { AgentConfig, ApiKey } from '../types';
|
|
4
|
+
import { AgentRunner } from '../agent/runner';
|
|
5
|
+
/** Authenticated voice sessions share conversation ownership with text and task controls. */
|
|
6
|
+
export declare class VoiceApi {
|
|
7
|
+
private readonly agents;
|
|
8
|
+
private readonly configs;
|
|
9
|
+
readonly router: import("express-serve-static-core").Router;
|
|
10
|
+
private readonly wss;
|
|
11
|
+
private readonly tickets;
|
|
12
|
+
private readonly leases;
|
|
13
|
+
private readonly sessions;
|
|
14
|
+
private readonly pruner;
|
|
15
|
+
constructor(agents: Map<string, AgentRunner>, configs: Map<string, AgentConfig>, keys: ApiKey[]);
|
|
16
|
+
upgrade(request: IncomingMessage, socket: Duplex, head: Buffer): boolean;
|
|
17
|
+
private releaseLease;
|
|
18
|
+
private prune;
|
|
19
|
+
close(): Promise<void>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=voice-router.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voice-router.d.ts","sourceRoot":"","sources":["../../src/api/voice-router.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAc9C,6FAA6F;AAC7F,qBAAa,QAAQ;IAOP,OAAO,CAAC,QAAQ,CAAC,MAAM;IAA4B,OAAO,CAAC,QAAQ,CAAC,OAAO;IANvF,QAAQ,CAAC,MAAM,6CAAY;IAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA8D;IAClF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwF;IACjH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAC3B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAAmB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;IAiFjI,OAAO,CAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAqHxE,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,KAAK;IAGP,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAK7B"}
|