DevoxxGenieIDEAPlugin icon indicating copy to clipboard operation
DevoxxGenieIDEAPlugin copied to clipboard

[FEATURE REQUEST] : add an ability to the plugin so it is able to call the remote github API

Open samkerr4coding opened this issue 1 year ago • 4 comments

To be discussed but wouldn'it be a nice feature if the plugin would be able to read the remote github repository and report pull request etc (read mode) so it can give informations to user

samkerr4coding avatar Dec 22 '24 16:12 samkerr4coding

Can you give a more detailed example/explanation?

stephanj avatar Dec 23 '24 07:12 stephanj

i may be too ambitious here but i'm currently testing some copilot features and in the GitHub website or GitHub's desktop applications it is possible to generate pull requests summary for example.

As far as i know function calling is supported by langchain4j i was wondering if it would be possible to try a POC with that feature : in a first iteration try to get the plugin able to read github status, PR, branches in a word be able to make remote function calls on the github API

First of all : would it make sense? and in second in the state of the art is it possible or even not too difficult to design? (the python version has a set of tools/function calls far more advanced for github they have this one but i dont know langchain4j well enough)

samkerr4coding avatar Dec 23 '24 09:12 samkerr4coding

I would suggest to first create a Langchain4J GitHub project which supports these features, this way everybody can use/enjoy them. Once available we could easily integrate them within the plugin using a / command, for example: "/github get issues"

Possible Github command actions to support :

  • Get Issues
  • Get Issue
  • Comment on Issue
  • List open pull requests (PRs)
  • Get Pull Request
  • Overview of files included in PR
  • Create Pull Request
  • List Pull Requests' Files
  • Create File
  • Read File
  • Update File
  • Delete File
  • Overview of existing files in Main branch
  • Overview of files in current working branch
  • List branches in this repository
  • Set active branch
  • Create a new branch
  • Get files from a directory
  • Search issues and pull requests
  • Search code
  • Create review request

Each /github action sentence could also have an "LLM interpretator" so when someone types "/github list me all the issues" it converts it to "/github get issues".

BUT the more important question is, is this something people would use? Is it worth the effort?

stephanj avatar Dec 24 '24 09:12 stephanj

For extra inspiration, see also https://github.com/cyclotruc/gitingest

stephanj avatar Dec 24 '24 14:12 stephanj