[FEATURE REQUEST] : add an ability to the plugin so it is able to call the remote github API
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
Can you give a more detailed example/explanation?
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)
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?
For extra inspiration, see also https://github.com/cyclotruc/gitingest