devchain-cli 0.3.2 → 0.4.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.
Files changed (153) hide show
  1. package/README.md +14 -0
  2. package/dist/server/app.module.js +2 -0
  3. package/dist/server/app.module.js.map +1 -1
  4. package/dist/server/common/constants/terminal.d.ts +3 -0
  5. package/dist/server/common/constants/terminal.js +7 -0
  6. package/dist/server/common/constants/terminal.js.map +1 -0
  7. package/dist/server/common/validation/template-validation.d.ts +8 -0
  8. package/dist/server/common/validation/template-validation.js +18 -0
  9. package/dist/server/common/validation/template-validation.js.map +1 -0
  10. package/dist/server/modules/epics/services/epics.service.d.ts +2 -0
  11. package/dist/server/modules/epics/services/epics.service.js +194 -32
  12. package/dist/server/modules/epics/services/epics.service.js.map +1 -1
  13. package/dist/server/modules/events/catalog/epic.assigned.d.ts +9 -13
  14. package/dist/server/modules/events/catalog/epic.assigned.js +5 -5
  15. package/dist/server/modules/events/catalog/epic.assigned.js.map +1 -1
  16. package/dist/server/modules/events/catalog/epic.created.d.ts +39 -0
  17. package/dist/server/modules/events/catalog/epic.created.js +20 -0
  18. package/dist/server/modules/events/catalog/epic.created.js.map +1 -0
  19. package/dist/server/modules/events/catalog/epic.updated.d.ts +178 -0
  20. package/dist/server/modules/events/catalog/epic.updated.js +43 -0
  21. package/dist/server/modules/events/catalog/epic.updated.js.map +1 -0
  22. package/dist/server/modules/events/catalog/index.d.ts +221 -12
  23. package/dist/server/modules/events/catalog/index.js +9 -1
  24. package/dist/server/modules/events/catalog/index.js.map +1 -1
  25. package/dist/server/modules/events/catalog/settings.terminal.changed.d.ts +12 -0
  26. package/dist/server/modules/events/catalog/settings.terminal.changed.js +11 -0
  27. package/dist/server/modules/events/catalog/settings.terminal.changed.js.map +1 -0
  28. package/dist/server/modules/events/services/events.service.js +0 -7
  29. package/dist/server/modules/events/services/events.service.js.map +1 -1
  30. package/dist/server/modules/events/subscribers/chat-message-delivery.subscriber.d.ts +5 -2
  31. package/dist/server/modules/events/subscribers/chat-message-delivery.subscriber.js +44 -24
  32. package/dist/server/modules/events/subscribers/chat-message-delivery.subscriber.js.map +1 -1
  33. package/dist/server/modules/events/subscribers/epic-assignment-notifier.subscriber.d.ts +5 -8
  34. package/dist/server/modules/events/subscribers/epic-assignment-notifier.subscriber.js +37 -56
  35. package/dist/server/modules/events/subscribers/epic-assignment-notifier.subscriber.js.map +1 -1
  36. package/dist/server/modules/mcp/dtos/mcp.dto.d.ts +8 -6
  37. package/dist/server/modules/mcp/dtos/mcp.dto.js.map +1 -1
  38. package/dist/server/modules/mcp/mcp.module.js +2 -0
  39. package/dist/server/modules/mcp/mcp.module.js.map +1 -1
  40. package/dist/server/modules/mcp/services/mcp.service.d.ts +5 -1
  41. package/dist/server/modules/mcp/services/mcp.service.js +65 -33
  42. package/dist/server/modules/mcp/services/mcp.service.js.map +1 -1
  43. package/dist/server/modules/projects/controllers/projects.controller.d.ts +140 -6
  44. package/dist/server/modules/projects/controllers/projects.controller.js +91 -31
  45. package/dist/server/modules/projects/controllers/projects.controller.js.map +1 -1
  46. package/dist/server/modules/projects/dtos/export.dto.d.ts +83 -0
  47. package/dist/server/modules/projects/dtos/export.dto.js +34 -0
  48. package/dist/server/modules/projects/dtos/export.dto.js.map +1 -0
  49. package/dist/server/modules/projects/projects.module.js +1 -0
  50. package/dist/server/modules/projects/projects.module.js.map +1 -1
  51. package/dist/server/modules/projects/services/projects.service.d.ts +37 -3
  52. package/dist/server/modules/projects/services/projects.service.js +353 -526
  53. package/dist/server/modules/projects/services/projects.service.js.map +1 -1
  54. package/dist/server/modules/registry/controllers/registry.controller.d.ts +98 -0
  55. package/dist/server/modules/registry/controllers/registry.controller.js +352 -0
  56. package/dist/server/modules/registry/controllers/registry.controller.js.map +1 -0
  57. package/dist/server/modules/registry/controllers/templates.controller.d.ts +35 -0
  58. package/dist/server/modules/registry/controllers/templates.controller.js +157 -0
  59. package/dist/server/modules/registry/controllers/templates.controller.js.map +1 -0
  60. package/dist/server/modules/registry/dtos/registry-error.d.ts +11 -0
  61. package/dist/server/modules/registry/dtos/registry-error.js +30 -0
  62. package/dist/server/modules/registry/dtos/registry-error.js.map +1 -0
  63. package/dist/server/modules/registry/dtos/registry.dto.d.ts +7 -0
  64. package/dist/server/modules/registry/dtos/registry.dto.js +50 -0
  65. package/dist/server/modules/registry/dtos/registry.dto.js.map +1 -0
  66. package/dist/server/modules/registry/index.d.ts +7 -0
  67. package/dist/server/modules/registry/index.js +24 -0
  68. package/dist/server/modules/registry/index.js.map +1 -0
  69. package/dist/server/modules/registry/interfaces/registry.interface.d.ts +68 -0
  70. package/dist/server/modules/registry/interfaces/registry.interface.js +3 -0
  71. package/dist/server/modules/registry/interfaces/registry.interface.js.map +1 -0
  72. package/dist/server/modules/registry/registry.module.d.ts +2 -0
  73. package/dist/server/modules/registry/registry.module.js +45 -0
  74. package/dist/server/modules/registry/registry.module.js.map +1 -0
  75. package/dist/server/modules/registry/services/registry-client.service.d.ts +14 -0
  76. package/dist/server/modules/registry/services/registry-client.service.js +226 -0
  77. package/dist/server/modules/registry/services/registry-client.service.js.map +1 -0
  78. package/dist/server/modules/registry/services/registry-orchestration.service.d.ts +45 -0
  79. package/dist/server/modules/registry/services/registry-orchestration.service.js +165 -0
  80. package/dist/server/modules/registry/services/registry-orchestration.service.js.map +1 -0
  81. package/dist/server/modules/registry/services/template-cache.service.d.ts +66 -0
  82. package/dist/server/modules/registry/services/template-cache.service.js +310 -0
  83. package/dist/server/modules/registry/services/template-cache.service.js.map +1 -0
  84. package/dist/server/modules/registry/services/template-upgrade.service.d.ts +41 -0
  85. package/dist/server/modules/registry/services/template-upgrade.service.js +212 -0
  86. package/dist/server/modules/registry/services/template-upgrade.service.js.map +1 -0
  87. package/dist/server/modules/registry/services/unified-template.service.d.ts +35 -0
  88. package/dist/server/modules/registry/services/unified-template.service.js +228 -0
  89. package/dist/server/modules/registry/services/unified-template.service.js.map +1 -0
  90. package/dist/server/modules/sessions/controllers/sessions.controller.d.ts +32 -1
  91. package/dist/server/modules/sessions/controllers/sessions.controller.js +150 -8
  92. package/dist/server/modules/sessions/controllers/sessions.controller.js.map +1 -1
  93. package/dist/server/modules/sessions/services/message-activity-stream.service.d.ts +12 -0
  94. package/dist/server/modules/sessions/services/message-activity-stream.service.js +51 -0
  95. package/dist/server/modules/sessions/services/message-activity-stream.service.js.map +1 -0
  96. package/dist/server/modules/sessions/services/sessions-message-pool.service.d.ts +125 -0
  97. package/dist/server/modules/sessions/services/sessions-message-pool.service.js +599 -0
  98. package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -0
  99. package/dist/server/modules/sessions/services/sessions.service.d.ts +2 -9
  100. package/dist/server/modules/sessions/services/sessions.service.js +32 -27
  101. package/dist/server/modules/sessions/services/sessions.service.js.map +1 -1
  102. package/dist/server/modules/sessions/sessions.module.js +16 -2
  103. package/dist/server/modules/sessions/sessions.module.js.map +1 -1
  104. package/dist/server/modules/settings/dtos/settings.dto.d.ts +231 -0
  105. package/dist/server/modules/settings/dtos/settings.dto.js +40 -1
  106. package/dist/server/modules/settings/dtos/settings.dto.js.map +1 -1
  107. package/dist/server/modules/settings/services/settings.service.d.ts +56 -15
  108. package/dist/server/modules/settings/services/settings.service.js +295 -10
  109. package/dist/server/modules/settings/services/settings.service.js.map +1 -1
  110. package/dist/server/modules/subscribers/actions/action.interface.d.ts +2 -0
  111. package/dist/server/modules/subscribers/actions/send-message.action.js +34 -11
  112. package/dist/server/modules/subscribers/actions/send-message.action.js.map +1 -1
  113. package/dist/server/modules/subscribers/events/event-fields-catalog.js +109 -6
  114. package/dist/server/modules/subscribers/events/event-fields-catalog.js.map +1 -1
  115. package/dist/server/modules/subscribers/services/subscriber-executor.service.d.ts +3 -1
  116. package/dist/server/modules/subscribers/services/subscriber-executor.service.js +13 -1
  117. package/dist/server/modules/subscribers/services/subscriber-executor.service.js.map +1 -1
  118. package/dist/server/modules/terminal/dtos/ws-envelope.dto.d.ts +20 -0
  119. package/dist/server/modules/terminal/dtos/ws-envelope.dto.js +8 -1
  120. package/dist/server/modules/terminal/dtos/ws-envelope.dto.js.map +1 -1
  121. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +1 -3
  122. package/dist/server/modules/terminal/gateways/terminal.gateway.js +50 -11
  123. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  124. package/dist/server/modules/terminal/services/pty.service.d.ts +1 -3
  125. package/dist/server/modules/terminal/services/pty.service.js +2 -14
  126. package/dist/server/modules/terminal/services/pty.service.js.map +1 -1
  127. package/dist/server/modules/terminal/services/terminal-seed.service.d.ts +6 -4
  128. package/dist/server/modules/terminal/services/terminal-seed.service.js +74 -67
  129. package/dist/server/modules/terminal/services/terminal-seed.service.js.map +1 -1
  130. package/dist/server/modules/terminal/services/tmux.service.js +3 -2
  131. package/dist/server/modules/terminal/services/tmux.service.js.map +1 -1
  132. package/dist/server/modules/terminal/terminal.module.js +0 -3
  133. package/dist/server/modules/terminal/terminal.module.js.map +1 -1
  134. package/dist/server/templates/claude-codex-advanced.json +130 -69
  135. package/dist/server/templates/claude-opus.json +30 -19
  136. package/dist/server/templates/simple-codex.json +30 -19
  137. package/dist/server/test-setup.js +19 -0
  138. package/dist/server/test-setup.js.map +1 -1
  139. package/dist/server/tsconfig.tsbuildinfo +1 -1
  140. package/dist/server/ui/assets/index-4Q4XuabC.js +733 -0
  141. package/dist/server/ui/assets/index-BkGGbapJ.css +32 -0
  142. package/dist/server/ui/index.html +2 -2
  143. package/dist/templates/claude-codex-advanced.json +130 -69
  144. package/dist/templates/claude-opus.json +30 -19
  145. package/dist/templates/simple-codex.json +30 -19
  146. package/package.json +9 -2
  147. package/dist/server/modules/terminal/services/terminal-emulator.service.d.ts +0 -40
  148. package/dist/server/modules/terminal/services/terminal-emulator.service.js +0 -356
  149. package/dist/server/modules/terminal/services/terminal-emulator.service.js.map +0 -1
  150. package/dist/server/templates/claude-codex-advanced-swe.json +0 -130
  151. package/dist/server/ui/assets/index-C9GXCjnF.js +0 -700
  152. package/dist/server/ui/assets/index-o0FbZg-1.css +0 -32
  153. package/dist/templates/claude-codex-advanced-swe.json +0 -130
