@majkapp/majk-chat-cli 1.0.16 → 1.0.23
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/dist/cli.js +176 -85
- package/dist/cli.js.map +1 -1
- package/dist/executors/claude-code.executor.d.ts +15 -0
- package/dist/executors/claude-code.executor.d.ts.map +1 -0
- package/dist/executors/claude-code.executor.js +249 -0
- package/dist/executors/claude-code.executor.js.map +1 -0
- package/dist/executors/executor-factory.d.ts +8 -0
- package/dist/executors/executor-factory.d.ts.map +1 -0
- package/dist/executors/executor-factory.js +59 -0
- package/dist/executors/executor-factory.js.map +1 -0
- package/dist/executors/executor.interface.d.ts +46 -0
- package/dist/executors/executor.interface.d.ts.map +1 -0
- package/dist/executors/executor.interface.js +3 -0
- package/dist/executors/executor.interface.js.map +1 -0
- package/dist/executors/index.d.ts +5 -0
- package/dist/executors/index.d.ts.map +1 -0
- package/dist/executors/index.js +21 -0
- package/dist/executors/index.js.map +1 -0
- package/dist/executors/majk.executor.d.ts +12 -0
- package/dist/executors/majk.executor.d.ts.map +1 -0
- package/dist/executors/majk.executor.js +283 -0
- package/dist/executors/majk.executor.js.map +1 -0
- package/dist/majk-chat-standalone.cjs +693 -501
- package/package.json +6 -6
- package/dist/tools/bash.tool.d.ts +0 -11
- package/dist/tools/bash.tool.d.ts.map +0 -1
- package/dist/tools/bash.tool.js +0 -140
- package/dist/tools/bash.tool.js.map +0 -1
- package/dist/tools/filesystem.tool.d.ts +0 -20
- package/dist/tools/filesystem.tool.d.ts.map +0 -1
- package/dist/tools/filesystem.tool.js +0 -312
- package/dist/tools/filesystem.tool.js.map +0 -1
package/dist/cli.js
CHANGED
|
@@ -49,8 +49,6 @@ const interactive_1 = require("./interactive/interactive");
|
|
|
49
49
|
const credentials_1 = require("./utils/credentials");
|
|
50
50
|
const profile_config_1 = require("./utils/profile-config");
|
|
51
51
|
const config_1 = require("./utils/config");
|
|
52
|
-
const bash_tool_1 = require("./tools/bash.tool");
|
|
53
|
-
const filesystem_tool_1 = require("./tools/filesystem.tool");
|
|
54
52
|
const majk_chat_mcp_1 = require("@majkapp/majk-chat-mcp");
|
|
55
53
|
const majk_chat_basic_tools_1 = require("@majkapp/majk-chat-basic-tools");
|
|
56
54
|
const majk_chat_document_tools_1 = require("@majkapp/majk-chat-document-tools");
|
|
@@ -58,13 +56,14 @@ const majk_chat_sessions_1 = require("@majkapp/majk-chat-sessions");
|
|
|
58
56
|
const models_1 = require("./utils/models");
|
|
59
57
|
const tool_filter_1 = require("./utils/tool-filter");
|
|
60
58
|
const output_1 = require("./utils/output");
|
|
59
|
+
const executors_1 = require("./executors");
|
|
61
60
|
// Load environment variables
|
|
62
61
|
dotenv_1.default.config();
|
|
63
62
|
const program = new commander_1.Command();
|
|
64
63
|
program
|
|
65
64
|
.name('majk-chat')
|
|
66
65
|
.description('CLI for multi-provider LLM chat interactions')
|
|
67
|
-
.version('1.0.
|
|
66
|
+
.version('1.0.20');
|
|
68
67
|
// Add credential options helper function
|
|
69
68
|
function addCredentialOptions(command) {
|
|
70
69
|
return command
|
|
@@ -92,13 +91,15 @@ function addCredentialOptions(command) {
|
|
|
92
91
|
}
|
|
93
92
|
// Chat command
|
|
94
93
|
const chatCommand = program
|
|
95
|
-
.command('chat')
|
|
94
|
+
.command('chat [message...]')
|
|
96
95
|
.description('Send a chat message to an LLM provider')
|
|
96
|
+
.option('--agent <type>', 'Executor to use: "majk" (default) or "claude-code". Can also be set via MAJK_AGENT environment variable')
|
|
97
97
|
.option('--provider <provider>', 'Provider to use (openai, anthropic, azure-openai, bedrock)')
|
|
98
98
|
.option('--model <model>', 'Model or alias (e.g., "sonnet", "opus", "claude-3-5-sonnet-20241022")')
|
|
99
99
|
.option('-M, --message <message>', 'Message to send')
|
|
100
100
|
.option('-p <value>', 'JSON messages array or prompt string')
|
|
101
101
|
.option('-f, --file <file>', 'Read message from file')
|
|
102
|
+
.option('--image <paths...>', 'One or more image file paths to include with the message (PNG, JPEG, GIF, WebP)')
|
|
102
103
|
.option('--prompts <file>', 'File with one prompt per line (sequential execution)')
|
|
103
104
|
.option('-s, --system <system>', 'System message')
|
|
104
105
|
.option('-S, --system-file <file>', 'Read system message from file')
|
|
@@ -107,7 +108,7 @@ const chatCommand = program
|
|
|
107
108
|
.option('--max-tokens <tokens>', 'Maximum tokens', parseInt)
|
|
108
109
|
.option('-j, --json', 'Output JSON response')
|
|
109
110
|
.option('--output-format <format>', 'Output format: "text" (default) or "stream-json"', 'text')
|
|
110
|
-
.option('--tools', 'Enable
|
|
111
|
+
.option('--tools', 'Enable core tools (bash, read, write, etc.) - equivalent to --enable-core-tools')
|
|
111
112
|
.option('--enable-core-tools', 'Enable majk-chat-basic-tools (bash, ls, read, etc.)')
|
|
112
113
|
.option('--enable-read-only-tools', 'Enable read-only majk-chat-basic-tools (ls, read, grep, web_fetch, etc.)')
|
|
113
114
|
.option('--disable-tools', 'Disable all tools including read-only tools (overrides defaults)')
|
|
@@ -129,13 +130,23 @@ const chatCommand = program
|
|
|
129
130
|
.option('--list-sessions', 'List all sessions for current directory')
|
|
130
131
|
.option('--delete-session <uuid>', 'Delete a specific session by UUID')
|
|
131
132
|
.option('--dry-run', 'Enable dry run mode - plan operations without executing them')
|
|
132
|
-
.option('--dry-run-review', 'Enable dry run mode with interactive review and execution of planned operations')
|
|
133
|
+
.option('--dry-run-review', 'Enable dry run mode with interactive review and execution of planned operations')
|
|
134
|
+
.option('--save-prompts <file>', 'Save all prompts to JSONL file for analysis and debugging');
|
|
133
135
|
addCredentialOptions(chatCommand)
|
|
134
|
-
.action(async (options) => {
|
|
136
|
+
.action(async (messageArgs, options) => {
|
|
135
137
|
let cleanup = null;
|
|
136
138
|
// Initialize output handler early so we can pass callbacks
|
|
137
139
|
const outputHandler = new output_1.OutputHandler(options.outputFormat);
|
|
140
|
+
// Handle positional message arguments
|
|
141
|
+
if (messageArgs && messageArgs.length > 0 && !options.message && !options.file && !options.p) {
|
|
142
|
+
options.message = messageArgs.join(' ');
|
|
143
|
+
}
|
|
138
144
|
try {
|
|
145
|
+
const agentType = options.agent || process.env.MAJK_AGENT || 'majk';
|
|
146
|
+
if (agentType === 'claude-code' || agentType === 'claude') {
|
|
147
|
+
await handleClaudeCodeExecutor(options, outputHandler);
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
139
150
|
const setupOptions = {
|
|
140
151
|
...options,
|
|
141
152
|
outputFormat: options.outputFormat, // Pass output format to suppress logs
|
|
@@ -254,7 +265,7 @@ addCredentialOptions(chatCommand)
|
|
|
254
265
|
messages: allMessages,
|
|
255
266
|
temperature: options.temperature,
|
|
256
267
|
max_tokens: options.maxTokens,
|
|
257
|
-
// Always include tools if any are registered (from MCP or
|
|
268
|
+
// Always include tools if any are registered (from MCP or basic tools)
|
|
258
269
|
tools: tools.length > 0 ? tools : undefined,
|
|
259
270
|
// Enable auto-execution if tools are enabled (default unless --disable-tools) or MCP configured
|
|
260
271
|
max_steps: (options.tools || !options.disableTools || options.mcpConfig || options.mcpServers)
|
|
@@ -351,7 +362,7 @@ const interactiveCommand = program
|
|
|
351
362
|
.option('-m, --model <model>', 'Model to use')
|
|
352
363
|
.option('-s, --system <system>', 'System message')
|
|
353
364
|
.option('-S, --system-file <file>', 'Read system message from file')
|
|
354
|
-
.option('--tools', 'Enable
|
|
365
|
+
.option('--tools', 'Enable core tools (bash, read, write, etc.) - equivalent to --enable-core-tools')
|
|
355
366
|
.option('--enable-core-tools', 'Enable majk-chat-basic-tools (bash, ls, read, etc.)')
|
|
356
367
|
.option('--enable-read-only-tools', 'Enable read-only majk-chat-basic-tools (ls, read, grep, web_fetch, etc.)')
|
|
357
368
|
.option('--disable-tools', 'Disable all tools including read-only tools (overrides defaults)')
|
|
@@ -374,7 +385,7 @@ addCredentialOptions(interactiveCommand)
|
|
|
374
385
|
const { chat, toolRegistry } = setupResult;
|
|
375
386
|
cleanup = setupResult.cleanup;
|
|
376
387
|
const systemMessage = await getSystemMessage(options);
|
|
377
|
-
// Check if we have tools available from MCP or
|
|
388
|
+
// Check if we have tools available from MCP or basic tools
|
|
378
389
|
const hasTools = toolRegistry.getDefinitions().length > 0;
|
|
379
390
|
const interactive = new interactive_1.InteractiveMode(chat, {
|
|
380
391
|
provider: options.provider,
|
|
@@ -698,6 +709,74 @@ program
|
|
|
698
709
|
}
|
|
699
710
|
});
|
|
700
711
|
// Helper functions
|
|
712
|
+
async function handleClaudeCodeExecutor(options, outputHandler) {
|
|
713
|
+
try {
|
|
714
|
+
await executors_1.ExecutorFactory.validateExecutorChoice('claude-code');
|
|
715
|
+
const messages = await buildMessages(options);
|
|
716
|
+
if (!messages || messages.length === 0) {
|
|
717
|
+
outputHandler.outputError('No message provided');
|
|
718
|
+
process.exit(1);
|
|
719
|
+
}
|
|
720
|
+
const credOptions = extractCredentialOptions(options);
|
|
721
|
+
const executorOptions = {
|
|
722
|
+
provider: options.provider,
|
|
723
|
+
model: options.model,
|
|
724
|
+
messages,
|
|
725
|
+
temperature: options.temperature,
|
|
726
|
+
maxTokens: options.maxTokens,
|
|
727
|
+
maxSteps: options.maxSteps,
|
|
728
|
+
systemPrompt: options.system || options.appendSystemPrompt,
|
|
729
|
+
outputFormat: options.outputFormat || 'text',
|
|
730
|
+
tools: options.tools,
|
|
731
|
+
enableCoreTools: options.enableCoreTools || options.tools,
|
|
732
|
+
enableReadOnlyTools: options.enableReadOnlyTools,
|
|
733
|
+
disableTools: options.disableTools,
|
|
734
|
+
planningMode: options.planningMode,
|
|
735
|
+
mcpConfig: options.mcpConfig,
|
|
736
|
+
mcpServers: options.mcpServers,
|
|
737
|
+
allowedTools: options.allowedTools,
|
|
738
|
+
disallowedTools: options.disallowedTools,
|
|
739
|
+
permissionPromptTool: options.permissionPromptTool,
|
|
740
|
+
bedrockApiKey: credOptions.bedrockApiKey,
|
|
741
|
+
awsAccessKeyId: credOptions.awsAccessKeyId,
|
|
742
|
+
awsSecretAccessKey: credOptions.awsSecretAccessKey,
|
|
743
|
+
awsSessionToken: credOptions.awsSessionToken,
|
|
744
|
+
awsRegion: credOptions.awsRegion,
|
|
745
|
+
anthropicApiKey: credOptions.anthropicApiKey,
|
|
746
|
+
openaiApiKey: credOptions.openaiApiKey,
|
|
747
|
+
cwd: process.cwd(),
|
|
748
|
+
onToolCall: options.outputFormat === 'stream-json'
|
|
749
|
+
? (toolCall) => outputHandler.outputToolCallMessage(toolCall)
|
|
750
|
+
: undefined,
|
|
751
|
+
onToolResult: options.outputFormat === 'stream-json'
|
|
752
|
+
? (toolCall, result) => outputHandler.outputToolResult(toolCall.id, result)
|
|
753
|
+
: undefined
|
|
754
|
+
};
|
|
755
|
+
const executor = executors_1.ExecutorFactory.create('claude-code');
|
|
756
|
+
const spinner = outputHandler.startSpinner('Sending message...');
|
|
757
|
+
const apiStart = Date.now();
|
|
758
|
+
const result = await executor.execute(executorOptions);
|
|
759
|
+
const apiDuration = Date.now() - apiStart;
|
|
760
|
+
if (spinner)
|
|
761
|
+
spinner.succeed('Response received');
|
|
762
|
+
if (options.json) {
|
|
763
|
+
console.log(JSON.stringify(result.response, null, 2));
|
|
764
|
+
}
|
|
765
|
+
else {
|
|
766
|
+
const assistantMessage = result.response.choices[0].message;
|
|
767
|
+
const content = typeof assistantMessage.content === 'string'
|
|
768
|
+
? assistantMessage.content
|
|
769
|
+
: JSON.stringify(assistantMessage.content);
|
|
770
|
+
outputHandler.outputMessage('assistant', content, result.response.usage, assistantMessage.tool_calls);
|
|
771
|
+
outputHandler.outputComplete(result.response.usage, apiDuration);
|
|
772
|
+
}
|
|
773
|
+
process.exit(0);
|
|
774
|
+
}
|
|
775
|
+
catch (error) {
|
|
776
|
+
outputHandler.outputError(error instanceof Error ? error.message : String(error));
|
|
777
|
+
process.exit(1);
|
|
778
|
+
}
|
|
779
|
+
}
|
|
701
780
|
// Extract credential options from CLI arguments
|
|
702
781
|
function extractCredentialOptions(options) {
|
|
703
782
|
return {
|
|
@@ -790,30 +869,16 @@ async function setupChat(options) {
|
|
|
790
869
|
if (!hasValidCredentials) {
|
|
791
870
|
throw new Error('No valid API credentials found. Please provide API keys via command line options, environment variables, or .env files. Use --help to see available credential options.');
|
|
792
871
|
}
|
|
793
|
-
// Add legacy CLI tools if --tools flag is explicitly used
|
|
794
|
-
if (options.tools) {
|
|
795
|
-
builder
|
|
796
|
-
.withTool(new bash_tool_1.BashTool())
|
|
797
|
-
.withTool(new filesystem_tool_1.FileSystemTool())
|
|
798
|
-
.withAutoToolExecution(options.maxSteps || 5);
|
|
799
|
-
}
|
|
800
872
|
// Add tools - now enabled by default unless explicitly disabled
|
|
801
873
|
const shouldEnableTools = !options.disableTools; // Default to true unless --disable-tools is used
|
|
802
874
|
const enableReadOnlyTools = shouldEnableTools && (options.enableReadOnlyTools !== false); // Default to true
|
|
803
|
-
const enableCoreTools = options.enableCoreTools;
|
|
875
|
+
const enableCoreTools = options.enableCoreTools || options.tools; // --tools now enables core tools
|
|
804
876
|
const enablePlanningMode = options.planningMode;
|
|
805
877
|
if (enableCoreTools || enableReadOnlyTools || enablePlanningMode) {
|
|
806
878
|
const toolRegistry = builder.getToolRegistry();
|
|
807
879
|
if (toolRegistry) {
|
|
808
|
-
// Configure basic tools
|
|
880
|
+
// Configure basic tools
|
|
809
881
|
const basicToolsConfig = {};
|
|
810
|
-
if (enablePlanningMode) {
|
|
811
|
-
basicToolsConfig.planningMode = {
|
|
812
|
-
enabled: true,
|
|
813
|
-
reminderInterval: options.todoReminderInterval || 3,
|
|
814
|
-
autoReminders: !options.disableAutoReminders
|
|
815
|
-
};
|
|
816
|
-
}
|
|
817
882
|
// Register appropriate tool set based on flags
|
|
818
883
|
if (enableCoreTools || enablePlanningMode) {
|
|
819
884
|
// Register all tools (including write/execute tools)
|
|
@@ -827,28 +892,51 @@ async function setupChat(options) {
|
|
|
827
892
|
// Register document tools (they are inherently read-only)
|
|
828
893
|
(0, majk_chat_document_tools_1.registerDocumentTools)(toolRegistry);
|
|
829
894
|
}
|
|
830
|
-
// Setup planning mode reminders if enabled
|
|
831
|
-
if (options.planningMode) {
|
|
832
|
-
const instanceId = options.requestId || 'cli-session';
|
|
833
|
-
(0, majk_chat_basic_tools_1.setupPlanningModeReminders)(instanceId, basicToolsConfig);
|
|
834
|
-
}
|
|
835
895
|
// Apply tool filtering if specified
|
|
836
896
|
if (options.allowedTools || options.disallowedTools) {
|
|
837
897
|
applyToolFiltering(toolRegistry, options.allowedTools, options.disallowedTools);
|
|
838
898
|
}
|
|
839
|
-
// Setup
|
|
899
|
+
// Setup context management with truncation using ContextManagementExtension
|
|
840
900
|
// Handle the case where toolResultLimit might be null or NaN from commander parsing
|
|
841
901
|
let toolResultLimit = 2000; // Much smaller default to handle large files within context limits
|
|
842
902
|
if (options.toolResultLimit && !isNaN(options.toolResultLimit) && options.toolResultLimit > 0) {
|
|
843
903
|
toolResultLimit = options.toolResultLimit;
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
904
|
+
}
|
|
905
|
+
// Always setup context management with the extension (replaces legacy setupToolResultManagement)
|
|
906
|
+
builder.withContextManagement({
|
|
907
|
+
enableTruncation: true,
|
|
908
|
+
maxLength: toolResultLimit,
|
|
909
|
+
conversationId: options.requestId || 'cli-session'
|
|
910
|
+
});
|
|
911
|
+
// Setup prompt logging if requested
|
|
912
|
+
if (options.savePrompts) {
|
|
913
|
+
builder.withExtension(new majk_chat_core_1.PromptLoggingExtension({
|
|
914
|
+
filePath: options.savePrompts,
|
|
915
|
+
includeContext: true,
|
|
916
|
+
includeTools: true,
|
|
917
|
+
includeMessages: true,
|
|
918
|
+
append: true
|
|
919
|
+
}));
|
|
920
|
+
console.log(chalk_1.default.cyan(`📝 Prompt logging enabled: ${options.savePrompts}`));
|
|
921
|
+
}
|
|
922
|
+
// Setup planning mode extension if requested
|
|
923
|
+
if (enablePlanningMode) {
|
|
924
|
+
builder.withPlanningMode({
|
|
925
|
+
enabled: true,
|
|
926
|
+
autoActivation: {
|
|
927
|
+
enabled: true,
|
|
928
|
+
complexityThreshold: 70
|
|
929
|
+
},
|
|
930
|
+
guidance: {
|
|
931
|
+
reminderInterval: options.todoReminderInterval || 3,
|
|
932
|
+
enableProgressTracking: !options.disableAutoReminders
|
|
933
|
+
},
|
|
934
|
+
session: {
|
|
935
|
+
conversationId: options.requestId || 'cli-session'
|
|
936
|
+
}
|
|
849
937
|
});
|
|
938
|
+
console.log(chalk_1.default.cyan(`🎯 Planning mode enabled: Research → Plan → Execute workflow`));
|
|
850
939
|
}
|
|
851
|
-
setupToolResultManagement(builder, toolResultLimit, options);
|
|
852
940
|
// Set default steps based on tool type - 500 for read-only tools by default, 5 for other scenarios
|
|
853
941
|
const defaultSteps = enableReadOnlyTools && !enableCoreTools && !enablePlanningMode ? 500 : 5;
|
|
854
942
|
builder.withAutoToolExecution(options.maxSteps || defaultSteps);
|
|
@@ -907,6 +995,31 @@ async function setupChat(options) {
|
|
|
907
995
|
}
|
|
908
996
|
};
|
|
909
997
|
}
|
|
998
|
+
async function loadImageFromPath(filePath) {
|
|
999
|
+
const resolvedPath = path.resolve(filePath.replace(/^~/, process.env.HOME || '~'));
|
|
1000
|
+
const ext = path.extname(resolvedPath).toLowerCase();
|
|
1001
|
+
const mediaTypeMap = {
|
|
1002
|
+
'.png': 'image/png',
|
|
1003
|
+
'.jpg': 'image/jpeg',
|
|
1004
|
+
'.jpeg': 'image/jpeg',
|
|
1005
|
+
'.gif': 'image/gif',
|
|
1006
|
+
'.webp': 'image/webp'
|
|
1007
|
+
};
|
|
1008
|
+
const media_type = mediaTypeMap[ext];
|
|
1009
|
+
if (!media_type) {
|
|
1010
|
+
throw new Error(`Unsupported image format: ${ext}. Supported: .png, .jpg, .jpeg, .gif, .webp`);
|
|
1011
|
+
}
|
|
1012
|
+
const buffer = await fs.readFile(resolvedPath);
|
|
1013
|
+
const base64Data = buffer.toString('base64');
|
|
1014
|
+
return {
|
|
1015
|
+
type: 'image',
|
|
1016
|
+
source: {
|
|
1017
|
+
type: 'base64',
|
|
1018
|
+
media_type,
|
|
1019
|
+
data: base64Data
|
|
1020
|
+
}
|
|
1021
|
+
};
|
|
1022
|
+
}
|
|
910
1023
|
async function buildMessages(options) {
|
|
911
1024
|
const messages = [];
|
|
912
1025
|
// Add system message if provided
|
|
@@ -938,7 +1051,31 @@ async function buildMessages(options) {
|
|
|
938
1051
|
// Use traditional message options
|
|
939
1052
|
const message = await getMessage(options);
|
|
940
1053
|
if (message) {
|
|
941
|
-
|
|
1054
|
+
// Check if images are provided
|
|
1055
|
+
if (options.image && Array.isArray(options.image) && options.image.length > 0) {
|
|
1056
|
+
// Build multi-modal content with text + images
|
|
1057
|
+
const contentBlocks = [];
|
|
1058
|
+
// Add text block first
|
|
1059
|
+
contentBlocks.push({
|
|
1060
|
+
type: 'text',
|
|
1061
|
+
text: message
|
|
1062
|
+
});
|
|
1063
|
+
// Add image blocks
|
|
1064
|
+
for (const imagePath of options.image) {
|
|
1065
|
+
try {
|
|
1066
|
+
const imageBlock = await loadImageFromPath(imagePath);
|
|
1067
|
+
contentBlocks.push(imageBlock);
|
|
1068
|
+
}
|
|
1069
|
+
catch (error) {
|
|
1070
|
+
throw new Error(`Failed to load image ${imagePath}: ${error instanceof Error ? error.message : error}`);
|
|
1071
|
+
}
|
|
1072
|
+
}
|
|
1073
|
+
messages.push({ role: 'user', content: contentBlocks });
|
|
1074
|
+
}
|
|
1075
|
+
else {
|
|
1076
|
+
// Simple text message
|
|
1077
|
+
messages.push({ role: 'user', content: message });
|
|
1078
|
+
}
|
|
942
1079
|
}
|
|
943
1080
|
}
|
|
944
1081
|
return messages;
|
|
@@ -1213,52 +1350,6 @@ function applyToolFiltering(registry, allowedTools, disallowedTools) {
|
|
|
1213
1350
|
}
|
|
1214
1351
|
}
|
|
1215
1352
|
}
|
|
1216
|
-
/**
|
|
1217
|
-
* Setup tool result management with automatic ReadToolResult registration
|
|
1218
|
-
*/
|
|
1219
|
-
function setupToolResultManagement(builder, resultLimit, options) {
|
|
1220
|
-
let readToolResultRegistered = false;
|
|
1221
|
-
const truncationConfig = {
|
|
1222
|
-
maxLength: resultLimit,
|
|
1223
|
-
previewLength: Math.floor(resultLimit * 0.6),
|
|
1224
|
-
tailLength: Math.floor(resultLimit * 0.3),
|
|
1225
|
-
storeResult: true
|
|
1226
|
-
};
|
|
1227
|
-
// Set up tool result callback to handle truncation
|
|
1228
|
-
const originalOnToolResult = options.onToolResult;
|
|
1229
|
-
const onToolResult = (toolName, result, context) => {
|
|
1230
|
-
// Check if result should be truncated
|
|
1231
|
-
if (majk_chat_basic_tools_1.ToolResultTruncator.shouldTruncate(result, truncationConfig)) {
|
|
1232
|
-
// Set conversation ID from context if available
|
|
1233
|
-
const conversationId = context?.metadata?.conversationId || context?.requestId || 'cli-session';
|
|
1234
|
-
const configWithConversation = { ...truncationConfig, conversationId };
|
|
1235
|
-
// Process the result with truncation
|
|
1236
|
-
const truncatedResult = majk_chat_basic_tools_1.ToolResultTruncator.processToolResult(result, toolName, configWithConversation);
|
|
1237
|
-
// Auto-register ReadToolResult tool on first truncation
|
|
1238
|
-
if (!readToolResultRegistered && truncatedResult.truncated) {
|
|
1239
|
-
const registry = builder.getToolRegistry();
|
|
1240
|
-
if (registry && !registry.has('read_tool_result')) {
|
|
1241
|
-
registry.register(new majk_chat_basic_tools_1.ReadToolResultTool());
|
|
1242
|
-
readToolResultRegistered = true;
|
|
1243
|
-
console.log(chalk_1.default.yellow('📋 Large tool result detected. ReadToolResult tool auto-registered.'));
|
|
1244
|
-
console.log(chalk_1.default.gray(` Use read_tool_result with ID: ${truncatedResult.full_result_id}`));
|
|
1245
|
-
}
|
|
1246
|
-
}
|
|
1247
|
-
// Call original callback with truncated result
|
|
1248
|
-
if (originalOnToolResult) {
|
|
1249
|
-
originalOnToolResult(toolName, truncatedResult, context);
|
|
1250
|
-
}
|
|
1251
|
-
return truncatedResult;
|
|
1252
|
-
}
|
|
1253
|
-
// Call original callback for non-truncated results
|
|
1254
|
-
if (originalOnToolResult) {
|
|
1255
|
-
originalOnToolResult(toolName, result, context);
|
|
1256
|
-
}
|
|
1257
|
-
return result;
|
|
1258
|
-
};
|
|
1259
|
-
// Update the options to include our callback
|
|
1260
|
-
options.onToolResult = onToolResult;
|
|
1261
|
-
}
|
|
1262
1353
|
// Session helper functions
|
|
1263
1354
|
async function handleListSessions(sessionManager, workingDirectory, outputHandler) {
|
|
1264
1355
|
try {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ChatExecutor, ExecutorOptions, ExecutorResponse } from './executor.interface';
|
|
2
|
+
export declare class ClaudeCodeExecutor implements ChatExecutor {
|
|
3
|
+
private cliPath;
|
|
4
|
+
constructor(cliPath?: string);
|
|
5
|
+
getName(): string;
|
|
6
|
+
supportsStreaming(): boolean;
|
|
7
|
+
execute(options: ExecutorOptions): Promise<ExecutorResponse>;
|
|
8
|
+
private buildEnvironment;
|
|
9
|
+
private buildArgs;
|
|
10
|
+
private extractUserMessage;
|
|
11
|
+
private extractSystemMessage;
|
|
12
|
+
private executeNonStreaming;
|
|
13
|
+
private executeStreaming;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=claude-code.executor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude-code.executor.d.ts","sourceRoot":"","sources":["../../src/executors/claude-code.executor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIvF,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,MAAiB;IAItC,OAAO,IAAI,MAAM;IAIjB,iBAAiB,IAAI,OAAO;IAItB,OAAO,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQlE,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,SAAS;IAuEjB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,oBAAoB;YAQd,mBAAmB;YA8DnB,gBAAgB;CAyF/B"}
|