Civilian protest is a complex phenomenon where large numbers of protestors participate in demonstrations. It involves multiple groups, various trigger events and social reinforcement where groups excite each other. We present a graphical generative model in which a baseline spontaneous process may undergo excitation due to external triggers, as well as inter-group contagion. We define a trigger-conditional multivariate Hawkes process, where excitation is conditional on the presence of active triggers. An arrival in this process corresponds to a batch of protestors, and random marks on the arrival serve to capture both the excitation-related parameters as well as the size of protest. The batch arrival intensity and the batch size, while mutually independent, exhibit respective history-dependence due to memory that is modeled in the excitation phenomena. We present a simulation algorithm for generating sample paths, and results estimating likelihood of large-scale protest on a realistic model.