takt 0.1.0 → 0.1.1

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 (258) hide show
  1. package/dist/agents/runner.d.ts.map +1 -1
  2. package/dist/agents/runner.js +2 -1
  3. package/dist/agents/runner.js.map +1 -1
  4. package/dist/cli.d.ts +1 -0
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +7 -3
  7. package/dist/cli.js.map +1 -1
  8. package/dist/commands/config.d.ts +33 -0
  9. package/dist/commands/config.d.ts.map +1 -0
  10. package/dist/commands/config.js +110 -0
  11. package/dist/commands/config.js.map +1 -0
  12. package/dist/commands/index.d.ts +1 -0
  13. package/dist/commands/index.d.ts.map +1 -1
  14. package/dist/commands/index.js +1 -0
  15. package/dist/commands/index.js.map +1 -1
  16. package/dist/commands/workflow.js +1 -1
  17. package/dist/commands/workflow.js.map +1 -1
  18. package/dist/config/initialization.js +1 -1
  19. package/dist/config/initialization.js.map +1 -1
  20. package/dist/config/projectConfig.d.ts +12 -1
  21. package/dist/config/projectConfig.d.ts.map +1 -1
  22. package/dist/config/projectConfig.js +1 -0
  23. package/dist/config/projectConfig.js.map +1 -1
  24. package/dist/{interactive/prompt.d.ts → prompt/index.d.ts} +3 -1
  25. package/dist/prompt/index.d.ts.map +1 -0
  26. package/dist/{interactive/prompt.js → prompt/index.js} +11 -1
  27. package/dist/prompt/index.js.map +1 -0
  28. package/package.json +1 -1
  29. package/dist/cli/agentExecution.d.ts +0 -16
  30. package/dist/cli/agentExecution.d.ts.map +0 -1
  31. package/dist/cli/agentExecution.js +0 -40
  32. package/dist/cli/agentExecution.js.map +0 -1
  33. package/dist/cli/help.d.ts +0 -8
  34. package/dist/cli/help.d.ts.map +0 -1
  35. package/dist/cli/help.js +0 -46
  36. package/dist/cli/help.js.map +0 -1
  37. package/dist/cli/index.d.ts +0 -8
  38. package/dist/cli/index.d.ts.map +0 -1
  39. package/dist/cli/index.js +0 -8
  40. package/dist/cli/index.js.map +0 -1
  41. package/dist/cli/taskBatch.d.ts +0 -8
  42. package/dist/cli/taskBatch.d.ts.map +0 -1
  43. package/dist/cli/taskBatch.js +0 -69
  44. package/dist/cli/taskBatch.js.map +0 -1
  45. package/dist/cli/workflowExecution.d.ts +0 -18
  46. package/dist/cli/workflowExecution.d.ts.map +0 -1
  47. package/dist/cli/workflowExecution.js +0 -112
  48. package/dist/cli/workflowExecution.js.map +0 -1
  49. package/dist/commands/agentExecution.d.ts +0 -8
  50. package/dist/commands/agentExecution.d.ts.map +0 -1
  51. package/dist/commands/agentExecution.js +0 -44
  52. package/dist/commands/agentExecution.js.map +0 -1
  53. package/dist/interactive/commands/agent.d.ts +0 -7
  54. package/dist/interactive/commands/agent.d.ts.map +0 -1
  55. package/dist/interactive/commands/agent.js +0 -65
  56. package/dist/interactive/commands/agent.js.map +0 -1
  57. package/dist/interactive/commands/basic.d.ts +0 -7
  58. package/dist/interactive/commands/basic.d.ts.map +0 -1
  59. package/dist/interactive/commands/basic.js +0 -81
  60. package/dist/interactive/commands/basic.js.map +0 -1
  61. package/dist/interactive/commands/index.d.ts +0 -12
  62. package/dist/interactive/commands/index.d.ts.map +0 -1
  63. package/dist/interactive/commands/index.js +0 -14
  64. package/dist/interactive/commands/index.js.map +0 -1
  65. package/dist/interactive/commands/registry.d.ts +0 -41
  66. package/dist/interactive/commands/registry.d.ts.map +0 -1
  67. package/dist/interactive/commands/registry.js +0 -37
  68. package/dist/interactive/commands/registry.js.map +0 -1
  69. package/dist/interactive/commands/session.d.ts +0 -7
  70. package/dist/interactive/commands/session.d.ts.map +0 -1
  71. package/dist/interactive/commands/session.js +0 -75
  72. package/dist/interactive/commands/session.js.map +0 -1
  73. package/dist/interactive/commands/task.d.ts +0 -7
  74. package/dist/interactive/commands/task.d.ts.map +0 -1
  75. package/dist/interactive/commands/task.js +0 -156
  76. package/dist/interactive/commands/task.js.map +0 -1
  77. package/dist/interactive/commands/workflow.d.ts +0 -7
  78. package/dist/interactive/commands/workflow.d.ts.map +0 -1
  79. package/dist/interactive/commands/workflow.js +0 -56
  80. package/dist/interactive/commands/workflow.js.map +0 -1
  81. package/dist/interactive/escape-tracker.d.ts +0 -37
  82. package/dist/interactive/escape-tracker.d.ts.map +0 -1
  83. package/dist/interactive/escape-tracker.js +0 -52
  84. package/dist/interactive/escape-tracker.js.map +0 -1
  85. package/dist/interactive/handlers.d.ts +0 -24
  86. package/dist/interactive/handlers.d.ts.map +0 -1
  87. package/dist/interactive/handlers.js +0 -191
  88. package/dist/interactive/handlers.js.map +0 -1
  89. package/dist/interactive/history-manager.d.ts +0 -45
  90. package/dist/interactive/history-manager.d.ts.map +0 -1
  91. package/dist/interactive/history-manager.js +0 -91
  92. package/dist/interactive/history-manager.js.map +0 -1
  93. package/dist/interactive/index.d.ts +0 -8
  94. package/dist/interactive/index.d.ts.map +0 -1
  95. package/dist/interactive/index.js +0 -8
  96. package/dist/interactive/index.js.map +0 -1
  97. package/dist/interactive/ink/components/App.d.ts +0 -16
  98. package/dist/interactive/ink/components/App.d.ts.map +0 -1
  99. package/dist/interactive/ink/components/App.js +0 -123
  100. package/dist/interactive/ink/components/App.js.map +0 -1
  101. package/dist/interactive/ink/components/AskUserQuestion.d.ts +0 -16
  102. package/dist/interactive/ink/components/AskUserQuestion.d.ts.map +0 -1
  103. package/dist/interactive/ink/components/AskUserQuestion.js +0 -139
  104. package/dist/interactive/ink/components/AskUserQuestion.js.map +0 -1
  105. package/dist/interactive/ink/components/Header.d.ts +0 -20
  106. package/dist/interactive/ink/components/Header.d.ts.map +0 -1
  107. package/dist/interactive/ink/components/Header.js +0 -7
  108. package/dist/interactive/ink/components/Header.js.map +0 -1
  109. package/dist/interactive/ink/components/HelpView.d.ts +0 -13
  110. package/dist/interactive/ink/components/HelpView.d.ts.map +0 -1
  111. package/dist/interactive/ink/components/HelpView.js +0 -45
  112. package/dist/interactive/ink/components/HelpView.js.map +0 -1
  113. package/dist/interactive/ink/components/IterationLimit.d.ts +0 -19
  114. package/dist/interactive/ink/components/IterationLimit.d.ts.map +0 -1
  115. package/dist/interactive/ink/components/IterationLimit.js +0 -59
  116. package/dist/interactive/ink/components/IterationLimit.js.map +0 -1
  117. package/dist/interactive/ink/components/ModalRouter.d.ts +0 -11
  118. package/dist/interactive/ink/components/ModalRouter.d.ts.map +0 -1
  119. package/dist/interactive/ink/components/ModalRouter.js +0 -71
  120. package/dist/interactive/ink/components/ModalRouter.js.map +0 -1
  121. package/dist/interactive/ink/components/PermissionPrompt.d.ts +0 -17
  122. package/dist/interactive/ink/components/PermissionPrompt.d.ts.map +0 -1
  123. package/dist/interactive/ink/components/PermissionPrompt.js +0 -102
  124. package/dist/interactive/ink/components/PermissionPrompt.js.map +0 -1
  125. package/dist/interactive/ink/components/PromptInput.d.ts +0 -26
  126. package/dist/interactive/ink/components/PromptInput.d.ts.map +0 -1
  127. package/dist/interactive/ink/components/PromptInput.js +0 -70
  128. package/dist/interactive/ink/components/PromptInput.js.map +0 -1
  129. package/dist/interactive/ink/components/Spinner.d.ts +0 -14
  130. package/dist/interactive/ink/components/Spinner.d.ts.map +0 -1
  131. package/dist/interactive/ink/components/Spinner.js +0 -8
  132. package/dist/interactive/ink/components/Spinner.js.map +0 -1
  133. package/dist/interactive/ink/components/StreamingOutput.d.ts +0 -25
  134. package/dist/interactive/ink/components/StreamingOutput.d.ts.map +0 -1
  135. package/dist/interactive/ink/components/StreamingOutput.js +0 -8
  136. package/dist/interactive/ink/components/StreamingOutput.js.map +0 -1
  137. package/dist/interactive/ink/components/UserInputPrompt.d.ts +0 -18
  138. package/dist/interactive/ink/components/UserInputPrompt.d.ts.map +0 -1
  139. package/dist/interactive/ink/components/UserInputPrompt.js +0 -30
  140. package/dist/interactive/ink/components/UserInputPrompt.js.map +0 -1
  141. package/dist/interactive/ink/components/WorkflowSelector.d.ts +0 -18
  142. package/dist/interactive/ink/components/WorkflowSelector.d.ts.map +0 -1
  143. package/dist/interactive/ink/components/WorkflowSelector.js +0 -65
  144. package/dist/interactive/ink/components/WorkflowSelector.js.map +0 -1
  145. package/dist/interactive/ink/constants.d.ts +0 -8
  146. package/dist/interactive/ink/constants.d.ts.map +0 -1
  147. package/dist/interactive/ink/constants.js +0 -8
  148. package/dist/interactive/ink/constants.js.map +0 -1
  149. package/dist/interactive/ink/context/AppContext.d.ts +0 -26
  150. package/dist/interactive/ink/context/AppContext.d.ts.map +0 -1
  151. package/dist/interactive/ink/context/AppContext.js +0 -30
  152. package/dist/interactive/ink/context/AppContext.js.map +0 -1
  153. package/dist/interactive/ink/context/appReducer.d.ts +0 -13
  154. package/dist/interactive/ink/context/appReducer.d.ts.map +0 -1
  155. package/dist/interactive/ink/context/appReducer.js +0 -183
  156. package/dist/interactive/ink/context/appReducer.js.map +0 -1
  157. package/dist/interactive/ink/context/types.d.ts +0 -144
  158. package/dist/interactive/ink/context/types.d.ts.map +0 -1
  159. package/dist/interactive/ink/context/types.js +0 -5
  160. package/dist/interactive/ink/context/types.js.map +0 -1
  161. package/dist/interactive/ink/hooks/keyDetection.d.ts +0 -116
  162. package/dist/interactive/ink/hooks/keyDetection.d.ts.map +0 -1
  163. package/dist/interactive/ink/hooks/keyDetection.js +0 -183
  164. package/dist/interactive/ink/hooks/keyDetection.js.map +0 -1
  165. package/dist/interactive/ink/hooks/multilineInputLogic.d.ts +0 -50
  166. package/dist/interactive/ink/hooks/multilineInputLogic.d.ts.map +0 -1
  167. package/dist/interactive/ink/hooks/multilineInputLogic.js +0 -150
  168. package/dist/interactive/ink/hooks/multilineInputLogic.js.map +0 -1
  169. package/dist/interactive/ink/hooks/useCommands.d.ts +0 -20
  170. package/dist/interactive/ink/hooks/useCommands.d.ts.map +0 -1
  171. package/dist/interactive/ink/hooks/useCommands.js +0 -129
  172. package/dist/interactive/ink/hooks/useCommands.js.map +0 -1
  173. package/dist/interactive/ink/hooks/useHistory.d.ts +0 -28
  174. package/dist/interactive/ink/hooks/useHistory.d.ts.map +0 -1
  175. package/dist/interactive/ink/hooks/useHistory.js +0 -59
  176. package/dist/interactive/ink/hooks/useHistory.js.map +0 -1
  177. package/dist/interactive/ink/hooks/useMultilineInput.d.ts +0 -49
  178. package/dist/interactive/ink/hooks/useMultilineInput.d.ts.map +0 -1
  179. package/dist/interactive/ink/hooks/useMultilineInput.js +0 -106
  180. package/dist/interactive/ink/hooks/useMultilineInput.js.map +0 -1
  181. package/dist/interactive/ink/hooks/usePermissionHandlers.d.ts +0 -16
  182. package/dist/interactive/ink/hooks/usePermissionHandlers.d.ts.map +0 -1
  183. package/dist/interactive/ink/hooks/usePermissionHandlers.js +0 -172
  184. package/dist/interactive/ink/hooks/usePermissionHandlers.js.map +0 -1
  185. package/dist/interactive/ink/hooks/useRawKeypress.d.ts +0 -41
  186. package/dist/interactive/ink/hooks/useRawKeypress.d.ts.map +0 -1
  187. package/dist/interactive/ink/hooks/useRawKeypress.js +0 -79
  188. package/dist/interactive/ink/hooks/useRawKeypress.js.map +0 -1
  189. package/dist/interactive/ink/hooks/useTaskQueue.d.ts +0 -32
  190. package/dist/interactive/ink/hooks/useTaskQueue.d.ts.map +0 -1
  191. package/dist/interactive/ink/hooks/useTaskQueue.js +0 -68
  192. package/dist/interactive/ink/hooks/useTaskQueue.js.map +0 -1
  193. package/dist/interactive/ink/hooks/useWorkflow.d.ts +0 -45
  194. package/dist/interactive/ink/hooks/useWorkflow.d.ts.map +0 -1
  195. package/dist/interactive/ink/hooks/useWorkflow.js +0 -93
  196. package/dist/interactive/ink/hooks/useWorkflow.js.map +0 -1
  197. package/dist/interactive/ink/hooks/useWorkflowExecution.d.ts +0 -14
  198. package/dist/interactive/ink/hooks/useWorkflowExecution.d.ts.map +0 -1
  199. package/dist/interactive/ink/hooks/useWorkflowExecution.js +0 -144
  200. package/dist/interactive/ink/hooks/useWorkflowExecution.js.map +0 -1
  201. package/dist/interactive/ink/index.d.ts +0 -30
  202. package/dist/interactive/ink/index.d.ts.map +0 -1
  203. package/dist/interactive/ink/index.js +0 -33
  204. package/dist/interactive/ink/index.js.map +0 -1
  205. package/dist/interactive/ink/utils/workflow.d.ts +0 -11
  206. package/dist/interactive/ink/utils/workflow.d.ts.map +0 -1
  207. package/dist/interactive/ink/utils/workflow.js +0 -19
  208. package/dist/interactive/ink/utils/workflow.js.map +0 -1
  209. package/dist/interactive/input-buffer.d.ts +0 -67
  210. package/dist/interactive/input-buffer.d.ts.map +0 -1
  211. package/dist/interactive/input-buffer.js +0 -162
  212. package/dist/interactive/input-buffer.js.map +0 -1
  213. package/dist/interactive/input-handlers.d.ts +0 -50
  214. package/dist/interactive/input-handlers.d.ts.map +0 -1
  215. package/dist/interactive/input-handlers.js +0 -170
  216. package/dist/interactive/input-handlers.js.map +0 -1
  217. package/dist/interactive/input.d.ts +0 -43
  218. package/dist/interactive/input.d.ts.map +0 -1
  219. package/dist/interactive/input.js +0 -74
  220. package/dist/interactive/input.js.map +0 -1
  221. package/dist/interactive/keyDetection.d.ts +0 -85
  222. package/dist/interactive/keyDetection.d.ts.map +0 -1
  223. package/dist/interactive/keyDetection.js +0 -167
  224. package/dist/interactive/keyDetection.js.map +0 -1
  225. package/dist/interactive/multilineInputLogic.d.ts +0 -30
  226. package/dist/interactive/multilineInputLogic.d.ts.map +0 -1
  227. package/dist/interactive/multilineInputLogic.js +0 -143
  228. package/dist/interactive/multilineInputLogic.js.map +0 -1
  229. package/dist/interactive/passthrough.d.ts +0 -30
  230. package/dist/interactive/passthrough.d.ts.map +0 -1
  231. package/dist/interactive/passthrough.js +0 -94
  232. package/dist/interactive/passthrough.js.map +0 -1
  233. package/dist/interactive/permission.d.ts +0 -33
  234. package/dist/interactive/permission.d.ts.map +0 -1
  235. package/dist/interactive/permission.js +0 -231
  236. package/dist/interactive/permission.js.map +0 -1
  237. package/dist/interactive/prompt.d.ts.map +0 -1
  238. package/dist/interactive/prompt.js.map +0 -1
  239. package/dist/interactive/repl.d.ts +0 -13
  240. package/dist/interactive/repl.d.ts.map +0 -1
  241. package/dist/interactive/repl.js +0 -202
  242. package/dist/interactive/repl.js.map +0 -1
  243. package/dist/interactive/types.d.ts +0 -35
  244. package/dist/interactive/types.d.ts.map +0 -1
  245. package/dist/interactive/types.js +0 -5
  246. package/dist/interactive/types.js.map +0 -1
  247. package/dist/interactive/ui.d.ts +0 -16
  248. package/dist/interactive/ui.d.ts.map +0 -1
  249. package/dist/interactive/ui.js +0 -122
  250. package/dist/interactive/ui.js.map +0 -1
  251. package/dist/interactive/user-input.d.ts +0 -26
  252. package/dist/interactive/user-input.d.ts.map +0 -1
  253. package/dist/interactive/user-input.js +0 -115
  254. package/dist/interactive/user-input.js.map +0 -1
  255. package/dist/interactive/workflow-executor.d.ts +0 -20
  256. package/dist/interactive/workflow-executor.d.ts.map +0 -1
  257. package/dist/interactive/workflow-executor.js +0 -200
  258. package/dist/interactive/workflow-executor.js.map +0 -1
