Free agent starting pitcher Francisco Liriano has reportedly agreed to a three-year deal to stay with the Pirates.