@bbigbang/core 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.
Files changed (175) hide show
  1. package/dist/config.js +380 -0
  2. package/dist/execution/executionDispatcher.js +3810 -0
  3. package/dist/main.js +90 -0
  4. package/dist/nodeEventHistory.js +206 -0
  5. package/dist/scheduler/dreamLogic.js +50 -0
  6. package/dist/scheduler/dreamScheduler.js +65 -0
  7. package/dist/services/agentFileAccessService.js +1913 -0
  8. package/dist/services/agentRuntimeCleanupBroker.js +62 -0
  9. package/dist/services/agentSkillsBroker.js +118 -0
  10. package/dist/services/agentSkillsService.js +83 -0
  11. package/dist/services/agentWorkspaceBroker.js +937 -0
  12. package/dist/services/agentWorkspaceService.js +70 -0
  13. package/dist/services/appVersion.js +14 -0
  14. package/dist/services/auth.js +586 -0
  15. package/dist/services/claudeControlBroker.js +154 -0
  16. package/dist/services/claudeTranscriptBroker.js +100 -0
  17. package/dist/services/claudeTranscriptService.js +359 -0
  18. package/dist/services/codexAppServerBroker.js +155 -0
  19. package/dist/services/codexTranscriptBroker.js +98 -0
  20. package/dist/services/codexTranscriptService.js +961 -0
  21. package/dist/services/droidMissionBroker.js +124 -0
  22. package/dist/services/droidMissionImporter.js +630 -0
  23. package/dist/services/droidModelOptions.js +165 -0
  24. package/dist/services/hubServerRegistrationService.js +268 -0
  25. package/dist/services/libraryManifest.js +43 -0
  26. package/dist/services/libraryScaffold.js +26 -0
  27. package/dist/services/libraryService.js +2263 -0
  28. package/dist/services/memoryService.js +386 -0
  29. package/dist/services/missionEvidence.js +377 -0
  30. package/dist/services/missionService.js +2361 -0
  31. package/dist/services/missionTrace.js +158 -0
  32. package/dist/services/nativeMissionBriefParser.js +120 -0
  33. package/dist/services/nativeMissionOrchestrator.js +2045 -0
  34. package/dist/services/nativeMissionReportGenerator.js +227 -0
  35. package/dist/services/nativeMissionValidationRunner.js +452 -0
  36. package/dist/services/nativeMissionWorkerBroker.js +190 -0
  37. package/dist/services/nodeRegistry.js +34 -0
  38. package/dist/services/nodeStateReconciler.js +97 -0
  39. package/dist/services/panelMediaScanner.js +119 -0
  40. package/dist/services/persistentRuntimeJsonlClient.js +153 -0
  41. package/dist/services/platformAgentPolicy.js +180 -0
  42. package/dist/services/platformAgentService.js +2041 -0
  43. package/dist/services/projectAccessResolver.js +93 -0
  44. package/dist/services/projectService.js +392 -0
  45. package/dist/services/resourceSpaceService.js +140 -0
  46. package/dist/services/scenarioRuntimeService.js +1130 -0
  47. package/dist/services/suggestedPlannerService.js +868 -0
  48. package/dist/services/workbenchGitBroker.js +161 -0
  49. package/dist/services/workbenchGitService.js +69 -0
  50. package/dist/services/workbenchInspectBroker.js +65 -0
  51. package/dist/services/workbenchNodePathService.js +79 -0
  52. package/dist/services/workbenchRegistryService.js +240 -0
  53. package/dist/services/workbenchRootService.js +181 -0
  54. package/dist/services/workbenchTerminalBroker.js +378 -0
  55. package/dist/services/workspaceRunOwnership.js +60 -0
  56. package/dist/services/workspaceScaffold.js +105 -0
  57. package/dist/services/workspaceSessionRuntimeService.js +576 -0
  58. package/dist/services/workspaceSessionService.js +245 -0
  59. package/dist/services/workspaceToolActionRunner.js +1582 -0
  60. package/dist/services/workspaceToolErrors.js +10 -0
  61. package/dist/services/workspaceToolExecutionUtils.js +895 -0
  62. package/dist/services/workspaceToolLatestStateProjector.js +91 -0
  63. package/dist/services/workspaceToolManifest.js +572 -0
  64. package/dist/services/workspaceToolMutationQueue.js +43 -0
  65. package/dist/services/workspaceToolPanelProjection.js +460 -0
  66. package/dist/services/workspaceToolPromotion.js +255 -0
  67. package/dist/services/workspaceToolPromotionState.js +224 -0
  68. package/dist/services/workspaceToolPublishDiagnostics.js +189 -0
  69. package/dist/services/workspaceToolPublishIdentityResolver.js +146 -0
  70. package/dist/services/workspaceToolReadModel.js +378 -0
  71. package/dist/services/workspaceToolRunLedger.js +239 -0
  72. package/dist/services/workspaceToolService.js +3067 -0
  73. package/dist/services/workspaceToolSnapshotPanelSync.js +293 -0
  74. package/dist/services/workspaceToolTerminalLifecycle.js +283 -0
  75. package/dist/services/workspaceToolTypes.js +1 -0
  76. package/dist/services/workspaceToolUploadMaterializer.js +228 -0
  77. package/dist/web/actionCardRoutes.js +129 -0
  78. package/dist/web/actionCards.js +469 -0
  79. package/dist/web/activationContext.js +684 -0
  80. package/dist/web/agentChannelGuards.js +48 -0
  81. package/dist/web/agentMentionCooldowns.js +32 -0
  82. package/dist/web/agentReminders.js +1668 -0
  83. package/dist/web/agentRuntimePresence.js +197 -0
  84. package/dist/web/agentSelfState.js +494 -0
  85. package/dist/web/agentTaskLinks.js +26 -0
  86. package/dist/web/agentVisibility.js +79 -0
  87. package/dist/web/assets.js +95 -0
  88. package/dist/web/channelActivationPrompt.js +395 -0
  89. package/dist/web/channelMemoryNotes.js +127 -0
  90. package/dist/web/channelMentions.js +10 -0
  91. package/dist/web/channelMessageSequences.js +19 -0
  92. package/dist/web/channelSubscriptions.js +26 -0
  93. package/dist/web/clearedTaskRoots.js +10 -0
  94. package/dist/web/collaborationPromptGuidance.js +36 -0
  95. package/dist/web/collaborationSurfaceState.js +140 -0
  96. package/dist/web/contextBundleRanking.js +154 -0
  97. package/dist/web/contextBundleResolver.js +488 -0
  98. package/dist/web/conversationBuiltinSkillRoots.js +50 -0
  99. package/dist/web/conversationControls.js +232 -0
  100. package/dist/web/conversationHandoffs.js +612 -0
  101. package/dist/web/conversationManager.js +2511 -0
  102. package/dist/web/conversationSummaries.js +876 -0
  103. package/dist/web/conversationSurfaceKinds.js +17 -0
  104. package/dist/web/conversationTargets.js +173 -0
  105. package/dist/web/directActivationPrompt.js +122 -0
  106. package/dist/web/directReplyTargets.js +69 -0
  107. package/dist/web/directThreadResolver.js +129 -0
  108. package/dist/web/dmTaskHandoffPrompt.js +120 -0
  109. package/dist/web/dmTaskThreadStatusProjection.js +229 -0
  110. package/dist/web/ftsQuery.js +33 -0
  111. package/dist/web/internalAgentRouter.js +11341 -0
  112. package/dist/web/libraryCuratorScheduler.js +58 -0
  113. package/dist/web/libraryDocumentPromptGuidance.js +8 -0
  114. package/dist/web/messageCheckpoints.js +19 -0
  115. package/dist/web/nodeWsHandler.js +2495 -0
  116. package/dist/web/notificationRounds.js +1061 -0
  117. package/dist/web/panelActionMessages.js +108 -0
  118. package/dist/web/panelActivationPrompt.js +18 -0
  119. package/dist/web/panelAudit.js +273 -0
  120. package/dist/web/panelLifecycle.js +222 -0
  121. package/dist/web/panelMediaPolicy.js +43 -0
  122. package/dist/web/panelPathPolicy.js +63 -0
  123. package/dist/web/panelPreviews.js +175 -0
  124. package/dist/web/panelQueryHandles.js +2749 -0
  125. package/dist/web/panelRoutes.js +2147 -0
  126. package/dist/web/panels.js +904 -0
  127. package/dist/web/peerInboxAggregates.js +1247 -0
  128. package/dist/web/planApprovalState.js +92 -0
  129. package/dist/web/platformAgentScheduler.js +66 -0
  130. package/dist/web/proactiveOpportunities.js +452 -0
  131. package/dist/web/promptContextSections.js +242 -0
  132. package/dist/web/promptHistorySanitizer.js +26 -0
  133. package/dist/web/promptSlashCommands.js +158 -0
  134. package/dist/web/rollingConversationSummary.js +453 -0
  135. package/dist/web/routeHelpers.js +11 -0
  136. package/dist/web/routes/handoff.js +288 -0
  137. package/dist/web/routes/history.js +345 -0
  138. package/dist/web/routes/memory.js +258 -0
  139. package/dist/web/routes/selfState.js +171 -0
  140. package/dist/web/routes/workspace.js +154 -0
  141. package/dist/web/runSurfaceWatermarks.js +431 -0
  142. package/dist/web/runtimeCapabilities.js +48 -0
  143. package/dist/web/sameAgentHandoffs.js +494 -0
  144. package/dist/web/server.js +15567 -0
  145. package/dist/web/sharedCollaborationCapsules.js +163 -0
  146. package/dist/web/soloSessionRelay.js +42 -0
  147. package/dist/web/soloWsHandler.js +138 -0
  148. package/dist/web/suggestedPlannerScheduler.js +56 -0
  149. package/dist/web/surfaceActivationPolicy.js +108 -0
  150. package/dist/web/surfaceCollaborators.js +61 -0
  151. package/dist/web/surfaceSystemStatus.js +263 -0
  152. package/dist/web/targetParticipants.js +77 -0
  153. package/dist/web/taskEvents.js +49 -0
  154. package/dist/web/taskLifecycleMessages.js +165 -0
  155. package/dist/web/taskLoops.js +732 -0
  156. package/dist/web/taskMemoryNotes.js +224 -0
  157. package/dist/web/taskNumbers.js +16 -0
  158. package/dist/web/taskOwnerGuards.js +49 -0
  159. package/dist/web/taskParticipantResolver.js +42 -0
  160. package/dist/web/taskParticipants.js +97 -0
  161. package/dist/web/taskSourceDetails.js +20 -0
  162. package/dist/web/taskStateViews.js +210 -0
  163. package/dist/web/taskStatusTransitions.js +9 -0
  164. package/dist/web/taskThreadFollowups.js +599 -0
  165. package/dist/web/taskThreadRuntimeClosure.js +685 -0
  166. package/dist/web/taskUpdateDelivery.js +104 -0
  167. package/dist/web/threadReplyContentHeuristics.js +30 -0
  168. package/dist/web/threadRoots.js +61 -0
  169. package/dist/web/threadTaskBindings.js +365 -0
  170. package/dist/web/uiPanelPromptGuidance.js +27 -0
  171. package/dist/web/workspaceMemoryHints.js +143 -0
  172. package/dist/web/workspaceToolPromptGuidance.js +30 -0
  173. package/dist/web/wsHandler.js +397 -0
  174. package/dist/web/wsSink.js +116 -0
  175. package/package.json +54 -0
