@defai.digital/ax-cli 2.8.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/README.md +85 -9
  2. package/dist/agent/context-manager.js +9 -0
  3. package/dist/agent/context-manager.js.map +1 -1
  4. package/dist/agent/dependency-resolver.js +13 -5
  5. package/dist/agent/dependency-resolver.js.map +1 -1
  6. package/dist/agent/llm-agent.d.ts +48 -0
  7. package/dist/agent/llm-agent.js +375 -3
  8. package/dist/agent/llm-agent.js.map +1 -1
  9. package/dist/agent/subagent-orchestrator.d.ts +4 -0
  10. package/dist/agent/subagent-orchestrator.js +54 -11
  11. package/dist/agent/subagent-orchestrator.js.map +1 -1
  12. package/dist/agent/subagent.js +35 -11
  13. package/dist/agent/subagent.js.map +1 -1
  14. package/dist/commands/cache.js +5 -3
  15. package/dist/commands/cache.js.map +1 -1
  16. package/dist/commands/memory.js +21 -16
  17. package/dist/commands/memory.js.map +1 -1
  18. package/dist/commands/plan.d.ts +43 -0
  19. package/dist/commands/plan.js +385 -0
  20. package/dist/commands/plan.js.map +1 -0
  21. package/dist/constants.d.ts +28 -0
  22. package/dist/constants.js +29 -0
  23. package/dist/constants.js.map +1 -1
  24. package/dist/hooks/use-enhanced-input.d.ts +5 -1
  25. package/dist/hooks/use-enhanced-input.js +23 -10
  26. package/dist/hooks/use-enhanced-input.js.map +1 -1
  27. package/dist/hooks/use-input-handler.d.ts +11 -1
  28. package/dist/hooks/use-input-handler.js +270 -2
  29. package/dist/hooks/use-input-handler.js.map +1 -1
  30. package/dist/llm/tools.d.ts +5 -0
  31. package/dist/llm/tools.js +57 -6
  32. package/dist/llm/tools.js.map +1 -1
  33. package/dist/mcp/client.js +19 -12
  34. package/dist/mcp/client.js.map +1 -1
  35. package/dist/planner/dependency-resolver.d.ts +72 -0
  36. package/dist/planner/dependency-resolver.js +272 -0
  37. package/dist/planner/dependency-resolver.js.map +1 -0
  38. package/dist/planner/index.d.ts +12 -0
  39. package/dist/planner/index.js +26 -0
  40. package/dist/planner/index.js.map +1 -0
  41. package/dist/planner/plan-generator.d.ts +74 -0
  42. package/dist/planner/plan-generator.js +244 -0
  43. package/dist/planner/plan-generator.js.map +1 -0
  44. package/dist/planner/plan-storage.d.ts +98 -0
  45. package/dist/planner/plan-storage.js +325 -0
  46. package/dist/planner/plan-storage.js.map +1 -0
  47. package/dist/planner/prompts/planning-prompt.d.ts +41 -0
  48. package/dist/planner/prompts/planning-prompt.js +289 -0
  49. package/dist/planner/prompts/planning-prompt.js.map +1 -0
  50. package/dist/planner/task-planner.d.ts +135 -0
  51. package/dist/planner/task-planner.js +493 -0
  52. package/dist/planner/task-planner.js.map +1 -0
  53. package/dist/planner/token-estimator.d.ts +63 -0
  54. package/dist/planner/token-estimator.js +295 -0
  55. package/dist/planner/token-estimator.js.map +1 -0
  56. package/dist/planner/types.d.ts +669 -0
  57. package/dist/planner/types.js +213 -0
  58. package/dist/planner/types.js.map +1 -0
  59. package/dist/schemas/confirmation-schemas.d.ts +5 -0
  60. package/dist/schemas/confirmation-schemas.js +7 -0
  61. package/dist/schemas/confirmation-schemas.js.map +1 -1
  62. package/dist/schemas/index.d.ts +4 -4
  63. package/dist/tools/bash-output.d.ts +25 -0
  64. package/dist/tools/bash-output.js +145 -0
  65. package/dist/tools/bash-output.js.map +1 -0
  66. package/dist/tools/bash.d.ts +46 -2
  67. package/dist/tools/bash.js +241 -67
  68. package/dist/tools/bash.js.map +1 -1
  69. package/dist/tools/search.js +15 -2
  70. package/dist/tools/search.js.map +1 -1
  71. package/dist/tools/text-editor.js +4 -2
  72. package/dist/tools/text-editor.js.map +1 -1
  73. package/dist/ui/components/chat-history.d.ts +1 -0
  74. package/dist/ui/components/chat-history.js +125 -41
  75. package/dist/ui/components/chat-history.js.map +1 -1
  76. package/dist/ui/components/chat-input.js +10 -3
  77. package/dist/ui/components/chat-input.js.map +1 -1
  78. package/dist/ui/components/chat-interface.js +152 -44
  79. package/dist/ui/components/chat-interface.js.map +1 -1
  80. package/dist/ui/components/collapsible-tool-result.d.ts +26 -0
  81. package/dist/ui/components/collapsible-tool-result.js +172 -0
  82. package/dist/ui/components/collapsible-tool-result.js.map +1 -0
  83. package/dist/ui/components/command-suggestions.js +2 -1
  84. package/dist/ui/components/command-suggestions.js.map +1 -1
  85. package/dist/ui/components/confirmation-dialog.js +25 -36
  86. package/dist/ui/components/confirmation-dialog.js.map +1 -1
  87. package/dist/ui/components/index.d.ts +8 -0
  88. package/dist/ui/components/index.js +9 -0
  89. package/dist/ui/components/index.js.map +1 -1
  90. package/dist/ui/components/keyboard-hints.d.ts +35 -0
  91. package/dist/ui/components/keyboard-hints.js +134 -0
  92. package/dist/ui/components/keyboard-hints.js.map +1 -0
  93. package/dist/ui/components/loading-spinner.d.ts +2 -1
  94. package/dist/ui/components/loading-spinner.js +86 -34
  95. package/dist/ui/components/loading-spinner.js.map +1 -1
  96. package/dist/ui/components/phase-progress.d.ts +21 -0
  97. package/dist/ui/components/phase-progress.js +228 -0
  98. package/dist/ui/components/phase-progress.js.map +1 -0
  99. package/dist/ui/components/quick-actions.d.ts +12 -0
  100. package/dist/ui/components/quick-actions.js +122 -0
  101. package/dist/ui/components/quick-actions.js.map +1 -0
  102. package/dist/ui/components/reasoning-display.d.ts +0 -80
  103. package/dist/ui/components/reasoning-display.js +0 -83
  104. package/dist/ui/components/reasoning-display.js.map +1 -1
  105. package/dist/ui/components/status-bar.d.ts +25 -0
  106. package/dist/ui/components/status-bar.js +125 -0
  107. package/dist/ui/components/status-bar.js.map +1 -0
  108. package/dist/ui/components/toast-notification.d.ts +123 -0
  109. package/dist/ui/components/toast-notification.js +143 -0
  110. package/dist/ui/components/toast-notification.js.map +1 -0
  111. package/dist/ui/components/welcome-panel.d.ts +10 -0
  112. package/dist/ui/components/welcome-panel.js +107 -0
  113. package/dist/ui/components/welcome-panel.js.map +1 -0
  114. package/dist/utils/background-task-manager.d.ts +95 -0
  115. package/dist/utils/background-task-manager.js +330 -0
  116. package/dist/utils/background-task-manager.js.map +1 -0
  117. package/dist/utils/confirmation-service.js +8 -3
  118. package/dist/utils/confirmation-service.js.map +1 -1
  119. package/dist/utils/message-optimizer.d.ts +1 -0
  120. package/dist/utils/message-optimizer.js +7 -1
  121. package/dist/utils/message-optimizer.js.map +1 -1
  122. package/dist/utils/project-analyzer.js +5 -2
  123. package/dist/utils/project-analyzer.js.map +1 -1
  124. package/package.json +2 -1
