@dreb/coding-agent 2.51.0 → 2.52.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 (38) hide show
  1. package/README.md +7 -5
  2. package/dist/cli/args.d.ts.map +1 -1
  3. package/dist/cli/args.js +11 -6
  4. package/dist/cli/args.js.map +1 -1
  5. package/dist/core/extensions/types.d.ts +31 -11
  6. package/dist/core/extensions/types.d.ts.map +1 -1
  7. package/dist/core/extensions/types.js.map +1 -1
  8. package/dist/core/tools/ask-user.d.ts +28 -20
  9. package/dist/core/tools/ask-user.d.ts.map +1 -1
  10. package/dist/core/tools/ask-user.js +130 -106
  11. package/dist/core/tools/ask-user.js.map +1 -1
  12. package/dist/core/tools/index.d.ts +9 -7
  13. package/dist/core/tools/index.d.ts.map +1 -1
  14. package/dist/core/tools/index.js.map +1 -1
  15. package/dist/modes/interactive/components/ask-wizard.d.ts +83 -0
  16. package/dist/modes/interactive/components/ask-wizard.d.ts.map +1 -0
  17. package/dist/modes/interactive/components/ask-wizard.js +464 -0
  18. package/dist/modes/interactive/components/ask-wizard.js.map +1 -0
  19. package/dist/modes/interactive/interactive-mode.d.ts +4 -2
  20. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  21. package/dist/modes/interactive/interactive-mode.js +7 -5
  22. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  23. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  24. package/dist/modes/rpc/rpc-mode.js +100 -20
  25. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  26. package/dist/modes/rpc/rpc-types.d.ts +18 -7
  27. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  28. package/dist/modes/rpc/rpc-types.js.map +1 -1
  29. package/docs/dashboard.md +1 -1
  30. package/docs/extensions.md +35 -18
  31. package/docs/rpc.md +26 -8
  32. package/examples/extensions/rpc-demo.ts +29 -0
  33. package/examples/rpc-extension-ui.ts +162 -6
  34. package/package.json +1 -1
  35. package/dist/modes/interactive/components/ask-user.d.ts +0 -59
  36. package/dist/modes/interactive/components/ask-user.d.ts.map +0 -1
  37. package/dist/modes/interactive/components/ask-user.js +0 -240
  38. package/dist/modes/interactive/components/ask-user.js.map +0 -1
@@ -35,7 +35,7 @@ import { parseGitUrl } from "../../utils/git.js";
35
35
  import { extractCopyableText, extractThinkingText, getMessagePreview, getMessageRoleLabel, toSingleLinePreview, } from "../../utils/message-text.js";
36
36
  import { ensureTool } from "../../utils/tools-manager.js";
37
37
  import { ArminComponent } from "./components/armin.js";
38
- import { AskUserComponent } from "./components/ask-user.js";
38
+ import { AskWizardComponent } from "./components/ask-wizard.js";
39
39
  import { AssistantMessageComponent } from "./components/assistant-message.js";
40
40
  import { BashExecutionComponent } from "./components/bash-execution.js";
41
41
  import { BorderedLoader } from "./components/bordered-loader.js";
@@ -1574,7 +1574,9 @@ export class InteractiveMode {
1574
1574
  this.restoreEditorComponent();
1575
1575
  }
1576
1576
  /**
1577
- * Show a rich ask_user question for extensions/built-in tools.
1577
+ * Show a rich multi-question ask_user wizard for extensions/built-in tools.
1578
+ * One call renders one wizard; the whole batch resolves together on Submit,
1579
+ * and Esc/timeout stops the current turn.
1578
1580
  */
1579
1581
  showExtensionAsk(request, opts) {
1580
1582
  return new Promise((resolve) => {
@@ -1587,14 +1589,14 @@ export class InteractiveMode {
1587
1589
  resolve(undefined);
1588
1590
  };
1589
1591
  opts?.signal?.addEventListener("abort", onAbort, { once: true });
1590
- this.extensionAsk = new AskUserComponent(request, (result) => {
1592
+ this.extensionAsk = new AskWizardComponent(request, (result) => {
1591
1593
  opts?.signal?.removeEventListener("abort", onAbort);
1592
1594
  this.hideExtensionAsk();
1593
1595
  resolve(result);
1594
1596
  }, () => {
1595
1597
  opts?.signal?.removeEventListener("abort", onAbort);
1596
1598
  this.hideExtensionAsk();
1597
- // The question-level escape action means stop the whole turn, not
1599
+ // The wizard-level escape action means stop the whole turn, not
1598
1600
  // continue without an answer. Mirror the default editor's Escape
1599
1601
  // behavior, including background-agent and queued-message cleanup.
1600
1602
  this.cancelBackgroundAgents();
@@ -1608,7 +1610,7 @@ export class InteractiveMode {
1608
1610
  });
1609
1611
  }
1610
1612
  /**
1611
- * Hide the ask_user question.
1613
+ * Hide the ask_user wizard.
1612
1614
  */
1613
1615
  hideExtensionAsk() {
1614
1616
  this.extensionAsk?.dispose();