vibe64 0.1.21 → 0.1.22

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 (143) hide show
  1. package/dist/assets/ProjectTypeGate-B3NHteXC.js +1 -0
  2. package/dist/assets/ProjectTypeGate-fJcYj6sR.css +1 -0
  3. package/dist/assets/{SetupReadinessGate-DkkorR2Y.js → SetupReadinessGate-2twHjoYZ.js} +1 -1
  4. package/dist/assets/{ShellLayout-BcKS2HG9.js → ShellLayout-BjAbXfzf.js} +1 -1
  5. package/dist/assets/{VTabs-BJ8MKoig.js → VTabs-BLGGdbms.js} +1 -1
  6. package/dist/assets/{error-CwT53qTu.js → error-DvUPciuh.js} +1 -1
  7. package/dist/assets/history-DfM4ewyV.js +1 -0
  8. package/dist/assets/home-sh4v0vz7.js +1 -0
  9. package/dist/assets/index-C4JbNnml.css +1 -0
  10. package/dist/assets/{index-BJxDQvyK.js → index-CdFWokfE.js} +1 -1
  11. package/dist/assets/index-D4oqjV9n.js +132 -0
  12. package/dist/assets/{index-CY-wDjNv.js → index-DqoYKexs.js} +15 -15
  13. package/dist/assets/{placement-7FCYadh2.js → placement-QfRaYTFY.js} +1 -1
  14. package/dist/assets/{setup-BzzdD38G.js → setup-B-WOti3H.js} +2 -2
  15. package/dist/assets/{streamEvents-Ba9kHw-1.js → streamEvents-CIqegoLa.js} +1 -1
  16. package/dist/assets/{studioGateApi-hkZdLr1Y.js → studioGateApi-CFtez6lH.js} +1 -1
  17. package/dist/assets/{target-scripts-8hczu84t.js → target-scripts-CI-nAISO.js} +1 -1
  18. package/dist/assets/useStudioTerminal-I8tuBymw.js +1 -0
  19. package/dist/assets/vibe64SessionPanelModel-DLdexNxC.js +1 -0
  20. package/dist/index.html +1 -1
  21. package/node_modules/@local/setup-doctor-core/src/server/doctorToolchain.js +4 -0
  22. package/node_modules/@local/studio-terminal-core/src/server/gitGithubTransport.js +33 -0
  23. package/node_modules/@local/studio-terminal-core/src/server/index.js +1 -0
  24. package/node_modules/@local/studio-terminal-core/src/server/terminalSessions.js +51 -1
  25. package/node_modules/@local/vibe64-adapters/src/server/adapter.js +4 -0
  26. package/node_modules/@local/vibe64-adapters/src/server/adapters/laravel/adapter.js +5 -0
  27. package/node_modules/@local/vibe64-adapters/src/server/adapters/laravel/databaseRuntime.js +50 -0
  28. package/node_modules/@local/vibe64-adapters/src/server/configStore.js +22 -1
  29. package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/agent_conversation.txt +0 -2
  30. package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/draft_issue.txt +18 -0
  31. package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/make_plan.txt +14 -2
  32. package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/prepare_for_merge.txt +2 -0
  33. package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/resolve_pull_request.txt +1 -0
  34. package/node_modules/@local/vibe64-adapters/src/server/systemPrompts/run_deep_ui_check.txt +7 -3
  35. package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/commitPush.js +4 -22
  36. package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/factMetadata.js +21 -20
  37. package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/issuePr.js +27 -4
  38. package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/mergeSync.js +65 -8
  39. package/node_modules/@local/vibe64-adapters/src/server/workflowCommandTerminal/worktreeDependencies.js +12 -25
  40. package/node_modules/@local/vibe64-adapters/src/server/workflowSessionActions.js +77 -20
  41. package/node_modules/@local/vibe64-core/src/server/terminalWebSocketRoutes.js +14 -5
  42. package/node_modules/@local/vibe64-project/src/server/actions.js +21 -0
  43. package/node_modules/@local/vibe64-project/src/server/registerRoutes.js +6 -0
  44. package/node_modules/@local/vibe64-project/src/server/service.js +125 -8
  45. package/node_modules/@local/vibe64-runtime/src/server/coreProjectTools.js +135 -0
  46. package/node_modules/@local/vibe64-runtime/src/server/index.js +4 -0
  47. package/node_modules/@local/vibe64-runtime/src/server/projectToolRegistry.js +434 -0
  48. package/node_modules/@local/vibe64-runtime/src/server/runtime.js +40 -16
  49. package/node_modules/@local/vibe64-runtime/src/server/sessionWorktreeState.js +25 -0
  50. package/node_modules/@local/vibe64-runtime/src/server/terminalFailureFixRequest.js +112 -0
  51. package/node_modules/@local/vibe64-runtime/src/server/workflowArtifacts.js +2 -2
  52. package/node_modules/@local/vibe64-runtime/src/server/workflowDefinitionBuilders.js +1 -0
  53. package/node_modules/@local/vibe64-runtime/src/server/workflowDefinitionComposers.js +192 -0
  54. package/node_modules/@local/vibe64-runtime/src/server/workflowMachine.js +5 -0
  55. package/node_modules/@local/vibe64-runtime/src/server/workflowModules/coreCoding.js +1309 -419
  56. package/node_modules/@local/vibe64-runtime/src/server/workflowModules/coreLifecycle.js +540 -358
  57. package/node_modules/@local/vibe64-runtime/src/server/workflowModules/coreMaintenance.js +5 -26
  58. package/node_modules/@local/vibe64-runtime/src/server/workflowPresentation.js +153 -26
  59. package/node_modules/@local/vibe64-runtime/src/server/workflowStepMachineHelpers.js +63 -10
  60. package/node_modules/@local/vibe64-runtime/src/server/workflowStepMachines.js +63 -2
  61. package/node_modules/@local/vibe64-sessions/src/server/inputSchemas.js +5 -0
  62. package/node_modules/@local/vibe64-sessions/src/server/service.js +8 -9
  63. package/node_modules/@local/vibe64-terminals/src/server/actions.js +65 -0
  64. package/node_modules/@local/vibe64-terminals/src/server/codexTerminal.js +608 -23
  65. package/node_modules/@local/vibe64-terminals/src/server/commandTerminal.js +261 -4
  66. package/node_modules/@local/vibe64-terminals/src/server/fixCodexJobs.js +420 -0
  67. package/node_modules/@local/vibe64-terminals/src/server/inputSchemas.js +240 -0
  68. package/node_modules/@local/vibe64-terminals/src/server/launchTargetTerminal.js +2 -0
  69. package/node_modules/@local/vibe64-terminals/src/server/registerRoutes.js +226 -0
  70. package/node_modules/@local/vibe64-terminals/src/server/service.js +140 -1
  71. package/node_modules/@local/vibe64-terminals/src/server/targetToolchainTerminal.js +1 -1
  72. package/node_modules/@local/vibe64-terminals/src/server/terminalShared.js +34 -0
  73. package/node_modules/node-pty/build/Makefile +369 -0
  74. package/node_modules/node-pty/build/Release/pty.node +0 -0
  75. package/node_modules/node-pty/build/binding.Makefile +6 -0
  76. package/node_modules/node-pty/build/config.gypi +440 -0
  77. package/node_modules/node-pty/build/pty.target.mk +166 -0
  78. package/node_modules/node-pty/node-addon-api/node_addon_api.Makefile +6 -0
  79. package/node_modules/node-pty/node-addon-api/node_addon_api.target.mk +104 -0
  80. package/node_modules/node-pty/node-addon-api/node_addon_api_except.target.mk +108 -0
  81. package/node_modules/node-pty/node-addon-api/node_addon_api_maybe.target.mk +104 -0
  82. package/node_modules/which/CHANGELOG.md +166 -0
  83. package/package.json +2 -2
  84. package/packages/setup-doctor-core/src/server/doctorToolchain.js +4 -0
  85. package/packages/studio-terminal-core/src/server/gitGithubTransport.js +33 -0
  86. package/packages/studio-terminal-core/src/server/index.js +1 -0
  87. package/packages/studio-terminal-core/src/server/terminalSessions.js +51 -1
  88. package/packages/vibe64-adapters/src/server/adapter.js +4 -0
  89. package/packages/vibe64-adapters/src/server/adapters/laravel/adapter.js +5 -0
  90. package/packages/vibe64-adapters/src/server/adapters/laravel/databaseRuntime.js +50 -0
  91. package/packages/vibe64-adapters/src/server/configStore.js +22 -1
  92. package/packages/vibe64-adapters/src/server/systemPrompts/agent_conversation.txt +0 -2
  93. package/packages/vibe64-adapters/src/server/systemPrompts/draft_issue.txt +18 -0
  94. package/packages/vibe64-adapters/src/server/systemPrompts/make_plan.txt +14 -2
  95. package/packages/vibe64-adapters/src/server/systemPrompts/prepare_for_merge.txt +2 -0
  96. package/packages/vibe64-adapters/src/server/systemPrompts/resolve_pull_request.txt +1 -0
  97. package/packages/vibe64-adapters/src/server/systemPrompts/run_deep_ui_check.txt +7 -3
  98. package/packages/vibe64-adapters/src/server/workflowCommandTerminal/commitPush.js +4 -22
  99. package/packages/vibe64-adapters/src/server/workflowCommandTerminal/factMetadata.js +21 -20
  100. package/packages/vibe64-adapters/src/server/workflowCommandTerminal/issuePr.js +27 -4
  101. package/packages/vibe64-adapters/src/server/workflowCommandTerminal/mergeSync.js +65 -8
  102. package/packages/vibe64-adapters/src/server/workflowCommandTerminal/worktreeDependencies.js +12 -25
  103. package/packages/vibe64-adapters/src/server/workflowSessionActions.js +77 -20
  104. package/packages/vibe64-core/src/server/terminalWebSocketRoutes.js +14 -5
  105. package/packages/vibe64-project/src/server/actions.js +21 -0
  106. package/packages/vibe64-project/src/server/registerRoutes.js +6 -0
  107. package/packages/vibe64-project/src/server/service.js +125 -8
  108. package/packages/vibe64-runtime/src/server/coreProjectTools.js +135 -0
  109. package/packages/vibe64-runtime/src/server/index.js +4 -0
  110. package/packages/vibe64-runtime/src/server/projectToolRegistry.js +434 -0
  111. package/packages/vibe64-runtime/src/server/runtime.js +40 -16
  112. package/packages/vibe64-runtime/src/server/sessionWorktreeState.js +25 -0
  113. package/packages/vibe64-runtime/src/server/terminalFailureFixRequest.js +112 -0
  114. package/packages/vibe64-runtime/src/server/workflowArtifacts.js +2 -2
  115. package/packages/vibe64-runtime/src/server/workflowDefinitionBuilders.js +1 -0
  116. package/packages/vibe64-runtime/src/server/workflowDefinitionComposers.js +192 -0
  117. package/packages/vibe64-runtime/src/server/workflowMachine.js +5 -0
  118. package/packages/vibe64-runtime/src/server/workflowModules/coreCoding.js +1309 -419
  119. package/packages/vibe64-runtime/src/server/workflowModules/coreLifecycle.js +540 -358
  120. package/packages/vibe64-runtime/src/server/workflowModules/coreMaintenance.js +5 -26
  121. package/packages/vibe64-runtime/src/server/workflowPresentation.js +153 -26
  122. package/packages/vibe64-runtime/src/server/workflowStepMachineHelpers.js +63 -10
  123. package/packages/vibe64-runtime/src/server/workflowStepMachines.js +63 -2
  124. package/packages/vibe64-sessions/src/server/inputSchemas.js +5 -0
  125. package/packages/vibe64-sessions/src/server/service.js +8 -9
  126. package/packages/vibe64-terminals/src/server/actions.js +65 -0
  127. package/packages/vibe64-terminals/src/server/codexTerminal.js +608 -23
  128. package/packages/vibe64-terminals/src/server/commandTerminal.js +261 -4
  129. package/packages/vibe64-terminals/src/server/fixCodexJobs.js +420 -0
  130. package/packages/vibe64-terminals/src/server/inputSchemas.js +240 -0
  131. package/packages/vibe64-terminals/src/server/launchTargetTerminal.js +2 -0
  132. package/packages/vibe64-terminals/src/server/registerRoutes.js +226 -0
  133. package/packages/vibe64-terminals/src/server/service.js +140 -1
  134. package/packages/vibe64-terminals/src/server/targetToolchainTerminal.js +1 -1
  135. package/packages/vibe64-terminals/src/server/terminalShared.js +34 -0
  136. package/dist/assets/ProjectTypeGate-DStq4W4X.js +0 -1
  137. package/dist/assets/ProjectTypeGate-Dh2ycSoM.css +0 -1
  138. package/dist/assets/history-HQ_XliX2.js +0 -1
  139. package/dist/assets/home-B89EbUmA.js +0 -1
  140. package/dist/assets/index-16P0GeGq.js +0 -134
  141. package/dist/assets/index-eMhOXhf_.css +0 -1
  142. package/dist/assets/useStudioTerminal-D9TNb50w.js +0 -1
  143. package/dist/assets/vibe64SessionPanelModel-DvY_IbW3.js +0 -1
