/auto-dev

πŸ§™β€AutoDev: The AI-powered coding wizard with multilingual support 🌐, auto code generation πŸ—οΈ, and a helpful bug-slaying assistant 🐞! Customizable prompts 🎨 and a magic Auto Dev/Testing/Document/Agent feature πŸ§ͺ included! πŸš€

Primary LanguageKotlinMozilla Public License 2.0MPL-2.0

logo

AutoDev

Build Version Downloads Powered By

πŸ§™β€AutoDev: The AI-powered coding wizard with multilingual support 🌐, auto code generation πŸ—οΈ, and a helpful bug-slaying assistant 🐞! Customizable prompts 🎨 and a magic Auto Dev/Testing/Document/Agent feature πŸ§ͺ included! πŸš€

Quick Start β†’

DevIns β€” AI Agent language for AutoDevelopment β†’ which you can use follow syntax as bridges for Human-AI-IDE:

/write:src/main/java/com/example/Controller.java#L1-L12
```java
public class Controller {
    public void method() {
        System.out.println("Hello, World!");
    }
}
```

AutoDev Architecture

Here is the AutoDev architecture:

AutoDev Feature Overview

Overview

Features:

  • Languages support: Java, Kotlin, JavaScript/TypeScript, Rust, Python, Golang, C/C++/OC, or others...
  • Auto development mode.
    • AutoCRUD(Spring frameworkοΌ‰. With DevTi Protocol (like devti://story/github/1102) will auto generate Model-Controller-Service-Repository code.
    • AutoSQL. Context-aware SQL generation.
    • AutoPage (React). Context-aware Web Page generation.
    • AutoArkUI (Mobile UI framework). Auto generate HarmonyOS ArkUI code.
    • AutoTesting. create unit test intention, auto run unit test and try to fix test.
    • AutoDocument. Auto generate document.
  • Copilot mode
    • AutoDev will help you find bug, explain code, trace exception, generate commits, and more.
    • Pattern specific. Based on your code context like (Controller, Service import), AutoDev will suggest the best code to you.
    • Related code. Based on recent file changes, AutoDev will call calculate similar chunk to generate the best code.
  • Chat mode
    • Chat with AI.
    • Chat with selection code.
    • Chat with code context-aware (To be implemented).
  • Customize.
    • Custom specification of prompt. For example, Controller, Service, Repository, Model, etc.
    • Custom intention action. You can add your own intention action.
    • Custom LLM Server. You can customize your LLM Server in Settings -> Tools -> AutoDev
    • Custom Living documentation.
    • Team prompts. Customize your team prompts in codebase, and distribute to your team.
    • Custom AI Agent. You can integrate your own AI Agent into AutoDev.
    • Prompt override. You can override AutoDev's prompt in your codebase.
  • Infrastructure / DevOps
    • CI/CD support. AutoDev will auto generate CI/CD config file.
    • Dockerfile support. AutoDev will auto generate Dockerfile.
  • DevIns language
    • Executable AI Agent language.
  • Built-in LLM Fine-tune

AutoDev fine-tune models:

download from HuggingFace

name model download (HuggingFace) finetune Notebook model download (OpenBayes)
DeepSeek 6.7B AutoDev Coder finetune.ipynb AutoDev Coder

Language Features

Language Support

We follow Chapi AST analysis engine for language support tier.

Features Java Python Go Kotlin JS/TS C/C++ C# Scala Rust ArkTS
Chat Language Context βœ… βœ… βœ… βœ… βœ… βœ… βœ… βœ…
Structure AST βœ… βœ… βœ… βœ… βœ…
Doc Generation βœ… βœ… βœ… βœ… βœ… βœ… βœ…
Precision Test Generation βœ… βœ… βœ… βœ… βœ… βœ…
Precision Code Generation βœ… βœ…
AutoCRUD βœ… βœ…

Extensions

see in exts

Demo

DevIns Language demo (Bilibili) - δΈ­ζ–‡

Watch the video

Video demo (YouTube) β€” English

Watch the video

Video demo (Bilibili) - δΈ­ζ–‡

Watch the video

Useful Links

Who is using AutoDev?

Welcome to add your company here.

  • Thoughtworks, a leading technology consultancy.

License

Known License issues: JetBrain plugin development is no walk in the park! Oops, we cheekily borrowed some code from the JetBrains Community version and the super cool JetBrains AI Assistant plugin in our codebase. But fret not, we are working our magic to clean it up diligently! πŸ§™β€β™‚οΈβœ¨.

Those codes will be removed in the future, you can check it in src/main/kotlin/com/intellij/temporary, if you want to use this plugin in your company, please remove those codes to avoid any legal issues.

This code is distributed under the MPL 2.0 license. See LICENSE in this directory.