@vybestack/llxprt-code 0.1.17 → 0.1.18-nightly.250808.f9b79d74

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 (137) hide show
  1. package/README.md +1 -1
  2. package/dist/package.json +4 -3
  3. package/dist/src/acp/acpPeer.js +72 -64
  4. package/dist/src/acp/acpPeer.js.map +1 -1
  5. package/dist/src/commands/mcp/add.d.ts +7 -0
  6. package/dist/src/commands/mcp/add.js +155 -0
  7. package/dist/src/commands/mcp/add.js.map +1 -0
  8. package/dist/src/commands/mcp/list.d.ts +8 -0
  9. package/dist/src/commands/mcp/list.js +110 -0
  10. package/dist/src/commands/mcp/list.js.map +1 -0
  11. package/dist/src/commands/mcp/remove.d.ts +7 -0
  12. package/dist/src/commands/mcp/remove.js +44 -0
  13. package/dist/src/commands/mcp/remove.js.map +1 -0
  14. package/dist/src/commands/mcp.d.ts +7 -0
  15. package/dist/src/commands/mcp.js +23 -0
  16. package/dist/src/commands/mcp.js.map +1 -0
  17. package/dist/src/config/config.d.ts +2 -1
  18. package/dist/src/config/config.js +26 -4
  19. package/dist/src/config/config.js.map +1 -1
  20. package/dist/src/config/settings.d.ts +5 -0
  21. package/dist/src/config/settings.js +9 -5
  22. package/dist/src/config/settings.js.map +1 -1
  23. package/dist/src/gemini.js +11 -0
  24. package/dist/src/gemini.js.map +1 -1
  25. package/dist/src/generated/git-commit.d.ts +1 -1
  26. package/dist/src/generated/git-commit.js +1 -1
  27. package/dist/src/nonInteractiveCli.js +23 -16
  28. package/dist/src/nonInteractiveCli.js.map +1 -1
  29. package/dist/src/providers/providerManagerInstance.js +3 -0
  30. package/dist/src/providers/providerManagerInstance.js.map +1 -1
  31. package/dist/src/services/BuiltinCommandLoader.js +1 -2
  32. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  33. package/dist/src/ui/App.js +54 -16
  34. package/dist/src/ui/App.js.map +1 -1
  35. package/dist/src/ui/IdeIntegrationNudge.d.ts +14 -0
  36. package/dist/src/ui/IdeIntegrationNudge.js +32 -0
  37. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -0
  38. package/dist/src/ui/colors.js +17 -0
  39. package/dist/src/ui/colors.js.map +1 -1
  40. package/dist/src/ui/commands/chatCommand.js +5 -3
  41. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  42. package/dist/src/ui/commands/copyCommand.js +10 -1
  43. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  44. package/dist/src/ui/commands/diagnosticsCommand.js +126 -4
  45. package/dist/src/ui/commands/diagnosticsCommand.js.map +1 -1
  46. package/dist/src/ui/commands/directoryCommand.js +21 -1
  47. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  48. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  49. package/dist/src/ui/commands/memoryCommand.js +3 -1
  50. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  51. package/dist/src/ui/commands/profileCommand.js +1 -0
  52. package/dist/src/ui/commands/profileCommand.js.map +1 -1
  53. package/dist/src/ui/commands/setCommand.js +2 -0
  54. package/dist/src/ui/commands/setCommand.js.map +1 -1
  55. package/dist/src/ui/commands/setupGithubCommand.js +121 -37
  56. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  57. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  58. package/dist/src/ui/commands/types.d.ts +1 -0
  59. package/dist/src/ui/commands/types.js.map +1 -1
  60. package/dist/src/ui/components/TodoPanel.d.ts +11 -0
  61. package/dist/src/ui/components/TodoPanel.js +131 -0
  62. package/dist/src/ui/components/TodoPanel.js.map +1 -0
  63. package/dist/src/ui/components/ToolsDialog.d.ts +2 -2
  64. package/dist/src/ui/components/messages/DiffRenderer.js +7 -1
  65. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  66. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +31 -9
  67. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  68. package/dist/src/ui/components/messages/ToolGroupMessage.js +36 -8
  69. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  70. package/dist/src/ui/components/todo-utils.d.ts +16 -0
  71. package/dist/src/ui/components/todo-utils.js +41 -0
  72. package/dist/src/ui/components/todo-utils.js.map +1 -0
  73. package/dist/src/ui/containers/SessionController.js +3 -1
  74. package/dist/src/ui/containers/SessionController.js.map +1 -1
  75. package/dist/src/ui/contexts/TodoContext.d.ts +15 -0
  76. package/dist/src/ui/contexts/TodoContext.js +18 -0
  77. package/dist/src/ui/contexts/TodoContext.js.map +1 -0
  78. package/dist/src/ui/contexts/TodoProvider.d.ts +7 -0
  79. package/dist/src/ui/contexts/TodoProvider.js +62 -0
  80. package/dist/src/ui/contexts/TodoProvider.js.map +1 -0
  81. package/dist/src/ui/contexts/ToolCallContext.d.ts +19 -0
  82. package/dist/src/ui/contexts/ToolCallContext.js +13 -0
  83. package/dist/src/ui/contexts/ToolCallContext.js.map +1 -0
  84. package/dist/src/ui/contexts/ToolCallProvider.d.ts +12 -0
  85. package/dist/src/ui/contexts/ToolCallProvider.js +62 -0
  86. package/dist/src/ui/contexts/ToolCallProvider.js.map +1 -0
  87. package/dist/src/ui/hooks/atCommandProcessor.js +7 -4
  88. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  89. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +1 -1
  90. package/dist/src/ui/hooks/slashCommandProcessor.js +9 -4
  91. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  92. package/dist/src/ui/hooks/useAtCompletion.d.ts +23 -0
  93. package/dist/src/ui/hooks/useAtCompletion.js +180 -0
  94. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -0
  95. package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
  96. package/dist/src/ui/hooks/useGeminiStream.js +29 -2
  97. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  98. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +1 -1
  99. package/dist/src/ui/hooks/useReactToolScheduler.js +15 -13
  100. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  101. package/dist/src/ui/hooks/useReverseSearchCompletion.js +4 -2
  102. package/dist/src/ui/hooks/useReverseSearchCompletion.js.map +1 -1
  103. package/dist/src/ui/hooks/useToolsDialog.d.ts +2 -2
  104. package/dist/src/ui/hooks/useToolsDialog.js.map +1 -1
  105. package/dist/src/ui/hooks/vim.js +13 -4
  106. package/dist/src/ui/hooks/vim.js.map +1 -1
  107. package/dist/src/ui/themes/ansi-light.js +4 -0
  108. package/dist/src/ui/themes/ansi-light.js.map +1 -1
  109. package/dist/src/ui/themes/ansi.js +4 -0
  110. package/dist/src/ui/themes/ansi.js.map +1 -1
  111. package/dist/src/ui/themes/atom-one-dark.js +4 -0
  112. package/dist/src/ui/themes/atom-one-dark.js.map +1 -1
  113. package/dist/src/ui/themes/dracula.js +4 -0
  114. package/dist/src/ui/themes/dracula.js.map +1 -1
  115. package/dist/src/ui/themes/green-screen.js +4 -0
  116. package/dist/src/ui/themes/green-screen.js.map +1 -1
  117. package/dist/src/ui/themes/theme.d.ts +4 -0
  118. package/dist/src/ui/themes/theme.js.map +1 -1
  119. package/dist/src/ui/types.d.ts +1 -1
  120. package/dist/src/ui/utils/CodeColorizer.d.ts +4 -2
  121. package/dist/src/ui/utils/CodeColorizer.js +10 -3
  122. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  123. package/dist/src/ui/utils/ConsolePatcher.d.ts +3 -1
  124. package/dist/src/ui/utils/ConsolePatcher.js +18 -8
  125. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  126. package/dist/src/ui/utils/MarkdownDisplay.js +7 -3
  127. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  128. package/dist/src/utils/gitUtils.d.ts +12 -1
  129. package/dist/src/utils/gitUtils.js +54 -4
  130. package/dist/src/utils/gitUtils.js.map +1 -1
  131. package/dist/src/utils/resolvePath.d.ts +6 -0
  132. package/dist/src/utils/resolvePath.js +21 -0
  133. package/dist/src/utils/resolvePath.js.map +1 -0
  134. package/dist/src/utils/sandbox.js +420 -401
  135. package/dist/src/utils/sandbox.js.map +1 -1
  136. package/dist/tsconfig.tsbuildinfo +1 -1
  137. package/package.json +4 -3
