Born in Aubervilliers, France, Kashi made his first team debut for Châteauroux on 15 April 2008, playing as a starter in the team's 2–0 league loss to Reims.[2] In the summer of 2008, Kashi signed a one-year professional contract with Châteauroux.[3]
On 18 July 2015, Kashi joined Charlton Athletic.[4] He made his debut for Charlton against Queens Park Rangers on 8 August 2015, and scored his first goal for the club against Peterborough United in the League Cup on 25 August 2015.[5] At the end of the 2017–18 season, Charlton entered into contract talks with Kashi.[6] However, on 19 June 2018, caretaker manager for Charlton Athletic Lee Bowyer stated that Kashi would not be renewing his contract with the club.[7]
On 16 July 2018, Kashi joined Troyes on a two-year deal.[8] He was loaned out in January 2019 to Oxford United of EFL League One until the end of the season.[9] He returned to his parent club at the end of the season, having made 12 appearances (11 of them in League One) without scoring.[10] After his return, he was relegated to the Troyes' reserve team due to a conflict with the club.[citation needed]
Born in France, Kashi holds French and Algerian nationality and was therefore eligible to represent both nation.[12] In an interview in 2009, he indicated that he would prefer to represent Algeria in international competition.[13] In 2015, he was part of the Algeria national team at the 2015 Africa Cup of Nations, where he made his international debut in the final group stage match against Senegal.[14]