@defai.digital/ax-cli 3.12.4 → 3.12.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -48,6 +48,7 @@ ax-cli
48
48
  - [Security](#security)
49
49
  - [Architecture](#architecture)
50
50
  - [Changelog](#changelog)
51
+ - [Recent Changes (v3.12.5)](#recent-changes-v3125)
51
52
  - [Documentation](#documentation)
52
53
 
53
54
  ---
@@ -395,12 +396,33 @@ Email: **security@defai.digital** (private disclosure)
395
396
 
396
397
  - **SSOT Type System** via `@ax-cli/schemas`
397
398
  - **TypeScript strict mode** with Zod validation
398
- - **98%+ test coverage** (2083 tests)
399
+ - **98%+ test coverage** (2110+ tests)
399
400
  - **Modular design** with clean separation
400
401
  - **Enterprise security** with AES-256-GCM encryption
401
402
 
402
403
  ---
403
404
 
405
+ ## Recent Changes (v3.12.5)
406
+
407
+ ### Bug Fixes
408
+
409
+ - **Fixed `[INFO]` logging pollution**: Analyzer log messages no longer appear in CLI output. Set `DEBUG=1` to enable verbose logging.
410
+ - **Fixed `ask_user` tool**: Implemented complete interactive question dialog system with EventEmitter pattern, multi-question flow support, and graceful fallback in non-TTY mode.
411
+
412
+ ### New Features
413
+
414
+ - **QuestionDialog UI Component**: New interactive dialog for AI to ask clarifying questions during task execution
415
+ - **Multi-question support**: Ask multiple questions with progress indicators (e.g., "1/3")
416
+ - **Custom input option**: Users can select "Other" to provide free-text responses
417
+
418
+ ### Technical Improvements
419
+
420
+ - Refactored `AskUserService` to use EventEmitter pattern (consistent with `ConfirmationService`)
421
+ - Added 13 new tests for question dialog functionality
422
+ - Improved code quality and test coverage
423
+
424
+ ---
425
+
404
426
  ## Documentation
405
427
 
406
428
  | Guide | Description |
@@ -441,7 +463,7 @@ This project is developed with assistance from multiple AI coding assistants:
441
463
 
442
464
  - [AutomatosX](https://github.com/defai-digital/automatosx) - AI agent orchestration platform
443
465
  - [Claude](https://github.com/claude) - Anthropic's AI assistant
444
- - [Gemini Code Assist](https://github.com/apps/gemini-code-assist) - Google's AI coding assistant
466
+ - [Gemini CLI](https://github.com/google-gemini/gemini-cli) - Google's AI coding assistant
445
467
  - [Codex](https://github.com/openai/codex) - OpenAI's code generation model
446
468
 
447
469
  ---
@@ -3,9 +3,11 @@
3
3
  *
4
4
  * Allows the AI to ask the user questions during execution.
5
5
  * Supports multiple choice questions with optional custom input.
6
+ * Uses EventEmitter pattern to integrate with the UI layer.
6
7
  *
7
8
  * @packageDocumentation
8
9
  */
10
+ import { EventEmitter } from "events";
9
11
  import type { ToolResult } from "../types/index.js";
10
12
  /**
11
13
  * Question option
@@ -41,26 +43,80 @@ export interface QuestionResult {
41
43
  customInput?: string;
42
44
  }
43
45
  /**
44
- * Callback type for asking questions
46
+ * Question request for UI
45
47
  */
46
- export type AskQuestionCallback = (questions: Question[]) => Promise<QuestionResult[]>;
48
+ export interface QuestionRequest {
49
+ questions: Question[];
50
+ currentQuestionIndex: number;
51
+ }
47
52
  /**
48
- * Ask User Question Tool
53
+ * Ask User Question Service
49
54
  *
50
55
  * Allows the AI to ask clarifying questions during execution.
56
+ * Uses EventEmitter pattern similar to ConfirmationService.
51
57
  */
58
+ export declare class AskUserService extends EventEmitter {
59
+ private static instance;
60
+ private pendingQuestions;
61
+ private resolveQuestions;
62
+ private rejectQuestions;
63
+ private questionTimeoutId;
64
+ private currentQuestions;
65
+ private collectedResults;
66
+ private currentQuestionIndex;
67
+ static getInstance(): AskUserService;
68
+ constructor();
69
+ /**
70
+ * Ask questions and wait for user responses
71
+ */
72
+ askQuestions(questions: Question[]): Promise<ToolResult>;
73
+ /**
74
+ * Submit answer for current question
75
+ */
76
+ submitAnswer(answers: string[], customInput?: string): void;
77
+ /**
78
+ * Cancel the question dialog
79
+ */
80
+ cancelQuestions(reason?: string): void;
81
+ /**
82
+ * Check if questions are pending
83
+ */
84
+ isPending(): boolean;
85
+ /**
86
+ * Get current question
87
+ */
88
+ getCurrentQuestion(): Question | null;
89
+ /**
90
+ * Get progress info
91
+ */
92
+ getProgress(): {
93
+ current: number;
94
+ total: number;
95
+ };
96
+ /**
97
+ * Cleanup internal state
98
+ */
99
+ private cleanup;
100
+ }
101
+ /**
102
+ * Get the singleton instance
103
+ */
104
+ export declare function getAskUserService(): AskUserService;
52
105
  export declare class AskUserTool {
53
- private askCallback;
106
+ private service;
107
+ constructor();
54
108
  /**
55
- * Set the callback for asking questions
109
+ * Set the callback for asking questions (legacy API - no longer needed)
110
+ * @deprecated Use getAskUserService() events instead
56
111
  */
57
- setAskCallback(callback: AskQuestionCallback): void;
112
+ setAskCallback(_callback: (questions: Question[]) => Promise<QuestionResult[]>): void;
58
113
  /**
59
114
  * Execute the ask user question tool
60
115
  */
61
116
  execute(questions: Question[]): Promise<ToolResult>;
62
117
  }
63
118
  /**
64
- * Get the singleton instance
119
+ * Get the singleton instance (legacy API)
120
+ * @deprecated Use getAskUserService() instead
65
121
  */
66
122
  export declare function getAskUserTool(): AskUserTool;
@@ -3,32 +3,40 @@
3
3
  *
4
4
  * Allows the AI to ask the user questions during execution.
5
5
  * Supports multiple choice questions with optional custom input.
6
+ * Uses EventEmitter pattern to integrate with the UI layer.
6
7
  *
7
8
  * @packageDocumentation
8
9
  */
10
+ import { EventEmitter } from "events";
11
+ import { TIMEOUT_CONFIG } from "../constants.js";
9
12
  /**
10
- * Ask User Question Tool
13
+ * Ask User Question Service
11
14
  *
12
15
  * Allows the AI to ask clarifying questions during execution.
16
+ * Uses EventEmitter pattern similar to ConfirmationService.
13
17
  */
14
- export class AskUserTool {
15
- askCallback = null;
16
- /**
17
- * Set the callback for asking questions
18
- */
19
- setAskCallback(callback) {
20
- this.askCallback = callback;
18
+ export class AskUserService extends EventEmitter {
19
+ static instance;
20
+ pendingQuestions = null;
21
+ resolveQuestions = null;
22
+ rejectQuestions = null;
23
+ questionTimeoutId = null;
24
+ currentQuestions = [];
25
+ collectedResults = [];
26
+ currentQuestionIndex = 0;
27
+ static getInstance() {
28
+ if (!AskUserService.instance) {
29
+ AskUserService.instance = new AskUserService();
30
+ }
31
+ return AskUserService.instance;
32
+ }
33
+ constructor() {
34
+ super();
21
35
  }
22
36
  /**
23
- * Execute the ask user question tool
37
+ * Ask questions and wait for user responses
24
38
  */
25
- async execute(questions) {
26
- if (!this.askCallback) {
27
- return {
28
- success: false,
29
- error: "Question callback not set. Unable to ask user questions.",
30
- };
31
- }
39
+ async askQuestions(questions) {
32
40
  if (!questions || questions.length === 0) {
33
41
  return {
34
42
  success: false,
@@ -50,8 +58,75 @@ export class AskUserTool {
50
58
  };
51
59
  }
52
60
  }
61
+ // Check if there's already pending questions
62
+ if (this.pendingQuestions !== null) {
63
+ return {
64
+ success: false,
65
+ error: "Another question dialog is already pending. Please wait.",
66
+ };
67
+ }
68
+ // Check if we're in a TTY (interactive) environment
69
+ if (!process.stdin.isTTY) {
70
+ // Non-interactive mode: return first option as default
71
+ const defaultAnswers = [];
72
+ const results = [];
73
+ for (const q of questions) {
74
+ if (q.options && q.options.length > 0) {
75
+ defaultAnswers.push(`${q.question}: Selected default option "${q.options[0].label}" (non-interactive mode)`);
76
+ results.push({
77
+ question: q.question,
78
+ answers: [q.options[0].label],
79
+ });
80
+ }
81
+ }
82
+ return {
83
+ success: true,
84
+ output: `Non-interactive mode detected. Using default selections:\n\n${defaultAnswers.join("\n")}`,
85
+ };
86
+ }
87
+ // Store questions state
88
+ this.currentQuestions = questions;
89
+ this.collectedResults = [];
90
+ this.currentQuestionIndex = 0;
91
+ // Clear any existing timeout
92
+ if (this.questionTimeoutId) {
93
+ clearTimeout(this.questionTimeoutId);
94
+ this.questionTimeoutId = null;
95
+ }
96
+ // Create promise for async resolution
97
+ const resolvedState = { resolved: false };
98
+ this.pendingQuestions = new Promise((resolve, reject) => {
99
+ const safeResolve = (results) => {
100
+ if (resolvedState.resolved)
101
+ return;
102
+ resolvedState.resolved = true;
103
+ resolve(results);
104
+ };
105
+ const safeReject = (error) => {
106
+ if (resolvedState.resolved)
107
+ return;
108
+ resolvedState.resolved = true;
109
+ reject(error);
110
+ };
111
+ this.resolveQuestions = safeResolve;
112
+ this.rejectQuestions = safeReject;
113
+ // Set timeout for questions (use confirmation timeout as base, multiply by number of questions)
114
+ const timeoutMs = TIMEOUT_CONFIG.CONFIRMATION_TIMEOUT * Math.max(questions.length, 1);
115
+ const timeoutSec = Math.round(timeoutMs / TIMEOUT_CONFIG.MS_PER_SECOND);
116
+ this.questionTimeoutId = setTimeout(() => {
117
+ safeReject(new Error(`Question timeout - auto-cancelled after ${timeoutSec} seconds`));
118
+ this.cleanup();
119
+ }, timeoutMs);
120
+ });
121
+ // Emit event for UI to display first question
122
+ setImmediate(() => {
123
+ this.emit("question-requested", {
124
+ questions: this.currentQuestions,
125
+ currentQuestionIndex: this.currentQuestionIndex,
126
+ });
127
+ });
53
128
  try {
54
- const results = await this.askCallback(questions);
129
+ const results = await this.pendingQuestions;
55
130
  // Format results as readable output
56
131
  let output = "User responses:\n\n";
57
132
  for (let i = 0; i < results.length; i++) {
@@ -79,13 +154,125 @@ export class AskUserTool {
79
154
  };
80
155
  }
81
156
  }
157
+ /**
158
+ * Submit answer for current question
159
+ */
160
+ submitAnswer(answers, customInput) {
161
+ if (!this.currentQuestions.length || this.currentQuestionIndex >= this.currentQuestions.length) {
162
+ return;
163
+ }
164
+ const currentQuestion = this.currentQuestions[this.currentQuestionIndex];
165
+ this.collectedResults.push({
166
+ question: currentQuestion.question,
167
+ answers,
168
+ customInput,
169
+ });
170
+ this.currentQuestionIndex++;
171
+ // Check if we have more questions
172
+ if (this.currentQuestionIndex < this.currentQuestions.length) {
173
+ // Emit event for next question
174
+ setImmediate(() => {
175
+ this.emit("question-requested", {
176
+ questions: this.currentQuestions,
177
+ currentQuestionIndex: this.currentQuestionIndex,
178
+ });
179
+ });
180
+ }
181
+ else {
182
+ // All questions answered, resolve the promise
183
+ if (this.resolveQuestions) {
184
+ if (this.questionTimeoutId) {
185
+ clearTimeout(this.questionTimeoutId);
186
+ this.questionTimeoutId = null;
187
+ }
188
+ this.resolveQuestions(this.collectedResults);
189
+ this.cleanup();
190
+ }
191
+ }
192
+ }
193
+ /**
194
+ * Cancel the question dialog
195
+ */
196
+ cancelQuestions(reason) {
197
+ if (this.rejectQuestions) {
198
+ if (this.questionTimeoutId) {
199
+ clearTimeout(this.questionTimeoutId);
200
+ this.questionTimeoutId = null;
201
+ }
202
+ this.rejectQuestions(new Error(reason || "Questions cancelled by user"));
203
+ this.cleanup();
204
+ }
205
+ }
206
+ /**
207
+ * Check if questions are pending
208
+ */
209
+ isPending() {
210
+ return this.pendingQuestions !== null;
211
+ }
212
+ /**
213
+ * Get current question
214
+ */
215
+ getCurrentQuestion() {
216
+ if (this.currentQuestionIndex < this.currentQuestions.length) {
217
+ return this.currentQuestions[this.currentQuestionIndex];
218
+ }
219
+ return null;
220
+ }
221
+ /**
222
+ * Get progress info
223
+ */
224
+ getProgress() {
225
+ return {
226
+ current: this.currentQuestionIndex + 1,
227
+ total: this.currentQuestions.length,
228
+ };
229
+ }
230
+ /**
231
+ * Cleanup internal state
232
+ */
233
+ cleanup() {
234
+ this.resolveQuestions = null;
235
+ this.rejectQuestions = null;
236
+ this.pendingQuestions = null;
237
+ this.currentQuestions = [];
238
+ this.collectedResults = [];
239
+ this.currentQuestionIndex = 0;
240
+ }
82
241
  }
83
242
  /**
84
- * Singleton instance
243
+ * Get the singleton instance
244
+ */
245
+ export function getAskUserService() {
246
+ return AskUserService.getInstance();
247
+ }
248
+ // Legacy support: AskUserTool class that wraps the service
249
+ export class AskUserTool {
250
+ service;
251
+ constructor() {
252
+ this.service = getAskUserService();
253
+ }
254
+ /**
255
+ * Set the callback for asking questions (legacy API - no longer needed)
256
+ * @deprecated Use getAskUserService() events instead
257
+ */
258
+ setAskCallback(_callback) {
259
+ // No-op: callback-based API is deprecated in favor of EventEmitter pattern
260
+ console.warn("AskUserTool.setAskCallback() is deprecated. Use getAskUserService() events instead.");
261
+ }
262
+ /**
263
+ * Execute the ask user question tool
264
+ */
265
+ async execute(questions) {
266
+ return this.service.askQuestions(questions);
267
+ }
268
+ }
269
+ /**
270
+ * Singleton instance for legacy API
85
271
  */
86
272
  let askUserToolInstance = null;
87
273
  /**
88
- * Get the singleton instance
274
+ * Get the singleton instance (legacy API)
275
+ * @deprecated Use getAskUserService() instead
89
276
  */
90
277
  export function getAskUserTool() {
91
278
  if (!askUserToolInstance) {
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../src/tools/ask-user.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA6CH;;;;GAIG;AACH,MAAM,OAAO,WAAW;IACd,WAAW,GAA+B,IAAI,CAAC;IAEvD;;OAEG;IACH,cAAc,CAAC,QAA6B;QAC1C,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,SAAqB;QACjC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,0DAA0D;aAClE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,uBAAuB;aAC/B,CAAC;QACJ,CAAC;QAED,qBAAqB;QACrB,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAClD,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,6CAA6C;iBACrD,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpE,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,4CAA4C;iBACpD,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAElD,oCAAoC;YACpC,IAAI,MAAM,GAAG,qBAAqB,CAAC;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC1B,MAAM,IAAI,KAAK,MAAM,CAAC,QAAQ,MAAM,CAAC;gBACrC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;oBACvB,MAAM,IAAI,WAAW,MAAM,CAAC,WAAW,IAAI,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,WAAW,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBACrD,CAAC;gBACD,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,IAAI,CAAC;gBACjB,CAAC;YACH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM;aACP,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,gCAAgC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;aAChG,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,IAAI,mBAAmB,GAAuB,IAAI,CAAC;AAEnD;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,mBAAmB,GAAG,IAAI,WAAW,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,mBAAmB,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../../src/tools/ask-user.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,12 @@ import { StatusBar } from "./status-bar.js";
9
9
  import { QuickActions } from "./quick-actions.js";
10
10
  import { WelcomePanel } from "./welcome-panel.js";
11
11
  import ConfirmationDialog from "./confirmation-dialog.js";
12
+ import QuestionDialog from "./question-dialog.js";
12
13
  import { KeyboardHelp } from "./keyboard-help.js";
13
14
  import { ContextBreakdown } from "./context-breakdown.js";
14
15
  import { ToastContainer, useToasts, TOAST_MESSAGES } from "./toast-notification.js";
15
16
  import { ConfirmationService, } from "../../utils/confirmation-service.js";
17
+ import { getAskUserService, } from "../../tools/ask-user.js";
16
18
  import ApiKeyInput from "./api-key-input.js";
17
19
  import { getVersion } from "../../utils/version.js";
18
20
  import { getHistoryManager } from "../../utils/history-manager.js";
@@ -86,6 +88,7 @@ function ChatInterfaceWithAgent({ agent, initialMessage, loadPreviousHistory = f
86
88
  const [contextPercentage, setContextPercentage] = useState(0);
87
89
  const [showAutoPrune, setShowAutoPrune] = useState(false);
88
90
  const [confirmationOptions, setConfirmationOptions] = useState(null);
91
+ const [questionRequest, setQuestionRequest] = useState(null);
89
92
  const [showQuickActions, setShowQuickActions] = useState(false);
90
93
  const [showKeyboardHelp, setShowKeyboardHelp] = useState(false);
91
94
  const [showContextBreakdown, setShowContextBreakdown] = useState(false);
@@ -306,7 +309,7 @@ function ChatInterfaceWithAgent({ agent, initialMessage, loadPreviousHistory = f
306
309
  processingStartTime,
307
310
  isProcessing,
308
311
  isStreaming,
309
- isConfirmationActive: !!confirmationOptions,
312
+ isConfirmationActive: !!confirmationOptions || !!questionRequest,
310
313
  onQuickActionsToggle: () => setShowQuickActions((prev) => !prev),
311
314
  onVerboseModeChange: handleVerboseModeChange,
312
315
  onBackgroundModeChange: handleBackgroundModeChange,
@@ -500,6 +503,17 @@ function ChatInterfaceWithAgent({ agent, initialMessage, loadPreviousHistory = f
500
503
  confirmationService.off("confirmation-requested", handleConfirmationRequest);
501
504
  };
502
505
  }, [confirmationService]);
506
+ // Listen for question requests from AskUserService
507
+ useEffect(() => {
508
+ const askUserService = getAskUserService();
509
+ const handleQuestionRequest = (request) => {
510
+ setQuestionRequest(request);
511
+ };
512
+ askUserService.on("question-requested", handleQuestionRequest);
513
+ return () => {
514
+ askUserService.off("question-requested", handleQuestionRequest);
515
+ };
516
+ }, []);
503
517
  useEffect(() => {
504
518
  if (!isProcessing && !isStreaming) {
505
519
  setProcessingTime(0);
@@ -588,6 +602,26 @@ function ChatInterfaceWithAgent({ agent, initialMessage, loadPreviousHistory = f
588
602
  setProcessingTime(0);
589
603
  processingStartTime.current = 0;
590
604
  };
605
+ // Question dialog handlers
606
+ const handleQuestionSubmit = (answers, customInput) => {
607
+ const askUserService = getAskUserService();
608
+ askUserService.submitAnswer(answers, customInput);
609
+ // The service will emit another question-requested event if there are more questions
610
+ // or it will resolve the promise and close automatically
611
+ // We clear the current question to prepare for the next one
612
+ setQuestionRequest(null);
613
+ };
614
+ const handleQuestionCancel = () => {
615
+ const askUserService = getAskUserService();
616
+ askUserService.cancelQuestions("Questions cancelled by user");
617
+ setQuestionRequest(null);
618
+ // Reset processing states when operation is cancelled
619
+ setIsProcessing(false);
620
+ setIsStreaming(false);
621
+ setTokenCount(0);
622
+ setProcessingTime(0);
623
+ processingStartTime.current = 0;
624
+ };
591
625
  // Get MCP server count safely
592
626
  // MCP server count - only calculate once on mount
593
627
  // MCP servers are configured at startup and rarely change during session
@@ -685,7 +719,7 @@ function ChatInterfaceWithAgent({ agent, initialMessage, loadPreviousHistory = f
685
719
  // This can be done by directly calling the input handler or agent
686
720
  };
687
721
  return (React.createElement(Box, { flexDirection: "column", paddingX: 2 },
688
- chatHistory.length === 0 && !confirmationOptions && !showQuickActions && !showKeyboardHelp && !showContextBreakdown && (React.createElement(WelcomePanel, { projectName: projectName })),
722
+ chatHistory.length === 0 && !confirmationOptions && !questionRequest && !showQuickActions && !showKeyboardHelp && !showContextBreakdown && (React.createElement(WelcomePanel, { projectName: projectName })),
689
723
  currentPlan && !confirmationOptions && (React.createElement(Box, { marginBottom: 1 },
690
724
  React.createElement(PhaseProgress, { plan: currentPlan, compact: true }))),
691
725
  React.createElement(Box, { flexDirection: "column" },
@@ -703,7 +737,8 @@ function ChatInterfaceWithAgent({ agent, initialMessage, loadPreviousHistory = f
703
737
  return (React.createElement(ContextBreakdown, { onClose: () => setShowContextBreakdown(false), currentTokens: currentTokens, maxTokens: maxTokens, categories: categories }));
704
738
  })(),
705
739
  confirmationOptions && (React.createElement(ConfirmationDialog, { operation: confirmationOptions.operation, filename: confirmationOptions.filename, showVSCodeOpen: confirmationOptions.showVSCodeOpen, content: confirmationOptions.content, onConfirm: handleConfirmation, onReject: handleRejection })),
706
- !confirmationOptions && !showQuickActions && !showKeyboardHelp && !showContextBreakdown && (React.createElement(React.Fragment, null,
740
+ questionRequest && questionRequest.questions[questionRequest.currentQuestionIndex] && (React.createElement(QuestionDialog, { question: questionRequest.questions[questionRequest.currentQuestionIndex], questionNumber: questionRequest.currentQuestionIndex + 1, totalQuestions: questionRequest.questions.length, onSubmit: handleQuestionSubmit, onCancel: handleQuestionCancel })),
741
+ !confirmationOptions && !questionRequest && !showQuickActions && !showKeyboardHelp && !showContextBreakdown && (React.createElement(React.Fragment, null,
707
742
  React.createElement(LoadingSpinner, { isActive: isProcessing || isStreaming, processingTime: processingTime, tokenCount: tokenCount }),
708
743
  React.createElement(ChatInput, { input: input, cursorPosition: cursorPosition, isProcessing: isProcessing, isStreaming: isStreaming, pastedBlocks: pastedBlocks, currentBlockAtCursor: currentBlockAtCursor, isPasting: isPasting }),
709
744
  toasts.length > 0 && (React.createElement(ToastContainer, { toasts: toasts, onDismiss: removeToast, maxVisible: 2 })),
@@ -1 +1 @@
1
- {"version":3,"file":"chat-interface.js","sourceRoot":"","sources":["../../../src/ui/components/chat-interface.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-interface.js","sourceRoot":"","sources":["../../../src/ui/components/chat-interface.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Question Dialog Component
3
+ *
4
+ * Displays questions from the AI and collects user responses.
5
+ * Supports single and multi-select options with custom input.
6
+ */
7
+ import React from "react";
8
+ import type { Question } from "../../tools/ask-user.js";
9
+ interface QuestionDialogProps {
10
+ question: Question;
11
+ questionNumber: number;
12
+ totalQuestions: number;
13
+ onSubmit: (answers: string[], customInput?: string) => void;
14
+ onCancel: () => void;
15
+ }
16
+ export default function QuestionDialog({ question, questionNumber, totalQuestions, onSubmit, onCancel, }: QuestionDialogProps): React.JSX.Element;
17
+ export {};
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Question Dialog Component
3
+ *
4
+ * Displays questions from the AI and collects user responses.
5
+ * Supports single and multi-select options with custom input.
6
+ */
7
+ import React, { useState, useCallback } from "react";
8
+ import { Box, Text, useInput } from "ink";
9
+ export default function QuestionDialog({ question, questionNumber, totalQuestions, onSubmit, onCancel, }) {
10
+ const [selectedIndices, setSelectedIndices] = useState(new Set([0]));
11
+ const [cursorIndex, setCursorIndex] = useState(0);
12
+ const [showOtherInput, setShowOtherInput] = useState(false);
13
+ const [otherInput, setOtherInput] = useState("");
14
+ // Options including "Other" for custom input
15
+ const allOptions = [...question.options, { label: "Other (custom input)", description: "Enter your own response" }];
16
+ const otherIndex = allOptions.length - 1;
17
+ const handleToggleSelection = useCallback((index) => {
18
+ if (question.multiSelect) {
19
+ // Multi-select: toggle the selection
20
+ setSelectedIndices((prev) => {
21
+ const newSet = new Set(prev);
22
+ if (newSet.has(index)) {
23
+ newSet.delete(index);
24
+ }
25
+ else {
26
+ newSet.add(index);
27
+ }
28
+ return newSet;
29
+ });
30
+ }
31
+ else {
32
+ // Single-select: replace selection
33
+ setSelectedIndices(new Set([index]));
34
+ }
35
+ // Show other input if "Other" is selected
36
+ if (index === otherIndex) {
37
+ setShowOtherInput(true);
38
+ }
39
+ else if (!question.multiSelect) {
40
+ setShowOtherInput(false);
41
+ }
42
+ }, [question.multiSelect, otherIndex]);
43
+ const handleSubmit = useCallback(() => {
44
+ if (showOtherInput && selectedIndices.has(otherIndex)) {
45
+ // Submit with custom input
46
+ if (otherInput.trim()) {
47
+ const regularAnswers = Array.from(selectedIndices)
48
+ .filter((i) => i !== otherIndex)
49
+ .map((i) => allOptions[i].label);
50
+ onSubmit(regularAnswers, otherInput.trim());
51
+ }
52
+ }
53
+ else {
54
+ // Submit selected options
55
+ const answers = Array.from(selectedIndices).map((i) => allOptions[i].label);
56
+ if (answers.length > 0) {
57
+ onSubmit(answers);
58
+ }
59
+ }
60
+ }, [selectedIndices, showOtherInput, otherIndex, otherInput, allOptions, onSubmit]);
61
+ useInput((input, key) => {
62
+ // Handle "Other" input mode
63
+ if (showOtherInput && selectedIndices.has(otherIndex)) {
64
+ if (key.return) {
65
+ handleSubmit();
66
+ return;
67
+ }
68
+ if (key.escape) {
69
+ setShowOtherInput(false);
70
+ setSelectedIndices(new Set([0]));
71
+ return;
72
+ }
73
+ if (key.backspace || key.delete) {
74
+ setOtherInput((prev) => prev.slice(0, -1));
75
+ return;
76
+ }
77
+ if (input && !key.ctrl && !key.meta) {
78
+ setOtherInput((prev) => prev + input);
79
+ return;
80
+ }
81
+ return;
82
+ }
83
+ // Quick number key selection (1-9)
84
+ if (input >= "1" && input <= "9") {
85
+ const optionIndex = parseInt(input, 10) - 1;
86
+ if (optionIndex < allOptions.length) {
87
+ handleToggleSelection(optionIndex);
88
+ if (!question.multiSelect && optionIndex !== otherIndex) {
89
+ // Auto-submit on single select (except for "Other")
90
+ const answers = [allOptions[optionIndex].label];
91
+ onSubmit(answers);
92
+ }
93
+ }
94
+ return;
95
+ }
96
+ // Navigation
97
+ if (key.upArrow || (key.shift && key.tab)) {
98
+ setCursorIndex((prev) => (prev > 0 ? prev - 1 : allOptions.length - 1));
99
+ return;
100
+ }
101
+ if (key.downArrow || key.tab) {
102
+ setCursorIndex((prev) => (prev + 1) % allOptions.length);
103
+ return;
104
+ }
105
+ // Space to toggle selection (for multi-select)
106
+ if (input === " ") {
107
+ handleToggleSelection(cursorIndex);
108
+ return;
109
+ }
110
+ // Enter to select current and submit (for single-select) or submit all (for multi-select)
111
+ if (key.return) {
112
+ if (question.multiSelect) {
113
+ handleSubmit();
114
+ }
115
+ else {
116
+ handleToggleSelection(cursorIndex);
117
+ if (cursorIndex === otherIndex) {
118
+ // Show other input
119
+ setShowOtherInput(true);
120
+ }
121
+ else {
122
+ // Submit immediately for single-select
123
+ const answers = [allOptions[cursorIndex].label];
124
+ onSubmit(answers);
125
+ }
126
+ }
127
+ return;
128
+ }
129
+ // Escape to cancel
130
+ if (key.escape) {
131
+ onCancel();
132
+ return;
133
+ }
134
+ });
135
+ return (React.createElement(Box, { flexDirection: "column" },
136
+ React.createElement(Box, { marginTop: 1 },
137
+ React.createElement(Box, null,
138
+ React.createElement(Text, { color: "magenta" }, "?"),
139
+ React.createElement(Text, { color: "white", bold: true },
140
+ " ",
141
+ question.header || "Question"),
142
+ totalQuestions > 1 && (React.createElement(Text, { color: "gray" },
143
+ " ",
144
+ "(",
145
+ questionNumber,
146
+ "/",
147
+ totalQuestions,
148
+ ")")))),
149
+ React.createElement(Box, { marginLeft: 2, marginTop: 1, marginBottom: 1 },
150
+ React.createElement(Text, null, question.question)),
151
+ React.createElement(Box, { flexDirection: "column", marginLeft: 2 }, allOptions.map((option, index) => {
152
+ const isSelected = selectedIndices.has(index);
153
+ const isCursor = cursorIndex === index;
154
+ return (React.createElement(Box, { key: index, paddingLeft: 1 },
155
+ React.createElement(Text, { color: isCursor ? "black" : isSelected ? "cyan" : "white", backgroundColor: isCursor ? "cyan" : undefined },
156
+ question.multiSelect ? (React.createElement(Text, null,
157
+ isSelected ? "[x]" : "[ ]",
158
+ " ")) : (React.createElement(Text, null,
159
+ isSelected ? "(*)" : "( )",
160
+ " ")),
161
+ React.createElement(Text, null,
162
+ index + 1,
163
+ ". ",
164
+ option.label)),
165
+ option.description && (React.createElement(Text, { color: "gray", dimColor: true },
166
+ " ",
167
+ "- ",
168
+ option.description))));
169
+ })),
170
+ showOtherInput && selectedIndices.has(otherIndex) && (React.createElement(Box, { marginLeft: 2, marginTop: 1, flexDirection: "column" },
171
+ React.createElement(Text, { color: "yellow" }, "Enter your response:"),
172
+ React.createElement(Box, { marginTop: 1 },
173
+ React.createElement(Text, { color: "cyan" }, "> "),
174
+ React.createElement(Text, null, otherInput),
175
+ React.createElement(Text, { color: "cyan" }, "|")))),
176
+ React.createElement(Box, { marginTop: 1, marginLeft: 2 },
177
+ React.createElement(Text, { color: "gray", dimColor: true }, question.multiSelect
178
+ ? "Space to toggle | Enter to submit | 1-9 quick select | Esc cancel"
179
+ : "Enter/1-9 to select | Esc cancel"))));
180
+ }
181
+ //# sourceMappingURL=question-dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"question-dialog.js","sourceRoot":"","sources":["../../../src/ui/components/question-dialog.tsx"],"names":[],"mappings":"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"}
@@ -43,5 +43,8 @@ export declare class NoopLogger implements Logger {
43
43
  }
44
44
  /**
45
45
  * Create a logger based on environment
46
+ *
47
+ * By default, only shows WARN and ERROR messages to avoid cluttering CLI output.
48
+ * Set DEBUG=1 to enable all log levels including INFO and DEBUG.
46
49
  */
47
50
  export declare function createLogger(): Logger;
@@ -61,10 +61,13 @@ export class NoopLogger {
61
61
  }
62
62
  /**
63
63
  * Create a logger based on environment
64
+ *
65
+ * By default, only shows WARN and ERROR messages to avoid cluttering CLI output.
66
+ * Set DEBUG=1 to enable all log levels including INFO and DEBUG.
64
67
  */
65
68
  export function createLogger() {
66
69
  const debugMode = process.env.DEBUG === '1' || process.env.DEBUG === 'true';
67
- const level = debugMode ? LogLevel.DEBUG : LogLevel.INFO;
70
+ const level = debugMode ? LogLevel.DEBUG : LogLevel.WARN;
68
71
  return new ConsoleLogger(level);
69
72
  }
70
73
  //# sourceMappingURL=analysis-logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"analysis-logger.js","sourceRoot":"","sources":["../../src/utils/analysis-logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,yCAAS,CAAA;IACT,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,yCAAS,CAAA;IACT,uCAAQ,CAAA;AACV,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AASD;;GAEG;AACH,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,QAAkB,QAAQ,CAAC,IAAI;QAA/B,UAAK,GAAL,KAAK,CAA0B;IAAG,CAAC;IAEvD,KAAK,CAAC,OAAe,EAAE,OAAiC;QACtD,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,OAAiC;QACrD,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,OAAiC;QACrD,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChC,OAAO,CAAC,IAAI,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,KAAa,EAAE,OAAiC;QACrE,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,KAAK;gBACrB,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;gBAChD,CAAC,CAAC,SAAS,CAAC;YACd,OAAO,CAAC,KAAK,CACX,WAAW,OAAO,EAAE,EACpB,SAAS,EACT,OAAO,IAAI,EAAE,CACd,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAe;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,UAAU;IACrB,KAAK,KAAU,CAAC;IAChB,IAAI,KAAU,CAAC;IACf,IAAI,KAAU,CAAC;IACf,KAAK,KAAU,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC;IAC5E,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACzD,OAAO,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"analysis-logger.js","sourceRoot":"","sources":["../../src/utils/analysis-logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,yCAAS,CAAA;IACT,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,yCAAS,CAAA;IACT,uCAAQ,CAAA;AACV,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AASD;;GAEG;AACH,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,QAAkB,QAAQ,CAAC,IAAI;QAA/B,UAAK,GAAL,KAAK,CAA0B;IAAG,CAAC;IAEvD,KAAK,CAAC,OAAe,EAAE,OAAiC;QACtD,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,OAAiC;QACrD,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,OAAiC;QACrD,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChC,OAAO,CAAC,IAAI,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,KAAa,EAAE,OAAiC;QACrE,IAAI,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,KAAK;gBACrB,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;gBAChD,CAAC,CAAC,SAAS,CAAC;YACd,OAAO,CAAC,KAAK,CACX,WAAW,OAAO,EAAE,EACpB,SAAS,EACT,OAAO,IAAI,EAAE,CACd,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAe;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,UAAU;IACrB,KAAK,KAAU,CAAC;IAChB,IAAI,KAAU,CAAC;IACf,IAAI,KAAU,CAAC;IACf,KAAK,KAAU,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC;IAC5E,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACzD,OAAO,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defai.digital/ax-cli",
3
- "version": "3.12.4",
3
+ "version": "3.12.5",
4
4
  "sdkVersion": "1.2.0",
5
5
  "description": "Enterprise-Class AI Command Line Interface - Primary support for GLM (General Language Model) with multi-provider AI orchestration powered by AutomatosX.",
6
6
  "type": "module",