Each bonus skill costs between 10 and 100 lingots and some skills such as the Christmas bonus skill may be periodical and are only available for a limited time every year. The user has to be past a certain row in their tree to be able to unlock bonus skills.
Each team of volunteers managing a course is responsible for the creation, improvement and potentially deletion of bonus skills for the course. That is why, for example, the English for Chinese speakers course has a Chinese Holidays bonus skill.
The teams can create as many bonus skills as they want. However, as of 09 June 2016, current technical issues prevent the release of any change such as improvements or deletions. That is why most of courses either have no bonus skills or only have the original three ones (Flirting, Idioms, and Christmas) created by Duolingo staff when they were taking care of the content of the courses.