@jungjaehoon/mama-os 0.1.1
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/CHANGELOG.md +67 -0
- package/README.md +643 -0
- package/dist/agent/agent-loop.d.ts +98 -0
- package/dist/agent/agent-loop.d.ts.map +1 -0
- package/dist/agent/agent-loop.js +417 -0
- package/dist/agent/agent-loop.js.map +1 -0
- package/dist/agent/auto-recall.d.ts +48 -0
- package/dist/agent/auto-recall.d.ts.map +1 -0
- package/dist/agent/auto-recall.js +178 -0
- package/dist/agent/auto-recall.js.map +1 -0
- package/dist/agent/claude-cli-wrapper.d.ts +130 -0
- package/dist/agent/claude-cli-wrapper.d.ts.map +1 -0
- package/dist/agent/claude-cli-wrapper.js +227 -0
- package/dist/agent/claude-cli-wrapper.js.map +1 -0
- package/dist/agent/claude-client.d.ts +50 -0
- package/dist/agent/claude-client.d.ts.map +1 -0
- package/dist/agent/claude-client.js +214 -0
- package/dist/agent/claude-client.js.map +1 -0
- package/dist/agent/gateway-tool-executor.d.ts +75 -0
- package/dist/agent/gateway-tool-executor.d.ts.map +1 -0
- package/dist/agent/gateway-tool-executor.js +348 -0
- package/dist/agent/gateway-tool-executor.js.map +1 -0
- package/dist/agent/index.d.ts +13 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +18 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/agent/mcp-executor.d.ts +75 -0
- package/dist/agent/mcp-executor.d.ts.map +1 -0
- package/dist/agent/mcp-executor.js +307 -0
- package/dist/agent/mcp-executor.js.map +1 -0
- package/dist/agent/session-pool.d.ts +148 -0
- package/dist/agent/session-pool.d.ts.map +1 -0
- package/dist/agent/session-pool.js +272 -0
- package/dist/agent/session-pool.js.map +1 -0
- package/dist/agent/streaming-callback-manager.d.ts +85 -0
- package/dist/agent/streaming-callback-manager.d.ts.map +1 -0
- package/dist/agent/streaming-callback-manager.js +103 -0
- package/dist/agent/streaming-callback-manager.js.map +1 -0
- package/dist/agent/types.d.ts +437 -0
- package/dist/agent/types.d.ts.map +1 -0
- package/dist/agent/types.js +29 -0
- package/dist/agent/types.js.map +1 -0
- package/dist/api/cron-handler.d.ts +44 -0
- package/dist/api/cron-handler.d.ts.map +1 -0
- package/dist/api/cron-handler.js +195 -0
- package/dist/api/cron-handler.js.map +1 -0
- package/dist/api/error-handler.d.ts +22 -0
- package/dist/api/error-handler.d.ts.map +1 -0
- package/dist/api/error-handler.js +104 -0
- package/dist/api/error-handler.js.map +1 -0
- package/dist/api/heartbeat-handler.d.ts +49 -0
- package/dist/api/heartbeat-handler.d.ts.map +1 -0
- package/dist/api/heartbeat-handler.js +91 -0
- package/dist/api/heartbeat-handler.js.map +1 -0
- package/dist/api/index.d.ts +61 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +145 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/types.d.ts +156 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +62 -0
- package/dist/api/types.js.map +1 -0
- package/dist/auth/index.d.ts +7 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +11 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/oauth-manager.d.ts +59 -0
- package/dist/auth/oauth-manager.d.ts.map +1 -0
- package/dist/auth/oauth-manager.js +237 -0
- package/dist/auth/oauth-manager.js.map +1 -0
- package/dist/auth/types.d.ts +92 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +23 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/cli/commands/init.d.ts +19 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +155 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/run.d.ts +19 -0
- package/dist/cli/commands/run.d.ts.map +1 -0
- package/dist/cli/commands/run.js +89 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/commands/setup.d.ts +19 -0
- package/dist/cli/commands/setup.d.ts.map +1 -0
- package/dist/cli/commands/setup.js +134 -0
- package/dist/cli/commands/setup.js.map +1 -0
- package/dist/cli/commands/start.d.ts +24 -0
- package/dist/cli/commands/start.d.ts.map +1 -0
- package/dist/cli/commands/start.js +1073 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/status.d.ts +10 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +85 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/stop.d.ts +10 -0
- package/dist/cli/commands/stop.d.ts.map +1 -0
- package/dist/cli/commands/stop.js +65 -0
- package/dist/cli/commands/stop.js.map +1 -0
- package/dist/cli/config/config-manager.d.ts +51 -0
- package/dist/cli/config/config-manager.d.ts.map +1 -0
- package/dist/cli/config/config-manager.js +216 -0
- package/dist/cli/config/config-manager.js.map +1 -0
- package/dist/cli/config/types.d.ts +172 -0
- package/dist/cli/config/types.d.ts.map +1 -0
- package/dist/cli/config/types.js +48 -0
- package/dist/cli/config/types.js.map +1 -0
- package/dist/cli/index.d.ts +8 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +92 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/utils/pid-manager.d.ts +66 -0
- package/dist/cli/utils/pid-manager.d.ts.map +1 -0
- package/dist/cli/utils/pid-manager.js +167 -0
- package/dist/cli/utils/pid-manager.js.map +1 -0
- package/dist/concurrency/index.d.ts +13 -0
- package/dist/concurrency/index.d.ts.map +1 -0
- package/dist/concurrency/index.js +22 -0
- package/dist/concurrency/index.js.map +1 -0
- package/dist/concurrency/lane-manager.d.ts +113 -0
- package/dist/concurrency/lane-manager.d.ts.map +1 -0
- package/dist/concurrency/lane-manager.js +245 -0
- package/dist/concurrency/lane-manager.js.map +1 -0
- package/dist/concurrency/session-key.d.ts +41 -0
- package/dist/concurrency/session-key.d.ts.map +1 -0
- package/dist/concurrency/session-key.js +61 -0
- package/dist/concurrency/session-key.js.map +1 -0
- package/dist/concurrency/types.d.ts +69 -0
- package/dist/concurrency/types.d.ts.map +1 -0
- package/dist/concurrency/types.js +16 -0
- package/dist/concurrency/types.js.map +1 -0
- package/dist/gateways/channel-history.d.ts +102 -0
- package/dist/gateways/channel-history.d.ts.map +1 -0
- package/dist/gateways/channel-history.js +181 -0
- package/dist/gateways/channel-history.js.map +1 -0
- package/dist/gateways/context-injector.d.ts +74 -0
- package/dist/gateways/context-injector.d.ts.map +1 -0
- package/dist/gateways/context-injector.js +121 -0
- package/dist/gateways/context-injector.js.map +1 -0
- package/dist/gateways/discord.d.ts +122 -0
- package/dist/gateways/discord.d.ts.map +1 -0
- package/dist/gateways/discord.js +602 -0
- package/dist/gateways/discord.js.map +1 -0
- package/dist/gateways/index.d.ts +30 -0
- package/dist/gateways/index.d.ts.map +1 -0
- package/dist/gateways/index.js +49 -0
- package/dist/gateways/index.js.map +1 -0
- package/dist/gateways/message-router.d.ts +116 -0
- package/dist/gateways/message-router.d.ts.map +1 -0
- package/dist/gateways/message-router.js +315 -0
- package/dist/gateways/message-router.js.map +1 -0
- package/dist/gateways/message-splitter.d.ts +54 -0
- package/dist/gateways/message-splitter.d.ts.map +1 -0
- package/dist/gateways/message-splitter.js +146 -0
- package/dist/gateways/message-splitter.js.map +1 -0
- package/dist/gateways/plugin-loader.d.ts +76 -0
- package/dist/gateways/plugin-loader.d.ts.map +1 -0
- package/dist/gateways/plugin-loader.js +221 -0
- package/dist/gateways/plugin-loader.js.map +1 -0
- package/dist/gateways/session-store.d.ts +77 -0
- package/dist/gateways/session-store.d.ts.map +1 -0
- package/dist/gateways/session-store.js +233 -0
- package/dist/gateways/session-store.js.map +1 -0
- package/dist/gateways/slack.d.ts +90 -0
- package/dist/gateways/slack.d.ts.map +1 -0
- package/dist/gateways/slack.js +281 -0
- package/dist/gateways/slack.js.map +1 -0
- package/dist/gateways/telegram.d.ts +79 -0
- package/dist/gateways/telegram.d.ts.map +1 -0
- package/dist/gateways/telegram.js +207 -0
- package/dist/gateways/telegram.js.map +1 -0
- package/dist/gateways/types.d.ts +340 -0
- package/dist/gateways/types.d.ts.map +1 -0
- package/dist/gateways/types.js +6 -0
- package/dist/gateways/types.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/memory/memory-logger.d.ts +47 -0
- package/dist/memory/memory-logger.d.ts.map +1 -0
- package/dist/memory/memory-logger.js +126 -0
- package/dist/memory/memory-logger.js.map +1 -0
- package/dist/onboarding/all-tools.d.ts +18 -0
- package/dist/onboarding/all-tools.d.ts.map +1 -0
- package/dist/onboarding/all-tools.js +149 -0
- package/dist/onboarding/all-tools.js.map +1 -0
- package/dist/onboarding/autonomous-discovery-tools.d.ts +13 -0
- package/dist/onboarding/autonomous-discovery-tools.d.ts.map +1 -0
- package/dist/onboarding/autonomous-discovery-tools.js +268 -0
- package/dist/onboarding/autonomous-discovery-tools.js.map +1 -0
- package/dist/onboarding/bootstrap-template.d.ts +5 -0
- package/dist/onboarding/bootstrap-template.d.ts.map +1 -0
- package/dist/onboarding/bootstrap-template.js +142 -0
- package/dist/onboarding/bootstrap-template.js.map +1 -0
- package/dist/onboarding/complete-autonomous-prompt.d.ts +13 -0
- package/dist/onboarding/complete-autonomous-prompt.d.ts.map +1 -0
- package/dist/onboarding/complete-autonomous-prompt.js +1220 -0
- package/dist/onboarding/complete-autonomous-prompt.js.map +1 -0
- package/dist/onboarding/onboarding-state.d.ts +70 -0
- package/dist/onboarding/onboarding-state.d.ts.map +1 -0
- package/dist/onboarding/onboarding-state.js +184 -0
- package/dist/onboarding/onboarding-state.js.map +1 -0
- package/dist/onboarding/personality-quiz.d.ts +35 -0
- package/dist/onboarding/personality-quiz.d.ts.map +1 -0
- package/dist/onboarding/personality-quiz.js +219 -0
- package/dist/onboarding/personality-quiz.js.map +1 -0
- package/dist/onboarding/phase-5-summary.d.ts +22 -0
- package/dist/onboarding/phase-5-summary.d.ts.map +1 -0
- package/dist/onboarding/phase-5-summary.js +151 -0
- package/dist/onboarding/phase-5-summary.js.map +1 -0
- package/dist/onboarding/phase-6-security.d.ts +33 -0
- package/dist/onboarding/phase-6-security.d.ts.map +1 -0
- package/dist/onboarding/phase-6-security.js +473 -0
- package/dist/onboarding/phase-6-security.js.map +1 -0
- package/dist/onboarding/phase-7-integrations.d.ts +66 -0
- package/dist/onboarding/phase-7-integrations.d.ts.map +1 -0
- package/dist/onboarding/phase-7-integrations.js +619 -0
- package/dist/onboarding/phase-7-integrations.js.map +1 -0
- package/dist/onboarding/phase-8-demo.d.ts +43 -0
- package/dist/onboarding/phase-8-demo.d.ts.map +1 -0
- package/dist/onboarding/phase-8-demo.js +346 -0
- package/dist/onboarding/phase-8-demo.js.map +1 -0
- package/dist/onboarding/phase-9-finalization.d.ts +22 -0
- package/dist/onboarding/phase-9-finalization.d.ts.map +1 -0
- package/dist/onboarding/phase-9-finalization.js +375 -0
- package/dist/onboarding/phase-9-finalization.js.map +1 -0
- package/dist/onboarding/ritual-prompt.d.ts +2 -0
- package/dist/onboarding/ritual-prompt.d.ts.map +1 -0
- package/dist/onboarding/ritual-prompt.js +285 -0
- package/dist/onboarding/ritual-prompt.js.map +1 -0
- package/dist/onboarding/ritual-tools.d.ts +13 -0
- package/dist/onboarding/ritual-tools.d.ts.map +1 -0
- package/dist/onboarding/ritual-tools.js +93 -0
- package/dist/onboarding/ritual-tools.js.map +1 -0
- package/dist/runners/cli-runner.d.ts +59 -0
- package/dist/runners/cli-runner.d.ts.map +1 -0
- package/dist/runners/cli-runner.js +190 -0
- package/dist/runners/cli-runner.js.map +1 -0
- package/dist/runners/index.d.ts +11 -0
- package/dist/runners/index.d.ts.map +1 -0
- package/dist/runners/index.js +15 -0
- package/dist/runners/index.js.map +1 -0
- package/dist/runners/types.d.ts +81 -0
- package/dist/runners/types.d.ts.map +1 -0
- package/dist/runners/types.js +31 -0
- package/dist/runners/types.js.map +1 -0
- package/dist/scheduler/cron-scheduler.d.ts +115 -0
- package/dist/scheduler/cron-scheduler.d.ts.map +1 -0
- package/dist/scheduler/cron-scheduler.js +320 -0
- package/dist/scheduler/cron-scheduler.js.map +1 -0
- package/dist/scheduler/heartbeat.d.ts +53 -0
- package/dist/scheduler/heartbeat.d.ts.map +1 -0
- package/dist/scheduler/heartbeat.js +160 -0
- package/dist/scheduler/heartbeat.js.map +1 -0
- package/dist/scheduler/index.d.ts +22 -0
- package/dist/scheduler/index.d.ts.map +1 -0
- package/dist/scheduler/index.js +31 -0
- package/dist/scheduler/index.js.map +1 -0
- package/dist/scheduler/job-lock.d.ts +85 -0
- package/dist/scheduler/job-lock.d.ts.map +1 -0
- package/dist/scheduler/job-lock.js +137 -0
- package/dist/scheduler/job-lock.js.map +1 -0
- package/dist/scheduler/recovery.d.ts +78 -0
- package/dist/scheduler/recovery.d.ts.map +1 -0
- package/dist/scheduler/recovery.js +124 -0
- package/dist/scheduler/recovery.js.map +1 -0
- package/dist/scheduler/schedule-store.d.ts +112 -0
- package/dist/scheduler/schedule-store.d.ts.map +1 -0
- package/dist/scheduler/schedule-store.js +259 -0
- package/dist/scheduler/schedule-store.js.map +1 -0
- package/dist/scheduler/token-keep-alive.d.ts +49 -0
- package/dist/scheduler/token-keep-alive.d.ts.map +1 -0
- package/dist/scheduler/token-keep-alive.js +102 -0
- package/dist/scheduler/token-keep-alive.js.map +1 -0
- package/dist/scheduler/types.d.ts +96 -0
- package/dist/scheduler/types.d.ts.map +1 -0
- package/dist/scheduler/types.js +21 -0
- package/dist/scheduler/types.js.map +1 -0
- package/dist/setup/setup-prompt.d.ts +2 -0
- package/dist/setup/setup-prompt.d.ts.map +1 -0
- package/dist/setup/setup-prompt.js +138 -0
- package/dist/setup/setup-prompt.js.map +1 -0
- package/dist/setup/setup-server.d.ts +8 -0
- package/dist/setup/setup-server.d.ts.map +1 -0
- package/dist/setup/setup-server.js +71 -0
- package/dist/setup/setup-server.js.map +1 -0
- package/dist/setup/setup-tools.d.ts +13 -0
- package/dist/setup/setup-tools.d.ts.map +1 -0
- package/dist/setup/setup-tools.js +103 -0
- package/dist/setup/setup-tools.js.map +1 -0
- package/dist/setup/setup-websocket.d.ts +6 -0
- package/dist/setup/setup-websocket.d.ts.map +1 -0
- package/dist/setup/setup-websocket.js +312 -0
- package/dist/setup/setup-websocket.js.map +1 -0
- package/dist/skills/index.d.ts +10 -0
- package/dist/skills/index.d.ts.map +1 -0
- package/dist/skills/index.js +26 -0
- package/dist/skills/index.js.map +1 -0
- package/dist/skills/skill-executor.d.ts +48 -0
- package/dist/skills/skill-executor.d.ts.map +1 -0
- package/dist/skills/skill-executor.js +483 -0
- package/dist/skills/skill-executor.js.map +1 -0
- package/dist/skills/skill-loader.d.ts +40 -0
- package/dist/skills/skill-loader.d.ts.map +1 -0
- package/dist/skills/skill-loader.js +225 -0
- package/dist/skills/skill-loader.js.map +1 -0
- package/dist/skills/skill-matcher.d.ts +33 -0
- package/dist/skills/skill-matcher.d.ts.map +1 -0
- package/dist/skills/skill-matcher.js +190 -0
- package/dist/skills/skill-matcher.js.map +1 -0
- package/dist/skills/types.d.ts +123 -0
- package/dist/skills/types.d.ts.map +1 -0
- package/dist/skills/types.js +12 -0
- package/dist/skills/types.js.map +1 -0
- package/dist/tools/browser-tool.d.ts +149 -0
- package/dist/tools/browser-tool.d.ts.map +1 -0
- package/dist/tools/browser-tool.js +257 -0
- package/dist/tools/browser-tool.js.map +1 -0
- package/package.json +84 -0
- package/public/favicon.ico +0 -0
- package/public/setup.html +1026 -0
- package/public/viewer/icons/icon-192.png +0 -0
- package/public/viewer/icons/icon-512.png +0 -0
- package/public/viewer/js/modules/chat.js +1587 -0
- package/public/viewer/js/modules/dashboard.js +275 -0
- package/public/viewer/js/modules/graph.js +997 -0
- package/public/viewer/js/modules/memory.js +353 -0
- package/public/viewer/js/modules/settings.js +255 -0
- package/public/viewer/js/utils/api.js +169 -0
- package/public/viewer/js/utils/dom.js +92 -0
- package/public/viewer/js/utils/format.js +192 -0
- package/public/viewer/manifest.json +26 -0
- package/public/viewer/sw.js +131 -0
- package/public/viewer/viewer.css +500 -0
- package/public/viewer/viewer.html +1535 -0
- package/scripts/postinstall.js +118 -0
- package/templates/skills/document-analyze.md +63 -0
- package/templates/skills/heartbeat-report.md +75 -0
- package/templates/skills/image-translate.md +67 -0
- package/templates/workspace/skill-forge/DESIGN.md +115 -0
- package/templates/workspace/skill-forge/agents/architect.ts +295 -0
- package/templates/workspace/skill-forge/agents/developer.ts +364 -0
- package/templates/workspace/skill-forge/agents/qa.ts +313 -0
- package/templates/workspace/skill-forge/claude-api.ts +353 -0
- package/templates/workspace/skill-forge/discord-ui.ts +580 -0
- package/templates/workspace/skill-forge/error-handler.ts +354 -0
- package/templates/workspace/skill-forge/mama-integration.ts +357 -0
- package/templates/workspace/skill-forge/orchestrator.ts +495 -0
- package/templates/workspace/skill-forge/output/generated-skills/skills/hello-world/README.md +24 -0
- package/templates/workspace/skill-forge/output/generated-skills/skills/hello-world/index.ts +79 -0
- package/templates/workspace/skill-forge/output/generated-skills/skills/hello-world/types.ts +17 -0
- package/templates/workspace/skill-forge/package.json +21 -0
- package/templates/workspace/skill-forge/state/session.json +132 -0
- package/templates/workspace/skill-forge/test-e2e.ts +139 -0
- package/templates/workspace/skill-forge/tsconfig.json +20 -0
- package/templates/workspace/skill-forge/types.ts +159 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telegram Gateway for MAMA Standalone
|
|
3
|
+
*
|
|
4
|
+
* Provides Telegram bot integration for receiving and responding to messages.
|
|
5
|
+
*/
|
|
6
|
+
import type { Gateway, GatewayEventHandler } from './types.js';
|
|
7
|
+
import { MessageRouter } from './message-router.js';
|
|
8
|
+
/**
|
|
9
|
+
* Telegram Gateway configuration
|
|
10
|
+
*/
|
|
11
|
+
export interface TelegramGatewayConfig {
|
|
12
|
+
/** Enable Telegram gateway */
|
|
13
|
+
enabled: boolean;
|
|
14
|
+
/** Telegram bot token from @BotFather */
|
|
15
|
+
token: string;
|
|
16
|
+
/** Allowed chat IDs (empty = allow all) */
|
|
17
|
+
allowedChats?: string[];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Telegram Gateway options
|
|
21
|
+
*/
|
|
22
|
+
export interface TelegramGatewayOptions {
|
|
23
|
+
/** Telegram bot token */
|
|
24
|
+
token: string;
|
|
25
|
+
/** Message router for processing messages */
|
|
26
|
+
messageRouter: MessageRouter;
|
|
27
|
+
/** Gateway configuration */
|
|
28
|
+
config?: Partial<TelegramGatewayConfig>;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Telegram Gateway class
|
|
32
|
+
*/
|
|
33
|
+
export declare class TelegramGateway implements Gateway {
|
|
34
|
+
readonly source: "telegram";
|
|
35
|
+
private token;
|
|
36
|
+
private messageRouter;
|
|
37
|
+
private config;
|
|
38
|
+
private eventHandlers;
|
|
39
|
+
private connected;
|
|
40
|
+
private bot;
|
|
41
|
+
constructor(options: TelegramGatewayOptions);
|
|
42
|
+
/**
|
|
43
|
+
* Start the Telegram gateway
|
|
44
|
+
*/
|
|
45
|
+
start(): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Stop the Telegram gateway
|
|
48
|
+
*/
|
|
49
|
+
stop(): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Handle incoming Telegram message
|
|
52
|
+
*/
|
|
53
|
+
private handleMessage;
|
|
54
|
+
/**
|
|
55
|
+
* Send message to a chat
|
|
56
|
+
*/
|
|
57
|
+
sendMessage(chatId: string, text: string): Promise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* Send image to a chat
|
|
60
|
+
*/
|
|
61
|
+
sendImage(chatId: string, imagePath: string, caption?: string): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Split message into chunks
|
|
64
|
+
*/
|
|
65
|
+
private splitMessage;
|
|
66
|
+
/**
|
|
67
|
+
* Emit event to registered handlers
|
|
68
|
+
*/
|
|
69
|
+
private emitEvent;
|
|
70
|
+
/**
|
|
71
|
+
* Check if gateway is connected
|
|
72
|
+
*/
|
|
73
|
+
isConnected(): boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Register event handler
|
|
76
|
+
*/
|
|
77
|
+
onEvent(handler: GatewayEventHandler): void;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=telegram.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAgB,mBAAmB,EAAqB,MAAM,YAAY,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,8BAA8B;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,aAAa,EAAE,aAAa,CAAC;IAC7B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,OAAO;IAC7C,QAAQ,CAAC,MAAM,EAAG,UAAU,CAAU;IAEtC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,GAAG,CAA4B;gBAE3B,OAAO,EAAE,sBAAsB;IAU3C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmC5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3B;;OAEG;YACW,aAAa;IAkE3B;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9D;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnF;;OAEG;IACH,OAAO,CAAC,YAAY;IAwBpB;;OAEG;IACH,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;CAG5C"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Telegram Gateway for MAMA Standalone
|
|
4
|
+
*
|
|
5
|
+
* Provides Telegram bot integration for receiving and responding to messages.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.TelegramGateway = void 0;
|
|
9
|
+
const memory_logger_js_1 = require("../memory/memory-logger.js");
|
|
10
|
+
/**
|
|
11
|
+
* Telegram Gateway class
|
|
12
|
+
*/
|
|
13
|
+
class TelegramGateway {
|
|
14
|
+
source = 'telegram';
|
|
15
|
+
token;
|
|
16
|
+
messageRouter;
|
|
17
|
+
config;
|
|
18
|
+
eventHandlers = [];
|
|
19
|
+
connected = false;
|
|
20
|
+
bot = null;
|
|
21
|
+
constructor(options) {
|
|
22
|
+
this.token = options.token;
|
|
23
|
+
this.messageRouter = options.messageRouter;
|
|
24
|
+
this.config = {
|
|
25
|
+
enabled: true,
|
|
26
|
+
token: options.token,
|
|
27
|
+
allowedChats: options.config?.allowedChats || [],
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Start the Telegram gateway
|
|
32
|
+
*/
|
|
33
|
+
async start() {
|
|
34
|
+
if (this.connected) {
|
|
35
|
+
console.log('Telegram gateway already connected');
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
try {
|
|
39
|
+
// Dynamic import to avoid bundling issues if not used
|
|
40
|
+
const TelegramBotModule = await import('node-telegram-bot-api');
|
|
41
|
+
const TelegramBotClass = TelegramBotModule.default;
|
|
42
|
+
this.bot = new TelegramBotClass(this.token, { polling: true });
|
|
43
|
+
// Handle incoming messages
|
|
44
|
+
this.bot.on('message', async (msg) => {
|
|
45
|
+
await this.handleMessage(msg);
|
|
46
|
+
});
|
|
47
|
+
// Get bot info
|
|
48
|
+
const me = await this.bot.getMe();
|
|
49
|
+
console.log(`Telegram bot logged in as @${me.username}`);
|
|
50
|
+
this.connected = true;
|
|
51
|
+
this.emitEvent({
|
|
52
|
+
type: 'connected',
|
|
53
|
+
source: 'telegram',
|
|
54
|
+
timestamp: new Date(),
|
|
55
|
+
data: { username: me.username },
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
console.error('Telegram connection failed:', error);
|
|
60
|
+
throw error;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Stop the Telegram gateway
|
|
65
|
+
*/
|
|
66
|
+
async stop() {
|
|
67
|
+
if (this.bot) {
|
|
68
|
+
await this.bot.stopPolling();
|
|
69
|
+
this.bot = null;
|
|
70
|
+
}
|
|
71
|
+
this.connected = false;
|
|
72
|
+
this.emitEvent({
|
|
73
|
+
type: 'disconnected',
|
|
74
|
+
source: 'telegram',
|
|
75
|
+
timestamp: new Date(),
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Handle incoming Telegram message
|
|
80
|
+
*/
|
|
81
|
+
async handleMessage(msg) {
|
|
82
|
+
// Check if chat is allowed
|
|
83
|
+
if (this.config.allowedChats && this.config.allowedChats.length > 0) {
|
|
84
|
+
if (!this.config.allowedChats.includes(String(msg.chat.id))) {
|
|
85
|
+
console.log(`[Telegram] Ignoring message from unauthorized chat: ${msg.chat.id}`);
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
const text = msg.text || '';
|
|
90
|
+
if (!text.trim())
|
|
91
|
+
return;
|
|
92
|
+
console.log(`[Telegram] Message from ${msg.from?.username || msg.from?.id}: ${text.substring(0, 50)}...`);
|
|
93
|
+
// Log incoming message
|
|
94
|
+
const memoryLogger = (0, memory_logger_js_1.getMemoryLogger)();
|
|
95
|
+
memoryLogger.logMessage('Telegram', msg.from?.username || String(msg.from?.id), text, false);
|
|
96
|
+
// Emit message received event
|
|
97
|
+
this.emitEvent({
|
|
98
|
+
type: 'message_received',
|
|
99
|
+
source: 'telegram',
|
|
100
|
+
timestamp: new Date(),
|
|
101
|
+
data: {
|
|
102
|
+
chatId: String(msg.chat.id),
|
|
103
|
+
userId: String(msg.from?.id),
|
|
104
|
+
},
|
|
105
|
+
});
|
|
106
|
+
// Normalize message for router
|
|
107
|
+
const normalizedMessage = {
|
|
108
|
+
source: 'telegram',
|
|
109
|
+
channelId: String(msg.chat.id),
|
|
110
|
+
userId: String(msg.from?.id),
|
|
111
|
+
text,
|
|
112
|
+
metadata: {
|
|
113
|
+
username: msg.from?.username,
|
|
114
|
+
messageId: String(msg.message_id),
|
|
115
|
+
chatType: msg.chat.type,
|
|
116
|
+
},
|
|
117
|
+
};
|
|
118
|
+
// Process through message router
|
|
119
|
+
const result = await this.messageRouter.process(normalizedMessage);
|
|
120
|
+
// Log bot response
|
|
121
|
+
memoryLogger.logMessage('Telegram', 'MAMA', result.response, true);
|
|
122
|
+
// Send response
|
|
123
|
+
await this.sendMessage(String(msg.chat.id), result.response);
|
|
124
|
+
// Emit message sent event
|
|
125
|
+
this.emitEvent({
|
|
126
|
+
type: 'message_sent',
|
|
127
|
+
source: 'telegram',
|
|
128
|
+
timestamp: new Date(),
|
|
129
|
+
data: {
|
|
130
|
+
chatId: String(msg.chat.id),
|
|
131
|
+
responseLength: result.response.length,
|
|
132
|
+
duration: result.duration,
|
|
133
|
+
},
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Send message to a chat
|
|
138
|
+
*/
|
|
139
|
+
async sendMessage(chatId, text) {
|
|
140
|
+
if (!this.bot) {
|
|
141
|
+
throw new Error('Telegram gateway not connected');
|
|
142
|
+
}
|
|
143
|
+
// Split long messages (Telegram limit: 4096 characters)
|
|
144
|
+
const chunks = this.splitMessage(text, 4096);
|
|
145
|
+
for (const chunk of chunks) {
|
|
146
|
+
await this.bot.sendMessage(chatId, chunk, { parse_mode: 'Markdown' });
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Send image to a chat
|
|
151
|
+
*/
|
|
152
|
+
async sendImage(chatId, imagePath, caption) {
|
|
153
|
+
if (!this.bot) {
|
|
154
|
+
throw new Error('Telegram gateway not connected');
|
|
155
|
+
}
|
|
156
|
+
await this.bot.sendPhoto(chatId, imagePath, { caption });
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Split message into chunks
|
|
160
|
+
*/
|
|
161
|
+
splitMessage(text, maxLength) {
|
|
162
|
+
const chunks = [];
|
|
163
|
+
let remaining = text;
|
|
164
|
+
while (remaining.length > 0) {
|
|
165
|
+
if (remaining.length <= maxLength) {
|
|
166
|
+
chunks.push(remaining);
|
|
167
|
+
break;
|
|
168
|
+
}
|
|
169
|
+
// Find a good split point
|
|
170
|
+
let splitIndex = maxLength;
|
|
171
|
+
const newlineIndex = remaining.lastIndexOf('\n', maxLength);
|
|
172
|
+
if (newlineIndex > maxLength * 0.7) {
|
|
173
|
+
splitIndex = newlineIndex;
|
|
174
|
+
}
|
|
175
|
+
chunks.push(remaining.substring(0, splitIndex));
|
|
176
|
+
remaining = remaining.substring(splitIndex).trim();
|
|
177
|
+
}
|
|
178
|
+
return chunks;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Emit event to registered handlers
|
|
182
|
+
*/
|
|
183
|
+
emitEvent(event) {
|
|
184
|
+
for (const handler of this.eventHandlers) {
|
|
185
|
+
try {
|
|
186
|
+
handler(event);
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
console.error('Error in gateway event handler:', error);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Check if gateway is connected
|
|
195
|
+
*/
|
|
196
|
+
isConnected() {
|
|
197
|
+
return this.connected;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Register event handler
|
|
201
|
+
*/
|
|
202
|
+
onEvent(handler) {
|
|
203
|
+
this.eventHandlers.push(handler);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
exports.TelegramGateway = TelegramGateway;
|
|
207
|
+
//# sourceMappingURL=telegram.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/gateways/telegram.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for Message Gateway system
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Supported messenger platforms
|
|
6
|
+
*/
|
|
7
|
+
export type MessageSource = 'discord' | 'slack' | 'telegram' | 'chatwork' | 'mobile' | 'viewer';
|
|
8
|
+
/**
|
|
9
|
+
* Content block for multimodal input (OpenClaw-style)
|
|
10
|
+
*/
|
|
11
|
+
export interface ContentBlock {
|
|
12
|
+
type: 'text' | 'image';
|
|
13
|
+
text?: string;
|
|
14
|
+
source?: {
|
|
15
|
+
type: 'base64';
|
|
16
|
+
media_type: string;
|
|
17
|
+
data: string;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Normalized message format for cross-platform handling
|
|
22
|
+
*/
|
|
23
|
+
export interface NormalizedMessage {
|
|
24
|
+
/** Source messenger platform */
|
|
25
|
+
source: MessageSource;
|
|
26
|
+
/** Channel or DM identifier */
|
|
27
|
+
channelId: string;
|
|
28
|
+
/** User identifier on the platform */
|
|
29
|
+
userId: string;
|
|
30
|
+
/** Message text content */
|
|
31
|
+
text: string;
|
|
32
|
+
/** Multimodal content blocks (images, etc.) */
|
|
33
|
+
contentBlocks?: ContentBlock[];
|
|
34
|
+
/** Platform-specific metadata */
|
|
35
|
+
metadata?: MessageMetadata;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Message attachment (image, file, etc.)
|
|
39
|
+
*/
|
|
40
|
+
export interface MessageAttachment {
|
|
41
|
+
/** Attachment type */
|
|
42
|
+
type: 'image' | 'file';
|
|
43
|
+
/** Original URL */
|
|
44
|
+
url: string;
|
|
45
|
+
/** Local file path (after download) */
|
|
46
|
+
localPath?: string;
|
|
47
|
+
/** File name */
|
|
48
|
+
filename: string;
|
|
49
|
+
/** MIME type */
|
|
50
|
+
contentType?: string;
|
|
51
|
+
/** File size in bytes */
|
|
52
|
+
size?: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Platform-specific metadata
|
|
56
|
+
*/
|
|
57
|
+
export interface MessageMetadata {
|
|
58
|
+
/** Discord guild ID */
|
|
59
|
+
guildId?: string;
|
|
60
|
+
/** Slack thread timestamp */
|
|
61
|
+
threadTs?: string;
|
|
62
|
+
/** User display name */
|
|
63
|
+
username?: string;
|
|
64
|
+
/** Original message ID */
|
|
65
|
+
messageId?: string;
|
|
66
|
+
/** Message attachments */
|
|
67
|
+
attachments?: MessageAttachment[];
|
|
68
|
+
/** Telegram chat type (private, group, supergroup, channel) */
|
|
69
|
+
chatType?: string;
|
|
70
|
+
/** Channel history context (OpenClaw-style) */
|
|
71
|
+
historyContext?: string;
|
|
72
|
+
/** Session ID (for WebSocket/viewer) */
|
|
73
|
+
sessionId?: string;
|
|
74
|
+
/** OS Agent mode flag */
|
|
75
|
+
osAgentMode?: boolean;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Session data for messenger conversations
|
|
79
|
+
*/
|
|
80
|
+
export interface Session {
|
|
81
|
+
/** Unique session ID */
|
|
82
|
+
id: string;
|
|
83
|
+
/** Source platform */
|
|
84
|
+
source: MessageSource;
|
|
85
|
+
/** Channel ID */
|
|
86
|
+
channelId: string;
|
|
87
|
+
/** User ID (optional, for DMs) */
|
|
88
|
+
userId?: string;
|
|
89
|
+
/** Rolling conversation context (JSON) */
|
|
90
|
+
context: string;
|
|
91
|
+
/** Session creation timestamp */
|
|
92
|
+
createdAt: number;
|
|
93
|
+
/** Last activity timestamp */
|
|
94
|
+
lastActive: number;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Conversation turn in rolling context
|
|
98
|
+
*/
|
|
99
|
+
export interface ConversationTurn {
|
|
100
|
+
/** User message */
|
|
101
|
+
user: string;
|
|
102
|
+
/** Bot response (truncated) */
|
|
103
|
+
bot: string;
|
|
104
|
+
/** Timestamp */
|
|
105
|
+
timestamp?: number;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Decision from MAMA memory for context injection
|
|
109
|
+
*/
|
|
110
|
+
export interface RelatedDecision {
|
|
111
|
+
/** Decision ID */
|
|
112
|
+
id: string;
|
|
113
|
+
/** Topic identifier */
|
|
114
|
+
topic: string;
|
|
115
|
+
/** Decision text */
|
|
116
|
+
decision: string;
|
|
117
|
+
/** Reasoning */
|
|
118
|
+
reasoning?: string;
|
|
119
|
+
/** Outcome status */
|
|
120
|
+
outcome?: 'success' | 'failed' | 'partial' | 'pending';
|
|
121
|
+
/** Similarity score (0-1) */
|
|
122
|
+
similarity: number;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Message router configuration
|
|
126
|
+
*/
|
|
127
|
+
export interface MessageRouterConfig {
|
|
128
|
+
/** Minimum similarity threshold for context injection (default: 0.7) */
|
|
129
|
+
similarityThreshold?: number;
|
|
130
|
+
/** Maximum number of decisions to inject (default: 3) */
|
|
131
|
+
maxDecisions?: number;
|
|
132
|
+
/** Maximum conversation turns to keep (default: 5) */
|
|
133
|
+
maxTurns?: number;
|
|
134
|
+
/** Maximum response length for context storage (default: 200) */
|
|
135
|
+
maxResponseLength?: number;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Gateway configuration base
|
|
139
|
+
*/
|
|
140
|
+
export interface GatewayConfig {
|
|
141
|
+
/** Whether the gateway is enabled */
|
|
142
|
+
enabled: boolean;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Discord gateway configuration
|
|
146
|
+
*/
|
|
147
|
+
export interface DiscordGatewayConfig extends GatewayConfig {
|
|
148
|
+
/** Discord bot token */
|
|
149
|
+
token: string;
|
|
150
|
+
/** Guild-specific settings */
|
|
151
|
+
guilds?: Record<string, DiscordGuildConfig>;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Discord guild configuration
|
|
155
|
+
*/
|
|
156
|
+
export interface DiscordGuildConfig {
|
|
157
|
+
/** Channel-specific settings */
|
|
158
|
+
channels?: Record<string, DiscordChannelConfig>;
|
|
159
|
+
/** Default: require mention to respond */
|
|
160
|
+
requireMention?: boolean;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Discord channel configuration
|
|
164
|
+
*/
|
|
165
|
+
export interface DiscordChannelConfig {
|
|
166
|
+
/** Whether mention is required (overrides guild setting) */
|
|
167
|
+
requireMention?: boolean;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Slack gateway configuration
|
|
171
|
+
*/
|
|
172
|
+
export interface SlackGatewayConfig extends GatewayConfig {
|
|
173
|
+
/** Slack bot token */
|
|
174
|
+
botToken: string;
|
|
175
|
+
/** Slack app token (for Socket Mode) */
|
|
176
|
+
appToken: string;
|
|
177
|
+
/** Channel-specific settings */
|
|
178
|
+
channels?: Record<string, SlackChannelConfig>;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Slack channel configuration
|
|
182
|
+
*/
|
|
183
|
+
export interface SlackChannelConfig {
|
|
184
|
+
/** Whether mention is required */
|
|
185
|
+
requireMention?: boolean;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Chatwork gateway configuration
|
|
189
|
+
*/
|
|
190
|
+
export interface ChatworkGatewayConfig extends GatewayConfig {
|
|
191
|
+
/** Chatwork API token */
|
|
192
|
+
apiToken: string;
|
|
193
|
+
/** Room IDs to monitor */
|
|
194
|
+
roomIds?: string[];
|
|
195
|
+
/** Polling interval in milliseconds */
|
|
196
|
+
pollInterval?: number;
|
|
197
|
+
/** Whether mention is required */
|
|
198
|
+
mentionRequired?: boolean;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Gateway event types
|
|
202
|
+
*/
|
|
203
|
+
export type GatewayEventType = 'connected' | 'disconnected' | 'message_received' | 'message_sent' | 'error';
|
|
204
|
+
/**
|
|
205
|
+
* Gateway event
|
|
206
|
+
*/
|
|
207
|
+
export interface GatewayEvent {
|
|
208
|
+
type: GatewayEventType;
|
|
209
|
+
source: MessageSource;
|
|
210
|
+
timestamp: Date;
|
|
211
|
+
data?: unknown;
|
|
212
|
+
error?: Error;
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Gateway event handler
|
|
216
|
+
*/
|
|
217
|
+
export type GatewayEventHandler = (event: GatewayEvent) => void;
|
|
218
|
+
/**
|
|
219
|
+
* Gateway interface that all platform gateways must implement
|
|
220
|
+
*/
|
|
221
|
+
export interface Gateway {
|
|
222
|
+
/** Platform identifier */
|
|
223
|
+
readonly source: MessageSource;
|
|
224
|
+
/** Start the gateway */
|
|
225
|
+
start(): Promise<void>;
|
|
226
|
+
/** Stop the gateway */
|
|
227
|
+
stop(): Promise<void>;
|
|
228
|
+
/** Check if gateway is connected */
|
|
229
|
+
isConnected(): boolean;
|
|
230
|
+
/** Register event handler */
|
|
231
|
+
onEvent(handler: GatewayEventHandler): void;
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Plugin manifest (plugin.json)
|
|
235
|
+
*/
|
|
236
|
+
export interface PluginManifest {
|
|
237
|
+
/** Unique plugin ID */
|
|
238
|
+
id: string;
|
|
239
|
+
/** Display name */
|
|
240
|
+
name: string;
|
|
241
|
+
/** Plugin version */
|
|
242
|
+
version: string;
|
|
243
|
+
/** Description */
|
|
244
|
+
description?: string;
|
|
245
|
+
/** Entry point (relative to plugin directory) */
|
|
246
|
+
main: string;
|
|
247
|
+
/** Plugin type */
|
|
248
|
+
type: 'gateway';
|
|
249
|
+
/** Gateway-specific metadata */
|
|
250
|
+
gateway?: {
|
|
251
|
+
/** Gateway source ID (e.g., 'discord', 'slack') */
|
|
252
|
+
sourceId: string;
|
|
253
|
+
/** Display label */
|
|
254
|
+
label: string;
|
|
255
|
+
/** Config schema (JSON Schema) */
|
|
256
|
+
configSchema?: Record<string, unknown>;
|
|
257
|
+
};
|
|
258
|
+
/** Required dependencies */
|
|
259
|
+
dependencies?: Record<string, string>;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Plugin API provided to plugins
|
|
263
|
+
*/
|
|
264
|
+
export interface PluginApi {
|
|
265
|
+
/** Logger */
|
|
266
|
+
logger: PluginLogger;
|
|
267
|
+
/** Get config for this plugin */
|
|
268
|
+
getConfig<T = unknown>(): T | undefined;
|
|
269
|
+
/** Get agent loop for processing messages */
|
|
270
|
+
getAgentLoop(): AgentLoopInterface;
|
|
271
|
+
/** Register a message handler */
|
|
272
|
+
onMessage(handler: MessageHandler): void;
|
|
273
|
+
/** Send a response to a channel */
|
|
274
|
+
sendResponse(channelId: string, text: string, metadata?: MessageMetadata): Promise<void>;
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Plugin logger interface
|
|
278
|
+
*/
|
|
279
|
+
export interface PluginLogger {
|
|
280
|
+
info(message: string, ...args: unknown[]): void;
|
|
281
|
+
warn(message: string, ...args: unknown[]): void;
|
|
282
|
+
error(message: string, ...args: unknown[]): void;
|
|
283
|
+
debug(message: string, ...args: unknown[]): void;
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Agent loop interface for plugins
|
|
287
|
+
*/
|
|
288
|
+
export interface AgentLoopInterface {
|
|
289
|
+
run(prompt: string): Promise<{
|
|
290
|
+
response: string;
|
|
291
|
+
}>;
|
|
292
|
+
runWithContent(content: ContentBlock[]): Promise<{
|
|
293
|
+
response: string;
|
|
294
|
+
}>;
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Content block for multimodal messages
|
|
298
|
+
*/
|
|
299
|
+
export interface ContentBlock {
|
|
300
|
+
type: 'text' | 'image';
|
|
301
|
+
text?: string;
|
|
302
|
+
source?: {
|
|
303
|
+
type: 'base64';
|
|
304
|
+
media_type: string;
|
|
305
|
+
data: string;
|
|
306
|
+
};
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Message handler function type
|
|
310
|
+
*/
|
|
311
|
+
export type MessageHandler = (message: NormalizedMessage) => Promise<void>;
|
|
312
|
+
/**
|
|
313
|
+
* Gateway plugin registration function
|
|
314
|
+
*/
|
|
315
|
+
export type GatewayPluginRegister = (api: PluginApi) => Gateway | Promise<Gateway>;
|
|
316
|
+
/**
|
|
317
|
+
* Gateway plugin module export
|
|
318
|
+
*/
|
|
319
|
+
export interface GatewayPluginModule {
|
|
320
|
+
/** Plugin ID (optional, uses manifest id if not provided) */
|
|
321
|
+
id?: string;
|
|
322
|
+
/** Plugin display name */
|
|
323
|
+
name?: string;
|
|
324
|
+
/** Registration function */
|
|
325
|
+
register: GatewayPluginRegister;
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Loaded plugin info
|
|
329
|
+
*/
|
|
330
|
+
export interface LoadedPlugin {
|
|
331
|
+
/** Plugin manifest */
|
|
332
|
+
manifest: PluginManifest;
|
|
333
|
+
/** Plugin directory path */
|
|
334
|
+
path: string;
|
|
335
|
+
/** Gateway instance (after registration) */
|
|
336
|
+
gateway?: Gateway;
|
|
337
|
+
/** Is plugin enabled */
|
|
338
|
+
enabled: boolean;
|
|
339
|
+
}
|
|
340
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/gateways/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/gateways/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,iBAAiB,CAAC;AAGhC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,sBAAsB,CAAC"}
|