rewrite plugins and add DCD code completion