@mingkangpan Annotation processing API (JSR 269) is made for Java, and annotation processors do not know anything about Kotlin. So Kotlin has to make the “Java view” for the Kotlin classes. In terms of kapt, these Java views are called “stubs”.
What Kotlin does spending 13s is that it compiles your .kt files, except it skips declaration bodies (and generate methods with empty bodies), so the stub generation take less time than normal compilation (almost 36s in your case).
You can see the stub files in your build directory:
build/tmp/kapt3/stubs
.