fix: tools more async with buffering. if end is earlier, process is waitin