I think you’re just a couple of typos and a with torch.enable_grad(): away from a working function:
class my_function(torch.autograd.Function):
    @staticmethod
    def forward(ctx, x):
        ctx.save_for_backward(x)
        return x
    @staticmethod
    def backward(ctx, grad_output):
        (x,) = ctx.saved_tensors
        print('x.requires_grad', x.requires_grad)
        with torch.enable_grad():
            x_clone = x.clone().detach().requires_grad_(True)
            aux_loss = x_clone.sum()
            aux_loss.backward()
        return grad_output + x_clone.grad

Personally, I’d probably use torch.autograd.grad rather than backward, but that’s me.
Best regards
Thomas