@@ -0,0 +1,385 @@
1
+ /**
2
+ * Plan Commands
3
+ *
4
+ * CLI commands for multi-phase task planning system.
5
+ */
6
+ import { getTaskPlanner, PlanStatus, PhaseStatus } from "../planner/index.js";
7
+ import { getPlanStorage } from "../planner/plan-storage.js";
8
+ // ============================================================================
9
+ // Helper Functions
10
+ // ============================================================================
11
+ function formatDuration(ms) {
12
+ if (ms < 1000)
13
+ return `${ms}ms`;
14
+ const seconds = Math.floor(ms / 1000);
15
+ if (seconds < 60)
16
+ return `${seconds}s`;
17
+ const minutes = Math.floor(seconds / 60);
18
+ const remainingSeconds = seconds % 60;
19
+ return `${minutes}m ${remainingSeconds}s`;
20
+ }
21
+ function getStatusIcon(status) {
22
+ switch (status) {
23
+ case PhaseStatus.COMPLETED:
24
+ return "✓";
25
+ case PhaseStatus.EXECUTING:
26
+ return "⏳";
27
+ case PhaseStatus.FAILED:
28
+ return "✕";
29
+ case PhaseStatus.SKIPPED:
30
+ return "⊘";
31
+ case PhaseStatus.APPROVED:
32
+ return "◉";
33
+ case PhaseStatus.QUEUED:
34
+ return "◎";
35
+ case PhaseStatus.CANCELLED:
36
+ return "⊗";
37
+ case PhaseStatus.PENDING:
38
+ default:
39
+ return "○";
40
+ }
41
+ }
42
+ function getPlanStatusIcon(status) {
43
+ switch (status) {
44
+ case PlanStatus.COMPLETED:
45
+ return "✓";
46
+ case PlanStatus.EXECUTING:
47
+ return "⏳";
48
+ case PlanStatus.FAILED:
49
+ return "✕";
50
+ case PlanStatus.PAUSED:
51
+ return "⏸";
52
+ case PlanStatus.ABANDONED:
53
+ return "⊗";
54
+ case PlanStatus.APPROVED:
55
+ return "◉";
56
+ case PlanStatus.CREATED:
57
+ default:
58
+ return "○";
59
+ }
60
+ }
61
+ function formatPlanSummaryBrief(plan) {
62
+ let output = `**${getPlanStatusIcon(plan.status)} Plan: ${plan.id}**\n`;
63
+ output += ` Request: ${plan.originalPrompt.slice(0, 60)}${plan.originalPrompt.length > 60 ? "..." : ""}\n`;
64
+ output += ` Status: ${plan.status}\n`;
65
+ output += ` Progress: ${plan.completedPhases}/${plan.totalPhases} phases\n`;
66
+ return output;
67
+ }
68
+ function formatPlanSummary(plan) {
69
+ const completed = plan.phases.filter((p) => p.status === PhaseStatus.COMPLETED).length;
70
+ const failed = plan.phases.filter((p) => p.status === PhaseStatus.FAILED).length;
71
+ const total = plan.phases.length;
72
+ let output = `**${getPlanStatusIcon(plan.status)} Plan: ${plan.id}**\n`;
73
+ output += ` Request: ${plan.originalPrompt.slice(0, 60)}${plan.originalPrompt.length > 60 ? "..." : ""}\n`;
74
+ output += ` Status: ${plan.status}\n`;
75
+ output += ` Progress: ${completed}/${total} phases`;
76
+ if (failed > 0) {
77
+ output += ` (${failed} failed)`;
78
+ }
79
+ output += "\n";
80
+ if (plan.estimatedDuration > 0) {
81
+ output += ` Est. Duration: ${formatDuration(plan.estimatedDuration)}`;
82
+ if (plan.actualDuration > 0) {
83
+ output += ` (Actual: ${formatDuration(plan.actualDuration)})`;
84
+ }
85
+ output += "\n";
86
+ }
87
+ return output;
88
+ }
89
+ function formatPlanDetails(plan) {
90
+ let output = formatPlanSummary(plan);
91
+ output += "\n**Phases:**\n";
92
+ for (const phase of plan.phases) {
93
+ const icon = getStatusIcon(phase.status);
94
+ const isCurrent = phase.index === plan.currentPhaseIndex;
95
+ const marker = isCurrent ? "→ " : " ";
96
+ output += `${marker}${icon} ${phase.index + 1}. ${phase.name}`;
97
+ if (phase.duration) {
98
+ output += ` (${formatDuration(phase.duration)})`;
99
+ }
100
+ output += "\n";
101
+ if (phase.error) {
102
+ output += ` Error: ${phase.error}\n`;
103
+ }
104
+ }
105
+ return output;
106
+ }
107
+ // ============================================================================
108
+ // Plan Commands
109
+ // ============================================================================
110
+ /**
111
+ * List all plans
112
+ */
113
+ export async function handlePlansCommand() {
114
+ try {
115
+ const storage = getPlanStorage();
116
+ const plans = await storage.listPlans();
117
+ if (plans.length === 0) {
118
+ return {
119
+ success: true,
120
+ output: "No plans found. Use AI to create a plan for complex tasks.",
121
+ };
122
+ }
123
+ let output = "**📋 Task Plans**\n\n";
124
+ // Group by status
125
+ const activePlans = plans.filter((p) => p.status === PlanStatus.EXECUTING ||
126
+ p.status === PlanStatus.PAUSED ||
127
+ p.status === PlanStatus.APPROVED);
128
+ const recentPlans = plans.filter((p) => p.status === PlanStatus.COMPLETED ||
129
+ p.status === PlanStatus.FAILED ||
130
+ p.status === PlanStatus.ABANDONED);
131
+ if (activePlans.length > 0) {
132
+ output += "**Active Plans:**\n";
133
+ for (const plan of activePlans) {
134
+ output += formatPlanSummaryBrief(plan);
135
+ output += "\n";
136
+ }
137
+ }
138
+ if (recentPlans.length > 0) {
139
+ output += "**Recent Plans:**\n";
140
+ for (const plan of recentPlans.slice(0, 5)) {
141
+ output += formatPlanSummaryBrief(plan);
142
+ output += "\n";
143
+ }
144
+ }
145
+ return { success: true, output };
146
+ }
147
+ catch (error) {
148
+ return {
149
+ success: false,
150
+ output: `Failed to list plans: ${error instanceof Error ? error.message : "Unknown error"}`,
151
+ };
152
+ }
153
+ }
154
+ /**
155
+ * Show details of a specific plan or current plan
156
+ */
157
+ export async function handlePlanCommand(planId) {
158
+ try {
159
+ const planner = getTaskPlanner();
160
+ let plan = null;
161
+ if (planId) {
162
+ const storage = getPlanStorage();
163
+ plan = await storage.loadPlan(planId);
164
+ }
165
+ else {
166
+ plan = planner.getCurrentPlan();
167
+ }
168
+ if (!plan) {
169
+ return {
170
+ success: false,
171
+ output: planId
172
+ ? `Plan not found: ${planId}`
173
+ : "No active plan. Use /plans to see all plans.",
174
+ };
175
+ }
176
+ return { success: true, output: formatPlanDetails(plan) };
177
+ }
178
+ catch (error) {
179
+ return {
180
+ success: false,
181
+ output: `Failed to load plan: ${error instanceof Error ? error.message : "Unknown error"}`,
182
+ };
183
+ }
184
+ }
185
+ /**
186
+ * Show phases of current plan
187
+ */
188
+ export async function handlePhasesCommand() {
189
+ try {
190
+ const planner = getTaskPlanner();
191
+ const plan = planner.getCurrentPlan();
192
+ if (!plan) {
193
+ return {
194
+ success: false,
195
+ output: "No active plan. Ask me to help with a complex task to create one.",
196
+ };
197
+ }
198
+ let output = `**📋 Phases for Plan: ${plan.id}**\n\n`;
199
+ for (const phase of plan.phases) {
200
+ const icon = getStatusIcon(phase.status);
201
+ const isCurrent = phase.index === plan.currentPhaseIndex;
202
+ const marker = isCurrent ? "→ " : " ";
203
+ output += `${marker}${icon} **Phase ${phase.index + 1}: ${phase.name}**\n`;
204
+ output += ` ${phase.description}\n`;
205
+ if (phase.objectives.length > 0) {
206
+ output += " Objectives:\n";
207
+ for (const obj of phase.objectives.slice(0, 3)) {
208
+ output += ` • ${obj}\n`;
209
+ }
210
+ if (phase.objectives.length > 3) {
211
+ output += ` ...and ${phase.objectives.length - 3} more\n`;
212
+ }
213
+ }
214
+ if (phase.toolsRequired.length > 0) {
215
+ output += ` Tools: ${phase.toolsRequired.join(", ")}\n`;
216
+ }
217
+ if (phase.duration) {
218
+ output += ` Duration: ${formatDuration(phase.duration)}\n`;
219
+ }
220
+ if (phase.error) {
221
+ output += ` Error: ${phase.error}\n`;
222
+ }
223
+ output += "\n";
224
+ }
225
+ return { success: true, output };
226
+ }
227
+ catch (error) {
228
+ return {
229
+ success: false,
230
+ output: `Failed to show phases: ${error instanceof Error ? error.message : "Unknown error"}`,
231
+ };
232
+ }
233
+ }
234
+ /**
235
+ * Pause current plan execution
236
+ */
237
+ export async function handlePauseCommand() {
238
+ try {
239
+ const planner = getTaskPlanner();
240
+ const plan = planner.getCurrentPlan();
241
+ if (!plan) {
242
+ return {
243
+ success: false,
244
+ output: "No active plan to pause.",
245
+ };
246
+ }
247
+ await planner.pausePlan();
248
+ return {
249
+ success: true,
250
+ output: "Plan execution paused. Use /resume to continue.",
251
+ };
252
+ }
253
+ catch (error) {
254
+ return {
255
+ success: false,
256
+ output: `Failed to pause: ${error instanceof Error ? error.message : "Unknown error"}`,
257
+ };
258
+ }
259
+ }
260
+ /**
261
+ * Resume paused plan
262
+ * Note: This marks the plan as ready to resume. Actual execution
263
+ * requires the LLMAgent to process it with a phase executor.
264
+ */
265
+ export async function handleResumeCommand(planId) {
266
+ try {
267
+ const planner = getTaskPlanner();
268
+ const storage = getPlanStorage();
269
+ // Determine which plan to resume
270
+ let targetPlanId = planId;
271
+ if (!targetPlanId) {
272
+ const currentPlan = planner.getCurrentPlan();
273
+ if (currentPlan) {
274
+ targetPlanId = currentPlan.id;
275
+ }
276
+ }
277
+ if (!targetPlanId) {
278
+ return {
279
+ success: false,
280
+ output: "No plan specified and no current plan. Use /plans to see available plans.",
281
+ };
282
+ }
283
+ // Load the plan to check its status
284
+ const plan = await storage.loadPlan(targetPlanId);
285
+ if (!plan) {
286
+ return { success: false, output: `Plan not found: ${targetPlanId}` };
287
+ }
288
+ // Check if plan can be resumed
289
+ if (plan.status !== PlanStatus.PAUSED) {
290
+ return {
291
+ success: false,
292
+ output: `Plan ${targetPlanId} is not paused (status: ${plan.status})`,
293
+ };
294
+ }
295
+ // Mark plan ready for resume - actual execution happens when user sends next message
296
+ return {
297
+ success: true,
298
+ output: `Plan ${targetPlanId} is ready to resume from phase ${plan.currentPhaseIndex + 1}.\n\nSend your next message to continue execution.`,
299
+ };
300
+ }
301
+ catch (error) {
302
+ return {
303
+ success: false,
304
+ output: `Failed to check plan: ${error instanceof Error ? error.message : "Unknown error"}`,
305
+ };
306
+ }
307
+ }
308
+ /**
309
+ * Skip current phase
310
+ */
311
+ export async function handleSkipPhaseCommand() {
312
+ try {
313
+ const planner = getTaskPlanner();
314
+ const plan = planner.getCurrentPlan();
315
+ if (!plan) {
316
+ return { success: false, output: "No active plan." };
317
+ }
318
+ const currentPhase = plan.phases[plan.currentPhaseIndex];
319
+ if (!currentPhase) {
320
+ return { success: false, output: "No current phase to skip." };
321
+ }
322
+ await planner.skipPhase(plan.id, currentPhase.id);
323
+ return {
324
+ success: true,
325
+ output: `Skipped phase: ${currentPhase.name}`,
326
+ };
327
+ }
328
+ catch (error) {
329
+ return {
330
+ success: false,
331
+ output: `Failed to skip phase: ${error instanceof Error ? error.message : "Unknown error"}`,
332
+ };
333
+ }
334
+ }
335
+ /**
336
+ * Abandon current plan
337
+ */
338
+ export async function handleAbandonCommand() {
339
+ try {
340
+ const planner = getTaskPlanner();
341
+ const plan = planner.getCurrentPlan();
342
+ if (!plan) {
343
+ return {
344
+ success: false,
345
+ output: "No active plan to abandon.",
346
+ };
347
+ }
348
+ await planner.abandonPlan(plan.id);
349
+ return {
350
+ success: true,
351
+ output: "Plan abandoned. All pending phases have been cancelled.",
352
+ };
353
+ }
354
+ catch (error) {
355
+ return {
356
+ success: false,
357
+ output: `Failed to abandon plan: ${error instanceof Error ? error.message : "Unknown error"}`,
358
+ };
359
+ }
360
+ }
361
+ /**
362
+ * List resumable plans
363
+ */
364
+ export async function handleResumableCommand() {
365
+ try {
366
+ const storage = getPlanStorage();
367
+ const plans = await storage.listResumablePlans();
368
+ if (plans.length === 0) {
369
+ return { success: true, output: "No resumable plans found." };
370
+ }
371
+ let output = "**Resumable Plans:**\n\n";
372
+ for (const plan of plans) {
373
+ output += formatPlanSummaryBrief(plan);
374
+ output += ` Use: /resume ${plan.id}\n\n`;
375
+ }
376
+ return { success: true, output };
377
+ }
378
+ catch (error) {
379
+ return {
380
+ success: false,
381
+ output: `Failed to list resumable plans: ${error instanceof Error ? error.message : "Unknown error"}`,
382
+ };
383
+ }
384
+ }
385
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/commands/plan.ts"],"names":[],"mappings":"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"}
@@ -68,3 +68,31 @@ export declare const ERROR_MESSAGES: {
68
68
  readonly FILE_NOT_FOUND: (filePath: string) => string;
69
69
  readonly DIRECTORY_NOT_FOUND: (dirPath: string) => string;
70
70
  };
