revive non ui client