Skip to main content

executeCommandWithStream

codebolt.terminal.executeCommandWithStream(command: string, executeInMain: boolean): EventEmitter
Executes a given command and streams the output in real-time via EventEmitter.

Parameters

NameTypeDescription
commandstringThe command to be executed.
executeInMainbooleanOptional parameter to execute in main terminal. Defaults to false.

Example

// Basic streaming command
const streamEmitter = codebolt.terminal.executeCommandWithStream('echo "Streaming test"');

streamEmitter.on('commandOutput', (data) => {
console.log('📡 Stream data:', data);
});

streamEmitter.on('commandError', (error) => {
console.error('❌ Stream error:', error);
});

streamEmitter.on('commandFinish', () => {
console.log('✅ Stream ended');
});

// Long-running command with monitoring
const buildEmitter = codebolt.terminal.executeCommandWithStream('npm run build');

buildEmitter.on('commandOutput', (data) => {
console.log('Build output:', data.message);

if (data.message.includes('Compilation successful')) {
console.log('🎉 Build completed successfully!');
}
});

buildEmitter.on('commandError', (error) => {
console.error('Build error:', error.message);
});

buildEmitter.on('commandFinish', () => {
console.log('🏁 Build process finished');
});