In a skillet, heat the oil. Add the garlic and cook over low heat until fragrant, 2 minutes. Add the shallots and cook over moderate heat, stirring, until softened, 4 minutes.
In a bowl, toss the tomatoes with the garlic, shallots, basil and sage. Season with salt.
In a pot of boiling salted water, cook the pasta until al dente; drain and transfer to the large bowl. Toss well with the butter; serve.