test-clean-agents.jsโข2.6 kB
#!/usr/bin/env node
const { spawn } = require('child_process');
console.log('๐งช TESTING CLEANED AGENTS');
console.log('========================\n');
function testAgent() {
return new Promise((resolve, reject) => {
console.log('๐ Testing agent without tool references...');
const server = spawn('node', ['dist/index.js'], {
stdio: ['pipe', 'pipe', 'pipe']
});
let stdout = '';
let stderr = '';
server.stdout.on('data', (data) => {
stdout += data.toString();
});
server.stderr.on('data', (data) => {
stderr += data.toString();
});
// Send agent activation request
const request = JSON.stringify({
jsonrpc: "2.0",
id: 1,
method: "tools/call",
params: {
name: "activate_agent",
arguments: {
agent_name: "frontend-developer",
request: "Create a simple React button component"
}
}
});
server.stdin.write(request + '\n');
server.stdin.end();
setTimeout(() => {
server.kill();
try {
const response = JSON.parse(stdout);
if (response.result && response.result.content) {
const content = response.result.content;
// Check if response contains tool references
const hasToolReferences = /Tools Used|Read:|Write:|Edit:|MultiEdit:|Bash:|Grep:|Glob:|Task:|WebSearch:|WebFetch:/.test(content);
console.log('โ
Agent Response Received');
console.log('๐ Response Length:', content.length, 'characters');
console.log('๐ Contains Tool References:', hasToolReferences ? 'โ YES' : 'โ
NO');
if (!hasToolReferences) {
console.log('๐ SUCCESS: Agent response is clean of tool references!');
} else {
console.log('โ ๏ธ WARNING: Agent response still contains tool references');
}
resolve({ success: !hasToolReferences, content });
} else {
console.log('โ Invalid response format');
resolve({ success: false, error: 'Invalid response format' });
}
} catch (error) {
console.log('โ JSON Parse Error:', error.message);
console.log('Raw stdout:', stdout.substring(0, 200) + '...');
resolve({ success: false, error: error.message });
}
}, 3000);
});
}
// Run the test
testAgent().then(result => {
console.log('\n๐ TEST COMPLETE');
console.log('Result:', result.success ? 'โ
PASSED' : 'โ FAILED');
process.exit(result.success ? 0 : 1);
});