Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit

New behavior changes a lot in terms of synthetic members and ordering,
it is infeasible to adjust test processor logic to get tests aligned.

Git stats


Failed to load latest commit information.
Latest commit message
Commit time
August 28, 2023 02:34
August 31, 2021 16:34
July 20, 2023 16:42
September 26, 2023 21:07
September 13, 2023 04:59
September 18, 2020 17:05
February 2, 2023 16:25
August 31, 2021 16:34

Kotlin Symbol Processing API

Welcome to KSP!

Kotlin Symbol Processing (KSP) is an API that you can use to develop lightweight compiler plugins. KSP provides a simplified compiler plugin API that leverages the power of Kotlin while keeping the learning curve at a minimum. Compared to KAPT, annotation processors that use KSP can run up to 2x faster.

Most of the documentation of KSP can be found on Here are some handy links:

Feedback and Bug Reporting

Please let us know what you think about KSP by filing a Github issue or connecting with our team in the #ksp channel in the Kotlin Slack workspace!

If you are interested in sending PRs, please also check out the Contributor guide.

Ongoing and Future Works

Here are some planned features that have not yet been completely implemented:

  • Support new Kotlin compiler
  • Improve support to multiplatform. E.g., running KSP on a subset of targets / sharing computations between targets
  • Improve performance. There are a bunch of optimizations to be done!
  • Make the IDE aware of the generated code
  • Keep fixing bugs!