A simple CLI tool to run custom commands
Project description
Natural Git Command Line Tool
ngit is a simple natural language based git command line tool which enables users to use git in natural language. The package is built on top of git and GitHub CLI and is intended as a demonstration of edge device function calling AKA API calling using LLM.
Features
- This is still in development, No stable release is available yet.
- You can run the ngit(Natural git) command like:
ngit "Add all files to staging area">> this is just translate the command, and provide the command for editngit "Add all files to staging area" -e>> this will execute the command without asking for edit
- You can run the mgit(Machine git) command like:
- mgit git for example:
mgit git rename_branch develop development - You can see all available commands by
mgit --helpmgit git --help
- Available commands:
- add Add files to staging
- add_remote Add a new remote
- checkout Checkout to a branch
- clone Clone a git repo
- commit Commit with a message
- config_email Configure Git global email
- config_username Configure Git global username
- create_branch Create a new branch
- delete_branch Delete a branch
- init Initialize a new git repo
- list_remotes List all remotes
- pull Pull changes from remote
- push Push changes to remote
- remove_remote Remove a remote
- rename_branch Rename a branch
- reset_last_commit Remove the last commit (soft/mixed/hard)
- status Show git status
- unstage Remove files from staging
- mgit git for example:
Installation
You can install the package via PyPI or from source.
Install from PyPI
pip install ngit-cli
for local installation of the package just run following from root directory
pip install .
Install from Source (GitHub)
git clone https://github.com/faerber-lab/ngit-cli.git
cd ngit-cli
pip install .
Usage
After installation, you can use ngit-cli using natural english to use git and GitHub from terminal
Example:
ngit "Change the develop branch name to development"
mgit git status
Dependencies
- git
- GitHub CLI
- torch
- click
- prompt_toolkit
- yaspin
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ngit_cli-0.0.1.tar.gz.
File metadata
- Download URL: ngit_cli-0.0.1.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4bffdc41af40d626067da96e5e363828c94f8583b53f1d8c8e93e7c21fe7afe1
|
|
| MD5 |
08686fb9387d58f82ee68c3419fada0d
|
|
| BLAKE2b-256 |
652ccf25a28bb1b0a4e6a928e1cc7e899ef118b48267c8502fac5302356988eb
|
File details
Details for the file ngit_cli-0.0.1-py3-none-any.whl.
File metadata
- Download URL: ngit_cli-0.0.1-py3-none-any.whl
- Upload date:
- Size: 23.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c2c813f5083d9e5819cb45dba3d78ed5bbb06e651976fae87915bdd0a6bd68c
|
|
| MD5 |
09d6a7db63a1ce6791853c20ec005de9
|
|
| BLAKE2b-256 |
de46721ebbd37e2f77ff8c3b0b4397ba45050cb2f83b4190d6a4043e5a4bdb78
|