CI framwork