Faits: A. Par jugement du 29 juillet 2008, le Tribunal correctionnel de l'arrondissement de l'Est Vaudois a condamné A._, ressortissant sénégalais, à une peine privative de liberté de dix mois, sous déduction de cinquante neuf jours de détention préventive, notamment pour vol, brigandage, violence ou menaces contre les autorités et violation grave de la LCR. Le tribunal a ordonné son arrestation immédiate en raison du risque de fuite. Le condamné a recouru contre ce jugement par déclaration du 30 juillet 2008. Le lendemain, il a formé une demande de mise en liberté. B. Par décision du 5 août 2008, le Président de la Cour de cassation pénale du Tribunal cantonal vaudois a rejeté la demande de mise en liberté. Même contesté, le jugement de condamnation permettait d'admettre l'existence de charges suffisantes. L'intéressé n'avait ni domicile, ni famille, ni autorisation de séjour en Suisse; sa famille demeurait en France; le risque de fuite était d'autant plus concret que le jugement du 29 juillet 2008 le condamnait à une peine nettement plus sévère que les décisions précédentes rendues à son encontre. Le risque de réitération a également été retenu, A._ ayant déjà été condamné à six reprises en Suisse et en France. Par arrêt du 21 août 2008, la Cour de cassation pénale a confirmé cette décision, pour les mêmes motifs. C. A._ forme un recours en matière pénale; il conclut à sa mise en liberté, subsidiairement au renvoi de la cause à la cour cantonale afin qu'elle ordonne sa mise en liberté, éventuellement assortie du dépôt de ses papiers d'identité et de son permis de séjour en France. Il demande l'assistance judiciaire. La Cour de cassation se réfère aux considérants de son arrêt. Le Parquet conclut au rejet du recours.