刘昌,字公明,汴州开封人。善骑射。天宝末, 从河南防御使张介然讨安禄山。史朝义兵围宋州,城中食尽且降。昌说刺史李岑曰李光弼在河阳江淮足兵势必来援今廪麹尚多若屑以食可支二十日则救至岑听之。昌乃被铠登城,以忠义谕贼,贼畏不敢攻。俄而光弼援兵至,贼夜溃。
刘玄佐领宣武节度使,擢昌左厢兵马使。李希烈取汴,玄佐别将高翼提精卒守襄邑,城陷,翼赴水死,江淮大震。昌以兵三千守宁陵,希烈众五万攻之,昌掘堑以遏地道,相拒凡四十余日,贼数败,乃解围去。更攻陈州,昌从玄佐以浙西兵三万救之。西去陈五十里,昌薄其军,大战破之,禽贼将翟曜,希烈奔还蔡州。
贞元三年入朝,诏以宣武兵八千北出五原。士卒有逗留沮事者,斩三百人乃行,举军慑伏。岁余,改四镇、北庭行营兼泾原节度。七年,城平凉,开地二百里,扼弹筝峡。又西筑保定,捍青石岭,凡七城二堡,旬日就。城平凉,当劫盟后,将士骸骨不藏,昌始命瘗之。夕梦若诣昌厚谢者,昌具以闻。德宗下诏哀痛,出衣数百称,官为赛具,敛以棺槥,分建二冢,大将曰旌义冢,士曰怀忠冢,葬浅水原,诏翰林学士为铭识其所。昌盛陈兵卫,具牢醴, 率诸将素服临之。边兵莫不感泣。昌在边凡十五年,身率士垦田,三年而军有羡食,兵械锐新,边障妥宁。及感疾,诏赴京师。未行,卒,年六十五,赠司空。
(节选自《新唐书·列传九十五》,有删改)