元嘉中,为扬州从事,历安北镇军、北中郎参军、南中郎主簿。宋孝武帝举义,转记室参军。及即位,除尚书吏部郎、太子右卫率、侍中,免官。起为廷尉、太子中庶子,领右军将军,出为辅国将军、西阳王刘子尚北中郎长史、广陵太守,行兖州事,仍为永嘉王刘子仁冠军长史。大明初,复为侍中,领射声校尉,封兴平县子,免。寻为西阳王刘子尚抚军长史,又为中庶子,领左军将军,出补豫章太守,复还为侍中领长水校尉,迁左卫将军,加给事中,转吏部尚书出为海陵太守。前废帝即位,复为吏部尚书,徙右卫将军,复为侍中,领骁骑将军。明帝即位,转司徒左长史、冠军将军、南东海太守,迁领军将军,徙中书令,转尚书仆射,领吏部,加中书令。又领丹阳尹,徙右仆射,迁尚书令。后废帝即位,加卫将军,授中书监、开府仪同三司,领司徒。宋顺帝即位,出镇石头,谋攻萧道成,事泄,被斩。有集十一卷。