claudia-orchestrator 0.1.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/LICENSE +201 -0
- package/README.md +109 -0
- package/dist/cli-parser.d.ts +11 -0
- package/dist/cli-parser.d.ts.map +1 -0
- package/dist/cli-parser.js +57 -0
- package/dist/cli-parser.js.map +1 -0
- package/dist/cui-server.d.ts +69 -0
- package/dist/cui-server.d.ts.map +1 -0
- package/dist/cui-server.js +705 -0
- package/dist/cui-server.js.map +1 -0
- package/dist/mcp-server/claudia-tools.d.ts +15 -0
- package/dist/mcp-server/claudia-tools.d.ts.map +1 -0
- package/dist/mcp-server/claudia-tools.js +366 -0
- package/dist/mcp-server/claudia-tools.js.map +1 -0
- package/dist/mcp-server/index.d.ts +3 -0
- package/dist/mcp-server/index.d.ts.map +1 -0
- package/dist/mcp-server/index.js +176 -0
- package/dist/mcp-server/index.js.map +1 -0
- package/dist/middleware/auth.d.ts +18 -0
- package/dist/middleware/auth.d.ts.map +1 -0
- package/dist/middleware/auth.js +136 -0
- package/dist/middleware/auth.js.map +1 -0
- package/dist/middleware/cors-setup.d.ts +7 -0
- package/dist/middleware/cors-setup.d.ts.map +1 -0
- package/dist/middleware/cors-setup.js +8 -0
- package/dist/middleware/cors-setup.js.map +1 -0
- package/dist/middleware/error-handler.d.ts +4 -0
- package/dist/middleware/error-handler.d.ts.map +1 -0
- package/dist/middleware/error-handler.js +27 -0
- package/dist/middleware/error-handler.js.map +1 -0
- package/dist/middleware/query-parser.d.ts +11 -0
- package/dist/middleware/query-parser.d.ts.map +1 -0
- package/dist/middleware/query-parser.js +68 -0
- package/dist/middleware/query-parser.js.map +1 -0
- package/dist/middleware/request-logger.d.ts +4 -0
- package/dist/middleware/request-logger.d.ts.map +1 -0
- package/dist/middleware/request-logger.js +29 -0
- package/dist/middleware/request-logger.js.map +1 -0
- package/dist/process-daemon/index.d.ts +14 -0
- package/dist/process-daemon/index.d.ts.map +1 -0
- package/dist/process-daemon/index.js +51 -0
- package/dist/process-daemon/index.js.map +1 -0
- package/dist/process-daemon/process-daemon.d.ts +78 -0
- package/dist/process-daemon/process-daemon.d.ts.map +1 -0
- package/dist/process-daemon/process-daemon.js +568 -0
- package/dist/process-daemon/process-daemon.js.map +1 -0
- package/dist/process-daemon/process-manager-client.d.ts +108 -0
- package/dist/process-daemon/process-manager-client.d.ts.map +1 -0
- package/dist/process-daemon/process-manager-client.js +314 -0
- package/dist/process-daemon/process-manager-client.js.map +1 -0
- package/dist/process-daemon/process-manager-interface.d.ts +47 -0
- package/dist/process-daemon/process-manager-interface.d.ts.map +1 -0
- package/dist/process-daemon/process-manager-interface.js +8 -0
- package/dist/process-daemon/process-manager-interface.js.map +1 -0
- package/dist/process-daemon/test-daemon.d.ts +12 -0
- package/dist/process-daemon/test-daemon.d.ts.map +1 -0
- package/dist/process-daemon/test-daemon.js +81 -0
- package/dist/process-daemon/test-daemon.js.map +1 -0
- package/dist/process-daemon/types.d.ts +85 -0
- package/dist/process-daemon/types.d.ts.map +1 -0
- package/dist/process-daemon/types.js +8 -0
- package/dist/process-daemon/types.js.map +1 -0
- package/dist/routes/claudia.routes.d.ts +10 -0
- package/dist/routes/claudia.routes.d.ts.map +1 -0
- package/dist/routes/claudia.routes.js +123 -0
- package/dist/routes/claudia.routes.js.map +1 -0
- package/dist/routes/config.routes.d.ts +4 -0
- package/dist/routes/config.routes.d.ts.map +1 -0
- package/dist/routes/config.routes.js +27 -0
- package/dist/routes/config.routes.js.map +1 -0
- package/dist/routes/conversation.routes.d.ts +8 -0
- package/dist/routes/conversation.routes.d.ts.map +1 -0
- package/dist/routes/conversation.routes.js +870 -0
- package/dist/routes/conversation.routes.js.map +1 -0
- package/dist/routes/filesystem.routes.d.ts +4 -0
- package/dist/routes/filesystem.routes.d.ts.map +1 -0
- package/dist/routes/filesystem.routes.js +86 -0
- package/dist/routes/filesystem.routes.js.map +1 -0
- package/dist/routes/gemini.routes.d.ts +4 -0
- package/dist/routes/gemini.routes.d.ts.map +1 -0
- package/dist/routes/gemini.routes.js +93 -0
- package/dist/routes/gemini.routes.js.map +1 -0
- package/dist/routes/insights.routes.d.ts +17 -0
- package/dist/routes/insights.routes.d.ts.map +1 -0
- package/dist/routes/insights.routes.js +417 -0
- package/dist/routes/insights.routes.js.map +1 -0
- package/dist/routes/license.routes.d.ts +3 -0
- package/dist/routes/license.routes.d.ts.map +1 -0
- package/dist/routes/license.routes.js +111 -0
- package/dist/routes/license.routes.js.map +1 -0
- package/dist/routes/log.routes.d.ts +3 -0
- package/dist/routes/log.routes.d.ts.map +1 -0
- package/dist/routes/log.routes.js +65 -0
- package/dist/routes/log.routes.js.map +1 -0
- package/dist/routes/notifications.routes.d.ts +4 -0
- package/dist/routes/notifications.routes.d.ts.map +1 -0
- package/dist/routes/notifications.routes.js +71 -0
- package/dist/routes/notifications.routes.js.map +1 -0
- package/dist/routes/permission.routes.d.ts +4 -0
- package/dist/routes/permission.routes.d.ts.map +1 -0
- package/dist/routes/permission.routes.js +116 -0
- package/dist/routes/permission.routes.js.map +1 -0
- package/dist/routes/question.routes.d.ts +8 -0
- package/dist/routes/question.routes.d.ts.map +1 -0
- package/dist/routes/question.routes.js +82 -0
- package/dist/routes/question.routes.js.map +1 -0
- package/dist/routes/streaming.routes.d.ts +4 -0
- package/dist/routes/streaming.routes.d.ts.map +1 -0
- package/dist/routes/streaming.routes.js +28 -0
- package/dist/routes/streaming.routes.js.map +1 -0
- package/dist/routes/system.routes.d.ts +5 -0
- package/dist/routes/system.routes.d.ts.map +1 -0
- package/dist/routes/system.routes.js +103 -0
- package/dist/routes/system.routes.js.map +1 -0
- package/dist/routes/working-directories.routes.d.ts +4 -0
- package/dist/routes/working-directories.routes.d.ts.map +1 -0
- package/dist/routes/working-directories.routes.js +25 -0
- package/dist/routes/working-directories.routes.js.map +1 -0
- package/dist/server.d.ts +3 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +34 -0
- package/dist/server.js.map +1 -0
- package/dist/services/ToolMetricsService.d.ts +53 -0
- package/dist/services/ToolMetricsService.d.ts.map +1 -0
- package/dist/services/ToolMetricsService.js +230 -0
- package/dist/services/ToolMetricsService.js.map +1 -0
- package/dist/services/anthropic-service.d.ts +186 -0
- package/dist/services/anthropic-service.d.ts.map +1 -0
- package/dist/services/anthropic-service.js +1132 -0
- package/dist/services/anthropic-service.js.map +1 -0
- package/dist/services/claude-history-reader.d.ts +126 -0
- package/dist/services/claude-history-reader.d.ts.map +1 -0
- package/dist/services/claude-history-reader.js +717 -0
- package/dist/services/claude-history-reader.js.map +1 -0
- package/dist/services/claude-process-manager.d.ts +108 -0
- package/dist/services/claude-process-manager.d.ts.map +1 -0
- package/dist/services/claude-process-manager.js +909 -0
- package/dist/services/claude-process-manager.js.map +1 -0
- package/dist/services/claude-router-service.d.ts +19 -0
- package/dist/services/claude-router-service.d.ts.map +1 -0
- package/dist/services/claude-router-service.js +160 -0
- package/dist/services/claude-router-service.js.map +1 -0
- package/dist/services/claudia-service.d.ts +77 -0
- package/dist/services/claudia-service.d.ts.map +1 -0
- package/dist/services/claudia-service.js +194 -0
- package/dist/services/claudia-service.js.map +1 -0
- package/dist/services/commands-service.d.ts +18 -0
- package/dist/services/commands-service.d.ts.map +1 -0
- package/dist/services/commands-service.js +76 -0
- package/dist/services/commands-service.js.map +1 -0
- package/dist/services/config-service.d.ts +68 -0
- package/dist/services/config-service.d.ts.map +1 -0
- package/dist/services/config-service.js +429 -0
- package/dist/services/config-service.js.map +1 -0
- package/dist/services/conversation-cache.d.ts +86 -0
- package/dist/services/conversation-cache.d.ts.map +1 -0
- package/dist/services/conversation-cache.js +235 -0
- package/dist/services/conversation-cache.js.map +1 -0
- package/dist/services/conversation-status-manager.d.ts +98 -0
- package/dist/services/conversation-status-manager.d.ts.map +1 -0
- package/dist/services/conversation-status-manager.js +295 -0
- package/dist/services/conversation-status-manager.js.map +1 -0
- package/dist/services/cost-tracker.d.ts +87 -0
- package/dist/services/cost-tracker.d.ts.map +1 -0
- package/dist/services/cost-tracker.js +335 -0
- package/dist/services/cost-tracker.js.map +1 -0
- package/dist/services/file-system-service.d.ts +61 -0
- package/dist/services/file-system-service.d.ts.map +1 -0
- package/dist/services/file-system-service.js +348 -0
- package/dist/services/file-system-service.js.map +1 -0
- package/dist/services/gemini-service.d.ts +72 -0
- package/dist/services/gemini-service.d.ts.map +1 -0
- package/dist/services/gemini-service.js +431 -0
- package/dist/services/gemini-service.js.map +1 -0
- package/dist/services/insight-queue.d.ts +99 -0
- package/dist/services/insight-queue.d.ts.map +1 -0
- package/dist/services/insight-queue.js +277 -0
- package/dist/services/insight-queue.js.map +1 -0
- package/dist/services/insights-service.d.ts +102 -0
- package/dist/services/insights-service.d.ts.map +1 -0
- package/dist/services/insights-service.js +1152 -0
- package/dist/services/insights-service.js.map +1 -0
- package/dist/services/json-lines-parser.d.ts +19 -0
- package/dist/services/json-lines-parser.d.ts.map +1 -0
- package/dist/services/json-lines-parser.js +56 -0
- package/dist/services/json-lines-parser.js.map +1 -0
- package/dist/services/license-service.d.ts +69 -0
- package/dist/services/license-service.d.ts.map +1 -0
- package/dist/services/license-service.js +330 -0
- package/dist/services/license-service.js.map +1 -0
- package/dist/services/log-formatter.d.ts +5 -0
- package/dist/services/log-formatter.d.ts.map +1 -0
- package/dist/services/log-formatter.js +77 -0
- package/dist/services/log-formatter.js.map +1 -0
- package/dist/services/log-stream-buffer.d.ts +11 -0
- package/dist/services/log-stream-buffer.d.ts.map +1 -0
- package/dist/services/log-stream-buffer.js +36 -0
- package/dist/services/log-stream-buffer.js.map +1 -0
- package/dist/services/logger.d.ts +71 -0
- package/dist/services/logger.d.ts.map +1 -0
- package/dist/services/logger.js +215 -0
- package/dist/services/logger.js.map +1 -0
- package/dist/services/mcp-config-generator.d.ts +32 -0
- package/dist/services/mcp-config-generator.d.ts.map +1 -0
- package/dist/services/mcp-config-generator.js +126 -0
- package/dist/services/mcp-config-generator.js.map +1 -0
- package/dist/services/message-filter.d.ts +22 -0
- package/dist/services/message-filter.d.ts.map +1 -0
- package/dist/services/message-filter.js +57 -0
- package/dist/services/message-filter.js.map +1 -0
- package/dist/services/notification-service.d.ts +45 -0
- package/dist/services/notification-service.d.ts.map +1 -0
- package/dist/services/notification-service.js +184 -0
- package/dist/services/notification-service.js.map +1 -0
- package/dist/services/permission-tracker.d.ts +67 -0
- package/dist/services/permission-tracker.d.ts.map +1 -0
- package/dist/services/permission-tracker.js +161 -0
- package/dist/services/permission-tracker.js.map +1 -0
- package/dist/services/process-manager-factory.d.ts +81 -0
- package/dist/services/process-manager-factory.d.ts.map +1 -0
- package/dist/services/process-manager-factory.js +211 -0
- package/dist/services/process-manager-factory.js.map +1 -0
- package/dist/services/question-tracker.d.ts +47 -0
- package/dist/services/question-tracker.d.ts.map +1 -0
- package/dist/services/question-tracker.js +105 -0
- package/dist/services/question-tracker.js.map +1 -0
- package/dist/services/session-activity-watcher.d.ts +33 -0
- package/dist/services/session-activity-watcher.d.ts.map +1 -0
- package/dist/services/session-activity-watcher.js +194 -0
- package/dist/services/session-activity-watcher.js.map +1 -0
- package/dist/services/session-info-service.d.ts +228 -0
- package/dist/services/session-info-service.d.ts.map +1 -0
- package/dist/services/session-info-service.js +920 -0
- package/dist/services/session-info-service.js.map +1 -0
- package/dist/services/session-insights-service.d.ts +119 -0
- package/dist/services/session-insights-service.d.ts.map +1 -0
- package/dist/services/session-insights-service.js +889 -0
- package/dist/services/session-insights-service.js.map +1 -0
- package/dist/services/stream-manager.d.ts +62 -0
- package/dist/services/stream-manager.d.ts.map +1 -0
- package/dist/services/stream-manager.js +239 -0
- package/dist/services/stream-manager.js.map +1 -0
- package/dist/services/web-push-service.d.ts +48 -0
- package/dist/services/web-push-service.d.ts.map +1 -0
- package/dist/services/web-push-service.js +186 -0
- package/dist/services/web-push-service.js.map +1 -0
- package/dist/services/working-directories-service.d.ts +19 -0
- package/dist/services/working-directories-service.d.ts.map +1 -0
- package/dist/services/working-directories-service.js +103 -0
- package/dist/services/working-directories-service.js.map +1 -0
- package/dist/types/config.d.ts +111 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +14 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/express.d.ts +5 -0
- package/dist/types/express.d.ts.map +1 -0
- package/dist/types/express.js +2 -0
- package/dist/types/express.js.map +1 -0
- package/dist/types/index.d.ts +325 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +18 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/insights.d.ts +99 -0
- package/dist/types/insights.d.ts.map +1 -0
- package/dist/types/insights.js +7 -0
- package/dist/types/insights.js.map +1 -0
- package/dist/types/license.d.ts +70 -0
- package/dist/types/license.d.ts.map +1 -0
- package/dist/types/license.js +5 -0
- package/dist/types/license.js.map +1 -0
- package/dist/types/router-config.d.ts +13 -0
- package/dist/types/router-config.d.ts.map +1 -0
- package/dist/types/router-config.js +2 -0
- package/dist/types/router-config.js.map +1 -0
- package/dist/utils/constants.d.ts +26 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/constants.js +28 -0
- package/dist/utils/constants.js.map +1 -0
- package/dist/utils/machine-id.d.ts +7 -0
- package/dist/utils/machine-id.d.ts.map +1 -0
- package/dist/utils/machine-id.js +76 -0
- package/dist/utils/machine-id.js.map +1 -0
- package/dist/utils/server-startup.d.ts +13 -0
- package/dist/utils/server-startup.d.ts.map +1 -0
- package/dist/utils/server-startup.js +20 -0
- package/dist/utils/server-startup.js.map +1 -0
- package/dist/web/assets/main-DAc2rjJ2.css +1 -0
- package/dist/web/assets/main-DvlZ02mT.js +137 -0
- package/dist/web/favicon.png +0 -0
- package/dist/web/favicon.svg +22 -0
- package/dist/web/icon-192x192.png +0 -0
- package/dist/web/icon-512x512.png +0 -0
- package/dist/web/index.html +36 -0
- package/dist/web/manifest.json +61 -0
- package/package.json +174 -0
- package/scripts/postinstall.js +30 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/** Todo item extracted from Claude's TodoWrite tool calls */
|
|
2
|
+
export interface TodoItem {
|
|
3
|
+
content: string;
|
|
4
|
+
status: 'pending' | 'in_progress' | 'completed';
|
|
5
|
+
activeForm?: string;
|
|
6
|
+
}
|
|
7
|
+
/** Progress metrics computed from todos */
|
|
8
|
+
export interface SessionProgress {
|
|
9
|
+
completed: number;
|
|
10
|
+
inProgress: number;
|
|
11
|
+
pending: number;
|
|
12
|
+
total: number;
|
|
13
|
+
percent: number;
|
|
14
|
+
}
|
|
15
|
+
/** Progress milestone with status (V8 adds on_hold and superseded) */
|
|
16
|
+
export interface SessionMilestone {
|
|
17
|
+
label: string;
|
|
18
|
+
status: 'done' | 'current' | 'pending' | 'in_progress' | 'on_hold' | 'superseded';
|
|
19
|
+
}
|
|
20
|
+
/** Identity & Context - What is this session about? */
|
|
21
|
+
export interface SessionContext {
|
|
22
|
+
project: string;
|
|
23
|
+
area: string | null;
|
|
24
|
+
mission: string;
|
|
25
|
+
scope: 'minor' | 'feature' | 'major';
|
|
26
|
+
}
|
|
27
|
+
/** Notable events - the interesting stuff that happened (V8 adds icon and text) */
|
|
28
|
+
export interface SessionEvent {
|
|
29
|
+
type: 'error' | 'fix' | 'blocker' | 'correction' | 'decision' | 'breakthrough' | 'iteration' | 'insight' | 'pivot' | 'infrastructure' | 'refinement' | 'validation';
|
|
30
|
+
description?: string;
|
|
31
|
+
text?: string;
|
|
32
|
+
icon?: string;
|
|
33
|
+
}
|
|
34
|
+
/** Themes & Tags - quick categorization */
|
|
35
|
+
export interface SessionTags {
|
|
36
|
+
workType: ('implementing' | 'debugging' | 'refactoring' | 'exploring' | 'designing')[];
|
|
37
|
+
domain: string[];
|
|
38
|
+
collaboration: 'autonomous' | 'iterative' | 'guided';
|
|
39
|
+
complexity: 'routine' | 'tricky' | 'gnarly';
|
|
40
|
+
}
|
|
41
|
+
/** Item within a panel - can have an icon */
|
|
42
|
+
export interface SessionPanelItem {
|
|
43
|
+
text: string;
|
|
44
|
+
icon?: string;
|
|
45
|
+
}
|
|
46
|
+
/** Current state of the session - what's happening right now */
|
|
47
|
+
export interface SessionCurrentState {
|
|
48
|
+
icon: string;
|
|
49
|
+
color: 'sky' | 'purple' | 'rose' | 'orange' | 'emerald' | 'amber' | 'red' | 'teal' | 'blue' | 'fuchsia' | 'slate';
|
|
50
|
+
content: string;
|
|
51
|
+
}
|
|
52
|
+
/** Dynamic panel - Opus designs what's relevant to show
|
|
53
|
+
*
|
|
54
|
+
* Supports two formats:
|
|
55
|
+
* - Old format: {title, items[], content, icon, color}
|
|
56
|
+
* - V8 format: {label, value, icon (emoji), color}
|
|
57
|
+
*/
|
|
58
|
+
export interface SessionPanel {
|
|
59
|
+
title?: string;
|
|
60
|
+
items?: (string | SessionPanelItem)[];
|
|
61
|
+
content?: string;
|
|
62
|
+
label?: string;
|
|
63
|
+
value?: string;
|
|
64
|
+
icon?: string;
|
|
65
|
+
color?: 'sky' | 'purple' | 'rose' | 'orange' | 'emerald' | 'amber' | 'red' | 'teal' | 'blue' | 'fuchsia' | 'slate';
|
|
66
|
+
}
|
|
67
|
+
/** Full session insights extracted by Opus (LLM extraction result) */
|
|
68
|
+
export interface ExtractedSessionInsights {
|
|
69
|
+
context: SessionContext;
|
|
70
|
+
currentState: SessionCurrentState;
|
|
71
|
+
milestones: SessionMilestone[];
|
|
72
|
+
notable: SessionEvent[];
|
|
73
|
+
tags: SessionTags;
|
|
74
|
+
recentActions: string[];
|
|
75
|
+
panels: SessionPanel[];
|
|
76
|
+
theme: string;
|
|
77
|
+
}
|
|
78
|
+
/** Session insights as stored and returned by API */
|
|
79
|
+
export interface SessionInsights {
|
|
80
|
+
sessionId: string;
|
|
81
|
+
context: SessionContext | null;
|
|
82
|
+
currentState: SessionCurrentState | null;
|
|
83
|
+
lastPatchTraceId?: string | null;
|
|
84
|
+
milestones: SessionMilestone[];
|
|
85
|
+
notable: SessionEvent[];
|
|
86
|
+
tags: SessionTags | null;
|
|
87
|
+
recentActions: string[];
|
|
88
|
+
panels: SessionPanel[];
|
|
89
|
+
theme: string | null;
|
|
90
|
+
purposes: string[];
|
|
91
|
+
description: string | null;
|
|
92
|
+
progress: SessionProgress | null;
|
|
93
|
+
recentlyCompleted: string[];
|
|
94
|
+
outstanding: string[];
|
|
95
|
+
currentTask: string | null;
|
|
96
|
+
computedAt?: string;
|
|
97
|
+
patchedAt?: string;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=insights.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insights.d.ts","sourceRoot":"","sources":["../../src/types/insights.ts"],"names":[],"mappings":"AAMA,6DAA6D;AAC7D,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,2CAA2C;AAC3C,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,sEAAsE;AACtE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;CACnF;AAED,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;CACtC;AAED,mFAAmF;AACnF,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,cAAc,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,gBAAgB,GAAG,YAAY,GAAG,YAAY,CAAC;IACpK,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,2CAA2C;AAC3C,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,CAAC,cAAc,GAAG,WAAW,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,CAAC,EAAE,CAAC;IACvF,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,aAAa,EAAE,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;IACrD,UAAU,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;CAC7C;AAED,6CAA6C;AAC7C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,gEAAgE;AAChE,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IAClH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAE3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,gBAAgB,CAAC,EAAE,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;CACpH;AAED,sEAAsE;AACtE,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,cAAc,CAAC;IACxB,YAAY,EAAE,mBAAmB,CAAC;IAClC,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,IAAI,EAAE,WAAW,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAElB,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAE/B,YAAY,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAEzC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IAExB,MAAM,EAAE,YAAY,EAAE,CAAC;IAEvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC;IACjC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// Session Insights Types (Canonical Source)
|
|
3
|
+
// ============================================================
|
|
4
|
+
// All insight-related types consolidated here. Do NOT duplicate
|
|
5
|
+
// these in service files or frontend - import from @/types instead.
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=insights.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insights.js","sourceRoot":"","sources":["../../src/types/insights.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,4CAA4C;AAC5C,+DAA+D;AAC/D,gEAAgE;AAChE,oEAAoE"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* License types for Claudia
|
|
3
|
+
*/
|
|
4
|
+
export type LicenseTier = 'free' | 'beta' | 'pro';
|
|
5
|
+
/**
|
|
6
|
+
* JWT payload for license tokens
|
|
7
|
+
*/
|
|
8
|
+
export interface LicenseTokenPayload {
|
|
9
|
+
/** Email address */
|
|
10
|
+
email: string;
|
|
11
|
+
/** License tier */
|
|
12
|
+
tier: LicenseTier;
|
|
13
|
+
/** Issued at (Unix timestamp) */
|
|
14
|
+
iat: number;
|
|
15
|
+
/** Expiration (Unix timestamp), undefined for lifetime */
|
|
16
|
+
exp?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface License {
|
|
19
|
+
/**
|
|
20
|
+
* JWT token string
|
|
21
|
+
*/
|
|
22
|
+
token: string;
|
|
23
|
+
/**
|
|
24
|
+
* Decoded email from token
|
|
25
|
+
*/
|
|
26
|
+
email: string;
|
|
27
|
+
/**
|
|
28
|
+
* License tier from token
|
|
29
|
+
*/
|
|
30
|
+
tier: LicenseTier;
|
|
31
|
+
/**
|
|
32
|
+
* Expiration date (ISO 8601)
|
|
33
|
+
* null for lifetime licenses
|
|
34
|
+
*/
|
|
35
|
+
expiresAt: string | null;
|
|
36
|
+
/**
|
|
37
|
+
* When this license was activated locally
|
|
38
|
+
*/
|
|
39
|
+
activatedAt: string;
|
|
40
|
+
}
|
|
41
|
+
export interface LicenseValidationResult {
|
|
42
|
+
/**
|
|
43
|
+
* Whether the license is valid
|
|
44
|
+
*/
|
|
45
|
+
valid: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* The license tier (free if no valid license)
|
|
48
|
+
*/
|
|
49
|
+
tier: LicenseTier;
|
|
50
|
+
/**
|
|
51
|
+
* License details (null if free tier)
|
|
52
|
+
*/
|
|
53
|
+
license: License | null;
|
|
54
|
+
/**
|
|
55
|
+
* Validation error message (if invalid)
|
|
56
|
+
*/
|
|
57
|
+
error?: string;
|
|
58
|
+
}
|
|
59
|
+
export interface LicenseLimits {
|
|
60
|
+
/**
|
|
61
|
+
* Maximum concurrent sessions
|
|
62
|
+
* null = unlimited
|
|
63
|
+
*/
|
|
64
|
+
maxSessions: number | null;
|
|
65
|
+
/**
|
|
66
|
+
* Whether insights are enabled
|
|
67
|
+
*/
|
|
68
|
+
insightsEnabled: boolean;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=license.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../../src/types/license.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,WAAW,CAAC;IAElB;;;OAGG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,WAAW,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAExB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"license.js","sourceRoot":"","sources":["../../src/types/license.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface RouterProvider {
|
|
2
|
+
name: string;
|
|
3
|
+
api_base_url: string;
|
|
4
|
+
api_key: string;
|
|
5
|
+
models: string[];
|
|
6
|
+
transformer?: Record<string, unknown>;
|
|
7
|
+
}
|
|
8
|
+
export interface RouterConfiguration {
|
|
9
|
+
enabled: boolean;
|
|
10
|
+
providers: RouterProvider[];
|
|
11
|
+
rules: Record<string, string>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=router-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router-config.d.ts","sourceRoot":"","sources":["../../src/types/router-config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,cAAc,EAAE,CAAC;IAE5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router-config.js","sourceRoot":"","sources":["../../src/types/router-config.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Application branding constants
|
|
3
|
+
* Change these to rebrand the entire application
|
|
4
|
+
*/
|
|
5
|
+
export declare const APP_NAME = "claudia";
|
|
6
|
+
export declare const APP_DISPLAY_NAME = "Claudia";
|
|
7
|
+
/**
|
|
8
|
+
* Config directory: ~/.claudia/
|
|
9
|
+
* Contains: config.json, session-info.db, license.json, etc.
|
|
10
|
+
*/
|
|
11
|
+
export declare const CONFIG_DIR_NAME = ".claudia";
|
|
12
|
+
export declare const CONFIG_DIR: string;
|
|
13
|
+
/**
|
|
14
|
+
* Socket path for daemon IPC
|
|
15
|
+
*/
|
|
16
|
+
export declare const DAEMON_SOCKET_PATH = "/tmp/claudia-daemon.sock";
|
|
17
|
+
/**
|
|
18
|
+
* Notification topic prefix for ntfy.sh
|
|
19
|
+
*/
|
|
20
|
+
export declare const NOTIFICATION_TOPIC_PREFIX = "claudia";
|
|
21
|
+
/**
|
|
22
|
+
* MCP server names
|
|
23
|
+
*/
|
|
24
|
+
export declare const MCP_PERMISSIONS_SERVER_NAME = "claudia-permissions";
|
|
25
|
+
export declare const MCP_ORCHESTRATOR_SERVER_NAME = "claudia-orchestrator";
|
|
26
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,QAAQ,YAAY,CAAC;AAClC,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAE1C;;;GAGG;AACH,eAAO,MAAM,eAAe,aAAiB,CAAC;AAC9C,eAAO,MAAM,UAAU,QAA2C,CAAC;AAEnE;;GAEG;AACH,eAAO,MAAM,kBAAkB,6BAAiC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,yBAAyB,YAAW,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,2BAA2B,wBAA4B,CAAC;AACrE,eAAO,MAAM,4BAA4B,yBAA6B,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import os from 'os';
|
|
3
|
+
/**
|
|
4
|
+
* Application branding constants
|
|
5
|
+
* Change these to rebrand the entire application
|
|
6
|
+
*/
|
|
7
|
+
export const APP_NAME = 'claudia';
|
|
8
|
+
export const APP_DISPLAY_NAME = 'Claudia';
|
|
9
|
+
/**
|
|
10
|
+
* Config directory: ~/.claudia/
|
|
11
|
+
* Contains: config.json, session-info.db, license.json, etc.
|
|
12
|
+
*/
|
|
13
|
+
export const CONFIG_DIR_NAME = `.${APP_NAME}`;
|
|
14
|
+
export const CONFIG_DIR = path.join(os.homedir(), CONFIG_DIR_NAME);
|
|
15
|
+
/**
|
|
16
|
+
* Socket path for daemon IPC
|
|
17
|
+
*/
|
|
18
|
+
export const DAEMON_SOCKET_PATH = `/tmp/${APP_NAME}-daemon.sock`;
|
|
19
|
+
/**
|
|
20
|
+
* Notification topic prefix for ntfy.sh
|
|
21
|
+
*/
|
|
22
|
+
export const NOTIFICATION_TOPIC_PREFIX = APP_NAME;
|
|
23
|
+
/**
|
|
24
|
+
* MCP server names
|
|
25
|
+
*/
|
|
26
|
+
export const MCP_PERMISSIONS_SERVER_NAME = `${APP_NAME}-permissions`;
|
|
27
|
+
export const MCP_ORCHESTRATOR_SERVER_NAME = `${APP_NAME}-orchestrator`;
|
|
28
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,SAAS,CAAC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAE1C;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,QAAQ,EAAE,CAAC;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,eAAe,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,QAAQ,cAAc,CAAC;AAEjE;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,QAAQ,CAAC;AAElD;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,QAAQ,cAAc,CAAC;AACrE,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,QAAQ,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"machine-id.d.ts","sourceRoot":"","sources":["../../src/utils/machine-id.ts"],"names":[],"mappings":"AA0DA;;;;GAIG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAkBzD"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import os from 'os';
|
|
2
|
+
import crypto from 'crypto';
|
|
3
|
+
import { exec } from 'child_process';
|
|
4
|
+
import { promisify } from 'util';
|
|
5
|
+
const execAsync = promisify(exec);
|
|
6
|
+
/**
|
|
7
|
+
* Get the primary network interface MAC address
|
|
8
|
+
* On macOS, this is typically en0
|
|
9
|
+
* On Linux, this is typically eth0, eno1, or enp0s*
|
|
10
|
+
*/
|
|
11
|
+
async function getPrimaryMacAddress() {
|
|
12
|
+
try {
|
|
13
|
+
// Platform-specific commands to get MAC address
|
|
14
|
+
let command;
|
|
15
|
+
const platform = os.platform();
|
|
16
|
+
if (platform === 'darwin') {
|
|
17
|
+
// macOS: Get en0 MAC address (primary network interface)
|
|
18
|
+
command = 'ifconfig en0 | grep ether | awk \'{print $2}\'';
|
|
19
|
+
}
|
|
20
|
+
else if (platform === 'linux') {
|
|
21
|
+
// Linux: Try common interface names
|
|
22
|
+
command = 'ip link show | grep -E "eno1|eth0|enp0s[0-9]+" -A1 | grep link/ether | head -1 | awk \'{print $2}\'';
|
|
23
|
+
}
|
|
24
|
+
else if (platform === 'win32') {
|
|
25
|
+
// Windows: Get first physical adapter MAC
|
|
26
|
+
command = 'wmic nic where "PhysicalAdapter=TRUE" get MACAddress | findstr /r "[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]" | head -1';
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
throw new Error(`Unsupported platform: ${platform}`);
|
|
30
|
+
}
|
|
31
|
+
const { stdout } = await execAsync(command);
|
|
32
|
+
const mac = stdout.trim();
|
|
33
|
+
if (!mac) {
|
|
34
|
+
throw new Error('No MAC address found');
|
|
35
|
+
}
|
|
36
|
+
return mac;
|
|
37
|
+
}
|
|
38
|
+
catch (_error) {
|
|
39
|
+
// Fallback: Use os.networkInterfaces()
|
|
40
|
+
const interfaces = os.networkInterfaces();
|
|
41
|
+
for (const name of Object.keys(interfaces)) {
|
|
42
|
+
const iface = interfaces[name];
|
|
43
|
+
if (!iface)
|
|
44
|
+
continue;
|
|
45
|
+
for (const info of iface) {
|
|
46
|
+
// Skip internal (loopback) interfaces
|
|
47
|
+
if (!info.internal && info.mac && info.mac !== '00:00:00:00:00:00') {
|
|
48
|
+
return info.mac;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
throw new Error('Unable to determine MAC address');
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Generate a machine ID based on hostname and MAC address
|
|
57
|
+
* Format: {hostname}-{16char_hash}
|
|
58
|
+
* Example: "wenbomacbook-a1b2c3d4e5f6g7h8"
|
|
59
|
+
*/
|
|
60
|
+
export async function generateMachineId() {
|
|
61
|
+
// Get hostname (lowercase) and sanitize it
|
|
62
|
+
// Remove dots and other special characters, keeping only alphanumeric and hyphens
|
|
63
|
+
const hostname = os.hostname()
|
|
64
|
+
.toLowerCase()
|
|
65
|
+
.replace(/[^a-z0-9-]/g, '');
|
|
66
|
+
// Get MAC address
|
|
67
|
+
const macAddress = await getPrimaryMacAddress();
|
|
68
|
+
// Generate SHA256 hash of MAC address
|
|
69
|
+
const hash = crypto
|
|
70
|
+
.createHash('sha256')
|
|
71
|
+
.update(macAddress.toLowerCase())
|
|
72
|
+
.digest('hex')
|
|
73
|
+
.substring(0, 16); // Take first 16 characters
|
|
74
|
+
return `${hostname}-${hash}`;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=machine-id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"machine-id.js","sourceRoot":"","sources":["../../src/utils/machine-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC;;;;GAIG;AACH,KAAK,UAAU,oBAAoB;IACjC,IAAI,CAAC;QACH,gDAAgD;QAChD,IAAI,OAAe,CAAC;QACpB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QAE/B,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,yDAAyD;YACzD,OAAO,GAAG,gDAAgD,CAAC;QAC7D,CAAC;aAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAChC,oCAAoC;YACpC,OAAO,GAAG,qGAAqG,CAAC;QAClH,CAAC;aAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAChC,0CAA0C;YAC1C,OAAO,GAAG,iHAAiH,CAAC;QAC9H,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAE1B,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,uCAAuC;QACvC,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;QAC1C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,sCAAsC;gBACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,KAAK,mBAAmB,EAAE,CAAC;oBACnE,OAAO,IAAI,CAAC,GAAG,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,2CAA2C;IAC3C,kFAAkF;IAClF,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE;SAC3B,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAE9B,kBAAkB;IAClB,MAAM,UAAU,GAAG,MAAM,oBAAoB,EAAE,CAAC;IAEhD,sCAAsC;IACtC,MAAM,IAAI,GAAG,MAAM;SAChB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;SAChC,MAAM,CAAC,KAAK,CAAC;SACb,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,2BAA2B;IAEhD,OAAO,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Logger } from '../services/logger.js';
|
|
2
|
+
export interface ServerStartupOptions {
|
|
3
|
+
host: string;
|
|
4
|
+
port: number;
|
|
5
|
+
authToken?: string;
|
|
6
|
+
skipAuthToken?: boolean;
|
|
7
|
+
logger: Logger;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Display server startup information with rocket emoji and open browser
|
|
11
|
+
*/
|
|
12
|
+
export declare function displayServerStartup(options: ServerStartupOptions): void;
|
|
13
|
+
//# sourceMappingURL=server-startup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-startup.d.ts","sourceRoot":"","sources":["../../src/utils/server-startup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,CAexE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Display server startup information with rocket emoji and open browser
|
|
3
|
+
*/
|
|
4
|
+
export function displayServerStartup(options) {
|
|
5
|
+
const { host, port, authToken, skipAuthToken, logger } = options;
|
|
6
|
+
const serverUrl = `http://${host}:${port}`;
|
|
7
|
+
let authUrl = `http://localhost:${port}#token=${authToken}`;
|
|
8
|
+
if (host !== '0.0.0.0') {
|
|
9
|
+
authUrl = `http://${host}:${port}#token=${authToken}`;
|
|
10
|
+
}
|
|
11
|
+
if (!skipAuthToken && authToken) {
|
|
12
|
+
logger.info(`🚀 Server listening on ${serverUrl}`);
|
|
13
|
+
logger.info(`🔗 Access with auth token: ${authUrl}`);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
logger.info(`🚀 Server listening on ${serverUrl}`);
|
|
17
|
+
logger.info('Authentication is disabled (--skip-auth-token)');
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=server-startup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-startup.js","sourceRoot":"","sources":["../../src/utils/server-startup.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAA6B;IAChE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACjE,MAAM,SAAS,GAAG,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC;IAC3C,IAAI,OAAO,GAAG,oBAAoB,IAAI,UAAU,SAAS,EAAE,CAAC;IAC5D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,GAAG,UAAU,IAAI,IAAI,IAAI,UAAU,SAAS,EAAE,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,aAAa,IAAI,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;IACvD,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;AACH,CAAC"}
|