71
+ export declare const PLANNER_CONFIG: {
72
+ /** Enable multi-phase planning */
73
+ readonly ENABLED: true;
74
+ /** Minimum expected tool calls to trigger auto-planning */
75
+ readonly AUTO_PLAN_THRESHOLD: 3;
76
+ /** Maximum phases per plan */
77
+ readonly MAX_PHASES: 10;
78
+ /** Phase timeout in milliseconds (10 minutes) */
79
+ readonly PHASE_TIMEOUT_MS: 600000;
80
+ /** Maximum parallel phases */
81
+ readonly MAX_PARALLEL_PHASES: 5;
82
+ /** Create checkpoints before each phase */
83
+ readonly AUTO_CHECKPOINT: true;
84
+ /** Require plan approval before executing */
85
+ readonly REQUIRE_PLAN_APPROVAL: true;
86
+ /** Require approval for high-risk phases */
87
+ readonly REQUIRE_HIGH_RISK_APPROVAL: true;
88
+ /** Auto-approve low-risk phases */
89
+ readonly AUTO_APPROVE_LOW_RISK: false;
90
+ /** Prune context between phases */
91
+ readonly PRUNE_AFTER_PHASE: true;
92
+ /** Target context percentage after pruning */
93
+ readonly TARGET_CONTEXT_PERCENTAGE: 50;
94
+ /** Plan retention period in days */
95
+ readonly PLAN_RETENTION_DAYS: 30;
96
+ /** Auto-cleanup old plans */
97
+ readonly AUTO_CLEANUP: true;
98
+ };
package/dist/constants.js CHANGED
@@ -86,4 +86,33 @@ export const ERROR_MESSAGES = {
86
86
  FILE_NOT_FOUND: (filePath) => formatMessage(messagesYaml.errors.file_not_found, { filePath }),
87
87
  DIRECTORY_NOT_FOUND: (dirPath) => formatMessage(messagesYaml.errors.directory_not_found, { dirPath }),
88
88
  };
