A command-line tool leveraging OpenAI's GPT for intelligent project management within a Git-integrated shell.
Project description
Codebuddy
Codebuddy is an advanced command-line tool designed for executing user queries using OpenAI's GPT models within a Git-integrated shell environment. It provides intelligent automation of project file and configuration management, enabling efficient and dynamic interaction with projects.
Table of Contents
Features
- Interactive Shell: Engage in an interactive shell environment with Git-based rollback capabilities to ensure safe modifications.
- AI-Driven Query Processing: Leverage OpenAI's GPT models to intelligently handle user queries and automate project management tasks.
- Seamless File Management: Facilitates project updates, file modifications, and configuration adjustments in response to user interactions.
- Robust Command Execution: Securely execute system commands as part of an integrated workflow.
Installation
Codebuddy requires Python 3.8 or later. Install using Poetry with:
poetry install
Usage
Enter the interactive shell or execute direct queries via:
poetry shell
codebuddy "<your request here>"
Ensure your OpenAI API key is configured as an environment variable.
Architecture
Codebuddy features a robust, modular architecture:
main.py
: Serves as the entry point for the interactive shell and direct query execution.openai_client.py
: Manages integration with the OpenAI API to process user queries and generate actionable responses.file_handler.py
: Handles dynamic file operations and manages project files.command_executor.py
: Facilitates execution of system commands with necessary checks.transaction_handler.py
: Provides Git-based transaction management to aid in safe rollbacks.
Dependencies
Managed via Poetry and specified within pyproject.toml
. Key dependencies include:
- openai
- PyYAML
Development
Install additional development tools using:
poetry install --with dev
Use black
for formatting, flake8
for style checks, mypy
for type checks, and isort
for organizing imports.
Contributing
Contributions are encouraged. Fork, implement improvements, and submit a pull request with test coverage for new features.
License
Licensed under MIT License. See LICENSE for more information.
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
File details
Details for the file pycodebuddy-0.0.1.tar.gz
.
File metadata
- Download URL: pycodebuddy-0.0.1.tar.gz
- Upload date:
- Size: 8.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b0b9a41c9cb22573eb86afd8ac0eba6656dfc48d6ace2e0b0a146f2ba7b2093 |
|
MD5 | 749b65f597ad03faa82d5b30a1f6b9f2 |
|
BLAKE2b-256 | 54fa01fb47c9947c5d6a82f81f05a37a3575eb12940cbad3e9cb949a5a9b48e2 |
Provenance
The following attestation bundles were made for pycodebuddy-0.0.1.tar.gz
:
Publisher:
release.yml
on cemizm/codebuddy
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
pycodebuddy-0.0.1.tar.gz
- Subject digest:
0b0b9a41c9cb22573eb86afd8ac0eba6656dfc48d6ace2e0b0a146f2ba7b2093
- Sigstore transparency entry: 149970815
- Sigstore integration time:
- Predicate type:
File details
Details for the file pycodebuddy-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: pycodebuddy-0.0.1-py3-none-any.whl
- Upload date:
- Size: 10.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a66a1dbe03d72178b7f460838b03d9d3c799ccf448e48e1e5cc3a09950bf85b7 |
|
MD5 | cbf8f35ef45b562b7f79e66d4f2dad24 |
|
BLAKE2b-256 | d9d28a3546e890de94027ae5873d16715aa38a0d4233add368f650cae87e9478 |
Provenance
The following attestation bundles were made for pycodebuddy-0.0.1-py3-none-any.whl
:
Publisher:
release.yml
on cemizm/codebuddy
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
pycodebuddy-0.0.1-py3-none-any.whl
- Subject digest:
a66a1dbe03d72178b7f460838b03d9d3c799ccf448e48e1e5cc3a09950bf85b7
- Sigstore transparency entry: 149970817
- Sigstore integration time:
- Predicate type: