@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,437 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for Agent Loop Engine
|
|
3
|
+
*
|
|
4
|
+
* Includes types for:
|
|
5
|
+
* - Claude API request/response
|
|
6
|
+
* - Content blocks (text, tool_use, tool_result)
|
|
7
|
+
* - MCP tool definitions and inputs
|
|
8
|
+
* - Agent loop configuration
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Claude API message role
|
|
12
|
+
*/
|
|
13
|
+
export type MessageRole = 'user' | 'assistant';
|
|
14
|
+
/**
|
|
15
|
+
* Content block types in Claude API
|
|
16
|
+
*/
|
|
17
|
+
export type ContentBlockType = 'text' | 'image' | 'document' | 'tool_use' | 'tool_result';
|
|
18
|
+
/**
|
|
19
|
+
* Text content block
|
|
20
|
+
*/
|
|
21
|
+
export interface TextBlock {
|
|
22
|
+
type: 'text';
|
|
23
|
+
text: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Image source for base64 encoded images
|
|
27
|
+
*/
|
|
28
|
+
export interface ImageSourceBase64 {
|
|
29
|
+
type: 'base64';
|
|
30
|
+
media_type: 'image/jpeg' | 'image/png' | 'image/gif' | 'image/webp';
|
|
31
|
+
data: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Image content block for multimodal input
|
|
35
|
+
*/
|
|
36
|
+
export interface ImageBlock {
|
|
37
|
+
type: 'image';
|
|
38
|
+
source: ImageSourceBase64;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Document content block for document understanding
|
|
42
|
+
*/
|
|
43
|
+
export interface DocumentBlock {
|
|
44
|
+
type: 'document';
|
|
45
|
+
source: {
|
|
46
|
+
type: 'base64';
|
|
47
|
+
media_type: string;
|
|
48
|
+
data: string;
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Tool use content block (Claude requesting tool execution)
|
|
53
|
+
*/
|
|
54
|
+
export interface ToolUseBlock {
|
|
55
|
+
type: 'tool_use';
|
|
56
|
+
id: string;
|
|
57
|
+
name: string;
|
|
58
|
+
input: Record<string, unknown>;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Tool result content block (response to tool_use)
|
|
62
|
+
*/
|
|
63
|
+
export interface ToolResultBlock {
|
|
64
|
+
type: 'tool_result';
|
|
65
|
+
tool_use_id: string;
|
|
66
|
+
content: string;
|
|
67
|
+
is_error?: boolean;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Union type for all content blocks
|
|
71
|
+
*/
|
|
72
|
+
export type ContentBlock = TextBlock | ImageBlock | DocumentBlock | ToolUseBlock | ToolResultBlock;
|
|
73
|
+
/**
|
|
74
|
+
* Message in conversation history
|
|
75
|
+
*/
|
|
76
|
+
export interface Message {
|
|
77
|
+
role: MessageRole;
|
|
78
|
+
content: ContentBlock[] | string;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Stop reasons from Claude API
|
|
82
|
+
*/
|
|
83
|
+
export type StopReason = 'end_turn' | 'tool_use' | 'max_tokens' | 'stop_sequence';
|
|
84
|
+
/**
|
|
85
|
+
* Usage information from Claude API
|
|
86
|
+
*/
|
|
87
|
+
export interface Usage {
|
|
88
|
+
input_tokens: number;
|
|
89
|
+
output_tokens: number;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Claude API response
|
|
93
|
+
*/
|
|
94
|
+
export interface ClaudeResponse {
|
|
95
|
+
id: string;
|
|
96
|
+
type: 'message';
|
|
97
|
+
role: 'assistant';
|
|
98
|
+
content: ContentBlock[];
|
|
99
|
+
model: string;
|
|
100
|
+
stop_reason: StopReason;
|
|
101
|
+
stop_sequence: string | null;
|
|
102
|
+
usage: Usage;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Claude API error response
|
|
106
|
+
*/
|
|
107
|
+
export interface ClaudeErrorResponse {
|
|
108
|
+
type: 'error';
|
|
109
|
+
error: {
|
|
110
|
+
type: string;
|
|
111
|
+
message: string;
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Claude API request body
|
|
116
|
+
*/
|
|
117
|
+
export interface ClaudeRequest {
|
|
118
|
+
model: string;
|
|
119
|
+
max_tokens: number;
|
|
120
|
+
system?: string;
|
|
121
|
+
messages: Message[];
|
|
122
|
+
tools?: ToolDefinition[];
|
|
123
|
+
stream?: boolean;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Streaming event types
|
|
127
|
+
*/
|
|
128
|
+
export type StreamEventType = 'message_start' | 'content_block_start' | 'content_block_delta' | 'content_block_stop' | 'message_delta' | 'message_stop';
|
|
129
|
+
/**
|
|
130
|
+
* Content block delta for streaming
|
|
131
|
+
*/
|
|
132
|
+
export interface ContentBlockDelta {
|
|
133
|
+
type: 'text_delta' | 'input_json_delta';
|
|
134
|
+
text?: string;
|
|
135
|
+
partial_json?: string;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Streaming callbacks for real-time updates
|
|
139
|
+
*/
|
|
140
|
+
export interface StreamCallbacks {
|
|
141
|
+
/** Called when text delta arrives (OpenClaw-style, 150ms throttled by caller) */
|
|
142
|
+
onDelta?: (text: string) => void;
|
|
143
|
+
/** Called when a tool use starts */
|
|
144
|
+
onToolUse?: (toolName: string, input: Record<string, unknown>) => void;
|
|
145
|
+
/** Called when final message arrives */
|
|
146
|
+
onFinal?: (response: ClaudeResponse) => void;
|
|
147
|
+
/** Called on error */
|
|
148
|
+
onError?: (error: Error) => void;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* JSON Schema for tool input
|
|
152
|
+
*/
|
|
153
|
+
export interface ToolInputSchema {
|
|
154
|
+
type: 'object';
|
|
155
|
+
properties: Record<string, {
|
|
156
|
+
type: string;
|
|
157
|
+
description?: string;
|
|
158
|
+
enum?: string[];
|
|
159
|
+
items?: {
|
|
160
|
+
type: string;
|
|
161
|
+
};
|
|
162
|
+
minimum?: number;
|
|
163
|
+
maximum?: number;
|
|
164
|
+
}>;
|
|
165
|
+
required?: string[];
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Tool definition for Claude API
|
|
169
|
+
*/
|
|
170
|
+
export interface ToolDefinition {
|
|
171
|
+
name: string;
|
|
172
|
+
description: string;
|
|
173
|
+
input_schema: ToolInputSchema;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Input for save tool (decision)
|
|
177
|
+
*/
|
|
178
|
+
export interface SaveDecisionInput {
|
|
179
|
+
type: 'decision';
|
|
180
|
+
topic: string;
|
|
181
|
+
decision: string;
|
|
182
|
+
reasoning: string;
|
|
183
|
+
confidence?: number;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Input for save tool (checkpoint)
|
|
187
|
+
*/
|
|
188
|
+
export interface SaveCheckpointInput {
|
|
189
|
+
type: 'checkpoint';
|
|
190
|
+
summary: string;
|
|
191
|
+
next_steps?: string;
|
|
192
|
+
open_files?: string[];
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Union type for save tool input
|
|
196
|
+
*/
|
|
197
|
+
export type SaveInput = SaveDecisionInput | SaveCheckpointInput;
|
|
198
|
+
/**
|
|
199
|
+
* Input for search tool
|
|
200
|
+
*/
|
|
201
|
+
export interface SearchInput {
|
|
202
|
+
query?: string;
|
|
203
|
+
type?: 'all' | 'decision' | 'checkpoint';
|
|
204
|
+
limit?: number;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Input for update tool
|
|
208
|
+
*/
|
|
209
|
+
export interface UpdateInput {
|
|
210
|
+
id: string;
|
|
211
|
+
outcome: 'success' | 'failed' | 'partial' | 'SUCCESS' | 'FAILED' | 'PARTIAL';
|
|
212
|
+
reason?: string;
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Input for load_checkpoint tool (no input required)
|
|
216
|
+
*/
|
|
217
|
+
export type LoadCheckpointInput = Record<string, never>;
|
|
218
|
+
/**
|
|
219
|
+
* Input for translate_image tool
|
|
220
|
+
*/
|
|
221
|
+
export interface TranslateImageInput {
|
|
222
|
+
/** Base64-encoded image data */
|
|
223
|
+
image_data: string;
|
|
224
|
+
/** MIME type (image/jpeg, image/png, etc.) */
|
|
225
|
+
media_type: string;
|
|
226
|
+
/** Source language (auto-detect if not provided) */
|
|
227
|
+
source_lang?: string;
|
|
228
|
+
/** Target language (default: Korean) */
|
|
229
|
+
target_lang?: string;
|
|
230
|
+
/** Discord channel ID for screenshot delivery */
|
|
231
|
+
channel_id?: string;
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Result from translate_image tool
|
|
235
|
+
*/
|
|
236
|
+
export interface TranslateImageResult {
|
|
237
|
+
/** Whether translation succeeded */
|
|
238
|
+
success: boolean;
|
|
239
|
+
/** Translated text content */
|
|
240
|
+
translation?: string;
|
|
241
|
+
/** Path to generated HTML file */
|
|
242
|
+
html_path?: string;
|
|
243
|
+
/** Path to screenshot (if Discord channel provided) */
|
|
244
|
+
screenshot_path?: string;
|
|
245
|
+
/** Error message if failed */
|
|
246
|
+
error?: string;
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Union type for all MCP tool inputs
|
|
250
|
+
*/
|
|
251
|
+
export type GatewayToolInput = SaveInput | SearchInput | UpdateInput | LoadCheckpointInput | TranslateImageInput;
|
|
252
|
+
/**
|
|
253
|
+
* MAMA tool names (Gateway tools, NOT MCP protocol)
|
|
254
|
+
*/
|
|
255
|
+
export type GatewayToolName = 'mama_save' | 'mama_search' | 'mama_update' | 'mama_load_checkpoint' | 'Read' | 'Write' | 'Bash' | 'discord_send' | 'translate_image' | 'save_integration_token';
|
|
256
|
+
/**
|
|
257
|
+
* Save tool result
|
|
258
|
+
*/
|
|
259
|
+
export interface SaveResult {
|
|
260
|
+
success: boolean;
|
|
261
|
+
id?: string;
|
|
262
|
+
type?: 'decision' | 'checkpoint';
|
|
263
|
+
message?: string;
|
|
264
|
+
similar_decisions?: Array<{
|
|
265
|
+
id: string;
|
|
266
|
+
topic: string;
|
|
267
|
+
decision: string;
|
|
268
|
+
similarity: number;
|
|
269
|
+
created_at: string;
|
|
270
|
+
}>;
|
|
271
|
+
warning?: string;
|
|
272
|
+
collaboration_hint?: string;
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Search result item
|
|
276
|
+
*/
|
|
277
|
+
export interface SearchResultItem {
|
|
278
|
+
id: string;
|
|
279
|
+
topic?: string;
|
|
280
|
+
decision?: string;
|
|
281
|
+
reasoning?: string;
|
|
282
|
+
summary?: string;
|
|
283
|
+
similarity?: number;
|
|
284
|
+
created_at: string;
|
|
285
|
+
type: 'decision' | 'checkpoint';
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Search tool result
|
|
289
|
+
*/
|
|
290
|
+
export interface SearchResult {
|
|
291
|
+
success: boolean;
|
|
292
|
+
results: SearchResultItem[];
|
|
293
|
+
count: number;
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Update tool result
|
|
297
|
+
*/
|
|
298
|
+
export interface UpdateResult {
|
|
299
|
+
success: boolean;
|
|
300
|
+
message?: string;
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Load checkpoint result
|
|
304
|
+
*/
|
|
305
|
+
export interface LoadCheckpointResult {
|
|
306
|
+
success: boolean;
|
|
307
|
+
summary?: string;
|
|
308
|
+
next_steps?: string;
|
|
309
|
+
open_files?: string[];
|
|
310
|
+
message?: string;
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* Union type for all MCP tool results
|
|
314
|
+
*/
|
|
315
|
+
export type GatewayToolResult = SaveResult | SearchResult | UpdateResult | LoadCheckpointResult | TranslateImageResult;
|
|
316
|
+
/**
|
|
317
|
+
* Streaming context for image-based requests
|
|
318
|
+
*/
|
|
319
|
+
export interface StreamingContext {
|
|
320
|
+
useStreaming: boolean;
|
|
321
|
+
placeholderMessage?: any;
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* Agent loop configuration options
|
|
325
|
+
*/
|
|
326
|
+
export interface AgentLoopOptions {
|
|
327
|
+
/** System prompt for Claude */
|
|
328
|
+
systemPrompt?: string;
|
|
329
|
+
/** Maximum number of conversation turns (default: 10) */
|
|
330
|
+
maxTurns?: number;
|
|
331
|
+
/** Maximum tokens per response (default: 4096) */
|
|
332
|
+
maxTokens?: number;
|
|
333
|
+
/** Claude model to use (default: claude-sonnet-4-20250514) */
|
|
334
|
+
model?: string;
|
|
335
|
+
/** Callback for each turn */
|
|
336
|
+
onTurn?: (turn: TurnInfo) => void;
|
|
337
|
+
/** Callback for tool execution */
|
|
338
|
+
onToolUse?: (toolName: string, input: unknown, result: unknown) => void;
|
|
339
|
+
/** Session key for lane-based concurrency (e.g., "discord:channel:user") */
|
|
340
|
+
sessionKey?: string;
|
|
341
|
+
/** Enable lane-based concurrency (default: false for backward compatibility) */
|
|
342
|
+
useLanes?: boolean;
|
|
343
|
+
/** Disable auto-recall memory injection (for skill execution) */
|
|
344
|
+
disableAutoRecall?: boolean;
|
|
345
|
+
/** Message source for session pool (e.g., "discord", "slack", "viewer") */
|
|
346
|
+
source?: string;
|
|
347
|
+
/** Channel ID for session pool */
|
|
348
|
+
channelId?: string;
|
|
349
|
+
}
|
|
350
|
+
/**
|
|
351
|
+
* Information about each turn in the agent loop
|
|
352
|
+
*/
|
|
353
|
+
export interface TurnInfo {
|
|
354
|
+
turn: number;
|
|
355
|
+
role: MessageRole;
|
|
356
|
+
content: ContentBlock[];
|
|
357
|
+
stopReason?: StopReason;
|
|
358
|
+
usage?: Usage;
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Agent loop run result
|
|
362
|
+
*/
|
|
363
|
+
export interface AgentLoopResult {
|
|
364
|
+
/** Final text response from Claude */
|
|
365
|
+
response: string;
|
|
366
|
+
/** Total number of turns */
|
|
367
|
+
turns: number;
|
|
368
|
+
/** Full conversation history */
|
|
369
|
+
history: Message[];
|
|
370
|
+
/** Total token usage */
|
|
371
|
+
totalUsage: {
|
|
372
|
+
input_tokens: number;
|
|
373
|
+
output_tokens: number;
|
|
374
|
+
};
|
|
375
|
+
/** Stop reason for the final turn */
|
|
376
|
+
stopReason: StopReason;
|
|
377
|
+
}
|
|
378
|
+
/**
|
|
379
|
+
* Error codes for agent loop errors
|
|
380
|
+
*/
|
|
381
|
+
export type AgentErrorCode = 'API_ERROR' | 'CLI_ERROR' | 'AUTH_ERROR' | 'RATE_LIMIT' | 'MAX_TOKENS' | 'MAX_TURNS' | 'NETWORK_ERROR' | 'TOOL_ERROR' | 'UNKNOWN_TOOL' | 'INVALID_RESPONSE';
|
|
382
|
+
/**
|
|
383
|
+
* Custom error class for agent loop errors
|
|
384
|
+
*/
|
|
385
|
+
export declare class AgentError extends Error {
|
|
386
|
+
readonly code: AgentErrorCode;
|
|
387
|
+
readonly cause?: Error | undefined;
|
|
388
|
+
readonly retryable: boolean;
|
|
389
|
+
constructor(message: string, code: AgentErrorCode, cause?: Error | undefined, retryable?: boolean);
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Claude client configuration options
|
|
393
|
+
*/
|
|
394
|
+
export interface ClaudeClientOptions {
|
|
395
|
+
/** Custom fetch function for testing */
|
|
396
|
+
fetchFn?: typeof fetch;
|
|
397
|
+
/** Maximum retry attempts (default: 3) */
|
|
398
|
+
maxRetries?: number;
|
|
399
|
+
/** Base delay for exponential backoff in ms (default: 1000) */
|
|
400
|
+
baseDelayMs?: number;
|
|
401
|
+
/** Maximum delay between retries in ms (default: 30000) */
|
|
402
|
+
maxDelayMs?: number;
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* Claude API headers
|
|
406
|
+
*/
|
|
407
|
+
export type ClaudeHeaders = Record<string, string>;
|
|
408
|
+
/**
|
|
409
|
+
* MCP Executor configuration options
|
|
410
|
+
*/
|
|
411
|
+
export interface GatewayToolExecutorOptions {
|
|
412
|
+
/** Database path for MAMA (default: ~/.claude/mama-memory.db) */
|
|
413
|
+
mamaDbPath?: string;
|
|
414
|
+
/** Session store for checkpoint conversation access */
|
|
415
|
+
sessionStore?: any;
|
|
416
|
+
/** Custom MAMA API instance for testing */
|
|
417
|
+
mamaApi?: MAMAApiInterface;
|
|
418
|
+
}
|
|
419
|
+
/**
|
|
420
|
+
* Interface for MAMA API (for dependency injection)
|
|
421
|
+
*/
|
|
422
|
+
export interface MAMAApiInterface {
|
|
423
|
+
save(input: SaveDecisionInput | Omit<SaveCheckpointInput, 'type'>): Promise<SaveResult>;
|
|
424
|
+
saveCheckpoint(summary: string, openFiles: string[], nextSteps: string, recentConversation?: any[]): Promise<SaveResult>;
|
|
425
|
+
listDecisions(options?: {
|
|
426
|
+
limit?: number;
|
|
427
|
+
}): Promise<unknown[]>;
|
|
428
|
+
suggest(query: string, options?: {
|
|
429
|
+
limit?: number;
|
|
430
|
+
}): Promise<SearchResult>;
|
|
431
|
+
updateOutcome(id: string, input: {
|
|
432
|
+
outcome: string;
|
|
433
|
+
failure_reason?: string;
|
|
434
|
+
}): Promise<UpdateResult>;
|
|
435
|
+
loadCheckpoint(): Promise<LoadCheckpointResult>;
|
|
436
|
+
}
|
|
437
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agent/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Type definitions for Agent Loop Engine
|
|
4
|
+
*
|
|
5
|
+
* Includes types for:
|
|
6
|
+
* - Claude API request/response
|
|
7
|
+
* - Content blocks (text, tool_use, tool_result)
|
|
8
|
+
* - MCP tool definitions and inputs
|
|
9
|
+
* - Agent loop configuration
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.AgentError = void 0;
|
|
13
|
+
/**
|
|
14
|
+
* Custom error class for agent loop errors
|
|
15
|
+
*/
|
|
16
|
+
class AgentError extends Error {
|
|
17
|
+
code;
|
|
18
|
+
cause;
|
|
19
|
+
retryable;
|
|
20
|
+
constructor(message, code, cause, retryable = false) {
|
|
21
|
+
super(message);
|
|
22
|
+
this.code = code;
|
|
23
|
+
this.cause = cause;
|
|
24
|
+
this.retryable = retryable;
|
|
25
|
+
this.name = 'AgentError';
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.AgentError = AgentError;
|
|
29
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/agent/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAgeH;;GAEG;AACH,MAAa,UAAW,SAAQ,KAAK;IAGjB;IACA;IACA;IAJlB,YACE,OAAe,EACC,IAAoB,EACpB,KAAa,EACb,YAAqB,KAAK;QAE1C,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,SAAI,GAAJ,IAAI,CAAgB;QACpB,UAAK,GAAL,KAAK,CAAQ;QACb,cAAS,GAAT,SAAS,CAAiB;QAG1C,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC3B,CAAC;CACF;AAVD,gCAUC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cron API router for /api/cron endpoints
|
|
3
|
+
*/
|
|
4
|
+
import { Router } from 'express';
|
|
5
|
+
import { CronScheduler, ScheduleStore } from '../scheduler/index.js';
|
|
6
|
+
import { type ExecutionLog } from './types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Execution log store interface (to be implemented by S6)
|
|
9
|
+
*/
|
|
10
|
+
export interface ExecutionLogStore {
|
|
11
|
+
/** Get logs for a specific job */
|
|
12
|
+
getLogs(jobId: string, limit: number, offset: number): Promise<ExecutionLog[]>;
|
|
13
|
+
/** Add a new log entry */
|
|
14
|
+
addLog(jobId: string, log: ExecutionLog): Promise<void>;
|
|
15
|
+
/** Update an existing log entry */
|
|
16
|
+
updateLog(logId: string, updates: Partial<ExecutionLog>): Promise<void>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* In-memory execution log store (placeholder until S6)
|
|
20
|
+
*/
|
|
21
|
+
export declare class InMemoryLogStore implements ExecutionLogStore {
|
|
22
|
+
private logs;
|
|
23
|
+
getLogs(jobId: string, limit: number, offset: number): Promise<ExecutionLog[]>;
|
|
24
|
+
addLog(jobId: string, log: ExecutionLog): Promise<void>;
|
|
25
|
+
updateLog(logId: string, updates: Partial<ExecutionLog>): Promise<void>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Adapter to use ScheduleStore as ExecutionLogStore
|
|
29
|
+
*
|
|
30
|
+
* Wraps ScheduleStore to provide ExecutionLogStore interface.
|
|
31
|
+
* This allows the API handlers to use persistent SQLite storage.
|
|
32
|
+
*/
|
|
33
|
+
export declare class ScheduleStoreAdapter implements ExecutionLogStore {
|
|
34
|
+
private store;
|
|
35
|
+
constructor(store: ScheduleStore);
|
|
36
|
+
getLogs(jobId: string, limit: number, offset: number): Promise<ExecutionLog[]>;
|
|
37
|
+
addLog(jobId: string, log: ExecutionLog): Promise<void>;
|
|
38
|
+
updateLog(logId: string, updates: Partial<ExecutionLog>): Promise<void>;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Create cron API router
|
|
42
|
+
*/
|
|
43
|
+
export declare function createCronRouter(scheduler: CronScheduler, logStore?: ExecutionLogStore): Router;
|
|
44
|
+
//# sourceMappingURL=cron-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cron-handler.d.ts","sourceRoot":"","sources":["../../src/api/cron-handler.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAML,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC/E,0BAA0B;IAC1B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,mCAAmC;IACnC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;AAED;;GAEG;AACH,qBAAa,gBAAiB,YAAW,iBAAiB;IACxD,OAAO,CAAC,IAAI,CAA0C;IAEhD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAK9E,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvD,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAS9E;AAED;;;;;GAKG;AACH,qBAAa,oBAAqB,YAAW,iBAAiB;IAChD,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,aAAa;IAElC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAY9E,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBvD,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAU9E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,aAAa,EACxB,QAAQ,GAAE,iBAA0C,GACnD,MAAM,CAqKR"}
|