GitStack Helper
GitStack Helper is a Python package designed to help developers manage and organize their Git branches and commit stacks more efficiently. It takes a description of the current branch state or a developer's intended changes as input and returns structured suggestions for branch naming, stacking strategies, or rebase workflows.
Features
- Simplifies complex version control tasks
- Provides structured suggestions for branch management
- Supports custom LLM integration
- Easy to use with a simple API
Installation
pip install gitstack_helper
Usage
Basic Usage
from gitstack_helper import gitstack_helper
response = gitstack_helper("I need to fix a bug in the login feature")
print(response)
Using a Custom LLM
You can use any LLM compatible with LangChain. Here are examples with different LLMs:
Using OpenAI
from langchain_openai import ChatOpenAI
from gitstack_helper import gitstack_helper
llm = ChatOpenAI()
response = gitstack_helper("I need to fix a bug in the login feature", llm=llm)
print(response)
Using Anthropic
from langchain_anthropic import ChatAnthropic
from gitstack_helper import gitstack_helper
llm = ChatAnthropic()
response = gitstack_helper("I need to fix a bug in the login feature", llm=llm)
print(response)
Using Google
from langchain_google_genai import ChatGoogleGenerativeAI
from gitstack_helper import gitstack_helper
llm = ChatGoogleGenerativeAI()
response = gitstack_helper("I need to fix a bug in the login feature", llm=llm)
print(response)
Using LLM7 API Key
By default, GitStack Helper uses the LLM7 API. You can pass your API key directly or via an environment variable.
Using Environment Variable
import os
from gitstack_helper import gitstack_helper
os.environ["LLM7_API_KEY"] = "your_api_key"
response = gitstack_helper("I need to fix a bug in the login feature")
print(response)
Passing API Key Directly
from gitstack_helper import gitstack_helper
response = gitstack_helper("I need to fix a bug in the login feature", api_key="your_api_key")
print(response)
Parameters
user_input(str): The user input text to process.llm(Optional[BaseChatModel]): The LangChain LLM instance to use. If not provided, the default ChatLLM7 will be used.api_key(Optional[str]): The API key for LLM7. If not provided, the environment variableLLM7_API_KEYwill be used.
Rate Limits
The default rate limits for LLM7 free tier are sufficient for most use cases of this package. If you need higher rate limits, you can pass your own API key via the environment variable LLM7_API_KEY or directly in the function call.
Getting an API Key
You can get a free API key by registering at LLM7.
Issues
If you encounter any issues, please report them on the GitHub issues page.
Author
- Eugene Evstafev
- Email: hi@eugene.plus
- GitHub: chigwell
Metadata
Release files for gitstack-helper 2025.12.21100148
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gitstack_helper-2025.12.21100148.tar.gz | 5.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gitstack_helper-2025.12.21100148-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.9 kB
Release files / gitstack_helper-2025.12.21100148.tar.gz
| Download URL | gitstack_helper-2025.12.21100148.tar.gz |
|---|---|
| Size | 5.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e9555c3969adfa37634d73b6ac3f9ed1b727b7409a323d8857b953f9ad047479
|
|
BLAKE2b-256 checksum How to use checksums |
0fa522a9e5955643b0bd4fc2d8500cd36fe9a836ce0d2a576ab783492698b454
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.11
|
Release files / gitstack_helper-2025.12.21100148-py3-none-any.whl
| Download URL | gitstack_helper-2025.12.21100148-py3-none-any.whl |
|---|---|
| Size | 5.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d64dab0fb330833f3193f0410542313cbdd83c3b9fa0859719cc48428c43e6ad
|
|
BLAKE2b-256 checksum How to use checksums |
b0ec84e64d01e6bd9439a4ff9031b1b2227f36975f625e4aea49e629f785fbaf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.11
|