Diagnoses and fixes Tool Executor issues including MCP server connectivity, registry integrity, and Serena health checks.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claudikins-tool-executor:te-doctorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Diagnose and fix issues with the Claudikins Tool Executor.
Diagnose and fix issues with the Claudikins Tool Executor.
Run the test suite to verify everything works:
cd ${CLAUDE_PLUGIN_ROOT}
npm test
Expected output: 43 tests passing across 4 test files.
Check the build is current:
cd ${CLAUDE_PLUGIN_ROOT}
npm run build
If build fails:
tsconfig.json for TypeScript errorsnpm install to ensure dependencies are installedTest that MCP servers can connect. In execute_code:
// Check which clients are available
console.log("Available:", Object.keys({ serena, gemini, context7 }));
// Test a simple call
try {
const result = await serena.get_active_project({});
console.log("Serena OK:", result ? "connected" : "no project");
} catch (e) {
console.log("Serena error:", e.message);
}
Common connectivity issues:
pip install uvx or pipx install uvxVerify YAML files are valid:
cd ${CLAUDE_PLUGIN_ROOT}
# Count tool definitions
find registry -name "*.yaml" | wc -l
# Should be ~102 files
# Check for syntax errors
npm run extract 2>&1 | grep -i error
If registry is corrupted:
rm -rf registry/
npm run extract
Check workspace directory:
cd ${CLAUDE_PLUGIN_ROOT}
ls -la workspace/
du -sh workspace/ # Check disk usage
Clean up old MCP results:
// In execute_code:
const deleted = await workspace.cleanupMcpResults(3600000); // 1 hour
console.log("Cleaned up", deleted, "old result files");
Both Serena instances must be working:
Registry Serena (powers search_tools):
# Test semantic search
search_tools({ query: "diagram", limit: 3 })
# Should return gemini or shadcn tools
Sandbox Serena (available in execute_code):
const symbols = await serena.find_symbol({ name_path: "workspace" });
console.log("Found symbols:", symbols.content?.length || 0);
If Serena fails:
which uvxpython3 --versionuvx --from git+https://github.com/oraios/serena serena start-mcp-serverCauses:
Fix:
npm run extract # Regenerate registry
npm run build # Rebuild
# Restart Claude Code
Causes:
Fix:
execute_code({ code: "...", timeout: 60000 })Causes:
Fix:
# Check environment variables
echo $GEMINI_API_KEY
echo $APIFY_TOKEN
# Test server manually
npx -y @rlabs-inc/gemini-mcp
Cause: Attempting to access files outside workspace.
Fix: All workspace paths must be relative and within ./workspace/:
// Wrong
await workspace.read("/etc/passwd");
await workspace.read("../package.json");
// Right
await workspace.read("data/file.txt");
Cause: Output exceeds 500 character limit.
Fix: Keep logs concise or save verbose output to workspace:
// Instead of:
console.log(JSON.stringify(largeData, null, 2));
// Do:
await workspace.writeJSON("output.json", largeData);
console.log("Saved to output.json");
MCP Server Stderr:
# Claude Code captures MCP stderr
# Check Claude Code's debug output
claude --debug
Audit Log:
// In execute_code, MCP calls are logged
// Access via getAuditLog() in clients.ts (internal only)
| Test File | Tests | Coverage |
|---|---|---|
tests/unit/workspace.test.ts | 13 | Path traversal, read/write, JSON, directories |
tests/unit/clients.test.ts | 6 | Server configs, client management |
tests/unit/search.test.ts | 10 | Tool loading, search, pagination |
tests/integration/execute-code.test.ts | 14 | Execution, workspace access, MCP proxies |
Run specific test file:
npm test -- tests/unit/workspace.test.ts
Run with verbose output:
npm test -- --verbose
If nothing else works:
cd ${CLAUDE_PLUGIN_ROOT}
# Clean everything
rm -rf node_modules dist registry workspace/mcp-results
# Reinstall and rebuild
npm install
npm run extract
npm run build
# Restart Claude Code
${CLAUDE_PLUGIN_ROOT}/tests/ - All test files${CLAUDE_PLUGIN_ROOT}/src/sandbox/clients.ts - Client lifecycle${CLAUDE_PLUGIN_ROOT}/src/search.ts - Search implementation${CLAUDE_PLUGIN_ROOT}/src/sandbox/runtime.ts - Execution enginenpx claudepluginhub espalier-redoubt/claudikins-tool-executorDiagnoses Tool Executor issues: runs npm tests, checks builds, MCP/Serena connectivity, registry integrity, workspace state. Fixes search_tools and execute_code failures.
Diagnoses and fixes Claude Code setup/runtime issues like API authentication (Anthropic/Bedrock/Vertex), MCP server problems, and config errors using /doctor command, verbose mode, and bash diagnostics.
Tests and evaluates MCP server tools in Claude Code sessions. Use for auditing MCP configurations, validating tool quality, generating test cases, and analyzing tool redundancy.