arturbac / kdevcxx_with_ai

KDevelop and Kate plugins using OpenAI API to assist with code development
MIT License
10 stars 3 forks source link
ai ai-development cpp cpp-all deep-learning ide kate kde kde-development kdevelop kdevelop-plugin linux-development machine-learning software-development

KDevCXX with AI, Kate with AI

KDevCXX with AI is an innovative extension for the KDevelop IDE and Kate Editor, focusing on integrating AI-powered features specifically designed to enhance C++ development. This project leverages the latest advancements in machine learning and natural language processing to provide KDevelop users with intelligent coding assistance, including code completion, documentation lookup, and advanced code analysis.

Features

Planned Features

Getting Started

Prerequisites

Required System Packages

Install these packages using your system's package manager.

External Libraries Managed with CPM

This project uses CPM for automatic management of external libraries:

KDE Dependencies

KDE frameworks are utilized, requiring:

Ensure KDE development libraries and the ECM package are installed.

Installation Instructions

Follow these steps to install and configure KDevCXX with AI:

1. Clone the Repository

Start by cloning the repository to your local machine using the following command:

git clone https://github.com/arturbac/kdevcxx_with_ai.git

2. Build the Plugin

Use CMake to build the plugin with the following command:

cmake --workflow --preset="clang-release"

kate plugin will be build and if kdevplatform development headers and libraries are present then kdevelop plugin will be build also.

3. Install the Plugin

Use provided install_kdeveplugin.sh and or install_kateplugin.sh scripts it will determine location of kdevplatform plugins and qt/plugins for texteditor and install plugins into that directories

4. Configure OpenAI Key

Upon launching KDevelop, a modal dialog will appear, prompting you to review and update your settings in KDevelop settings dialog. For kate You need to go Kate settings and enable plugin and edit them. Note that ai settings are shared between kate and kdevelop, so You only need to do it once.

Usage

After installing the plugin, restart KDevelop/Kate. The AI features should now be seamlessly integrated into your IDE.

To use the AI functionality within the editor, follow these steps:

  1. Write your AI request in the editor, preceded by [AI Do something for me with that code], followed by the code/text you wish AI to analyze or modify.

  2. Highlight the request and the target code.

  3. Select from Drop down menu Process with AI to activate the AI processing of selected request and code in format [AI perform command ].

Example use

Bez nazwy

Implementing unit tests example. note that it takes into effect my system rules specifying explicitly to use bost-ext/ut and You can change this in settings

{
   "api_key": "******************",
   "cxx_rules": "You are great c++23 coder,... if implementing  unit tests You use boost-ext/ut ...",
   "version": 1
}

Bez nazwy2

Or asking for help with explanations

obraz

or example refactoring of very old code

Bez nazwy

And perhaps the most weird use of AI i did with code, optimise ai query with ai for ai

obraz

Or some crazy s...

obraz

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Acknowledgments