Den 26-åriga tidigare Swansea spelare har varit på lån på Villa Park sedan januari, poäng tre mål i 11 framträdanden för FA Cup finalisterna.
"Detta är den lyckligaste jag har varit i en lång tid," sade Sinclair, som började bara tre gånger för Manchester City.
"Jag tror att det kommer att hjälpa mig att prestera bättre och driva på för denna stora klubb under de kommande åren."
Sinclair gick med i Manchester City 2012 för £ 8m, men skickades ut på lån till West Brom 2013.
Han började sin karriär på Bristol Rovers innan han gick med i Chelsea 2005, men spelade bara fem gånger för Blues på fem år och tillbringade sex perioder på lån.
En före detta England Under 21 internationella, flyttade han till Swansea för en initial £ 500.000 2010.
Aston Villa har undertecknat Manchester City ytter Scott Sinclair på ett fyraårigt kontrakt för en hemlig avgift.