I would like the Agent interface to allow the application to control the ThreadPoolExecutor used to execute tool calls. The current implementation directly creates a ThreadPoolExecutor for each tool ...