@@ -0,0 +1,180 @@
1
+ export const BUILTIN_PLATFORM_AGENT_DEFINITION_IDS = ['suggested_planner', 'library_curator'];
2
+ const PLATFORM_WORKFLOW_CATALOG = {
3
+ planner_suggestions: {
4
+ workflowType: 'planner_suggestions',
5
+ label: 'Planner Suggestions',
6
+ description: 'Reviews operational context and proposes concrete follow-up opportunities.',
7
+ defaultResourceScopes: ['open_tasks', 'saved_inbox', 'recent_messages', 'conversation_summaries'],
8
+ defaultToolPolicy: { disabledToolKinds: ['edit', 'execute', 'fetch', 'switch_mode', 'other'] },
9
+ defaultPromptTemplate: [
10
+ 'You review the provided platform resource bundle and identify concrete next-work opportunities.',
11
+ 'Focus on actionable follow-up, missing ownership, stale tasks, and saved items that should become tracked work.',
12
+ 'Return structured suggestions only.',
13
+ 'Do not create tasks directly.',
14
+ ].join('\n'),
15
+ },
16
+ library_curate: {
17
+ workflowType: 'library_curate',
18
+ label: 'Library Curate',
19
+ description: 'Organizes saved information into a personal markdown library.',
20
+ defaultResourceScopes: ['saved_inbox', 'personal_library_inventory', 'personal_library_documents'],
21
+ defaultToolPolicy: { disabledToolKinds: ['edit', 'delete', 'move', 'execute', 'fetch', 'switch_mode', 'other'] },
22
+ defaultPromptTemplate: [
23
+ 'You organize saved information into a personal document library.',
24
+ 'Prefer updating existing documents before creating new ones.',
25
+ 'Return a structured document plan only.',
26
+ 'Do not rename, move, or delete documents.',
27
+ ].join('\n'),
28
+ },
29
+ };
30
+ const BUILTIN_PLATFORM_DEFINITIONS = {
31
+ suggested_planner: {
32
+ workflowType: 'planner_suggestions',
33
+ label: 'Suggested Planner',
34
+ description: 'Reviews tasks, summaries, saved inbox, and recent messages to propose next work.',
35
+ },
36
+ library_curator: {
37
+ workflowType: 'library_curate',
38
+ label: 'Library Curator',
39
+ description: 'Organizes saved messages into structured markdown documents.',
40
+ },
41
+ };
42
+ export function isPlatformAgentRole(role) {
43
+ return role === 'platform_agent' || role === 'library_curator' || role === 'suggested_planner';
44
+ }
45
+ export function isBuiltinPlatformAgentDefinitionId(value) {
46
+ return value === 'suggested_planner' || value === 'library_curator';
47
+ }
48
+ export function getBuiltinPlatformDefinition(params) {
49
+ const base = BUILTIN_PLATFORM_DEFINITIONS[params.definitionId];
50
+ const workflow = getPlatformWorkflowCatalogEntry(base.workflowType);
51
+ return {
52
+ definitionId: params.definitionId,
53
+ workflowType: base.workflowType,
54
+ label: base.label,
55
+ description: base.description,
56
+ resourceScopes: [...workflow.defaultResourceScopes],
57
+ resourceConfig: {},
58
+ promptTemplateOverride: null,
59
+ toolPolicy: { ...workflow.defaultToolPolicy },
60
+ enabled: true,
61
+ createdAt: params.createdAt ?? 0,
62
+ updatedAt: params.updatedAt ?? 0,
63
+ };
64
+ }
65
+ export function getPlatformWorkflowCatalog() {
66
+ return Object.values(PLATFORM_WORKFLOW_CATALOG).map((entry) => ({
67
+ ...entry,
68
+ defaultResourceScopes: [...entry.defaultResourceScopes],
69
+ defaultToolPolicy: {
70
+ disabledToolKinds: [...(entry.defaultToolPolicy.disabledToolKinds ?? [])],
71
+ },
72
+ }));
73
+ }
74
+ export function getPlatformWorkflowCatalogEntry(workflowType) {
75
+ const entry = PLATFORM_WORKFLOW_CATALOG[workflowType];
76
+ return {
77
+ ...entry,
78
+ defaultResourceScopes: [...entry.defaultResourceScopes],
79
+ defaultToolPolicy: {
80
+ disabledToolKinds: [...(entry.defaultToolPolicy.disabledToolKinds ?? [])],
81
+ },
82
+ };
83
+ }
84
+ export function getPlatformAgentDisabledToolKinds(definitionId) {
85
+ const workflowType = isBuiltinPlatformAgentDefinitionId(definitionId)
86
+ ? BUILTIN_PLATFORM_DEFINITIONS[definitionId].workflowType
87
+ : null;
88
+ if (!workflowType)
89
+ return [];
90
+ return [...(getPlatformWorkflowCatalogEntry(workflowType).defaultToolPolicy.disabledToolKinds ?? [])];
91
+ }
92
+ export function normalizePlatformAgentToolPolicy(workflowType, policy) {
93
+ const fallback = getPlatformWorkflowCatalogEntry(workflowType).defaultToolPolicy;
94
+ const requested = Array.isArray(policy?.disabledToolKinds)
95
+ ? policy.disabledToolKinds.filter((kind) => typeof kind === 'string')
96
+ : [];
97
+ const required = fallback.disabledToolKinds ?? [];
98
+ const disabled = [...new Set([...required, ...requested])];
99
+ return disabled.length > 0 ? { disabledToolKinds: disabled } : {};
100
+ }
101
+ export function normalizePlatformResourceScopes(workflowType, scopes) {
102
+ const allowed = new Set([
103
+ 'saved_inbox',
104
+ 'open_tasks',
105
+ 'recent_messages',
106
+ 'conversation_summaries',
107
+ 'agent_memory',
108
+ 'agent_notes',
109
+ 'personal_library_inventory',
110
+ 'personal_library_documents',
111
+ ]);
112
+ const values = Array.isArray(scopes)
113
+ ? scopes.filter((scope) => typeof scope === 'string' && allowed.has(scope))
114
+ : [];
115
+ if (values.length > 0)
116
+ return [...new Set(values)];
117
+ return getPlatformWorkflowCatalogEntry(workflowType).defaultResourceScopes;
118
+ }
119
+ export function getPlatformAgentConversationTitle(params) {
120
+ return `[platform:${params.definitionId}:${params.mode}]`;
121
+ }
122
+ export function parsePlatformConversationTitle(title) {
123
+ const trimmed = title?.trim();
124
+ if (!trimmed?.startsWith('[platform:') || !trimmed.endsWith(']'))
125
+ return null;
126
+ const body = trimmed.slice('[platform:'.length, -1);
127
+ const splitAt = body.lastIndexOf(':');
128
+ if (splitAt <= 0)
129
+ return null;
130
+ const definitionId = body.slice(0, splitAt).trim();
131
+ const mode = body.slice(splitAt + 1).trim();
132
+ if (!definitionId || (mode !== 'workflow' && mode !== 'debug'))
133
+ return null;
134
+ return { definitionId, mode };
135
+ }
136
+ export function getPlatformDirectReplyScope(title) {
137
+ const parsed = parsePlatformConversationTitle(title);
138
+ return parsed ? `platform:${parsed.definitionId}:${parsed.mode}` : null;
139
+ }
140
+ export function getPlatformAgentLegacyConversationTitles(definitionId) {
141
+ if (definitionId === 'suggested_planner')
142
+ return ['', 'Suggested Planner'];
143
+ if (definitionId === 'library_curator')
144
+ return ['', 'Library Curator'];
145
+ return [];
146
+ }
147
+ export function buildPlatformAgentSystemPrompt(params) {
148
+ const header = [
149
+ '[Platform agent contract]',
150
+ `Agent: ${params.agentName}`,
151
+ `Definition: ${params.definitionId}`,
152
+ `Workflow type: ${params.workflowType}`,
153
+ `Run mode: ${params.mode}`,
154
+ `Workspace: ${params.workspacePath}`,
155
+ 'You are a hidden product workflow agent, not an ordinary chat assistant.',
156
+ 'Use only the provided workflow contract and resource snapshot for reasoning.',
157
+ ];
158
+ if (params.workflowType === 'planner_suggestions') {
159
+ return [
160
+ ...header,
161
+ params.mode === 'workflow'
162
+ ? 'This is a workflow run. Return only the structured planner JSON output requested by the current prompt.'
163
+ : 'This is a debug run. You may inspect inputs and explain reasoning, but do not create or refresh durable planner suggestions, tasks, or other product state.',
164
+ 'Do not act like a user-facing DM agent.',
165
+ 'Do not claim tasks or create tasks directly.',
166
+ 'End debug runs with one concise visible diagnostic reply in plain assistant text.',
167
+ 'Prefer concise, operational output over conversational filler.',
168
+ ].join('\n');
169
+ }
170
+ return [
171
+ ...header,
172
+ params.mode === 'workflow'
173
+ ? 'This is a workflow run. Return only the structured document-plan JSON requested by the current prompt.'
174
+ : 'This is a debug run. You may inspect and discuss organization, but do not mutate durable library state, manifest/index state, or saved-item processing state.',
175
+ 'Do not act like a user-facing DM agent.',
176
+ 'Do not rename, move, or delete user documents unless a future workflow contract explicitly allows it.',
177
+ 'End debug runs with one concise visible diagnostic reply in plain assistant text.',
178
+ 'Prefer disciplined document-management behavior over free-form experimentation.',
179
+ ].join('\n');
180
+ }