mstro-app 0.4.34 → 0.4.37
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/dist/server/cli/headless/claude-invoker-stream.d.ts +76 -1
- package/dist/server/cli/headless/claude-invoker-stream.d.ts.map +1 -1
- package/dist/server/cli/headless/claude-invoker-stream.js +85 -10
- package/dist/server/cli/headless/claude-invoker-stream.js.map +1 -1
- package/dist/server/cli/headless/claude-invoker.d.ts.map +1 -1
- package/dist/server/cli/headless/claude-invoker.js +2 -0
- package/dist/server/cli/headless/claude-invoker.js.map +1 -1
- package/dist/server/cli/headless/haiku-assessments.d.ts.map +1 -1
- package/dist/server/cli/headless/haiku-assessments.js +10 -5
- package/dist/server/cli/headless/haiku-assessments.js.map +1 -1
- package/dist/server/cli/improvisation-retry.d.ts.map +1 -1
- package/dist/server/cli/improvisation-retry.js +17 -2
- package/dist/server/cli/improvisation-retry.js.map +1 -1
- package/dist/server/cli/improvisation-session-manager.d.ts +4 -0
- package/dist/server/cli/improvisation-session-manager.d.ts.map +1 -1
- package/dist/server/cli/improvisation-session-manager.js +61 -42
- package/dist/server/cli/improvisation-session-manager.js.map +1 -1
- package/dist/server/cli/improvisation-types.d.ts +1 -0
- package/dist/server/cli/improvisation-types.d.ts.map +1 -1
- package/dist/server/cli/improvisation-types.js.map +1 -1
- package/dist/server/services/websocket/git-head-watcher.d.ts +25 -0
- package/dist/server/services/websocket/git-head-watcher.d.ts.map +1 -0
- package/dist/server/services/websocket/git-head-watcher.js +136 -0
- package/dist/server/services/websocket/git-head-watcher.js.map +1 -0
- package/dist/server/services/websocket/git-worktree-handlers.js +47 -6
- package/dist/server/services/websocket/git-worktree-handlers.js.map +1 -1
- package/dist/server/services/websocket/handler-context.d.ts +2 -0
- package/dist/server/services/websocket/handler-context.d.ts.map +1 -1
- package/dist/server/services/websocket/handler.d.ts +3 -1
- package/dist/server/services/websocket/handler.d.ts.map +1 -1
- package/dist/server/services/websocket/handler.js +18 -6
- package/dist/server/services/websocket/handler.js.map +1 -1
- package/dist/server/services/websocket/plan-board-handlers.d.ts +1 -0
- package/dist/server/services/websocket/plan-board-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/plan-board-handlers.js +94 -0
- package/dist/server/services/websocket/plan-board-handlers.js.map +1 -1
- package/dist/server/services/websocket/plan-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/plan-handlers.js +3 -1
- package/dist/server/services/websocket/plan-handlers.js.map +1 -1
- package/dist/server/services/websocket/quality-persistence.d.ts +7 -0
- package/dist/server/services/websocket/quality-persistence.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-persistence.js +15 -7
- package/dist/server/services/websocket/quality-persistence.js.map +1 -1
- package/dist/server/services/websocket/quality-review-agent.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-review-agent.js +2 -13
- package/dist/server/services/websocket/quality-review-agent.js.map +1 -1
- package/dist/server/services/websocket/quality-service.d.ts +12 -3
- package/dist/server/services/websocket/quality-service.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-service.js +101 -81
- package/dist/server/services/websocket/quality-service.js.map +1 -1
- package/dist/server/services/websocket/quality-tools.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-tools.js +6 -1
- package/dist/server/services/websocket/quality-tools.js.map +1 -1
- package/dist/server/services/websocket/quality-types.d.ts +15 -2
- package/dist/server/services/websocket/quality-types.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-types.js.map +1 -1
- package/dist/server/services/websocket/session-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/session-handlers.js +13 -3
- package/dist/server/services/websocket/session-handlers.js.map +1 -1
- package/dist/server/services/websocket/skill-handlers.d.ts +9 -0
- package/dist/server/services/websocket/skill-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/skill-handlers.js +244 -3
- package/dist/server/services/websocket/skill-handlers.js.map +1 -1
- package/dist/server/services/websocket/tab-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/tab-handlers.js +9 -2
- package/dist/server/services/websocket/tab-handlers.js.map +1 -1
- package/dist/server/services/websocket/types.d.ts +44 -3
- package/dist/server/services/websocket/types.d.ts.map +1 -1
- package/dist/server/services/websocket/types.js +38 -0
- package/dist/server/services/websocket/types.js.map +1 -1
- package/package.json +2 -1
- package/server/cli/headless/claude-invoker-stream.ts +163 -18
- package/server/cli/headless/claude-invoker.ts +2 -0
- package/server/cli/headless/haiku-assessments.ts +10 -5
- package/server/cli/improvisation-retry.ts +18 -2
- package/server/cli/improvisation-session-manager.ts +69 -45
- package/server/cli/improvisation-types.ts +1 -0
- package/server/services/plan/agents/assess-stall.md +21 -0
- package/server/services/plan/agents/check-injection.md +36 -0
- package/server/services/plan/agents/classify-error.md +29 -0
- package/server/services/plan/agents/detect-context-loss.md +29 -0
- package/server/services/plan/agents/execute-issue.md +42 -0
- package/server/services/plan/agents/plan-coordinator.md +71 -0
- package/server/services/plan/agents/retry-task.md +26 -0
- package/server/services/plan/agents/review-code.md +4 -1
- package/server/services/plan/agents/review-criteria.md +53 -0
- package/server/services/plan/agents/review-custom.md +4 -1
- package/server/services/plan/agents/review-quality.md +4 -1
- package/server/services/plan/agents/verify-review.md +56 -0
- package/server/services/websocket/git-head-watcher.ts +120 -0
- package/server/services/websocket/git-worktree-handlers.ts +57 -7
- package/server/services/websocket/handler-context.ts +2 -0
- package/server/services/websocket/handler.ts +19 -6
- package/server/services/websocket/plan-board-handlers.ts +116 -0
- package/server/services/websocket/plan-handlers.ts +3 -1
- package/server/services/websocket/quality-persistence.ts +23 -7
- package/server/services/websocket/quality-review-agent.ts +2 -12
- package/server/services/websocket/quality-service.ts +116 -99
- package/server/services/websocket/quality-tools.ts +6 -1
- package/server/services/websocket/quality-types.ts +17 -2
- package/server/services/websocket/session-handlers.ts +19 -3
- package/server/services/websocket/skill-handlers.ts +260 -3
- package/server/services/websocket/tab-handlers.ts +8 -2
- package/server/services/websocket/types.ts +123 -324
|
@@ -14,16 +14,56 @@ export interface WSContext {
|
|
|
14
14
|
_workingDir?: string;
|
|
15
15
|
_ws?: unknown;
|
|
16
16
|
}
|
|
17
|
+
declare const CoreMessages: readonly ["execute", "cancel", "getHistory", "getSessions", "getSessionsCount", "deleteSession", "getSessionById", "clearHistory", "searchHistory", "new", "autocomplete", "readFile", "ping", "initTab", "resumeSession", "approve", "reject", "recordSelection", "requestNotificationSummary"];
|
|
18
|
+
declare const TerminalMessages: readonly ["terminalInit", "terminalReconnect", "terminalList", "terminalInput", "terminalResize", "terminalClose"];
|
|
19
|
+
declare const FileExplorerMessages: readonly ["listDirectory", "writeFile", "createFile", "createDirectory", "deleteFile", "renameFile", "notifyFileOpened", "searchFileContents", "cancelSearch", "findDefinition"];
|
|
20
|
+
declare const GitMessages: readonly ["gitStatus", "gitStage", "gitUnstage", "gitCommit", "gitCommitWithAI", "gitPush", "gitPull", "gitLog", "gitDiscoverRepos", "gitSetDirectory", "gitGetRemoteInfo", "gitCreatePR", "gitGeneratePRDescription"];
|
|
21
|
+
declare const GitBranchMessages: readonly ["gitListBranches", "gitCheckout", "gitCreateBranch", "gitDeleteBranch"];
|
|
22
|
+
declare const GitDiffMessages: readonly ["gitDiff", "gitShowCommit", "gitCommitDiff"];
|
|
23
|
+
declare const GitTagMessages: readonly ["gitListTags", "gitCreateTag", "gitPushTag"];
|
|
24
|
+
declare const GitWorktreeMessages: readonly ["gitWorktreeList", "gitWorktreeCreate", "gitWorktreeCreateAndAssign", "gitWorktreeRemove", "tabWorktreeSwitch", "gitWorktreePush", "gitWorktreeCreatePR"];
|
|
25
|
+
declare const GitMergeMessages: readonly ["gitMergePreview", "gitWorktreeMerge", "gitMergeAbort", "gitMergeComplete"];
|
|
26
|
+
declare const SessionSyncMessages: readonly ["getActiveTabs", "createTab", "reorderTabs", "syncTabMeta", "syncPromptText", "removeTab", "markTabViewed"];
|
|
27
|
+
declare const SettingsMessages: readonly ["getSettings", "updateSettings"];
|
|
28
|
+
declare const QualityMessages: readonly ["qualityDetectTools", "qualityScan", "qualityInstallTools", "qualityCodeReview", "qualityFixIssues", "qualityLoadState", "qualitySaveDirectories"];
|
|
29
|
+
declare const FileUploadMessages: readonly ["fileUploadStart", "fileUploadChunk", "fileUploadComplete", "fileUploadCancel"];
|
|
30
|
+
declare const PlanMessages: readonly ["planInit", "planGetState", "planListIssues", "planGetIssue", "planGetSprint", "planGetMilestone", "planCreateIssue", "planUpdateIssue", "planDeleteIssue", "planScaffold", "planPrompt", "planExecute", "planExecuteEpic", "planPause", "planStop", "planResume"];
|
|
31
|
+
declare const PlanBoardMessages: readonly ["planCreateBoard", "planUpdateBoard", "planArchiveBoard", "planGetBoard", "planGetBoardState", "planReorderBoards", "planSetActiveBoard", "planGetBoardArtifacts"];
|
|
32
|
+
declare const PlanSprintMessages: readonly ["planCreateSprint", "planActivateSprint", "planCompleteSprint", "planGetSprintArtifacts"];
|
|
33
|
+
declare const DeployMessages: readonly ["deployCreate", "deployStop", "deployResume", "deployDelete", "deployList", "deployGetStatus", "deployUpdateConfig", "deploySetApiKey", "deployValidateApiKey"];
|
|
34
|
+
declare const DeployRelayMessages: readonly ["deployHttpRequest", "deployUsageReport", "deployAiHealthUpdate"];
|
|
35
|
+
declare const SkillMessages: readonly ["listSkills", "chatToBoard"];
|
|
36
|
+
type WebSocketMessageType = typeof CoreMessages[number] | typeof TerminalMessages[number] | typeof FileExplorerMessages[number] | typeof GitMessages[number] | typeof GitBranchMessages[number] | typeof GitDiffMessages[number] | typeof GitTagMessages[number] | typeof GitWorktreeMessages[number] | typeof GitMergeMessages[number] | typeof SessionSyncMessages[number] | typeof SettingsMessages[number] | typeof QualityMessages[number] | typeof FileUploadMessages[number] | typeof PlanMessages[number] | typeof PlanBoardMessages[number] | typeof PlanSprintMessages[number] | typeof DeployMessages[number] | typeof DeployRelayMessages[number] | typeof SkillMessages[number];
|
|
17
37
|
export interface WebSocketMessage {
|
|
18
|
-
type:
|
|
38
|
+
type: WebSocketMessageType;
|
|
19
39
|
tabId?: string;
|
|
20
40
|
terminalId?: string;
|
|
21
41
|
data?: any;
|
|
22
42
|
/** Injected by server relay for view-only shared users */
|
|
23
43
|
_permission?: 'view';
|
|
24
44
|
}
|
|
45
|
+
declare const CoreResponseMessages: readonly ["output", "thinking", "movementStart", "movementComplete", "movementError", "sessionUpdate", "history", "sessions", "sessionsCount", "sessionDeleted", "sessionData", "historyCleared", "searchResults", "newSession", "autocomplete", "fileContent", "error", "pong", "tabInitialized", "approvalRequired", "toolUse", "streamingTokens", "notificationSummary"];
|
|
46
|
+
declare const TerminalResponseMessages: readonly ["terminalOutput", "terminalReady", "terminalExit", "terminalError", "terminalList", "terminalScrollback", "terminalCreated", "terminalClosed"];
|
|
47
|
+
declare const FileExplorerResponseMessages: readonly ["directoryListing", "fileWritten", "fileCreated", "directoryCreated", "fileDeleted", "fileRenamed", "fileOpened", "fileContentChanged", "contentSearchResults", "contentSearchComplete", "contentSearchError", "definitionResult", "fileError"];
|
|
48
|
+
declare const GitResponseMessages: readonly ["gitStatus", "gitStaged", "gitUnstaged", "gitCommitted", "gitCommitMessage", "gitPushed", "gitPulled", "gitLog", "gitError", "gitReposDiscovered", "gitDirectorySet", "gitRemoteInfo", "gitPRCreated", "gitPRDescription"];
|
|
49
|
+
declare const GitBranchResponseMessages: readonly ["gitBranchList", "gitCheckedOut", "gitBranchCreated", "gitBranchDeleted"];
|
|
50
|
+
declare const GitDiffResponseMessages: readonly ["gitDiffResult", "gitCommitDetail", "gitCommitDiffResult"];
|
|
51
|
+
declare const GitTagResponseMessages: readonly ["gitTagList", "gitTagCreated", "gitTagPushed"];
|
|
52
|
+
declare const GitWorktreeResponseMessages: readonly ["gitWorktreeListResult", "gitWorktreeCreated", "gitWorktreeCreatedAndAssigned", "gitWorktreeRemoved", "tabWorktreeSwitched", "gitBranchChanged", "gitWorktreePushed", "gitWorktreePRCreated"];
|
|
53
|
+
declare const GitMergeResponseMessages: readonly ["gitMergePreviewResult", "gitWorktreeMergeResult", "gitMergeAborted", "gitMergeCompleted"];
|
|
54
|
+
declare const SessionSyncResponseMessages: readonly ["activeTabs", "tabCreated", "tabRemoved", "tabRenamed", "tabsReordered", "promptTextSync", "tabViewed", "tabStateChanged"];
|
|
55
|
+
declare const SettingsResponseMessages: readonly ["settings", "settingsUpdated"];
|
|
56
|
+
declare const QualityResponseMessages: readonly ["qualityToolsDetected", "qualityScanProgress", "qualityScanResults", "qualityInstallProgress", "qualityInstallComplete", "qualityCodeReview", "qualityCodeReviewProgress", "qualityPostSession", "qualityFixProgress", "qualityFixComplete", "qualityError", "qualityStateLoaded"];
|
|
57
|
+
declare const FileUploadResponseMessages: readonly ["fileUploadAck", "fileUploadReady", "fileUploadError"];
|
|
58
|
+
declare const PlanResponseMessages: readonly ["planState", "planIssueList", "planIssue", "planSprint", "planMilestone", "planNotFound", "planStateUpdated", "planIssueUpdated", "planIssueCreated", "planIssueDeleted", "planScaffolded", "planPromptStreaming", "planPromptProgress", "planPromptResponse", "planExecutionStarted", "planExecutionProgress", "planExecutionOutput", "planExecutionMetrics", "planExecutionComplete", "planExecutionError", "planError"];
|
|
59
|
+
declare const PlanBoardResponseMessages: readonly ["planBoardCreated", "planBoardUpdated", "planBoardArchived", "planBoardState", "planBoardArtifacts", "planWorkspaceUpdated"];
|
|
60
|
+
declare const PlanSprintResponseMessages: readonly ["planSprintCreated", "planSprintUpdated", "planSprintCompleted", "planSprintArtifacts", "planReviewProgress"];
|
|
61
|
+
declare const DeployResponseMessages: readonly ["deployCreated", "deployStopped", "deployResumed", "deployDeleted", "deployListResult", "deployStatusResult", "deployConfigUpdated", "deployApiKeyStatus", "deployError"];
|
|
62
|
+
declare const DeployRelayResponseMessages: readonly ["deployHttpResponse", "deployHttpResponseChunk", "deployStatus", "deployUsageReportAck", "deployAiHealthAck"];
|
|
63
|
+
declare const SkillResponseMessages: readonly ["skillsList", "chatToBoardCreated"];
|
|
64
|
+
type WebSocketResponseType = typeof CoreResponseMessages[number] | typeof TerminalResponseMessages[number] | typeof FileExplorerResponseMessages[number] | typeof GitResponseMessages[number] | typeof GitBranchResponseMessages[number] | typeof GitDiffResponseMessages[number] | typeof GitTagResponseMessages[number] | typeof GitWorktreeResponseMessages[number] | typeof GitMergeResponseMessages[number] | typeof SessionSyncResponseMessages[number] | typeof SettingsResponseMessages[number] | typeof QualityResponseMessages[number] | typeof FileUploadResponseMessages[number] | typeof PlanResponseMessages[number] | typeof PlanBoardResponseMessages[number] | typeof PlanSprintResponseMessages[number] | typeof DeployResponseMessages[number] | typeof DeployRelayResponseMessages[number] | typeof SkillResponseMessages[number];
|
|
25
65
|
export interface WebSocketResponse {
|
|
26
|
-
type:
|
|
66
|
+
type: WebSocketResponseType;
|
|
27
67
|
tabId?: string;
|
|
28
68
|
terminalId?: string;
|
|
29
69
|
data?: any;
|
|
@@ -36,7 +76,7 @@ export interface SkillEntry {
|
|
|
36
76
|
name: string;
|
|
37
77
|
displayName: string;
|
|
38
78
|
description: string;
|
|
39
|
-
source: 'project' | 'system' | 'builtin';
|
|
79
|
+
source: 'project' | 'user' | 'system' | 'builtin' | 'platform';
|
|
40
80
|
}
|
|
41
81
|
export interface AutocompleteResult {
|
|
42
82
|
value: string;
|
|
@@ -554,4 +594,5 @@ export interface DeployAiHealthUpdateData {
|
|
|
554
594
|
/** Whether AI features are currently disabled locally */
|
|
555
595
|
aiDisabled: boolean;
|
|
556
596
|
}
|
|
597
|
+
export {};
|
|
557
598
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../server/services/websocket/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../server/services/websocket/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,42 @@
|
|
|
1
1
|
// Copyright (c) 2025-present Mstro, Inc. All rights reserved.
|
|
2
2
|
// Licensed under the MIT License. See LICENSE file for details.
|
|
3
|
+
const CoreMessages = ['execute', 'cancel', 'getHistory', 'getSessions', 'getSessionsCount', 'deleteSession', 'getSessionById', 'clearHistory', 'searchHistory', 'new', 'autocomplete', 'readFile', 'ping', 'initTab', 'resumeSession', 'approve', 'reject', 'recordSelection', 'requestNotificationSummary'];
|
|
4
|
+
const TerminalMessages = ['terminalInit', 'terminalReconnect', 'terminalList', 'terminalInput', 'terminalResize', 'terminalClose'];
|
|
5
|
+
const FileExplorerMessages = ['listDirectory', 'writeFile', 'createFile', 'createDirectory', 'deleteFile', 'renameFile', 'notifyFileOpened', 'searchFileContents', 'cancelSearch', 'findDefinition'];
|
|
6
|
+
const GitMessages = ['gitStatus', 'gitStage', 'gitUnstage', 'gitCommit', 'gitCommitWithAI', 'gitPush', 'gitPull', 'gitLog', 'gitDiscoverRepos', 'gitSetDirectory', 'gitGetRemoteInfo', 'gitCreatePR', 'gitGeneratePRDescription'];
|
|
7
|
+
const GitBranchMessages = ['gitListBranches', 'gitCheckout', 'gitCreateBranch', 'gitDeleteBranch'];
|
|
8
|
+
const GitDiffMessages = ['gitDiff', 'gitShowCommit', 'gitCommitDiff'];
|
|
9
|
+
const GitTagMessages = ['gitListTags', 'gitCreateTag', 'gitPushTag'];
|
|
10
|
+
const GitWorktreeMessages = ['gitWorktreeList', 'gitWorktreeCreate', 'gitWorktreeCreateAndAssign', 'gitWorktreeRemove', 'tabWorktreeSwitch', 'gitWorktreePush', 'gitWorktreeCreatePR'];
|
|
11
|
+
const GitMergeMessages = ['gitMergePreview', 'gitWorktreeMerge', 'gitMergeAbort', 'gitMergeComplete'];
|
|
12
|
+
const SessionSyncMessages = ['getActiveTabs', 'createTab', 'reorderTabs', 'syncTabMeta', 'syncPromptText', 'removeTab', 'markTabViewed'];
|
|
13
|
+
const SettingsMessages = ['getSettings', 'updateSettings'];
|
|
14
|
+
const QualityMessages = ['qualityDetectTools', 'qualityScan', 'qualityInstallTools', 'qualityCodeReview', 'qualityFixIssues', 'qualityLoadState', 'qualitySaveDirectories'];
|
|
15
|
+
const FileUploadMessages = ['fileUploadStart', 'fileUploadChunk', 'fileUploadComplete', 'fileUploadCancel'];
|
|
16
|
+
const PlanMessages = ['planInit', 'planGetState', 'planListIssues', 'planGetIssue', 'planGetSprint', 'planGetMilestone', 'planCreateIssue', 'planUpdateIssue', 'planDeleteIssue', 'planScaffold', 'planPrompt', 'planExecute', 'planExecuteEpic', 'planPause', 'planStop', 'planResume'];
|
|
17
|
+
const PlanBoardMessages = ['planCreateBoard', 'planUpdateBoard', 'planArchiveBoard', 'planGetBoard', 'planGetBoardState', 'planReorderBoards', 'planSetActiveBoard', 'planGetBoardArtifacts'];
|
|
18
|
+
const PlanSprintMessages = ['planCreateSprint', 'planActivateSprint', 'planCompleteSprint', 'planGetSprintArtifacts'];
|
|
19
|
+
const DeployMessages = ['deployCreate', 'deployStop', 'deployResume', 'deployDelete', 'deployList', 'deployGetStatus', 'deployUpdateConfig', 'deploySetApiKey', 'deployValidateApiKey'];
|
|
20
|
+
const DeployRelayMessages = ['deployHttpRequest', 'deployUsageReport', 'deployAiHealthUpdate'];
|
|
21
|
+
const SkillMessages = ['listSkills', 'chatToBoard'];
|
|
22
|
+
const CoreResponseMessages = ['output', 'thinking', 'movementStart', 'movementComplete', 'movementError', 'sessionUpdate', 'history', 'sessions', 'sessionsCount', 'sessionDeleted', 'sessionData', 'historyCleared', 'searchResults', 'newSession', 'autocomplete', 'fileContent', 'error', 'pong', 'tabInitialized', 'approvalRequired', 'toolUse', 'streamingTokens', 'notificationSummary'];
|
|
23
|
+
const TerminalResponseMessages = ['terminalOutput', 'terminalReady', 'terminalExit', 'terminalError', 'terminalList', 'terminalScrollback', 'terminalCreated', 'terminalClosed'];
|
|
24
|
+
const FileExplorerResponseMessages = ['directoryListing', 'fileWritten', 'fileCreated', 'directoryCreated', 'fileDeleted', 'fileRenamed', 'fileOpened', 'fileContentChanged', 'contentSearchResults', 'contentSearchComplete', 'contentSearchError', 'definitionResult', 'fileError'];
|
|
25
|
+
const GitResponseMessages = ['gitStatus', 'gitStaged', 'gitUnstaged', 'gitCommitted', 'gitCommitMessage', 'gitPushed', 'gitPulled', 'gitLog', 'gitError', 'gitReposDiscovered', 'gitDirectorySet', 'gitRemoteInfo', 'gitPRCreated', 'gitPRDescription'];
|
|
26
|
+
const GitBranchResponseMessages = ['gitBranchList', 'gitCheckedOut', 'gitBranchCreated', 'gitBranchDeleted'];
|
|
27
|
+
const GitDiffResponseMessages = ['gitDiffResult', 'gitCommitDetail', 'gitCommitDiffResult'];
|
|
28
|
+
const GitTagResponseMessages = ['gitTagList', 'gitTagCreated', 'gitTagPushed'];
|
|
29
|
+
const GitWorktreeResponseMessages = ['gitWorktreeListResult', 'gitWorktreeCreated', 'gitWorktreeCreatedAndAssigned', 'gitWorktreeRemoved', 'tabWorktreeSwitched', 'gitBranchChanged', 'gitWorktreePushed', 'gitWorktreePRCreated'];
|
|
30
|
+
const GitMergeResponseMessages = ['gitMergePreviewResult', 'gitWorktreeMergeResult', 'gitMergeAborted', 'gitMergeCompleted'];
|
|
31
|
+
const SessionSyncResponseMessages = ['activeTabs', 'tabCreated', 'tabRemoved', 'tabRenamed', 'tabsReordered', 'promptTextSync', 'tabViewed', 'tabStateChanged'];
|
|
32
|
+
const SettingsResponseMessages = ['settings', 'settingsUpdated'];
|
|
33
|
+
const QualityResponseMessages = ['qualityToolsDetected', 'qualityScanProgress', 'qualityScanResults', 'qualityInstallProgress', 'qualityInstallComplete', 'qualityCodeReview', 'qualityCodeReviewProgress', 'qualityPostSession', 'qualityFixProgress', 'qualityFixComplete', 'qualityError', 'qualityStateLoaded'];
|
|
34
|
+
const FileUploadResponseMessages = ['fileUploadAck', 'fileUploadReady', 'fileUploadError'];
|
|
35
|
+
const PlanResponseMessages = ['planState', 'planIssueList', 'planIssue', 'planSprint', 'planMilestone', 'planNotFound', 'planStateUpdated', 'planIssueUpdated', 'planIssueCreated', 'planIssueDeleted', 'planScaffolded', 'planPromptStreaming', 'planPromptProgress', 'planPromptResponse', 'planExecutionStarted', 'planExecutionProgress', 'planExecutionOutput', 'planExecutionMetrics', 'planExecutionComplete', 'planExecutionError', 'planError'];
|
|
36
|
+
const PlanBoardResponseMessages = ['planBoardCreated', 'planBoardUpdated', 'planBoardArchived', 'planBoardState', 'planBoardArtifacts', 'planWorkspaceUpdated'];
|
|
37
|
+
const PlanSprintResponseMessages = ['planSprintCreated', 'planSprintUpdated', 'planSprintCompleted', 'planSprintArtifacts', 'planReviewProgress'];
|
|
38
|
+
const DeployResponseMessages = ['deployCreated', 'deployStopped', 'deployResumed', 'deployDeleted', 'deployListResult', 'deployStatusResult', 'deployConfigUpdated', 'deployApiKeyStatus', 'deployError'];
|
|
39
|
+
const DeployRelayResponseMessages = ['deployHttpResponse', 'deployHttpResponseChunk', 'deployStatus', 'deployUsageReportAck', 'deployAiHealthAck'];
|
|
40
|
+
const SkillResponseMessages = ['skillsList', 'chatToBoardCreated'];
|
|
3
41
|
export {};
|
|
4
42
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../server/services/websocket/types.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../server/services/websocket/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mstro-app",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.37",
|
|
4
4
|
"description": "Run Claude Code from any browser - streams live sessions from your machine to mstro.app",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -74,6 +74,7 @@
|
|
|
74
74
|
"@biomejs/biome": "^2.3.13",
|
|
75
75
|
"@types/node": "^24.10.7",
|
|
76
76
|
"@types/ws": "^8.18.1",
|
|
77
|
+
"prettier": "^3.8.2",
|
|
77
78
|
"typescript": "~5.9.3",
|
|
78
79
|
"vitest": "^4.0.18"
|
|
79
80
|
}
|
|
@@ -6,8 +6,73 @@ import type { NativeTimeoutDetector } from './native-timeout-detector.js';
|
|
|
6
6
|
import { classifyError } from './stall-assessor.js';
|
|
7
7
|
import type { ResolvedHeadlessConfig, ToolUseAccumulator } from './types.js';
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
type
|
|
9
|
+
interface StreamContentBlock {
|
|
10
|
+
type: string;
|
|
11
|
+
text?: string;
|
|
12
|
+
thinking?: string;
|
|
13
|
+
name?: string;
|
|
14
|
+
id?: string;
|
|
15
|
+
input?: Record<string, unknown>;
|
|
16
|
+
tool_use_id?: string;
|
|
17
|
+
content?: string | unknown;
|
|
18
|
+
is_error?: boolean;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
interface StreamTokenUsage {
|
|
22
|
+
input_tokens?: number;
|
|
23
|
+
output_tokens?: number;
|
|
24
|
+
cache_creation_input_tokens?: number;
|
|
25
|
+
cache_read_input_tokens?: number;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
type StreamJson = {
|
|
29
|
+
type: string;
|
|
30
|
+
subtype?: string;
|
|
31
|
+
session_id?: string;
|
|
32
|
+
stop_reason?: string;
|
|
33
|
+
is_error?: boolean;
|
|
34
|
+
error?: string | { message?: string };
|
|
35
|
+
result?: string;
|
|
36
|
+
message?: {
|
|
37
|
+
content?: StreamContentBlock[];
|
|
38
|
+
usage?: StreamTokenUsage;
|
|
39
|
+
};
|
|
40
|
+
event?: {
|
|
41
|
+
type: string;
|
|
42
|
+
delta?: {
|
|
43
|
+
type: string;
|
|
44
|
+
thinking?: string;
|
|
45
|
+
text?: string;
|
|
46
|
+
partial_json?: string;
|
|
47
|
+
};
|
|
48
|
+
content_block?: {
|
|
49
|
+
type: string;
|
|
50
|
+
name?: string;
|
|
51
|
+
id?: string;
|
|
52
|
+
};
|
|
53
|
+
index?: number;
|
|
54
|
+
message?: { usage?: StreamTokenUsage };
|
|
55
|
+
usage?: { output_tokens?: number };
|
|
56
|
+
};
|
|
57
|
+
usage?: StreamTokenUsage;
|
|
58
|
+
delta?: {
|
|
59
|
+
type: string;
|
|
60
|
+
thinking?: string;
|
|
61
|
+
text?: string;
|
|
62
|
+
partial_json?: string;
|
|
63
|
+
};
|
|
64
|
+
content_block?: {
|
|
65
|
+
type: string;
|
|
66
|
+
name?: string;
|
|
67
|
+
id?: string;
|
|
68
|
+
};
|
|
69
|
+
index?: number;
|
|
70
|
+
text?: string;
|
|
71
|
+
thinking?: string;
|
|
72
|
+
name?: string;
|
|
73
|
+
id?: string;
|
|
74
|
+
input?: Record<string, unknown>;
|
|
75
|
+
};
|
|
11
76
|
|
|
12
77
|
export interface StreamHandlerContext {
|
|
13
78
|
config: ResolvedHeadlessConfig;
|
|
@@ -29,6 +94,11 @@ export interface StreamHandlerContext {
|
|
|
29
94
|
lastTokenActivityTime: number;
|
|
30
95
|
/** Claude Code result event stop_reason (e.g., 'end_turn', 'max_tokens') */
|
|
31
96
|
stopReason?: string;
|
|
97
|
+
/** True once any stream_event text_delta has been received — used to skip
|
|
98
|
+
* duplicate text from assistant messages emitted alongside streaming deltas. */
|
|
99
|
+
hasReceivedTextDeltas: boolean;
|
|
100
|
+
/** Same guard for thinking deltas */
|
|
101
|
+
hasReceivedThinkingDeltas: boolean;
|
|
32
102
|
}
|
|
33
103
|
|
|
34
104
|
/** Log messages when verbose mode is enabled */
|
|
@@ -61,6 +131,8 @@ function handleThinkingDelta(event: StreamJson, ctx: StreamHandlerContext): stri
|
|
|
61
131
|
return ctx.accumulatedThinking;
|
|
62
132
|
}
|
|
63
133
|
|
|
134
|
+
ctx.hasReceivedThinkingDeltas = true;
|
|
135
|
+
|
|
64
136
|
if (ctx.resumeAssessmentActive) {
|
|
65
137
|
ctx.resumeAssessmentActive = false;
|
|
66
138
|
if (ctx.resumeAssessmentBuffer) {
|
|
@@ -92,6 +164,7 @@ function handleTextDelta(event: StreamJson, ctx: StreamHandlerContext): string {
|
|
|
92
164
|
return ctx.accumulatedAssistantResponse;
|
|
93
165
|
}
|
|
94
166
|
|
|
167
|
+
ctx.hasReceivedTextDeltas = true;
|
|
95
168
|
const text = event.delta.text;
|
|
96
169
|
const updated = ctx.accumulatedAssistantResponse + text;
|
|
97
170
|
|
|
@@ -210,23 +283,94 @@ function handleToolResult(parsed: StreamJson, ctx: StreamHandlerContext): void {
|
|
|
210
283
|
|
|
211
284
|
// ========== Stream Processing ==========
|
|
212
285
|
|
|
286
|
+
function handleAssistantTextBlock(block: StreamJson, ctx: StreamHandlerContext): void {
|
|
287
|
+
if (ctx.hasReceivedTextDeltas) return;
|
|
288
|
+
ctx.accumulatedAssistantResponse += block.text!;
|
|
289
|
+
ctx.config.outputCallback?.(block.text!);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
function handleAssistantThinkingBlock(block: StreamJson, ctx: StreamHandlerContext): void {
|
|
293
|
+
if (ctx.hasReceivedThinkingDeltas) return;
|
|
294
|
+
ctx.accumulatedThinking += block.thinking!;
|
|
295
|
+
if (ctx.config.thinkingCallback) {
|
|
296
|
+
ctx.config.thinkingCallback(block.thinking!);
|
|
297
|
+
} else {
|
|
298
|
+
ctx.config.outputCallback?.(block.thinking!);
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
function handleAssistantToolUseBlock(block: StreamJson, ctx: StreamHandlerContext): void {
|
|
303
|
+
const toolInput = block.input || {};
|
|
304
|
+
ctx.accumulatedToolUse.push({
|
|
305
|
+
toolName: block.name!, toolId: block.id!,
|
|
306
|
+
toolInput, startTime: Date.now(),
|
|
307
|
+
});
|
|
308
|
+
ctx.config.toolUseCallback?.({
|
|
309
|
+
type: 'tool_start', toolName: block.name!, toolId: block.id!, index: 0,
|
|
310
|
+
});
|
|
311
|
+
ctx.config.toolUseCallback?.({
|
|
312
|
+
type: 'tool_complete', toolName: block.name!, toolId: block.id!,
|
|
313
|
+
index: 0, completeInput: toolInput,
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
function handleAssistantContentBlock(block: StreamJson, ctx: StreamHandlerContext): void {
|
|
318
|
+
if (block.type === 'text' && block.text) handleAssistantTextBlock(block, ctx);
|
|
319
|
+
else if (block.type === 'thinking' && block.thinking) handleAssistantThinkingBlock(block, ctx);
|
|
320
|
+
else if (block.type === 'tool_use' && block.name && block.id) handleAssistantToolUseBlock(block, ctx);
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
/**
|
|
324
|
+
* Handle a complete `assistant` message event.
|
|
325
|
+
* Claude Code emits these instead of (or alongside) stream_event deltas when
|
|
326
|
+
* running skill commands or when --include-partial-messages is unsupported.
|
|
327
|
+
*/
|
|
328
|
+
function handleAssistantMessage(parsed: StreamJson, ctx: StreamHandlerContext): void {
|
|
329
|
+
if (parsed.type !== 'assistant' || !parsed.message?.content) return;
|
|
330
|
+
const content = parsed.message.content;
|
|
331
|
+
if (!Array.isArray(content)) return;
|
|
332
|
+
|
|
333
|
+
for (const block of content) handleAssistantContentBlock(block, ctx);
|
|
334
|
+
|
|
335
|
+
if (ctx.resumeAssessmentActive) {
|
|
336
|
+
ctx.resumeAssessmentActive = false;
|
|
337
|
+
if (ctx.resumeAssessmentBuffer) {
|
|
338
|
+
ctx.config.outputCallback?.(ctx.resumeAssessmentBuffer);
|
|
339
|
+
ctx.resumeAssessmentBuffer = '';
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
function extractErrorMessage(parsed: StreamJson): string {
|
|
345
|
+
const errObj = typeof parsed.error === 'object' ? parsed.error?.message : parsed.error;
|
|
346
|
+
return errObj || String(parsed.message ?? '') || JSON.stringify(parsed);
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
function handleResultEvent(parsed: StreamJson, ctx: StreamHandlerContext): boolean {
|
|
350
|
+
handleResultTokenUsage(parsed, ctx);
|
|
351
|
+
if (parsed.stop_reason) {
|
|
352
|
+
ctx.stopReason = parsed.stop_reason;
|
|
353
|
+
}
|
|
354
|
+
if (parsed.is_error) {
|
|
355
|
+
const errorMessage = parsed.error || parsed.result || 'Unknown error in result';
|
|
356
|
+
ctx.config.outputCallback?.(`\n[[MSTRO_ERROR:CLAUDE_RESULT_ERROR]] ${errorMessage}\n`);
|
|
357
|
+
return true;
|
|
358
|
+
}
|
|
359
|
+
if (!ctx.accumulatedAssistantResponse && parsed.result && typeof parsed.result === 'string') {
|
|
360
|
+
ctx.accumulatedAssistantResponse = parsed.result;
|
|
361
|
+
ctx.config.outputCallback?.(parsed.result);
|
|
362
|
+
}
|
|
363
|
+
return false;
|
|
364
|
+
}
|
|
365
|
+
|
|
213
366
|
export function processStreamEvent(parsed: StreamJson, ctx: StreamHandlerContext): void {
|
|
214
367
|
if (parsed.type === 'error') {
|
|
215
|
-
|
|
216
|
-
ctx.config.outputCallback?.(`\n[[MSTRO_ERROR:CLAUDE_ERROR]] ${errorMessage}\n`);
|
|
368
|
+
ctx.config.outputCallback?.(`\n[[MSTRO_ERROR:CLAUDE_ERROR]] ${extractErrorMessage(parsed)}\n`);
|
|
217
369
|
return;
|
|
218
370
|
}
|
|
219
371
|
|
|
220
372
|
if (parsed.type === 'result') {
|
|
221
|
-
|
|
222
|
-
if (parsed.stop_reason) {
|
|
223
|
-
ctx.stopReason = parsed.stop_reason;
|
|
224
|
-
}
|
|
225
|
-
if (parsed.is_error) {
|
|
226
|
-
const errorMessage = parsed.error || parsed.result || 'Unknown error in result';
|
|
227
|
-
ctx.config.outputCallback?.(`\n[[MSTRO_ERROR:CLAUDE_RESULT_ERROR]] ${errorMessage}\n`);
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
373
|
+
if (handleResultEvent(parsed, ctx)) return;
|
|
230
374
|
}
|
|
231
375
|
|
|
232
376
|
if (parsed.type === 'stream_event' && parsed.event) {
|
|
@@ -236,6 +380,7 @@ export function processStreamEvent(parsed: StreamJson, ctx: StreamHandlerContext
|
|
|
236
380
|
handleToolStreamEvents(event, ctx);
|
|
237
381
|
handleTokenUsage(event, ctx);
|
|
238
382
|
}
|
|
383
|
+
handleAssistantMessage(parsed, ctx);
|
|
239
384
|
handleToolResult(parsed, ctx);
|
|
240
385
|
}
|
|
241
386
|
|
|
@@ -251,9 +396,9 @@ function handleToolStart(event: StreamJson, ctx: StreamHandlerContext): void {
|
|
|
251
396
|
}
|
|
252
397
|
}
|
|
253
398
|
|
|
254
|
-
const toolName = event.content_block.name
|
|
255
|
-
const toolId = event.content_block.id
|
|
256
|
-
const index = event.index
|
|
399
|
+
const toolName = event.content_block.name!;
|
|
400
|
+
const toolId = event.content_block.id!;
|
|
401
|
+
const index = event.index!;
|
|
257
402
|
|
|
258
403
|
ctx.toolInputBuffers.set(index, { name: toolName, id: toolId, inputJson: '', startTime: Date.now() });
|
|
259
404
|
ctx.config.toolUseCallback?.({ type: 'tool_start', toolName, toolId, index });
|
|
@@ -263,7 +408,7 @@ function handleToolStart(event: StreamJson, ctx: StreamHandlerContext): void {
|
|
|
263
408
|
function handleToolInputDelta(event: StreamJson, ctx: StreamHandlerContext): void {
|
|
264
409
|
if (event.type !== 'content_block_delta' || event.delta?.type !== 'input_json_delta') return;
|
|
265
410
|
|
|
266
|
-
const index = event.index
|
|
411
|
+
const index = event.index!;
|
|
267
412
|
const partialJson = event.delta.partial_json;
|
|
268
413
|
const toolBuffer = ctx.toolInputBuffers.get(index);
|
|
269
414
|
if (toolBuffer) toolBuffer.inputJson += partialJson;
|
|
@@ -274,7 +419,7 @@ function handleToolInputDelta(event: StreamJson, ctx: StreamHandlerContext): voi
|
|
|
274
419
|
function handleToolComplete(event: StreamJson, ctx: StreamHandlerContext): void {
|
|
275
420
|
if (event.type !== 'content_block_stop') return;
|
|
276
421
|
|
|
277
|
-
const index = event.index
|
|
422
|
+
const index = event.index!;
|
|
278
423
|
const toolBuffer = ctx.toolInputBuffers.get(index);
|
|
279
424
|
if (!toolBuffer) return;
|
|
280
425
|
|
|
@@ -63,6 +63,8 @@ export async function executeClaudeCommand(
|
|
|
63
63
|
apiTokenUsage: { inputTokens: 0, outputTokens: 0 },
|
|
64
64
|
currentStepOutputTokens: 0,
|
|
65
65
|
lastTokenActivityTime: Date.now(),
|
|
66
|
+
hasReceivedTextDeltas: false,
|
|
67
|
+
hasReceivedThinkingDeltas: false,
|
|
66
68
|
};
|
|
67
69
|
|
|
68
70
|
const stallState: StallState = {
|
|
@@ -218,16 +218,21 @@ export async function assessPrematureCompletion(
|
|
|
218
218
|
`- Response length: ${ctx.responseLength} characters`,
|
|
219
219
|
`- Extended thinking: ${ctx.hasThinking ? 'YES' : 'NO'}`,
|
|
220
220
|
'',
|
|
221
|
+
'IMPORTANT: The text below is the final portion of the response. Earlier progress',
|
|
222
|
+
'messages like "Let me check...", "Let me try..." were followed by tool calls that',
|
|
223
|
+
'executed successfully — those are COMPLETED actions, not pending work.',
|
|
224
|
+
'Focus on the LAST sentence or paragraph to judge completeness.',
|
|
225
|
+
'',
|
|
221
226
|
`Final response text (last ${ctx.responseTail.length} chars):`,
|
|
222
227
|
ctx.responseTail,
|
|
223
228
|
'',
|
|
224
|
-
'INCOMPLETE signals:
|
|
225
|
-
'"I\'ll continue with...",
|
|
226
|
-
'
|
|
229
|
+
'INCOMPLETE signals: announcing next steps with NO tool call after ("Now I\'ll...",',
|
|
230
|
+
'"Next I need to...", "I\'ll continue with..."), describing work that will happen',
|
|
231
|
+
'next as the very last thing said.',
|
|
227
232
|
'',
|
|
228
233
|
'COMPLETE signals: summarizing what was done, confirming changes, reporting results,',
|
|
229
|
-
'asking the user a question, past-tense descriptions
|
|
230
|
-
'
|
|
234
|
+
'asking the user a question, past-tense descriptions, "all done", "changes applied",',
|
|
235
|
+
'referencing finished state. A short summary after many tool calls is COMPLETE.',
|
|
231
236
|
'',
|
|
232
237
|
'Respond in EXACTLY this format (2 lines, no extra text):',
|
|
233
238
|
'VERDICT: COMPLETE or INCOMPLETE',
|
|
@@ -472,14 +472,30 @@ function isResponseAbandoned(result: HeadlessRunResult): boolean {
|
|
|
472
472
|
return thinkingLen >= responseLen * 3;
|
|
473
473
|
}
|
|
474
474
|
|
|
475
|
+
/**
|
|
476
|
+
* Extract the final text block from a concatenated response.
|
|
477
|
+
* The assistantResponse concatenates all text deltas including interleaved
|
|
478
|
+
* progress messages between tool calls. The final paragraph (after the last
|
|
479
|
+
* double-newline break) is the actual conclusion — earlier fragments are
|
|
480
|
+
* progress updates that were already acted on via tool calls.
|
|
481
|
+
*/
|
|
482
|
+
function extractFinalTextBlock(response: string, maxLen: number): string {
|
|
483
|
+
const lastBreak = response.lastIndexOf('\n\n');
|
|
484
|
+
if (lastBreak !== -1 && response.length - lastBreak > 20) {
|
|
485
|
+
return response.slice(lastBreak + 2).slice(-maxLen);
|
|
486
|
+
}
|
|
487
|
+
return response.slice(-maxLen);
|
|
488
|
+
}
|
|
489
|
+
|
|
475
490
|
/** Use Haiku to assess whether an end_turn response is genuinely complete */
|
|
476
491
|
async function assessEndTurnCompletion(result: HeadlessRunResult, verbose: boolean): Promise<boolean> {
|
|
477
492
|
if (!result.assistantResponse) return false;
|
|
478
493
|
|
|
494
|
+
const successfulToolCalls = result.toolUseHistory?.filter(t => t.result !== undefined && !t.isError).length ?? 0;
|
|
479
495
|
const claudeCmd = process.env.CLAUDE_COMMAND || 'claude';
|
|
480
496
|
const verdict = await assessPrematureCompletion({
|
|
481
|
-
responseTail: result.assistantResponse
|
|
482
|
-
successfulToolCalls
|
|
497
|
+
responseTail: extractFinalTextBlock(result.assistantResponse, 800),
|
|
498
|
+
successfulToolCalls,
|
|
483
499
|
hasThinking: !!result.thinkingOutput,
|
|
484
500
|
responseLength: result.assistantResponse.length,
|
|
485
501
|
}, claudeCmd, verbose);
|