@@ -3,47 +3,131 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import path from 'path';
7
- import { execSync } from 'child_process';
8
- import { isGitHubRepository } from '../../utils/gitUtils.js';
6
+ // These imports will be needed when the command is re-enabled
7
+ // import path from 'path';
8
+ // import { CommandContext } from '../../ui/commands/types.js';
9
+ // import {
10
+ // getGitRepoRoot,
11
+ // getLatestGitHubRelease,
12
+ // isGitHubRepository,
13
+ // } from '../../utils/gitUtils.js';
9
14
  import { CommandKind, } from './types.js';
10
15
  export const setupGithubCommand = {
11
16
  name: 'setup-github',
12
- description: 'Set up GitHub Actions',
17
+ description: 'Set up GitHub Actions (currently disabled - needs adaptation for llxprt)',
13
18
  kind: CommandKind.BUILT_IN,
14
- action: () => {
15
- const gitRootRepo = execSync('git rev-parse --show-toplevel', {
16
- encoding: 'utf-8',
17
- }).trim();
18
- if (!isGitHubRepository()) {
19
- throw new Error('Unable to determine the Git root directory.');
20
- }
21
- // TODO(#5198): pin workflow versions for release controls
22
- const version = 'main';
23
- const workflowBaseUrl = `https://raw.githubusercontent.com/google-github-actions/run-gemini-cli/refs/heads/${version}/workflows/`;
24
- const workflows = [
25
- 'gemini-cli/gemini-cli.yml',
26
- 'issue-triage/gemini-issue-automated-triage.yml',
27
- 'issue-triage/gemini-issue-scheduled-triage.yml',
28
- 'pr-review/gemini-pr-review.yml',
29
- ];
30
- const command = [
31
- 'set -e',
32
- `mkdir -p "${gitRootRepo}/.github/workflows"`,
33
- ...workflows.map((workflow) => {
34
- const fileName = path.basename(workflow);
35
- return `curl -fsSL -o "${gitRootRepo}/.github/workflows/${fileName}" "${workflowBaseUrl}/${workflow}"`;
36
- }),
37
- 'echo "Workflows downloaded successfully."',
38
- ].join(' && ');
39
- return {
40
- type: 'tool',
41
- toolName: 'run_shell_command',
42
- toolArgs: {
43
- description: 'Setting up GitHub Actions to triage issues and review PRs with Gemini.',
44
- command,
45
- },
46
- };
19
+ action: () =>
20
+ // TODO: Adapt this command for llxprt-code
21
+ // Need to:
22
+ // 1. Create our own GitHub Actions repository (e.g., acoliver/run-llxprt-code or vybestack/run-llxprt-code)
23
+ // 2. Adapt the workflows to use llxprt instead of gemini
24
+ // 3. Support multi-provider configuration in the workflows
25
+ // 4. Update the URLs below to point to our repository
26
+ // 5. Consider including the cherry-picker workflow as part of the setup
27
+ // For now, return an informative message
28
+ ({
29
+ type: 'message',
30
+ messageType: 'info',
31
+ content: `The /setup-github command is currently disabled and needs adaptation for llxprt-code.
32
+
33
+ This command would download GitHub Actions workflows for:
34
+ - Automated PR reviews using llxprt
35
+ - Issue triage and labeling
36
+ - General AI assistance via @llxprt-cli mentions
37
+ - (Potentially) Automated upstream sync via cherry-picking
38
+
39
+ To implement this feature:
40
+ 1. Fork https://github.com/acoliver/run-llxprt-code
41
+ 2. Adapt it for multi-provider support
42
+ 3. Update this command to point to the new repository
43
+
44
+ For now, you can manually set up GitHub Actions by creating workflows that use llxprt-code.`,
45
+ }),
46
+ /* Original gemini implementation with GitHub API integration - kept for reference:
47
+ action: async (
48
+ context: CommandContext,
49
+ ): Promise<SlashCommandActionReturn> => {
50
+ if (!isGitHubRepository()) {
51
+ throw new Error(
52
+ 'Unable to determine the GitHub repository. /setup-github must be run from a git repository.',
53
+ );
54
+ }
55
+
56
+ // Find the root directory of the repo
57
+ let gitRepoRoot: string;
58
+ try {
59
+ gitRepoRoot = getGitRepoRoot();
60
+ } catch (_error) {
61
+ console.debug(`Failed to get git repo root:`, _error);
62
+ throw new Error(
63
+ 'Unable to determine the GitHub repository. /setup-github must be run from a git repository.',
64
+ );
65
+ }
66
+
67
+ // Get the latest release tag from GitHub API
68
+ // For llxprt, this would call getLatestGitHubRelease() which points to acoliver/run-llxprt-code
69
+ const proxy = context?.services?.config?.getProxy();
70
+ const releaseTag = await getLatestGitHubRelease(proxy);
71
+
72
+ // TODO: Update these workflow paths for llxprt
73
+ const workflows = [
74
+ 'llxprt-cli/llxprt-cli.yml',
75
+ 'issue-triage/llxprt-issue-automated-triage.yml',
76
+ 'issue-triage/llxprt-issue-scheduled-triage.yml',
77
+ 'pr-review/llxprt-pr-review.yml',
78
+ ];
79
+
80
+ const commands = [];
81
+
82
+ // Ensure fast exit
83
+ commands.push(`set -eEuo pipefail`);
84
+
85
+ // Make the directory if it doesn't exist
86
+ commands.push(`mkdir -p "${gitRepoRoot}/.github/workflows"`);
87
+
88
+ for (const workflow of workflows) {
89
+ const fileName = path.basename(workflow);
90
+ // TODO: Update to use acoliver/run-llxprt-code repository
91
+ const curlCommand = buildCurlCommand(
92
+ `https://raw.githubusercontent.com/acoliver/run-llxprt-code/refs/tags/${releaseTag}/examples/workflows/${workflow}`,
93
+ [`--output "${gitRepoRoot}/.github/workflows/${fileName}"`],
94
+ );
95
+ commands.push(curlCommand);
96
+ }
97
+
98
+ commands.push(
99
+ `echo "Successfully downloaded ${workflows.length} workflows. Follow the steps in https://github.com/acoliver/run-llxprt-code/blob/${releaseTag}/README.md#quick-start (skipping the /setup-github step) to complete setup."`,
100
+ `open https://github.com/acoliver/run-llxprt-code/blob/${releaseTag}/README.md#quick-start`,
101
+ );
102
+
103
+ const command = `(${commands.join(' && ')})`;
104
+ return {
105
+ type: 'tool',
106
+ toolName: 'run_shell_command',
107
+ toolArgs: {
108
+ description:
109
+ 'Setting up GitHub Actions to triage issues and review PRs with llxprt.',
110
+ command,
111
+ },
112
+ };
47
113
  },
114
+ */
48
115
  };
116
+ // buildCurlCommand is a helper for constructing a consistent curl command.
117
+ // Commented out until the command is re-enabled
118
+ // function buildCurlCommand(u: string, additionalArgs?: string[]): string {
119
+ // const args = [];
120
+ // args.push('--fail');
121
+ // args.push('--location');
122
+ // args.push('--show-error');
123
+ // args.push('--silent');
124
+ //
125
+ // for (const val of additionalArgs || []) {
126
+ // args.push(val);
127
+ // }
128
+ //
129
+ // args.sort();
130
+ //
131
+ // return `curl ${args.join(' ')} "${u}"`;
132
+ // }
49
133
  //# sourceMappingURL=setupGithubCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupGithubCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EACL,WAAW,GAGZ,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,kBAAkB,GAAiB;IAC9C,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,uBAAuB;IACpC,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,GAA6B,EAAE;QACrC,MAAM,WAAW,GAAG,QAAQ,CAAC,+BAA+B,EAAE;YAC5D,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC,IAAI,EAAE,CAAC;QAEV,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QAED,0DAA0D;QAC1D,MAAM,OAAO,GAAG,MAAM,CAAC;QACvB,MAAM,eAAe,GAAG,qFAAqF,OAAO,aAAa,CAAC;QAElI,MAAM,SAAS,GAAG;YAChB,2BAA2B;YAC3B,gDAAgD;YAChD,gDAAgD;YAChD,gCAAgC;SACjC,CAAC;QAEF,MAAM,OAAO,GAAG;YACd,QAAQ;YACR,aAAa,WAAW,qBAAqB;YAC7C,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACzC,OAAO,kBAAkB,WAAW,sBAAsB,QAAQ,MAAM,eAAe,IAAI,QAAQ,GAAG,CAAC;YACzG,CAAC,CAAC;YACF,2CAA2C;SAC5C,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACf,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,mBAAmB;YAC7B,QAAQ,EAAE;gBACR,WAAW,EACT,wEAAwE;gBAC1E,OAAO;aACR;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"setupGithubCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,8DAA8D;AAC9D,2BAA2B;AAC3B,+DAA+D;AAC/D,WAAW;AACX,oBAAoB;AACpB,4BAA4B;AAC5B,wBAAwB;AACxB,oCAAoC;AAEpC,OAAO,EACL,WAAW,GAGZ,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,kBAAkB,GAAiB;IAC9C,IAAI,EAAE,cAAc;IACpB,WAAW,EACT,0EAA0E;IAC5E,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,GAA6B,EAAE;IACrC,2CAA2C;IAC3C,WAAW;IACX,4GAA4G;IAC5G,yDAAyD;IACzD,2DAA2D;IAC3D,sDAAsD;IACtD,wEAAwE;IAExE,yCAAyC;IACzC,CAAC;QACC,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,MAAM;QACnB,OAAO,EAAE;;;;;;;;;;;;;4FAa6E;KACvF,CAAC;IAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAoEE;CACH,CAAC;AAEF,2EAA2E;AAC3E,gDAAgD;AAChD,4EAA4E;AAC5E,qBAAqB;AACrB,yBAAyB;AACzB,6BAA6B;AAC7B,+BAA+B;AAC/B,2BAA2B;AAC3B,EAAE;AACF,8CAA8C;AAC9C,sBAAsB;AACtB,MAAM;AACN,EAAE;AACF,iBAAiB;AACjB,EAAE;AACF,4CAA4C;AAC5C,IAAI"}
@@ -1 +1 @@
1
- {"version":3,"file":"toolsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/toolsCommand.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAGL,WAAW,GAEZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,2CAA2C;IACxD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EACX,OAAuB,EACvB,IAAa,EAC6B,EAAE;QAC5C,MAAM,KAAK,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAE5B,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;QACtE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,IAAI,EAAE,mCAAmC;aAC1C,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;QACT,CAAC;QAED,qDAAqD;QACrD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvC,MAAM,iBAAiB,GAAG,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;QAC/D,MAAM,aAAa,GAChB,iBAAiB,CAAC,gBAAgB,CAAc,IAAI,EAAE,CAAC;QAE1D,oCAAoC;QACpC,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YACxD,gDAAgD;YAChD,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,OAAO;aAChB,CAAC;QACJ,CAAC;QAED,gCAAgC;QAChC,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QACzC,4EAA4E;QAC5E,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAU,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC;QAE1E,mCAAmC;QACnC,IAAI,mBAAmB,GAAG,KAAK,CAAC;QAChC,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;YAC3D,mBAAmB,GAAG,IAAI,CAAC;QAC7B,CAAC;QAED,IAAI,OAAO,GAAG,iCAAiC,CAAC;QAEhD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,WAAW,CAAC,OAAO,CAAC,CAAC,IAAU,EAAE,EAAE;gBACjC,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrD,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,MAAM,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,0BAA0B;gBAChF,MAAM,UAAU,GAAG,WAAW,CAAC;gBAE/B,IAAI,mBAAmB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBAC5C,OAAO,IAAI,OAAO,aAAa,GAAG,cAAc,aAAa,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,aAAa,aAAa,KAAK,CAAC;oBAE3H,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,qCAAqC;oBAElG,iCAAiC;oBACjC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACtD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBACjC,OAAO,IAAI,SAAS,UAAU,GAAG,QAAQ,GAAG,UAAU,IAAI,CAAC;oBAC7D,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,IAAI,OAAO,aAAa,GAAG,cAAc,aAAa,IAAI,CAAC,WAAW,GAAG,UAAU,IAAI,CAAC;gBACjG,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,wBAAwB,CAAC;QACtC,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,eAAe,aAAa,CAAC,MAAM,2EAA2E,CAAC;QAC5H,CAAC;QAED,OAAO,IAAI,IAAI,CAAC;QAChB,OAAO,IAAI,WAAW,CAAC;QAEvB,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,UAAU,EAAE,KAAK,EACf,QAAwB,EACxB,IAAY,EACO,EAAE;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEnC,4BAA4B;QAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;YAClE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"toolsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/toolsCommand.tsx"],"names":[],"mappings":"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"}
@@ -57,6 +57,7 @@ export interface CommandContext {
57
57
  * @returns A promise that resolves to the new vim enabled state.
58
58
  */
59
59
  toggleVimEnabled: () => Promise<boolean>;
60
+ setLlxprtMdFileCount: (count: number) => void;
60
61
  };
61
62
  session: {
62
63
  stats: SessionStatsState;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ui/commands/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2JH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,oCAAqB,CAAA;IACrB,4BAAa,CAAA;IACb,wCAAyB,CAAA;AAC3B,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ui/commands/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA4JH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,oCAAqB,CAAA;IACrB,4BAAa,CAAA;IACb,wCAAyB,CAAA;AAC3B,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ interface TodoPanelProps {
8
+ width: number;
9
+ }
10
+ export declare const TodoPanel: React.FC<TodoPanelProps>;
11
+ export {};
@@ -0,0 +1,131 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * @license
4
+ * Copyright 2025 Vybestack LLC
5
+ * SPDX-License-Identifier: Apache-2.0
6
+ */
7
+ import { useEffect, useState } from 'react';
8
+ import { Box, Text } from 'ink';
9
+ import { useTodoContext } from '../contexts/TodoContext.js';
10
+ import { useToolCallContext } from '../contexts/ToolCallContext.js';
11
+ import { Colors } from '../colors.js';
12
+ import { groupToolCalls } from './todo-utils.js';
13
+ const formatParameters = (parameters) => {
14
+ const paramStrings = [];
15
+ const MAX_LENGTH = 40; // Doubled from 20 to be less aggressive
16
+ for (const [key, value] of Object.entries(parameters)) {
17
+ if (typeof value === 'string') {
18
+ let displayValue = value;
19
+ // Special handling for file paths - show the end part
20
+ if (key === 'file_path' ||
21
+ key === 'absolute_path' ||
22
+ value.includes('/')) {
23
+ if (value.length > MAX_LENGTH) {
24
+ // For paths, show the last part which is more useful
25
+ displayValue = '...' + value.slice(-(MAX_LENGTH - 3));
26
+ }
27
+ }
28
+ else {
29
+ // For non-paths, truncate normally but with larger limit
30
+ displayValue =
31
+ value.length > MAX_LENGTH
32
+ ? value.substring(0, MAX_LENGTH - 3) + '...'
33
+ : value;
34
+ }
35
+ paramStrings.push(`${key}: '${displayValue}'`);
36
+ }
37
+ else {
38
+ const jsonStr = JSON.stringify(value);
39
+ const displayValue = jsonStr.length > MAX_LENGTH
40
+ ? jsonStr.substring(0, MAX_LENGTH - 3) + '...'
41
+ : jsonStr;
42
+ paramStrings.push(`${key}: ${displayValue}`);
43
+ }
44
+ }
45
+ return paramStrings.join(', ');
46
+ };
47
+ const renderToolCall = (toolCall, count = 1, indent = ' ', index = 0) => {
48
+ const params = formatParameters(toolCall.parameters);
49
+ const toolText = `${toolCall.name}(${params})`;
50
+ const countText = count > 1 ? ` ${count}x` : '';
51
+ return (_jsx(Box, { flexDirection: "row", minHeight: 1, children: _jsxs(Text, { color: Colors.Gray, children: [indent, "\u21B3 ", toolText, countText] }) }, `${toolCall.id || `${toolCall.name}-${index}`}`));
52
+ };
53
+ const renderTodo = (todo, allToolCalls) => {
54
+ const elements = [];
55
+ // Todo status marker and content
56
+ let marker = '';
57
+ let markerColor = Colors.Foreground;
58
+ if (todo.status === 'completed') {
59
+ marker = '✔';
60
+ markerColor = Colors.AccentGreen;
61
+ }
62
+ else if (todo.status === 'pending') {
63
+ marker = '○';
64
+ markerColor = Colors.Gray;
65
+ }
66
+ else if (todo.status === 'in_progress') {
67
+ marker = '→';
68
+ markerColor = Colors.AccentYellow;
69
+ }
70
+ // Main todo line
71
+ elements.push(_jsxs(Box, { flexDirection: "row", minHeight: 1, children: [_jsxs(Text, { color: markerColor, bold: true, children: [marker, ' '] }), _jsx(Box, { flexGrow: 1, children: _jsxs(Text, { color: todo.status === 'in_progress'
72
+ ? Colors.AccentYellow
73
+ : Colors.Foreground, bold: todo.status === 'in_progress', wrap: "wrap", children: [todo.content, todo.status === 'in_progress' && (_jsx(Text, { color: Colors.AccentYellow, children: " \u2190 current" }))] }) })] }, todo.id));
74
+ // Render subtasks and their tool calls
75
+ if (todo.subtasks && todo.subtasks.length > 0) {
76
+ for (const subtask of todo.subtasks) {
77
+ elements.push(_jsx(Box, { children: _jsxs(Text, { color: Colors.Gray, children: [" \u2022 ", subtask.content] }) }, `${todo.id}-subtask-${subtask.content}`));
78
+ if (subtask.toolCalls && subtask.toolCalls.length > 0) {
79
+ const grouped = groupToolCalls(subtask.toolCalls);
80
+ grouped.forEach((group, index) => {
81
+ elements.push(renderToolCall(group.toolCall, group.count, ' ', index));
82
+ });
83
+ }
84
+ }
85
+ }
86
+ // Group and render all tool calls from memory (only for in_progress tasks)
87
+ if (allToolCalls.length > 0 && todo.status === 'in_progress') {
88
+ const grouped = groupToolCalls(allToolCalls);
89
+ grouped.forEach((group, index) => {
90
+ elements.push(renderToolCall(group.toolCall, group.count, ' ', index));
91
+ });
92
+ }
93
+ return elements;
94
+ };
95
+ const TodoPanelComponent = ({ width }) => {
96
+ const { todos } = useTodoContext();
97
+ const { getExecutingToolCalls, subscribe } = useToolCallContext();
98
+ const [, forceUpdate] = useState({});
99
+ const [contentKey, setContentKey] = useState(0);
100
+ // Force re-render when todos change
101
+ useEffect(() => {
102
+ forceUpdate({});
103
+ setContentKey((prev) => prev + 1);
104
+ }, [todos]);
105
+ // Subscribe to tool call updates to re-render when they change
106
+ useEffect(() => {
107
+ const unsubscribe = subscribe(() => {
108
+ forceUpdate({});
109
+ setContentKey((prev) => prev + 1);
110
+ });
111
+ return unsubscribe;
112
+ }, [subscribe]);
113
+ if (todos.length === 0) {
114
+ return null; // Auto-hide when no todos exist
115
+ }
116
+ const allElements = [];
117
+ // Add header
118
+ allElements.push(_jsx(Box, { minHeight: 1, marginBottom: 1, children: _jsx(Text, { color: Colors.AccentBlue, bold: true, children: "Todo Progress" }) }, "header"));
119
+ // Add todos
120
+ for (const todo of todos) {
121
+ const allToolCalls = getExecutingToolCalls(todo.id); // This now gets all tool calls
122
+ const todoElements = renderTodo(todo, allToolCalls);
123
+ allElements.push(...todoElements);
124
+ // Add spacing between todos
125
+ allElements.push(_jsx(Box, { height: 1 }, `${todo.id}-spacer`));
126
+ }
127
+ return (_jsx(Box, { flexDirection: "column", width: width, borderStyle: "round", borderColor: Colors.AccentBlue, paddingX: 1, paddingY: 1, children: allElements }, `todo-panel-${contentKey}`));
128
+ };
129
+ // Export without memo to ensure updates when context changes
130
+ export const TodoPanel = TodoPanelComponent;
131
+ //# sourceMappingURL=TodoPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TodoPanel.js","sourceRoot":"","sources":["../../../../src/ui/components/TodoPanel.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAMtC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAUjD,MAAM,gBAAgB,GAAG,CAAC,UAAmC,EAAU,EAAE;IACvE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,UAAU,GAAG,EAAE,CAAC,CAAC,wCAAwC;IAE/D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,YAAY,GAAG,KAAK,CAAC;YAEzB,sDAAsD;YACtD,IACE,GAAG,KAAK,WAAW;gBACnB,GAAG,KAAK,eAAe;gBACvB,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EACnB,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;oBAC9B,qDAAqD;oBACrD,YAAY,GAAG,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,yDAAyD;gBACzD,YAAY;oBACV,KAAK,CAAC,MAAM,GAAG,UAAU;wBACvB,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK;wBAC5C,CAAC,CAAC,KAAK,CAAC;YACd,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,YAAY,GAAG,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,YAAY,GAChB,OAAO,CAAC,MAAM,GAAG,UAAU;gBACzB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK;gBAC9C,CAAC,CAAC,OAAO,CAAC;YACd,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,YAAY,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,QAAsB,EACtB,QAAgB,CAAC,EACjB,SAAiB,MAAM,EACvB,QAAgB,CAAC,EACG,EAAE;IACtB,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,GAAG,QAAQ,CAAC,IAAI,IAAI,MAAM,GAAG,CAAC;IAC/C,MAAM,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAEhD,OAAO,CACL,KAAC,GAAG,IAEF,aAAa,EAAC,KAAK,EACnB,SAAS,EAAE,CAAC,YAEZ,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,aACrB,MAAM,aAAI,QAAQ,EAClB,SAAS,IACL,IAPF,GAAG,QAAQ,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,KAAK,EAAE,EAAE,CAQhD,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CACjB,IAAU,EACV,YAA4B,EACN,EAAE;IACxB,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAE1C,iCAAiC;IACjC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;IAEpC,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,CAAC;QACb,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,CAAC;QACb,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;SAAM,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,CAAC;QACb,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC;IACpC,CAAC;IAED,iBAAiB;IACjB,QAAQ,CAAC,IAAI,CACX,MAAC,GAAG,IAAe,aAAa,EAAC,KAAK,EAAC,SAAS,EAAE,CAAC,aACjD,MAAC,IAAI,IAAC,KAAK,EAAE,WAAW,EAAE,IAAI,mBAC3B,MAAM,EAAE,GAAG,IACP,EACP,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,MAAC,IAAI,IACH,KAAK,EACH,IAAI,CAAC,MAAM,KAAK,aAAa;wBAC3B,CAAC,CAAC,MAAM,CAAC,YAAY;wBACrB,CAAC,CAAC,MAAM,CAAC,UAAU,EAEvB,IAAI,EAAE,IAAI,CAAC,MAAM,KAAK,aAAa,EACnC,IAAI,EAAC,MAAM,aAEV,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,CAChC,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,YAAY,gCAAmB,CACpD,IACI,GACH,KAnBE,IAAI,CAAC,EAAE,CAoBX,CACP,CAAC;IAEF,uCAAuC;IACvC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,QAAQ,CAAC,IAAI,CACX,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,yBAAM,OAAO,CAAC,OAAO,IAAQ,IAD7C,GAAG,IAAI,CAAC,EAAE,YAAY,OAAO,CAAC,OAAO,EAAE,CAE3C,CACP,CAAC;YAEF,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAClD,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBAC/B,QAAQ,CAAC,IAAI,CACX,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAC7D,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QAC7D,MAAM,OAAO,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;QAC7C,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC/B,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAA6B,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IACjE,MAAM,EAAE,KAAK,EAAE,GAAG,cAAc,EAAE,CAAC;IACnC,MAAM,EAAE,qBAAqB,EAAE,SAAS,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAClE,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEhD,oCAAoC;IACpC,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,EAAE,CAAC,CAAC;QAChB,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,+DAA+D;IAC/D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,EAAE;YACjC,WAAW,CAAC,EAAE,CAAC,CAAC;YAChB,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,CAAC,gCAAgC;IAC/C,CAAC;IAED,MAAM,WAAW,GAAyB,EAAE,CAAC;IAE7C,aAAa;IACb,WAAW,CAAC,IAAI,CACd,KAAC,GAAG,IAAc,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YAC7C,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,oCAE7B,IAHA,QAAQ,CAIX,CACP,CAAC;IAEF,YAAY;IACZ,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,+BAA+B;QACpF,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACpD,WAAW,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QAElC,4BAA4B;QAC5B,WAAW,CAAC,IAAI,CAAC,KAAC,GAAG,IAA2B,MAAM,EAAE,CAAC,IAA9B,GAAG,IAAI,CAAC,EAAE,SAAS,CAAe,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,CACL,KAAC,GAAG,IAEF,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,MAAM,CAAC,UAAU,EAC9B,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,YAEV,WAAW,IARP,cAAc,UAAU,EAAE,CAS3B,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,SAAS,GAAG,kBAAkB,CAAC"}
@@ -4,9 +4,9 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import React from 'react';
7
- import { Tool } from '@vybestack/llxprt-code-core';
7
+ import { AnyDeclarativeTool } from '@vybestack/llxprt-code-core';
8
8
  interface ToolsDialogProps {
9
- tools: Tool[];
9
+ tools: AnyDeclarativeTool[];
10
10
  action: 'enable' | 'disable';
11
11
  disabledTools: string[];
12
12
  onSelect: (toolName: string) => void;
@@ -186,7 +186,13 @@ const renderDiffContent = (parsedLines, filename, tabWidth = DEFAULT_TAB_WIDTH,
186
186
  return acc;
187
187
  }
188
188
  const displayContent = line.content.substring(baseIndentation);
189
- acc.push(_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: Colors.Gray, children: [gutterNumStr.padStart(gutterWidth), ' '] }), line.type === 'context' ? (_jsxs(_Fragment, { children: [_jsxs(Text, { children: [prefixSymbol, " "] }), _jsx(Text, { wrap: "wrap", children: colorizeLine(displayContent, language) })] })) : (_jsxs(Text, { backgroundColor: line.type === 'add' ? Colors.DiffAdded : Colors.DiffRemoved, wrap: "wrap", children: [prefixSymbol, " ", colorizeLine(displayContent, language)] }))] }, lineKey));
189
+ acc.push(_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: Colors.Gray, children: [gutterNumStr.padStart(gutterWidth), ' '] }), line.type === 'context' ? (_jsxs(_Fragment, { children: [_jsxs(Text, { children: [prefixSymbol, " "] }), _jsx(Text, { wrap: "wrap", children: colorizeLine(displayContent, language) })] })) : (_jsxs(Text, { backgroundColor: line.type === 'add'
190
+ ? Colors.DiffAddedBackground
191
+ : Colors.DiffRemovedBackground, color: line.type === 'add'
192
+ ? Colors.DiffAddedForeground
193
+ : Colors.DiffRemovedForeground, wrap: "wrap", children: [prefixSymbol, ' ', colorizeLine(displayContent, language, undefined, line.type === 'add'
194
+ ? Colors.DiffAddedForeground
195
+ : Colors.DiffRemovedForeground)] }))] }, lineKey));
190
196
  return acc;