89
+ // Multi-Phase Task Planner Configuration
90
+ export const PLANNER_CONFIG = {
91
+ /** Enable multi-phase planning */
92
+ ENABLED: true,
93
+ /** Minimum expected tool calls to trigger auto-planning */
94
+ AUTO_PLAN_THRESHOLD: 3,
95
+ /** Maximum phases per plan */
96
+ MAX_PHASES: 10,
97
+ /** Phase timeout in milliseconds (10 minutes) */
98
+ PHASE_TIMEOUT_MS: 600000,
99
+ /** Maximum parallel phases */
100
+ MAX_PARALLEL_PHASES: 5,
101
+ /** Create checkpoints before each phase */
102
+ AUTO_CHECKPOINT: true,
103
+ /** Require plan approval before executing */
104
+ REQUIRE_PLAN_APPROVAL: true,
105
+ /** Require approval for high-risk phases */
106
+ REQUIRE_HIGH_RISK_APPROVAL: true,
107
+ /** Auto-approve low-risk phases */
108
+ AUTO_APPROVE_LOW_RISK: false,
109
+ /** Prune context between phases */
110
+ PRUNE_AFTER_PHASE: true,
111
+ /** Target context percentage after pruning */
112
+ TARGET_CONTEXT_PERCENTAGE: 50,
113
+ /** Plan retention period in days */
114
+ PLAN_RETENTION_DAYS: 30,
115
+ /** Auto-cleanup old plans */
116
+ AUTO_CLEANUP: true,
117
+ };
89
118
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEnH,sCAAsC;AACtC,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;AACtC,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;AAC1C,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;AAE1C,sBAAsB;AACtB,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,eAAe;IACnD,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,eAAe;IACnD,kBAAkB,EAAE,YAAY,CAAC,KAAK,CAAC,kBAAkB;IACzD,qBAAqB,EAAE,YAAY,CAAC,KAAK,CAAC,qBAAqB;IAC/D,wBAAwB,EAAE,YAAY,CAAC,KAAK,CAAC,wBAAwB;IACrE,qBAAqB,EAAE,YAAY,CAAC,KAAK,CAAC,qBAAqB;CACvD,CAAC;AAEX,8CAA8C;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;IACvF,GAAG,CAAC,GAAG,CAAC,GAAG;QACT,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,aAAa,EAAE,KAAK,CAAC,cAAc;QACnC,eAAe,EAAE,KAAK,CAAC,iBAAiB;QACxC,gBAAgB,EAAE,KAAK,CAAC,kBAAkB;QAC1C,gBAAgB,EAAE,KAAK,CAAC,iBAAiB;QACzC,kBAAkB,EAAE,KAAK,CAAC,mBAAmB;QAC7C,gBAAgB,EAAE;YAChB,GAAG,EAAE,KAAK,CAAC,iBAAiB,CAAC,GAAG;YAChC,GAAG,EAAE,KAAK,CAAC,iBAAiB,CAAC,GAAG;SACjC;QACD,eAAe,EAAE,KAAK,CAAC,gBAAgB;KACxC,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,EASD,CAAC,CAAC;AAGJ,MAAM,CAAC,MAAM,aAAa,GAAmB,UAAU,CAAC,aAA+B,CAAC;AAExF,kBAAkB;AAClB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC,aAAa;IAC9C,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC,eAAe;IAClD,kBAAkB,EAAE,YAAY,CAAC,IAAI,CAAC,kBAAkB;CAChD,CAAC;AAEX,wBAAwB;AACxB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,gBAAgB,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB;CAC/C,CAAC;AAEX,oBAAoB;AACpB,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW;IACzC,cAAc,EAAE,YAAY,CAAC,GAAG,CAAC,cAAc;IAC/C,eAAe,EAAE,YAAY,CAAC,GAAG,CAAC,eAAe;CACzC,CAAC;AAEX,mBAAmB;AACnB,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,sBAAsB,EAAE,YAAY,CAAC,EAAE,CAAC,sBAAsB;IAC9D,yBAAyB,EAAE,YAAY,CAAC,EAAE,CAAC,yBAAyB;CAC5D,CAAC;AAEX,iBAAiB;AACjB,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,kBAAkB,EAAE,YAAY,CAAC,KAAK,CAAC,kBAAkB;IACzD,wBAAwB,EAAE,YAAY,CAAC,KAAK,CAAC,wBAAwB;IACrE,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa;IAC/C,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC,gBAAgB;IACrD,cAAc,EAAE,YAAY,CAAC,KAAK,CAAC,cAAc;IACjD,wBAAwB,EAAE,YAAY,CAAC,KAAK,CAAC,wBAAwB;CAC7D,CAAC;AAEX,sBAAsB;AACtB,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC,gBAAgB;IACrD,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW;CACnC,CAAC;AAEX,yBAAyB;AACzB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,cAAc,EAAE,YAAY,CAAC,WAAW,CAAC,cAAc;IACvD,cAAc,EAAE,YAAY,CAAC,WAAW,CAAC,cAAc;IACvD,wBAAwB,EAAE,YAAY,CAAC,WAAW,CAAC,wBAAwB;CACnE,CAAC;AAEX,aAAa;AACb,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAC,UAAoC,CAAC;AAE5E,uCAAuC;AACvC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,gBAAgB,EAAE,YAAY,CAAC,MAAM,CAAC,gBAAgB;IACtD,yBAAyB,EAAE,YAAY,CAAC,MAAM,CAAC,yBAAyB;IACxE,cAAc,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,CAAC;IACrG,oBAAoB,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,UAAU,EAAE,CAAC;IACrH,cAAc,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,CAAC;IACrG,mBAAmB,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,CAAC;CACrG,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -30,8 +30,12 @@ interface UseEnhancedInputProps {
30
30
  onSubmit?: (text: string) => void;
31
31
  onEscape?: () => void;
32
32
  onSpecialKey?: (key: Key) => boolean;
33
+ onVerboseToggle?: () => void;
34
+ onQuickActions?: () => void;
35
+ onBackgroundModeToggle?: () => void;
36
+ onCopyLastResponse?: () => void;
33
37
  disabled?: boolean;
34
38
  multiline?: boolean;
35
39
  }