@@ -1,65 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Workflow selector component for ink
4
- *
5
- * Displays available workflows and allows selection
6
- */
7
- import { useState, useCallback } from 'react';
8
- import { Box, Text, useInput, useFocus } from 'ink';
9
- /** Workflow selector component */
10
- export function WorkflowSelector({ workflows, currentWorkflow, onSelect, }) {
11
- const workflowList = Array.from(workflows.entries()).sort((a, b) => a[0].localeCompare(b[0]));
12
- const [selectedIndex, setSelectedIndex] = useState(() => {
13
- const currentIdx = workflowList.findIndex(([name]) => name === currentWorkflow);
14
- return currentIdx >= 0 ? currentIdx : 0;
15
- });
16
- const { isFocused } = useFocus({ autoFocus: true });
17
- const handleSelect = useCallback(() => {
18
- const selected = workflowList[selectedIndex];
19
- if (selected) {
20
- onSelect(selected[0]);
21
- }
22
- }, [selectedIndex, workflowList, onSelect]);
23
- useInput((input, key) => {
24
- if (!isFocused)
25
- return;
26
- // Cancel on Escape or 0
27
- if (key.escape || input === '0') {
28
- onSelect(null);
29
- return;
30
- }
31
- // Number shortcuts
32
- const num = parseInt(input, 10);
33
- if (num >= 1 && num <= workflowList.length) {
34
- const selected = workflowList[num - 1];
35
- if (selected) {
36
- onSelect(selected[0]);
37
- }
38
- return;
39
- }
40
- // Arrow navigation
41
- if (key.upArrow) {
42
- setSelectedIndex((prev) => (prev > 0 ? prev - 1 : workflowList.length - 1));
43
- return;
44
- }
45
- if (key.downArrow) {
46
- setSelectedIndex((prev) => (prev < workflowList.length - 1 ? prev + 1 : 0));
47
- return;
48
- }
49
- // Enter to select
50
- if (key.return) {
51
- handleSelect();
52
- return;
53
- }
54
- }, { isActive: isFocused });
55
- if (workflowList.length === 0) {
56
- return (_jsx(Box, { flexDirection: "column", borderStyle: "single", borderColor: "red", padding: 1, children: _jsx(Text, { color: "red", children: "No workflows available" }) }));
57
- }
58
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "double", borderColor: "magenta", padding: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "magenta", bold: true, children: "Workflow Selection" }) }), _jsxs(Box, { flexDirection: "column", children: [workflowList.map(([name, workflow], index) => {
59
- const isCurrent = name === currentWorkflow;
60
- const isSelected = index === selectedIndex;
61
- const desc = workflow.description || `${name} workflow`;
62
- return (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsxs(Box, { children: [_jsxs(Text, { color: isSelected ? 'green' : 'cyan', children: [isSelected ? '▸ ' : ' ', "[", index + 1, "] ", name] }), isCurrent && (_jsx(Text, { color: "green", children: " (current)" }))] }), _jsxs(Text, { color: "gray", children: [" ", desc] })] }, name));
63
- }), _jsx(Box, { children: _jsx(Text, { color: "yellow", children: " [0] Cancel" }) })] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: "gray", dimColor: true, children: "\u6570\u5B57\u307E\u305F\u306F\u77E2\u5370\u30AD\u30FC\u3067\u9078\u629E\u3001Enter\u3067\u6C7A\u5B9A\u30010\u307E\u305F\u306FEsc\u3067\u30AD\u30E3\u30F3\u30BB\u30EB" }) })] }));
64
- }
65
- //# sourceMappingURL=WorkflowSelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WorkflowSelector.js","sourceRoot":"","sources":["../../../../src/interactive/ink/components/WorkflowSelector.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Constants for ink interactive mode
3
- */
4
- /** Default number of additional iterations when sacrifice mode auto-continues */
5
- export declare const DEFAULT_ADDITIONAL_ITERATIONS = 10;
6
- /** Timeout in ms for double Ctrl+C to exit */
7
- export declare const DOUBLE_CTRL_C_TIMEOUT_MS = 2000;
8
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/interactive/ink/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,iFAAiF;AACjF,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,8CAA8C;AAC9C,eAAO,MAAM,wBAAwB,OAAO,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Constants for ink interactive mode
3
- */
4
- /** Default number of additional iterations when sacrifice mode auto-continues */
5
- export const DEFAULT_ADDITIONAL_ITERATIONS = 10;
6
- /** Timeout in ms for double Ctrl+C to exit */
7
- export const DOUBLE_CTRL_C_TIMEOUT_MS = 2000;
8
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/interactive/ink/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,iFAAiF;AACjF,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAEhD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,CAAC"}
@@ -1,26 +0,0 @@
1
- /**
2
- * Application context provider and hook
3
- */
4
- import React, { type Dispatch, type ReactNode } from 'react';
5
- import type { AppState, AppAction, ModalResolvers } from './types.js';
6
- export type { AppState, AppAction, ModalData, ModalResolvers } from './types.js';
7
- export { createStreamHandler } from './appReducer.js';
8
- /** Context type */
9
- interface AppContextType {
10
- state: AppState;
11
- dispatch: Dispatch<AppAction>;
12
- resolvers: React.MutableRefObject<ModalResolvers>;
13
- setResolver: <K extends keyof ModalResolvers>(key: K, resolver: ModalResolvers[K]) => void;
14
- clearResolver: (key: keyof ModalResolvers) => void;
15
- }
16
- /** Provider props */
17
- interface AppProviderProps {
18
- children: ReactNode;
19
- cwd: string;
20
- workflowName?: string;
21
- }
22
- /** App context provider */
23
- export declare function AppProvider({ children, cwd, workflowName }: AppProviderProps): React.ReactElement;
24
- /** Hook to use app context */
25
- export declare function useApp(): AppContextType;
26
- //# sourceMappingURL=AppContext.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppContext.d.ts","sourceRoot":"","sources":["../../../../src/interactive/ink/context/AppContext.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,EAA8D,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAItE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,mBAAmB;AACnB,UAAU,cAAc;IACtB,KAAK,EAAE,QAAQ,CAAC;IAChB,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC9B,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAClD,WAAW,EAAE,CAAC,CAAC,SAAS,MAAM,cAAc,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC3F,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,cAAc,KAAK,IAAI,CAAC;CACpD;AAKD,qBAAqB;AACrB,UAAU,gBAAgB;IACxB,QAAQ,EAAE,SAAS,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,2BAA2B;AAC3B,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,YAA4B,EAAE,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAiBjH;AAED,8BAA8B;AAC9B,wBAAgB,MAAM,IAAI,cAAc,CAMvC"}
@@ -1,30 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * Application context provider and hook
4
- */
5
- import { createContext, useContext, useReducer, useRef, useCallback } from 'react';
6
- import { appReducer, createInitialState } from './appReducer.js';
7
- export { createStreamHandler } from './appReducer.js';
8
- /** Create context */
9
- const AppContext = createContext(null);
10
- /** App context provider */
11
- export function AppProvider({ children, cwd, workflowName = 'passthrough' }) {
12
- const [state, dispatch] = useReducer(appReducer, createInitialState(cwd, workflowName));
13
- const resolvers = useRef({});
14
- const setResolver = useCallback((key, resolver) => {
15
- resolvers.current[key] = resolver;
16
- }, []);
17
- const clearResolver = useCallback((key) => {
18
- delete resolvers.current[key];
19
- }, []);
20
- return (_jsx(AppContext.Provider, { value: { state, dispatch, resolvers, setResolver, clearResolver }, children: children }));
21
- }
22
- /** Hook to use app context */
23
- export function useApp() {
24
- const context = useContext(AppContext);
25
- if (!context) {
26
- throw new Error('useApp must be used within AppProvider');
27
- }
28
- return context;
29
- }
30
- //# sourceMappingURL=AppContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppContext.js","sourceRoot":"","sources":["../../../../src/interactive/ink/context/AppContext.tsx"],"names":[],"mappings":";AAAA;;GAEG;AAEH,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAiC,MAAM,OAAO,CAAC;AAEzH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAuB,MAAM,iBAAiB,CAAC;AAItF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAWtD,qBAAqB;AACrB,MAAM,UAAU,GAAG,aAAa,CAAwB,IAAI,CAAC,CAAC;AAS9D,2BAA2B;AAC3B,MAAM,UAAU,WAAW,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,GAAG,aAAa,EAAoB;IAC3F,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,UAAU,CAAC,UAAU,EAAE,kBAAkB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC;IACxF,MAAM,SAAS,GAAG,MAAM,CAAiB,EAAE,CAAC,CAAC;IAE7C,MAAM,WAAW,GAAG,WAAW,CAAC,CAAiC,GAAM,EAAE,QAA2B,EAAE,EAAE;QACtG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IACpC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,GAAyB,EAAE,EAAE;QAC9D,OAAO,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,KAAC,UAAU,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YACnF,QAAQ,GACW,CACvB,CAAC;AACJ,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,MAAM;IACpB,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Application reducer and state factory
3
- */
4
- import type { Dispatch } from 'react';
5
- import type { AppState, AppAction } from './types.js';
6
- import type { StreamEvent } from '../../../claude/process.js';
7
- /** Initial state factory */
8
- export declare function createInitialState(cwd: string, workflowName: string): AppState;
9
- /** Reducer function */
10
- export declare function appReducer(state: AppState, action: AppAction): AppState;
11
- /** Helper to create stream event handler */
12
- export declare function createStreamHandler(dispatch: Dispatch<AppAction>): (event: StreamEvent) => void;
13
- //# sourceMappingURL=appReducer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"appReducer.d.ts","sourceRoot":"","sources":["../../../../src/interactive/ink/context/appReducer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE9D,4BAA4B;AAC5B,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ,CAkB9E;AAED,uBAAuB;AACvB,wBAAgB,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,CA4IvE;AAED,4CAA4C;AAC5C,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAoC/F"}
@@ -1,183 +0,0 @@
1
- /**
2
- * Application reducer and state factory
3
- */
4
- /** Initial state factory */
5
- export function createInitialState(cwd, workflowName) {
6
- return {
7
- cwd,
8
- workflowName,
9
- sessionId: `session-${Date.now()}`,
10
- conversationHistory: [],
11
- isProcessing: false,
12
- streamContent: '',
13
- thinkingContent: '',
14
- currentAgent: '',
15
- currentStep: '',
16
- iteration: 0,
17
- maxIterations: 10,
18
- sacrificeMode: false,
19
- modal: { type: 'none' },
20
- allWorkflows: new Map(),
21
- sharedUserInputs: [],
22
- };
23
- }
24
- /** Reducer function */
25
- export function appReducer(state, action) {
26
- switch (action.type) {
27
- case 'SET_WORKFLOW':
28
- return {
29
- ...state,
30
- workflowName: action.payload.name,
31
- workflowConfig: action.payload.config,
32
- maxIterations: action.payload.config.maxIterations,
33
- };
34
- case 'SET_ALL_WORKFLOWS':
35
- return {
36
- ...state,
37
- allWorkflows: action.payload,
38
- };
39
- case 'START_PROCESSING':
40
- return {
41
- ...state,
42
- isProcessing: true,
43
- currentStep: action.payload.step,
44
- currentAgent: action.payload.agent,
45
- iteration: action.payload.iteration,
46
- streamContent: '',
47
- thinkingContent: '',
48
- error: undefined,
49
- };
50
- case 'STOP_PROCESSING':
51
- return {
52
- ...state,
53
- isProcessing: false,
54
- };
55
- case 'APPEND_STREAM':
56
- return {
57
- ...state,
58
- streamContent: state.streamContent + action.payload,
59
- };
60
- case 'SET_THINKING':
61
- return {
62
- ...state,
63
- thinkingContent: action.payload,
64
- };
65
- case 'CLEAR_STREAM':
66
- return {
67
- ...state,
68
- streamContent: '',
69
- thinkingContent: '',
70
- };
71
- case 'ADD_MESSAGE':
72
- return {
73
- ...state,
74
- conversationHistory: [...state.conversationHistory, action.payload],
75
- };
76
- case 'TOGGLE_SACRIFICE_MODE':
77
- return {
78
- ...state,
79
- sacrificeMode: !state.sacrificeMode,
80
- };
81
- case 'SET_ERROR':
82
- return {
83
- ...state,
84
- error: action.payload,
85
- isProcessing: false,
86
- };
87
- case 'CLEAR_ERROR':
88
- return {
89
- ...state,
90
- error: undefined,
91
- };
92
- case 'SET_INFO':
93
- return {
94
- ...state,
95
- info: action.payload,
96
- };
97
- case 'CLEAR_INFO':
98
- return {
99
- ...state,
100
- info: undefined,
101
- };
102
- case 'SET_SESSION_ID':
103
- return {
104
- ...state,
105
- claudeSessionId: action.payload,
106
- };
107
- case 'SET_MAX_ITERATIONS':
108
- return {
109
- ...state,
110
- maxIterations: action.payload,
111
- };
112
- case 'RESET_CONVERSATION':
113
- return {
114
- ...state,
115
- conversationHistory: [],
116
- streamContent: '',
117
- thinkingContent: '',
118
- iteration: 0,
119
- sharedUserInputs: [],
120
- currentTask: undefined,
121
- };
122
- case 'SHOW_MODAL':
123
- return {
124
- ...state,
125
- modal: action.payload,
126
- };
127
- case 'HIDE_MODAL':
128
- return {
129
- ...state,
130
- modal: { type: 'none' },
131
- };
132
- case 'ADD_USER_INPUT':
133
- return {
134
- ...state,
135
- sharedUserInputs: [...state.sharedUserInputs, action.payload],
136
- };
137
- case 'SET_CURRENT_TASK':
138
- return {
139
- ...state,
140
- currentTask: action.payload,
141
- };
142
- default:
143
- return state;
144
- }
145
- }
146
- /** Helper to create stream event handler */
147
- export function createStreamHandler(dispatch) {
148
- // Track if we need to add newline before next text (after tool execution)
149
- let needsNewline = false;
150
- return (event) => {
151
- switch (event.type) {
152
- case 'text':
153
- // Add newline if coming back from tool execution
154
- if (needsNewline) {
155
- dispatch({ type: 'APPEND_STREAM', payload: '\n' });
156
- needsNewline = false;
157
- }
158
- dispatch({ type: 'APPEND_STREAM', payload: event.data.text });
159
- break;
160
- case 'thinking':
161
- dispatch({ type: 'SET_THINKING', payload: event.data.thinking });
162
- break;
163
- case 'tool_use':
164
- // Show tool being used
165
- dispatch({ type: 'APPEND_STREAM', payload: `\n[${event.data.tool}] ` });
166
- break;
167
- case 'tool_result':
168
- // Mark that next text should be on new line
169
- needsNewline = true;
170
- break;
171
- case 'init':
172
- if (event.data.sessionId) {
173
- dispatch({ type: 'SET_SESSION_ID', payload: event.data.sessionId });
174
- }
175
- break;
176
- case 'result':
177
- dispatch({ type: 'STOP_PROCESSING' });
178
- needsNewline = false; // Reset for next execution
179
- break;
180
- }
181
- };
182
- }
183
- //# sourceMappingURL=appReducer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"appReducer.js","sourceRoot":"","sources":["../../../../src/interactive/ink/context/appReducer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,4BAA4B;AAC5B,MAAM,UAAU,kBAAkB,CAAC,GAAW,EAAE,YAAoB;IAClE,OAAO;QACL,GAAG;QACH,YAAY;QACZ,SAAS,EAAE,WAAW,IAAI,CAAC,GAAG,EAAE,EAAE;QAClC,mBAAmB,EAAE,EAAE;QACvB,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,EAAE;QACjB,eAAe,EAAE,EAAE;QACnB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,EAAE;QACjB,aAAa,EAAE,KAAK;QACpB,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACvB,YAAY,EAAE,IAAI,GAAG,EAAE;QACvB,gBAAgB,EAAE,EAAE;KACrB,CAAC;AACJ,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,UAAU,CAAC,KAAe,EAAE,MAAiB;IAC3D,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,cAAc;YACjB,OAAO;gBACL,GAAG,KAAK;gBACR,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;gBACjC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;gBACrC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa;aACnD,CAAC;QAEJ,KAAK,mBAAmB;YACtB,OAAO;gBACL,GAAG,KAAK;gBACR,YAAY,EAAE,MAAM,CAAC,OAAO;aAC7B,CAAC;QAEJ,KAAK,kBAAkB;YACrB,OAAO;gBACL,GAAG,KAAK;gBACR,YAAY,EAAE,IAAI;gBAClB,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;gBAChC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK;gBAClC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;gBACnC,aAAa,EAAE,EAAE;gBACjB,eAAe,EAAE,EAAE;gBACnB,KAAK,EAAE,SAAS;aACjB,CAAC;QAEJ,KAAK,iBAAiB;YACpB,OAAO;gBACL,GAAG,KAAK;gBACR,YAAY,EAAE,KAAK;aACpB,CAAC;QAEJ,KAAK,eAAe;YAClB,OAAO;gBACL,GAAG,KAAK;gBACR,aAAa,EAAE,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,OAAO;aACpD,CAAC;QAEJ,KAAK,cAAc;YACjB,OAAO;gBACL,GAAG,KAAK;gBACR,eAAe,EAAE,MAAM,CAAC,OAAO;aAChC,CAAC;QAEJ,KAAK,cAAc;YACjB,OAAO;gBACL,GAAG,KAAK;gBACR,aAAa,EAAE,EAAE;gBACjB,eAAe,EAAE,EAAE;aACpB,CAAC;QAEJ,KAAK,aAAa;YAChB,OAAO;gBACL,GAAG,KAAK;gBACR,mBAAmB,EAAE,CAAC,GAAG,KAAK,CAAC,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC;aACpE,CAAC;QAEJ,KAAK,uBAAuB;YAC1B,OAAO;gBACL,GAAG,KAAK;gBACR,aAAa,EAAE,CAAC,KAAK,CAAC,aAAa;aACpC,CAAC;QAEJ,KAAK,WAAW;YACd,OAAO;gBACL,GAAG,KAAK;gBACR,KAAK,EAAE,MAAM,CAAC,OAAO;gBACrB,YAAY,EAAE,KAAK;aACpB,CAAC;QAEJ,KAAK,aAAa;YAChB,OAAO;gBACL,GAAG,KAAK;gBACR,KAAK,EAAE,SAAS;aACjB,CAAC;QAEJ,KAAK,UAAU;YACb,OAAO;gBACL,GAAG,KAAK;gBACR,IAAI,EAAE,MAAM,CAAC,OAAO;aACrB,CAAC;QAEJ,KAAK,YAAY;YACf,OAAO;gBACL,GAAG,KAAK;gBACR,IAAI,EAAE,SAAS;aAChB,CAAC;QAEJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,GAAG,KAAK;gBACR,eAAe,EAAE,MAAM,CAAC,OAAO;aAChC,CAAC;QAEJ,KAAK,oBAAoB;YACvB,OAAO;gBACL,GAAG,KAAK;gBACR,aAAa,EAAE,MAAM,CAAC,OAAO;aAC9B,CAAC;QAEJ,KAAK,oBAAoB;YACvB,OAAO;gBACL,GAAG,KAAK;gBACR,mBAAmB,EAAE,EAAE;gBACvB,aAAa,EAAE,EAAE;gBACjB,eAAe,EAAE,EAAE;gBACnB,SAAS,EAAE,CAAC;gBACZ,gBAAgB,EAAE,EAAE;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC;QAEJ,KAAK,YAAY;YACf,OAAO;gBACL,GAAG,KAAK;gBACR,KAAK,EAAE,MAAM,CAAC,OAAO;aACtB,CAAC;QAEJ,KAAK,YAAY;YACf,OAAO;gBACL,GAAG,KAAK;gBACR,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;aACxB,CAAC;QAEJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,GAAG,KAAK;gBACR,gBAAgB,EAAE,CAAC,GAAG,KAAK,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC;aAC9D,CAAC;QAEJ,KAAK,kBAAkB;YACrB,OAAO;gBACL,GAAG,KAAK;gBACR,WAAW,EAAE,MAAM,CAAC,OAAO;aAC5B,CAAC;QAEJ;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,mBAAmB,CAAC,QAA6B;IAC/D,0EAA0E;IAC1E,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,OAAO,CAAC,KAAkB,EAAE,EAAE;QAC5B,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,MAAM;gBACT,iDAAiD;gBACjD,IAAI,YAAY,EAAE,CAAC;oBACjB,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;oBACnD,YAAY,GAAG,KAAK,CAAC;gBACvB,CAAC;gBACD,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC9D,MAAM;YACR,KAAK,UAAU;gBACb,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACjE,MAAM;YACR,KAAK,UAAU;gBACb,uBAAuB;gBACvB,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;gBACxE,MAAM;YACR,KAAK,aAAa;gBAChB,4CAA4C;gBAC5C,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACzB,QAAQ,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBACtE,CAAC;gBACD,MAAM;YACR,KAAK,QAAQ;gBACX,QAAQ,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;gBACtC,YAAY,GAAG,KAAK,CAAC,CAAC,2BAA2B;gBACjD,MAAM;QACV,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -1,144 +0,0 @@
1
- /**
2
- * Type definitions for application context
3
- */
4
- import type { WorkflowConfig, AgentResponse, WorkflowStep } from '../../../models/types.js';
5
- import type { ConversationMessage } from '../../../models/session.js';
6
- import type { PermissionRequest, AskUserQuestionInput } from '../../../claude/process.js';
7
- /** Modal data types (serializable, no functions) */
8
- export type ModalData = {
9
- type: 'none';
10
- } | {
11
- type: 'help';
12
- } | {
13
- type: 'workflowSelector';
14
- } | {
15
- type: 'permission';
16
- request: PermissionRequest;
17
- } | {
18
- type: 'askUserQuestion';
19
- input: AskUserQuestionInput;
20
- } | {
21
- type: 'iterationLimit';
22
- currentIteration: number;
23
- maxIterations: number;
24
- currentStep: string;
25
- } | {
26
- type: 'userInput';
27
- step: WorkflowStep;
28
- response: AgentResponse;
29
- };
30
- /** Permission response types */
31
- export type PermissionResponseType = 'allow' | 'deny' | 'always' | 'always_command' | 'sacrifice';
32
- /** Resolver types for modals */
33
- export type ModalResolvers = {
34
- permission?: (response: PermissionResponseType) => void;
35
- askUserQuestion?: (answers: Record<string, string>) => void;
36
- iterationLimit?: (additional: number | null) => void;
37
- userInput?: (input: string | null) => void;
38
- };
39
- /** Application state */
40
- export interface AppState {
41
- /** Current working directory */
42
- cwd: string;
43
- /** Current workflow name */
44
- workflowName: string;
45
- /** Session ID */
46
- sessionId: string;
47
- /** Claude session ID */
48
- claudeSessionId?: string;
49
- /** Conversation history */
50
- conversationHistory: ConversationMessage[];
51
- /** Whether the system is processing */
52
- isProcessing: boolean;
53
- /** Current streaming content */
54
- streamContent: string;
55
- /** Current thinking content */
56
- thinkingContent: string;
57
- /** Current agent name */
58
- currentAgent: string;
59
- /** Current step name */
60
- currentStep: string;
61
- /** Current iteration */
62
- iteration: number;
63
- /** Max iterations */
64
- maxIterations: number;
65
- /** Sacrifice mode (auto-approve everything) */
66
- sacrificeMode: boolean;
67
- /** Error message if any */
68
- error?: string;
69
- /** Info message if any (non-error feedback) */
70
- info?: string;
71
- /** Workflow config */
72
- workflowConfig?: WorkflowConfig;
73
- /** Current modal/prompt data */
74
- modal: ModalData;
75
- /** All workflows for selector */
76
- allWorkflows: Map<string, WorkflowConfig>;
77
- /** Shared user inputs across agents */
78
- sharedUserInputs: string[];
79
- /** Current task being executed */
80
- currentTask?: string;
81
- }
82
- /** Action types */
83
- export type AppAction = {
84
- type: 'SET_WORKFLOW';
85
- payload: {
86
- name: string;
87
- config: WorkflowConfig;
88
- };
89
- } | {
90
- type: 'SET_ALL_WORKFLOWS';
91
- payload: Map<string, WorkflowConfig>;
92
- } | {
93
- type: 'START_PROCESSING';
94
- payload: {
95
- step: string;
96
- agent: string;
97
- iteration: number;
98
- };
99
- } | {
100
- type: 'STOP_PROCESSING';
101
- } | {
102
- type: 'APPEND_STREAM';
103
- payload: string;
104
- } | {
105
- type: 'SET_THINKING';
106
- payload: string;
107
- } | {
108
- type: 'CLEAR_STREAM';
109
- } | {
110
- type: 'ADD_MESSAGE';
111
- payload: ConversationMessage;
112
- } | {
113
- type: 'TOGGLE_SACRIFICE_MODE';
114
- } | {
115
- type: 'SET_ERROR';
116
- payload: string;
117
- } | {
118
- type: 'CLEAR_ERROR';
119
- } | {
120
- type: 'SET_INFO';
121
- payload: string;
122
- } | {
123
- type: 'CLEAR_INFO';
124
- } | {
125
- type: 'SET_SESSION_ID';
126
- payload: string;
127
- } | {
128
- type: 'SET_MAX_ITERATIONS';
129
- payload: number;
130
- } | {
131
- type: 'RESET_CONVERSATION';
132
- } | {
133
- type: 'SHOW_MODAL';
134
- payload: ModalData;
135
- } | {
136
- type: 'HIDE_MODAL';
137
- } | {
138
- type: 'ADD_USER_INPUT';
139
- payload: string;
140
- } | {
141
- type: 'SET_CURRENT_TASK';
142
- payload: string;
143
- };
144
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/interactive/ink/context/types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Type definitions for application context
3
- */
4
- export {};
5
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/interactive/ink/context/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,116 +0,0 @@
1
- /**
2
- * Key detection logic for terminal input handling
3
- *
4
- * Provides type definitions, constants, and functions for detecting
5
- * special key combinations across different terminal emulators.
6
- *
7
- * This module handles:
8
- * - Escape sequence tracking for iTerm2-style Option+Enter
9
- * - Newline/submit/cancel trigger detection
10
- * - Navigation and character input classification
11
- */
12
- /**
13
- * Threshold (ms) for detecting iTerm2-style Option+Enter (Escape + Enter).
14
- * Based on:
15
- * - Typical keyboard repeat delay is 200-500ms
16
- * - Terminal escape sequence transmission is near-instantaneous (<10ms)
17
- * - Human intentional Esc→Enter would take at least 100-150ms
18
- */
19
- export declare const ESCAPE_SEQUENCE_THRESHOLD_MS = 50;
20
- /**
21
- * Delay (ms) to allow Ink's initial render and terminal setup before enabling
22
- * raw keypress events. 100ms is sufficient for most terminals; shorter delays
23
- * may cause race conditions with Ink's terminal control.
24
- */
25
- export declare const KEYPRESS_INIT_DELAY_MS = 100;
26
- /**
27
- * Key event from Node.js keypress
28
- */
29
- export interface RawKeyEvent {
30
- name?: string;
31
- ctrl?: boolean;
32
- meta?: boolean;
33
- shift?: boolean;
34
- sequence?: string;
35
- }
36
- /**
37
- * Normalized key action types (discriminated union)
38
- */
39
- export type KeyAction = {
40
- type: 'newline';
41
- } | {
42
- type: 'submit';
43
- } | {
44
- type: 'cancel';
45
- } | {
46
- type: 'character';
47
- char: string;
48
- } | {
49
- type: 'backspace';
50
- } | {
51
- type: 'navigation';
52
- direction: 'up' | 'down' | 'left' | 'right';
53
- } | {
54
- type: 'escape';
55
- } | {
56
- type: 'ignored';
57
- };
58
- /**
59
- * Tracks Escape key timing for detecting iTerm2-style Option+Enter.
60
- *
61
- * iTerm2 (and some other Mac terminals) send Option+Enter as two separate events:
62
- * Escape followed by Enter. This tracker detects this pattern by checking if
63
- * Enter is pressed shortly after Escape.
64
- */
65
- export declare class EscapeSequenceTracker {
66
- private lastEscapeTime;
67
- private readonly thresholdMs;
68
- constructor(thresholdMs?: number);
69
- /** Record that Escape key was pressed */
70
- trackEscape(): void;
71
- /**
72
- * Check if Enter was pressed within threshold of Escape.
73
- * Resets the tracker if true to prevent repeated triggers.
74
- */
75
- isEscapeThenEnter(): boolean;
76
- /** Reset the tracker state */
77
- reset(): void;
78
- }
79
- /**
80
- * Determines if a key event should trigger newline input.
81
- *
82
- * Supported patterns:
83
- * - Ctrl+O: Universal alternative (works in all terminals)
84
- * - Ctrl+Enter: ctrl flag with Enter key
85
- * - Option+Enter (meta): meta flag with Enter key (some terminals)
86
- * - Shift+Enter: shift flag with Enter key (some terminals)
87
- * - Option+Enter (escape sequence): '\x1b\r' sequence (Terminal.app)
88
- * - Option+Enter (iTerm2): Escape + Enter as separate events
89
- * - Escape+OM: '\x1bOM' sequence (some terminals)
90
- */
91
- export declare function isNewLineTrigger(key: RawKeyEvent, escapeTracker: EscapeSequenceTracker): boolean;
92
- /**
93
- * Determines if a key event should submit input.
94
- *
95
- * Supports:
96
- * - Plain Enter (no modifiers)
97
- * - Ctrl+J (legacy/universal)
98
- */
99
- export declare function isSubmitTrigger(key: RawKeyEvent): boolean;
100
- /**
101
- * Determines if a key event is a cancel trigger (Ctrl+C)
102
- */
103
- export declare function isCancelTrigger(key: RawKeyEvent): boolean;
104
- /**
105
- * Determines if a key event is a navigation key
106
- */
107
- export declare function isNavigationKey(key: RawKeyEvent): 'up' | 'down' | 'left' | 'right' | null;
108
- /**
109
- * Determines if a key event is a backspace
110
- */
111
- export declare function isBackspaceKey(key: RawKeyEvent): boolean;
112
- /**
113
- * Classify a raw key event into a normalized action
114
- */
115
- export declare function classifyKeyEvent(str: string | undefined, key: RawKeyEvent, escapeTracker: EscapeSequenceTracker): KeyAction;
116
- //# sourceMappingURL=keyDetection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keyDetection.d.ts","sourceRoot":"","sources":["../../../../src/interactive/ink/hooks/keyDetection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAM1C;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,GACnE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAMxB;;;;;;GAMG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAEzB,WAAW,GAAE,MAAqC;IAI9D,yCAAyC;IACzC,WAAW,IAAI,IAAI;IAInB;;;OAGG;IACH,iBAAiB,IAAI,OAAO;IAS5B,8BAA8B;IAC9B,KAAK,IAAI,IAAI;CAGd;AAMD;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,WAAW,EAChB,aAAa,EAAE,qBAAqB,GACnC,OAAO,CAsBT;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAczD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAEzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAMzF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAExD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,GAAG,EAAE,WAAW,EAChB,aAAa,EAAE,qBAAqB,GACnC,SAAS,CA2CX"}