@@ -32,6 +32,57 @@ function currentStepPromptInputInstruction(session = {}, action = {}, {
32
32
  .replaceAll("{{session.stepMachine.status}}", normalizeText(session.stepMachine?.status));
33
33
  }
34
34
 
35
+ function currentStepInputConversationText(runtime = null, session = {}, input = {}) {
36
+ const normalizedInput = normalizeMachineInput(input);
37
+ const directText = normalizeText(
38
+ normalizedInput.fields.response ||
39
+ normalizedInput.text ||
40
+ normalizedInput.message
41
+ );
42
+ if (directText) {
43
+ return directText;
44
+ }
45
+
46
+ const machine = workflowStepMachine(runtime, session.currentStep);
47
+ if (machine && typeof machine.inputCompletionMessage === "function") {
48
+ const machineText = normalizeText(machine.inputCompletionMessage({
49
+ input: normalizedInput,
50
+ runtime,
51
+ session
52
+ }));
53
+ if (machineText) {
54
+ return machineText;
55
+ }
56
+ }
57
+ return normalizedInput.kind === "ready"
58
+ ? "Completed this step."
59
+ : "";
60
+ }
61
+
62
+ function stepMachineBusyActionDisabledReason(stepMachine = {}) {
63
+ switch (normalizeText(stepMachine?.status)) {
64
+ case STEP_STATUS.ATTEMPTING_EXECUTION:
65
+ return "Wait for the current command to finish.";
66
+ case STEP_STATUS.AWAITING_AGENT_RESULT:
67
+ return "Wait for Codex to finish this step.";
68
+ default:
69
+ return "";
70
+ }
71
+ }
72
+
73
+ function disableBusyStepActions(actions = [], disabledReason = "") {
74
+ return (Array.isArray(actions) ? actions : []).map((action) => {
75
+ if (normalizeText(action.type) === "link") {
76
+ return action;
77
+ }
78
+ return {
79
+ ...action,
80
+ disabledReason,
81
+ enabled: false
82
+ };
83
+ });
84
+ }
85
+
35
86
  async function applyStepMachineView(runtime, session = {}) {
36
87
  const machine = workflowStepMachine(runtime, session.currentStep);
37
88
  if (!machine) {
@@ -47,17 +98,26 @@ async function applyStepMachineView(runtime, session = {}) {
47
98
  ...session.currentStepDefinition,
48
99
  ...(view.interaction === undefined ? {} : { interaction: view.interaction })
49
100
  };
50
- let workflowAutopilot = session.workflowAutopilot;
101
+ let workflowAutopilot = view.workflowAutopilot
102
+ ? {
103
+ ...(session.workflowAutopilot || {}),
104
+ ...view.workflowAutopilot
105
+ }
106
+ : session.workflowAutopilot;
51
107
  if ([STEP_STATUS.DONE, STEP_STATUS.WAITING_FOR_INPUT].includes(normalizeText(stepMachine?.status)) && workflowAutopilot) {
52
108
  workflowAutopilot = {
53
109
  ...workflowAutopilot,
54
110
  stage: null
55
111
  };
56
112
  }
113
+ const busyActionDisabledReason = view.actions ? "" : stepMachineBusyActionDisabledReason(stepMachine);
114
+ const actions = view.actions || (busyActionDisabledReason
115
+ ? disableBusyStepActions(session.actions, busyActionDisabledReason)
116
+ : session.actions);
57
117
 
58
118
  return {
59
119
  ...session,
60
- ...(view.actions ? { actions: view.actions } : {}),
120
+ actions,
61
121
  currentStepDefinition,
62
122
  ...(view.next ? { next: view.next } : {}),
63
123
  stepMachine,
@@ -148,6 +208,7 @@ async function recordStepMachineActionFinished(runtime, session = {}, actionId =
148
208
  export {
149
209
  STEP_STATUS,
150
210
  applyStepMachineView,
211
+ currentStepInputConversationText,
151
212
  currentStepPromptInputInstruction,
152
213
  recordStepMachineActionFinished,
153
214
  recordStepMachineActionStarted,
@@ -103,6 +103,11 @@ const sessionTerminalFailureFixInputValidator = deepFreeze({
103
103
  noTrim: false,
104
104
  required: false
105
105
  },
106
+ attemptedCommand: {
107
+ type: "string",
108
+ noTrim: false,
109
+ required: false
110
+ },
106
111
  closeError: {
107
112
  type: "string",
108
113
  noTrim: false,
@@ -111,7 +111,7 @@ function conversationRequestText(input = {}) {
111
111
  }
112
112
 
113
113
  function shouldRecordConversationUserMessage(actionResult = {}) {
114
- return actionResult?.recordsConversationTurn === true;
114
+ return actionResult?.recordsConversationTurn === true || Boolean(normalizedInputText(actionResult?.auditMessage));
115
115
  }
116
116
 
117
117
  async function recordConversationUserMessage(runtime, sessionId, {
@@ -121,7 +121,9 @@ async function recordConversationUserMessage(runtime, sessionId, {
121
121
  if (!shouldRecordConversationUserMessage(actionResult)) {
122
122
  return null;
123
123
  }
124
- const text = conversationRequestText(input);
124
+ const text = conversationRequestText(input) ||
125
+ conversationRequestText(actionResult?.input) ||
126
+ normalizedInputText(actionResult?.auditMessage);
125
127
  if (!text || typeof runtime?.store?.writeConversationUserMessage !== "function") {
126
128
  return null;
127
129
  }
@@ -144,17 +146,13 @@ async function sessionWithLatestRevision(runtime, session = {}) {
144
146
  function codexTerminalPresentation(codexTerminal = null) {
145
147
  const terminal = objectValue(codexTerminal);
146
148
  const terminalSessionId = String(terminal.id || "").trim();
147
- const visible = Boolean(
148
- terminalSessionId &&
149
- terminal.status !== "exited" &&
150
- terminal.transmitting === true
151
- );
152
149
  return {
153
- label: visible ? terminal.activityLabel || "Terminal is transmitting..." : "",
150
+ label: "",
154
151
  readOnlyInAutopilot: true,
155
152
  renderer: "codex_terminal",
156
153
  terminalSessionId,
157
- visible
154
+ visible: false,
155
+ visibleUntil: ""
158
156
  };
159
157
  }
160
158
 
@@ -170,6 +168,7 @@ function withCodexTerminalState(session = {}, terminalState = {}) {
170
168
  codexPromptHandoffOutputStart: terminalState.codexPromptHandoffOutputStart ?? session.codexPromptHandoffOutputStart,
171
169
  codexPromptHandoffSignature: terminalState.codexPromptHandoffSignature || session.codexPromptHandoffSignature || "",
172
170
  codexThreadId: terminalState.codexThreadId || session.codexThreadId || "",
171
+ intents: Array.isArray(presentation.intents) ? presentation.intents : [],
173
172
  presentation: {
174
173
  ...presentation,
175
174
  terminal: {
@@ -3,9 +3,15 @@ import {
3
3
  commandTerminalActionInputValidator,
4
4
  launchTargetActionInputValidator,
5
5
  openLaunchTargetActionInputValidator,
6
+ projectToolFixActionInputValidator,
7
+ projectToolRunActionInputValidator,
8
+ sessionTerminalFixActionInputValidator,
6
9
  shellTerminalActionInputValidator
7
10
  } from "./inputSchemas.js";
8
11
 
12
+ const ACTION_START_PROJECT_TOOL_FIX = "feature.vibe64-terminals.project-tool.fix.start";
13
+ const ACTION_START_SESSION_TERMINAL_FIX = "feature.vibe64-terminals.session-terminal.fix.start";
14
+ const ACTION_RUN_PROJECT_TOOL = "feature.vibe64-terminals.project-tool.run";
9
15
  const ACTION_START_COMMAND_TERMINAL = "feature.vibe64-terminals.command-terminal.start";
10
16
  const ACTION_START_LAUNCH_TARGET_TERMINAL = "feature.vibe64-terminals.launch-target-terminal.start";
11
17
  const ACTION_START_SHELL_TERMINAL = "feature.vibe64-terminals.shell-terminal.start";
@@ -13,6 +19,62 @@ const ACTION_OPEN_LAUNCH_TARGET = "feature.vibe64-terminals.launch-target.open";
13
19
  const ACTION_UPLOAD_CODEX_ATTACHMENT = "feature.vibe64-terminals.codex-attachment.upload";
14
20
 
15
21
  const featureActions = Object.freeze([
22
+ {
23
+ id: ACTION_START_PROJECT_TOOL_FIX,
24
+ version: 1,
25
+ kind: "command",
26
+ channels: ["api", "automation", "internal"],
27
+ surfaces: ["home"],
28
+ input: projectToolFixActionInputValidator,
29
+ output: null,
30
+ idempotency: "optional",
31
+ audit: {
32
+ actionName: ACTION_START_PROJECT_TOOL_FIX
33
+ },
34
+ observability: {},
35
+ async execute(input, context, deps) {
36
+ void context;
37
+ return deps.featureService.startProjectToolFixJob(input.toolId, input);
38
+ }
39
+ },
40
+ {
41
+ id: ACTION_START_SESSION_TERMINAL_FIX,
42
+ version: 1,
43
+ kind: "command",
44
+ channels: ["api", "automation", "internal"],
45
+ surfaces: ["home"],
46
+ input: sessionTerminalFixActionInputValidator,
47
+ output: null,
48
+ idempotency: "optional",
49
+ audit: {
50
+ actionName: ACTION_START_SESSION_TERMINAL_FIX
51
+ },
52
+ observability: {},
53
+ async execute(input, context, deps) {
54
+ void context;
55
+ return deps.featureService.startSessionTerminalFixJob(input.sessionId, input);
56
+ }
57
+ },
58
+ {
59
+ id: ACTION_RUN_PROJECT_TOOL,
60
+ version: 1,
61
+ kind: "command",
62
+ channels: ["api", "automation", "internal"],
63
+ surfaces: ["home"],
64
+ input: projectToolRunActionInputValidator,
65
+ output: null,
66
+ idempotency: "optional",
67
+ audit: {
68
+ actionName: ACTION_RUN_PROJECT_TOOL
69
+ },
70
+ observability: {},
71
+ async execute(input, context, deps) {
72
+ void context;
73
+ return deps.featureService.runProjectTool(input.toolId, {
74
+ parameters: input.parameters || {}
75
+ });
76
+ }
77
+ },
16
78
  {
17
79
  id: ACTION_START_COMMAND_TERMINAL,
18
80
  version: 1,
@@ -116,6 +178,9 @@ const featureActions = Object.freeze([
116
178
 
117
179
  export {
118
180
  ACTION_OPEN_LAUNCH_TARGET,
181
+ ACTION_RUN_PROJECT_TOOL,
182
+ ACTION_START_PROJECT_TOOL_FIX,
183
+ ACTION_START_SESSION_TERMINAL_FIX,
119
184
  ACTION_START_COMMAND_TERMINAL,
120
185
  ACTION_START_LAUNCH_TARGET_TERMINAL,
121
186
  ACTION_START_SHELL_TERMINAL,