@@ -0,0 +1,125 @@
1
+ import { OnModuleDestroy } from '@nestjs/common';
2
+ import { SessionsService } from './sessions.service';
3
+ import { SessionCoordinatorService } from './session-coordinator.service';
4
+ import { MessageActivityStreamService } from './message-activity-stream.service';
5
+ import { TerminalSendCoordinatorService } from '../../terminal/services/terminal-send-coordinator.service';
6
+ import { TmuxService } from '../../terminal/services/tmux.service';
7
+ import { SettingsService } from '../../settings/services/settings.service';
8
+ import { type StorageService } from '../../storage/interfaces/storage.interface';
9
+ export declare const FAILURE_NOTICE_SOURCE = "pool.failure_notice";
10
+ export interface MessagePoolConfig {
11
+ enabled: boolean;
12
+ delayMs: number;
13
+ maxWaitMs: number;
14
+ maxMessages: number;
15
+ separator: string;
16
+ }
17
+ export interface PooledMessage {
18
+ text: string;
19
+ source: string;
20
+ timestamp: number;
21
+ submitKeys: string[];
22
+ senderAgentId?: string;
23
+ logEntryId: string;
24
+ }
25
+ export interface EnqueueOptions {
26
+ source?: string;
27
+ submitKeys?: string[];
28
+ senderAgentId?: string;
29
+ immediate?: boolean;
30
+ projectId?: string;
31
+ agentName?: string;
32
+ }
33
+ export interface EnqueueResult {
34
+ status: 'queued' | 'delivered' | 'failed';
35
+ poolSize?: number;
36
+ error?: string;
37
+ }
38
+ export interface FlushResult {
39
+ success: boolean;
40
+ deliveredCount?: number;
41
+ discardedCount?: number;
42
+ reason?: string;
43
+ }
44
+ export interface MessageLogEntry {
45
+ id: string;
46
+ timestamp: number;
47
+ projectId: string;
48
+ agentId: string;
49
+ agentName: string;
50
+ text: string;
51
+ source: string;
52
+ senderAgentId?: string;
53
+ status: 'queued' | 'delivered' | 'failed';
54
+ batchId?: string;
55
+ deliveredAt?: number;
56
+ error?: string;
57
+ immediate: boolean;
58
+ }
59
+ export interface PoolDetails {
60
+ agentId: string;
61
+ agentName: string;
62
+ projectId: string;
63
+ messageCount: number;
64
+ waitingMs: number;
65
+ messages: Array<{
66
+ id: string;
67
+ preview: string;
68
+ source: string;
69
+ timestamp: number;
70
+ }>;
71
+ }
72
+ export declare class SessionsMessagePoolService implements OnModuleDestroy {
73
+ private readonly sessions;
74
+ private readonly coordinator;
75
+ private readonly sendCoordinator;
76
+ private readonly tmux;
77
+ private readonly settings;
78
+ private readonly storage;
79
+ private readonly activityStream;
80
+ private pools;
81
+ private config;
82
+ private messageLog;
83
+ private logBytes;
84
+ private logIndex;
85
+ constructor(sessions: SessionsService, coordinator: SessionCoordinatorService, sendCoordinator: TerminalSendCoordinatorService, tmux: TmuxService, settings: SettingsService, storage: StorageService, activityStream: MessageActivityStreamService);
86
+ private loadConfigFromSettings;
87
+ private getConfigForProject;
88
+ reloadConfig(): void;
89
+ configure(config: Partial<MessagePoolConfig>): void;
90
+ private configsEqual;
91
+ private resetPoolTimers;
92
+ enqueue(agentId: string, text: string, options?: EnqueueOptions): Promise<EnqueueResult>;
93
+ flushNow(agentId: string): Promise<FlushResult>;
94
+ flushAll(): Promise<void>;
95
+ getPoolStats(): {
96
+ agentId: string;
97
+ messageCount: number;
98
+ waitingMs: number;
99
+ }[];
100
+ getPoolDetails(projectId?: string): PoolDetails[];
101
+ onModuleDestroy(): Promise<void>;
102
+ private notifySendersOfFailure;
103
+ private deliverBatch;
104
+ private deliverMessage;
105
+ getMessageLog(options?: {
106
+ projectId?: string;
107
+ agentId?: string;
108
+ status?: MessageLogEntry['status'];
109
+ source?: string;
110
+ limit?: number;
111
+ }): MessageLogEntry[];
112
+ getLogStats(): {
113
+ entryCount: number;
114
+ bytesUsed: number;
115
+ maxEntries: number;
116
+ maxBytes: number;
117
+ };
118
+ getMessageById(messageId: string): MessageLogEntry | null;
119
+ private addLogEntry;
120
+ private broadcastPoolsUpdate;
121
+ private getLogEntryById;
122
+ private updateLogEntry;
123
+ private pruneLogIfNeeded;
124
+ private resolveProjectInfo;
125
+ }