191
197
  }, []) }, key));
192
198
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DiffRenderer.js","sourceRoot":"","sources":["../../../../../src/ui/components/messages/DiffRenderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DiffRenderer.js","sourceRoot":"","sources":["../../../../../src/ui/components/messages/DiffRenderer.tsx"],"names":[],"mappings":"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"}
@@ -11,17 +11,29 @@ import { Colors } from '../../colors.js';
11
11
  import { ToolConfirmationOutcome, } from '@vybestack/llxprt-code-core';
12
12
  import { RadioButtonSelect, } from '../shared/RadioButtonSelect.js';
13
13
  import { MaxSizedBox } from '../shared/MaxSizedBox.js';
14
- export const ToolConfirmationMessage = ({ confirmationDetails, isFocused = true, availableTerminalHeight, terminalWidth, }) => {
14
+ export const ToolConfirmationMessage = ({ confirmationDetails, config, isFocused = true, availableTerminalHeight, terminalWidth, }) => {
15
15
  const { onConfirm } = confirmationDetails;
16
16
  const childWidth = terminalWidth - 2; // 2 for padding
17
+ const handleConfirm = useCallback(async (outcome) => {
18
+ if (confirmationDetails.type === 'edit') {
19
+ const ideClient = config?.getIdeClient();
20
+ if (config?.getIdeMode() && config?.getIdeModeFeature()) {
21
+ const cliOutcome = outcome === ToolConfirmationOutcome.Cancel
22
+ ? 'rejected'
23
+ : 'accepted';
24
+ await ideClient?.resolveDiffFromCli(confirmationDetails.filePath, cliOutcome);
25
+ }
26
+ }
27
+ onConfirm(outcome);
28
+ }, [confirmationDetails, config, onConfirm]);
17
29
  useInput((_, key) => {
18
30
  if (!isFocused)
19
31
  return;
20
32
  if (key.escape) {
21
- onConfirm(ToolConfirmationOutcome.Cancel);
33
+ handleConfirm(ToolConfirmationOutcome.Cancel);
22
34
  }
23
35
  });
24
- const handleSelect = useCallback((item) => onConfirm(item), [onConfirm]);
36
+ const handleSelect = useCallback((item) => handleConfirm(item), [handleConfirm]);
25
37
  let bodyContent = null; // Removed contextDisplay here
26
38
  let question;
27
39
  const options = new Array();
@@ -60,13 +72,23 @@ export const ToolConfirmationMessage = ({ confirmationDetails, isFocused = true,
60
72
  }, {
61
73
  label: 'Yes, allow always',
62
74
  value: ToolConfirmationOutcome.ProceedAlways,
63
- }, {
64
- label: 'Modify with external editor',
65
- value: ToolConfirmationOutcome.ModifyWithEditor,
66
- }, {
67
- label: 'No, suggest changes (esc)',
68
- value: ToolConfirmationOutcome.Cancel,
69
75
  });
76
+ if (config?.getIdeMode() && config?.getIdeModeFeature()) {
77
+ options.push({
78
+ label: 'No',
79
+ value: ToolConfirmationOutcome.Cancel,
80
+ });
81
+ }
82
+ else {
83
+ options.push({
84
+ label: 'Modify with external editor',
85
+ value: ToolConfirmationOutcome.ModifyWithEditor,
86
+ });
87
+ options.push({
88
+ label: 'No, suggest changes (esc)',
89
+ value: ToolConfirmationOutcome.Cancel,
90
+ });
91
+ }
70
92
  bodyContent = (_jsx(DiffRenderer, { diffContent: confirmationDetails.fileDiff, filename: confirmationDetails.fileName, availableTerminalHeight: availableBodyContentHeight(), terminalWidth: childWidth }));
71
93
  }
72
94
  else if (confirmationDetails.type === 'exec') {
@@ -1 +1 @@
1
- {"version":3,"file":"ToolConfirmationMessage.js","sourceRoot":"","sources":["../../../../../src/ui/components/messages/ToolConfirmationMessage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolConfirmationMessage.js","sourceRoot":"","sources":["../../../../../src/ui/components/messages/ToolConfirmationMessage.tsx"],"names":[],"mappings":"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"}
@@ -11,25 +11,53 @@ import { ToolMessage } from './ToolMessage.js';
11
11
  import { ToolConfirmationMessage } from './ToolConfirmationMessage.js';
12
12
  import { Colors } from '../../colors.js';
13
13
  import { SHELL_COMMAND_NAME } from '../../constants.js';
14
+ import { useTodoContext } from '../../contexts/TodoContext.js';
14
15
  // Main component renders the border and maps the tools using ToolMessage
15
16
  export const ToolGroupMessage = ({ toolCalls, availableTerminalHeight, terminalWidth, config, isFocused = true, }) => {
16
- const hasPending = !toolCalls.every((t) => t.status === ToolCallStatus.Success);
17
- const isShellCommand = toolCalls.some((t) => t.name === SHELL_COMMAND_NAME);
17
+ const { todos } = useTodoContext();
18
+ const hasTodoPanel = todos.length > 0;
19
+ // only prompt for tool approval on the first 'confirming' tool in the list
20
+ // note, after the CTA, this automatically moves over to the next 'confirming' tool
21
+ const toolAwaitingApproval = useMemo(() => toolCalls.find((tc) => tc.status === ToolCallStatus.Confirming), [toolCalls]);
22
+ // Filter out todo_read completely when panel is visible
23
+ // and minimize todo_write output
24
+ const filteredToolCalls = useMemo(() => {
25
+ if (!hasTodoPanel)
26
+ return toolCalls;
27
+ return toolCalls
28
+ .map((tool) => {
29
+ if (tool.name === 'todo_read') {
30
+ return null; // Don't show todo_read at all when panel is visible
31
+ }
32
+ if (tool.name === 'todo_write') {
33
+ // Minimize todo_write output when panel is visible
34
+ return {
35
+ ...tool,
36
+ resultDisplay: '✦ Todo list updated.',
37
+ };
38
+ }
39
+ return tool;
40
+ })
41
+ .filter(Boolean);
42
+ }, [toolCalls, hasTodoPanel]);
43
+ // If all tools were filtered out, don't render anything
44
+ if (filteredToolCalls.length === 0) {
45
+ return null;
46
+ }
47
+ const hasPending = !filteredToolCalls.every((t) => t.status === ToolCallStatus.Success);
48
+ const isShellCommand = filteredToolCalls.some((t) => t.name === SHELL_COMMAND_NAME);
18
49
  const borderColor = hasPending || isShellCommand ? Colors.AccentYellow : Colors.Gray;
19
50
  const staticHeight = /* border */ 2 + /* marginBottom */ 1;
20
51
  // This is a bit of a magic number, but it accounts for the border and
21
52
  // marginLeft.
22
53
  const innerWidth = terminalWidth - 4;
23
- // only prompt for tool approval on the first 'confirming' tool in the list
24
- // note, after the CTA, this automatically moves over to the next 'confirming' tool
25
- const toolAwaitingApproval = useMemo(() => toolCalls.find((tc) => tc.status === ToolCallStatus.Confirming), [toolCalls]);
26
54
  let countToolCallsWithResults = 0;
27
- for (const tool of toolCalls) {
55
+ for (const tool of filteredToolCalls) {
28
56
  if (tool.resultDisplay !== undefined && tool.resultDisplay !== '') {
29
57
  countToolCallsWithResults++;
30
58
  }
31
59
  }
32
- const countOneLineToolCalls = toolCalls.length - countToolCallsWithResults;
60
+ const countOneLineToolCalls = filteredToolCalls.length - countToolCallsWithResults;
33
61
  const availableTerminalHeightPerToolMessage = availableTerminalHeight
34
62
  ? Math.max(Math.floor((availableTerminalHeight - staticHeight - countOneLineToolCalls) /
35
63
  Math.max(1, countToolCallsWithResults)), 1)
@@ -41,7 +69,7 @@ export const ToolGroupMessage = ({ toolCalls, availableTerminalHeight, terminalW
41
69
  Ink to render the border of the box incorrectly and span multiple lines and even
42
70
  cause tearing.
43
71
  */
44
- width: "100%", marginLeft: 1, borderDimColor: hasPending, borderColor: borderColor, children: toolCalls.map((tool) => {
72
+ width: "100%", marginLeft: 1, borderDimColor: hasPending, borderColor: borderColor, children: filteredToolCalls.map((tool) => {
45
73
  const isConfirming = toolAwaitingApproval?.callId === tool.callId;
46
74
  return (_jsxs(Box, { flexDirection: "column", minHeight: 1, children: [_jsx(Box, { flexDirection: "row", alignItems: "center", children: _jsx(ToolMessage, { callId: tool.callId, name: tool.name, description: tool.description, resultDisplay: tool.resultDisplay, status: tool.status, confirmationDetails: tool.confirmationDetails, availableTerminalHeight: availableTerminalHeightPerToolMessage, terminalWidth: innerWidth, emphasis: isConfirming
47
75
  ? 'high'