36
- export declare function useEnhancedInput({ onSubmit, onEscape, onSpecialKey, disabled, multiline, }?: UseEnhancedInputProps): EnhancedInputHook;
40
+ export declare function useEnhancedInput({ onSubmit, onEscape, onSpecialKey, onVerboseToggle, onQuickActions, onBackgroundModeToggle, onCopyLastResponse, disabled, multiline, }?: UseEnhancedInputProps): EnhancedInputHook;
37
41
  export {};
@@ -1,18 +1,19 @@
1
1
  import { useState, useCallback, useRef } from "react";
2
- import { deleteCharBefore, deleteCharAfter, deleteWordBefore, deleteWordAfter, insertText, moveToLineStart, moveToLineEnd, moveToPreviousWord, moveToNextWord, } from "../utils/text-utils.js";
2
+ import { deleteCharBefore, deleteCharAfter, deleteWordBefore, deleteWordAfter, insertText, moveToLineStart, moveToPreviousWord, moveToNextWord, } from "../utils/text-utils.js";
3
3
  import { useInputHistory } from "./use-input-history.js";
4
- export function useEnhancedInput({ onSubmit, onEscape, onSpecialKey, disabled = false, multiline = false, } = {}) {
4
+ export function useEnhancedInput({ onSubmit, onEscape, onSpecialKey, onVerboseToggle, onQuickActions, onBackgroundModeToggle, onCopyLastResponse, disabled = false, multiline = false, } = {}) {
5
5
  const [input, setInputState] = useState("");
6
6
  const [cursorPosition, setCursorPositionState] = useState(0);
7
7
  const isMultilineRef = useRef(multiline);
8
8
  const { addToHistory, navigateHistory, resetHistory, setOriginalInput, isNavigatingHistory, } = useInputHistory();
9
9
  const setInput = useCallback((text) => {
10
10
  setInputState(text);
11
- setCursorPositionState(Math.min(text.length, cursorPosition));
11
+ // Use functional update to get the current cursor position, avoiding stale closure
12
+ setCursorPositionState((currentCursor) => Math.min(text.length, currentCursor));
12
13
  if (!isNavigatingHistory()) {
13
14
  setOriginalInput(text);
14
15
  }
15
- }, [cursorPosition, isNavigatingHistory, setOriginalInput]);
16
+ }, [isNavigatingHistory, setOriginalInput]);
16
17
  const setCursorPosition = useCallback((position) => {
17
18
  setCursorPositionState(Math.max(0, Math.min(input.length, position)));
18
19
  }, [input.length]);
@@ -159,12 +160,9 @@ export function useEnhancedInput({ onSubmit, onEscape, onSpecialKey, disabled =
159
160
  }
160
161
  return;
161
162
  }
162
- // Handle Ctrl+K: Delete from cursor to end of line
163
+ // Handle Ctrl+K: Open quick actions menu
163
164
  if (key.ctrl && inputChar === "k") {
164
- const lineEnd = moveToLineEnd(input, cursorPosition);
165
- const newText = input.slice(0, cursorPosition) + input.slice(lineEnd);
166
- setInputState(newText);
167
- setOriginalInput(newText);
165
+ onQuickActions?.();
168
166
  return;
169
167
  }
170
168
  // Handle Ctrl+U: Delete from cursor to start of line
@@ -184,6 +182,21 @@ export function useEnhancedInput({ onSubmit, onEscape, onSpecialKey, disabled =
184
182
  setOriginalInput(result.text);
185
183
  return;
186
184
  }
185
+ // Handle Ctrl+O: Toggle verbose mode
186
+ if (key.ctrl && inputChar === "o") {
187
+ onVerboseToggle?.();
188
+ return;
189
+ }
190
+ // Handle Ctrl+B: Toggle background mode
191
+ if (key.ctrl && inputChar === "b") {
192
+ onBackgroundModeToggle?.();
193
+ return;
194
+ }
195
+ // Handle Ctrl+Y: Copy last response to clipboard
196
+ if (key.ctrl && inputChar === "y") {
197
+ onCopyLastResponse?.();
198
+ return;
199
+ }
187
200
  // Handle Ctrl+X: Clear entire input
188
201
  if (key.ctrl && inputChar === "x") {
189
202
  setInputState("");
@@ -198,7 +211,7 @@ export function useEnhancedInput({ onSubmit, onEscape, onSpecialKey, disabled =
198
211
  setCursorPositionState(result.position);
199
212
  setOriginalInput(result.text);
200
213
  }
201
- }, [disabled, onSpecialKey, input, cursorPosition, multiline, handleSubmit, navigateHistory, setOriginalInput]);
214
+ }, [disabled, onSpecialKey, onVerboseToggle, onQuickActions, onBackgroundModeToggle, onCopyLastResponse, input, cursorPosition, multiline, handleSubmit, navigateHistory, setOriginalInput]);
202
215
  return {
203
216
  input,
204
217
  cursorPosition,
@@ -1 +1 @@
1
- {"version":3,"file":"use-enhanced-input.js","sourceRoot":"","sources":["../../src/hooks/use-enhanced-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-enhanced-input.js","sourceRoot":"","sources":["../../src/hooks/use-enhanced-input.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,14 @@ interface UseInputHandlerProps {
11
11
  isProcessing: boolean;
12
12
  isStreaming: boolean;
13
13
  isConfirmationActive?: boolean;
14
+ onQuickActionsToggle?: () => void;
15
+ onVerboseModeChange?: (enabled: boolean) => void;
16
+ onBackgroundModeChange?: (enabled: boolean) => void;
17
+ onAutoEditModeChange?: (enabled: boolean) => void;
18
+ onTaskMovedToBackground?: (taskId: string) => void;
19
+ onOperationInterrupted?: () => void;
20
+ onChatCleared?: () => void;
21
+ onCopyLastResponse?: () => void;
14
22
  }
15
23
  interface CommandSuggestion {
16
24
  command: string;
@@ -19,7 +27,7 @@ interface CommandSuggestion {
19
27
  interface ModelOption {
20
28
  model: string;
21
29
  }
22
- export declare function useInputHandler({ agent, setChatHistory, setIsProcessing, setIsStreaming, setTokenCount, setProcessingTime, processingStartTime, isProcessing, isStreaming, isConfirmationActive, }: UseInputHandlerProps): {
30
+ export declare function useInputHandler({ agent, chatHistory, setChatHistory, setIsProcessing, setIsStreaming, setTokenCount, setProcessingTime, processingStartTime, isProcessing, isStreaming, isConfirmationActive, onQuickActionsToggle, onVerboseModeChange, onBackgroundModeChange, onAutoEditModeChange, onTaskMovedToBackground, onOperationInterrupted, onChatCleared, onCopyLastResponse, }: UseInputHandlerProps): {
23
31
  input: string;
24
32
  cursorPosition: number;
25
33
  showCommandSuggestions: boolean;
@@ -28,5 +36,7 @@ export declare function useInputHandler({ agent, setChatHistory, setIsProcessing
28
36
  availableModels: ModelOption[];
29
37
  agent: LLMAgent;
30
38
  autoEditEnabled: boolean;
39
+ verboseMode: boolean;
40
+ backgroundMode: boolean;
31
41
  };
32
42
  export {};