commitai 0.1.15__tar.gz → 0.1.16__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,119 @@
1
+ Metadata-Version: 2.1
2
+ Name: commitai
3
+ Version: 0.1.16
4
+ Summary: Commitai helps you generate git commit messages using AI
5
+ Home-page: https://github.com/lguibr/commitai
6
+ Author: Luis Guilherme
7
+ Author-email: lgpelin92@gmail.com
8
+ Project-URL: Bug Tracker, https://github.com/lguibr/commitai/issues
9
+ Project-URL: Documentation, https://github.com/lguibr/commitai/blob/main/README.md
10
+ Project-URL: Source Code, https://github.com/lguibr/commitai
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Operating System :: OS Independent
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.6
17
+ Classifier: Programming Language :: Python :: 3.7
18
+ Classifier: Programming Language :: Python :: 3.8
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Requires-Python: >=3.6
21
+ Description-Content-Type: text/markdown
22
+ Requires-Dist: langchain
23
+ Requires-Dist: click
24
+ Requires-Dist: langchain-community
25
+ Requires-Dist: langchain-anthropic
26
+ Requires-Dist: langchain-openai
27
+ Requires-Dist: setuptools
28
+
29
+ # CommitAi - Your AI-Powered Commit Assistant
30
+
31
+ [![CI](https://github.com/lguibr/commitai/workflows/CI/badge.svg)](https://github.com/lguibr/commitai/actions)
32
+ [![codecov](https://codecov.io/gh/lguibr/commitai/graph/badge.svg?token=MXZKCXO6LA)](https://codecov.io/gh/lguibr/commitai)
33
+ [![PyPI](https://img.shields.io/pypi/v/CommitAi.svg)](https://pypi.org/project/CommitAi/)
34
+ [![Python Version](https://img.shields.io/pypi/pyversions/CommitAi.svg)](https://pypi.org/project/CommitAi/)
35
+ [![License](https://img.shields.io/pypi/l/CommitAi.svg)](https://github.com/lguibr/CommitAi/blob/main/LICENSE)
36
+
37
+ **CommitAi** simplifies the Git commit message creation process by leveraging AI technologies, including GPT-4 and Claude. Designed for developers who value clarity and precision in commit histories, **CommitAi** offers a streamlined workflow that transforms your staged changes and high-level explanations into informative commit messages. Enhance your project documentation and streamline your development process with commit messages that truly reflect your changes.
38
+
39
+ ## Demo
40
+
41
+ ![CommitAi Demo](./assets/commitaai.gif)
42
+
43
+ This demo GIF shows CommitAi in action, demonstrating how it generates a commit without any additional input, using Claude 3 Opus.
44
+
45
+ ## Features
46
+
47
+ - **Intelligent Commit Generation**: Leverages state-of-the-art AI models to generate meaningful commit messages from your changes.
48
+ - **Pre-commit Checks**: Automatically runs configured pre-commit hooks to ensure quality and consistency before generating messages.
49
+ - **Template Support**: Utilizes both global and repository-specific commit message templates to maintain a consistent style across your projects.
50
+ - **AI Model Integration**: Supports multiple AI models, including GPT-4 by OpenAI and Claude by Anthropic, ensuring versatility in natural language processing capabilities.
51
+
52
+ ## Getting Started
53
+
54
+ ### Prerequisites
55
+
56
+ - Python 3.6 or later
57
+ - API keys for GPT-4 and Claude, as required
58
+
59
+ ### Installation
60
+
61
+ Install **CommitAi** directly from PyPI:
62
+
63
+ ```bash
64
+ pip install commitai
65
+ ```
66
+
67
+ ### Configuration
68
+
69
+ #### API Keys
70
+
71
+ Set the necessary API keys as environment variables:
72
+
73
+ ```bash
74
+ export OPENAI_API_KEY="your_openai_api_key"
75
+ export ANTHROPIC_API_KEY="your_anthropic_api_key"
76
+ ```
77
+
78
+ #### Commit Templates
79
+
80
+ Set a global commit template environment variable:
81
+
82
+ ```bash
83
+ export TEMPLATE_COMMIT="My global custom template: {message}"
84
+ ```
85
+
86
+ Or, create a repository-specific template using:
87
+
88
+ ```bash
89
+ commitai-create-template "My repository-specific template: {message}"
90
+ ```
91
+
92
+ This creates a hidden template file within the `.git` directory of your repository.
93
+
94
+ ## Usage
95
+
96
+ To generate a commit message, provide a high-level explanation of your changes:
97
+
98
+ ```bash
99
+ commitai "This is a high-level explanation of my commit"
100
+ ```
101
+
102
+ #### Options
103
+
104
+ - `-a, --add`: Stage all changes before generating the commit message.
105
+ - `-c, --commit`: Automatically create the commit using the generated message.
106
+ - `-t, --template`: Specify a commit template. Defaults to the global template if available.
107
+ - `-m, --model`: Choose the AI model (`gpt-4` by default).
108
+
109
+ ### Additional Commands
110
+
111
+ - `commitai-create-template`: Set a custom template specific to your repository.
112
+
113
+ ## Contributing
114
+
115
+ Contributions are welcome! Feel free to fork the repository, push your changes to a branch, and open a pull request. For bugs, questions, or feature requests, please open an issue through the GitHub issue tracker.
116
+
117
+ ## License
118
+
119
+ **CommitAi** is open-source software licensed under the MIT License. See the [LICENSE](https://github.com/lguibr/CommitAi/blob/main/LICENSE) file for more details.
@@ -0,0 +1,91 @@
1
+ # CommitAi - Your AI-Powered Commit Assistant
2
+
3
+ [![CI](https://github.com/lguibr/commitai/workflows/CI/badge.svg)](https://github.com/lguibr/commitai/actions)
4
+ [![codecov](https://codecov.io/gh/lguibr/commitai/graph/badge.svg?token=MXZKCXO6LA)](https://codecov.io/gh/lguibr/commitai)
5
+ [![PyPI](https://img.shields.io/pypi/v/CommitAi.svg)](https://pypi.org/project/CommitAi/)
6
+ [![Python Version](https://img.shields.io/pypi/pyversions/CommitAi.svg)](https://pypi.org/project/CommitAi/)
7
+ [![License](https://img.shields.io/pypi/l/CommitAi.svg)](https://github.com/lguibr/CommitAi/blob/main/LICENSE)
8
+
9
+ **CommitAi** simplifies the Git commit message creation process by leveraging AI technologies, including GPT-4 and Claude. Designed for developers who value clarity and precision in commit histories, **CommitAi** offers a streamlined workflow that transforms your staged changes and high-level explanations into informative commit messages. Enhance your project documentation and streamline your development process with commit messages that truly reflect your changes.
10
+
11
+ ## Demo
12
+
13
+ ![CommitAi Demo](./assets/commitaai.gif)
14
+
15
+ This demo GIF shows CommitAi in action, demonstrating how it generates a commit without any additional input, using Claude 3 Opus.
16
+
17
+ ## Features
18
+
19
+ - **Intelligent Commit Generation**: Leverages state-of-the-art AI models to generate meaningful commit messages from your changes.
20
+ - **Pre-commit Checks**: Automatically runs configured pre-commit hooks to ensure quality and consistency before generating messages.
21
+ - **Template Support**: Utilizes both global and repository-specific commit message templates to maintain a consistent style across your projects.
22
+ - **AI Model Integration**: Supports multiple AI models, including GPT-4 by OpenAI and Claude by Anthropic, ensuring versatility in natural language processing capabilities.
23
+
24
+ ## Getting Started
25
+
26
+ ### Prerequisites
27
+
28
+ - Python 3.6 or later
29
+ - API keys for GPT-4 and Claude, as required
30
+
31
+ ### Installation
32
+
33
+ Install **CommitAi** directly from PyPI:
34
+
35
+ ```bash
36
+ pip install commitai
37
+ ```
38
+
39
+ ### Configuration
40
+
41
+ #### API Keys
42
+
43
+ Set the necessary API keys as environment variables:
44
+
45
+ ```bash
46
+ export OPENAI_API_KEY="your_openai_api_key"
47
+ export ANTHROPIC_API_KEY="your_anthropic_api_key"
48
+ ```
49
+
50
+ #### Commit Templates
51
+
52
+ Set a global commit template environment variable:
53
+
54
+ ```bash
55
+ export TEMPLATE_COMMIT="My global custom template: {message}"
56
+ ```
57
+
58
+ Or, create a repository-specific template using:
59
+
60
+ ```bash
61
+ commitai-create-template "My repository-specific template: {message}"
62
+ ```
63
+
64
+ This creates a hidden template file within the `.git` directory of your repository.
65
+
66
+ ## Usage
67
+
68
+ To generate a commit message, provide a high-level explanation of your changes:
69
+
70
+ ```bash
71
+ commitai "This is a high-level explanation of my commit"
72
+ ```
73
+
74
+ #### Options
75
+
76
+ - `-a, --add`: Stage all changes before generating the commit message.
77
+ - `-c, --commit`: Automatically create the commit using the generated message.
78
+ - `-t, --template`: Specify a commit template. Defaults to the global template if available.
79
+ - `-m, --model`: Choose the AI model (`gpt-4` by default).
80
+
81
+ ### Additional Commands
82
+
83
+ - `commitai-create-template`: Set a custom template specific to your repository.
84
+
85
+ ## Contributing
86
+
87
+ Contributions are welcome! Feel free to fork the repository, push your changes to a branch, and open a pull request. For bugs, questions, or feature requests, please open an issue through the GitHub issue tracker.
88
+
89
+ ## License
90
+
91
+ **CommitAi** is open-source software licensed under the MIT License. See the [LICENSE](https://github.com/lguibr/CommitAi/blob/main/LICENSE) file for more details.
@@ -0,0 +1,119 @@
1
+ Metadata-Version: 2.1
2
+ Name: commitai
3
+ Version: 0.1.16
4
+ Summary: Commitai helps you generate git commit messages using AI
5
+ Home-page: https://github.com/lguibr/commitai
6
+ Author: Luis Guilherme
7
+ Author-email: lgpelin92@gmail.com
8
+ Project-URL: Bug Tracker, https://github.com/lguibr/commitai/issues
9
+ Project-URL: Documentation, https://github.com/lguibr/commitai/blob/main/README.md
10
+ Project-URL: Source Code, https://github.com/lguibr/commitai
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Operating System :: OS Independent
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.6
17
+ Classifier: Programming Language :: Python :: 3.7
18
+ Classifier: Programming Language :: Python :: 3.8
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Requires-Python: >=3.6
21
+ Description-Content-Type: text/markdown
22
+ Requires-Dist: langchain
23
+ Requires-Dist: click
24
+ Requires-Dist: langchain-community
25
+ Requires-Dist: langchain-anthropic
26
+ Requires-Dist: langchain-openai
27
+ Requires-Dist: setuptools
28
+
29
+ # CommitAi - Your AI-Powered Commit Assistant
30
+
31
+ [![CI](https://github.com/lguibr/commitai/workflows/CI/badge.svg)](https://github.com/lguibr/commitai/actions)
32
+ [![codecov](https://codecov.io/gh/lguibr/commitai/graph/badge.svg?token=MXZKCXO6LA)](https://codecov.io/gh/lguibr/commitai)
33
+ [![PyPI](https://img.shields.io/pypi/v/CommitAi.svg)](https://pypi.org/project/CommitAi/)
34
+ [![Python Version](https://img.shields.io/pypi/pyversions/CommitAi.svg)](https://pypi.org/project/CommitAi/)
35
+ [![License](https://img.shields.io/pypi/l/CommitAi.svg)](https://github.com/lguibr/CommitAi/blob/main/LICENSE)
36
+
37
+ **CommitAi** simplifies the Git commit message creation process by leveraging AI technologies, including GPT-4 and Claude. Designed for developers who value clarity and precision in commit histories, **CommitAi** offers a streamlined workflow that transforms your staged changes and high-level explanations into informative commit messages. Enhance your project documentation and streamline your development process with commit messages that truly reflect your changes.
38
+
39
+ ## Demo
40
+
41
+ ![CommitAi Demo](./assets/commitaai.gif)
42
+
43
+ This demo GIF shows CommitAi in action, demonstrating how it generates a commit without any additional input, using Claude 3 Opus.
44
+
45
+ ## Features
46
+
47
+ - **Intelligent Commit Generation**: Leverages state-of-the-art AI models to generate meaningful commit messages from your changes.
48
+ - **Pre-commit Checks**: Automatically runs configured pre-commit hooks to ensure quality and consistency before generating messages.
49
+ - **Template Support**: Utilizes both global and repository-specific commit message templates to maintain a consistent style across your projects.
50
+ - **AI Model Integration**: Supports multiple AI models, including GPT-4 by OpenAI and Claude by Anthropic, ensuring versatility in natural language processing capabilities.
51
+
52
+ ## Getting Started
53
+
54
+ ### Prerequisites
55
+
56
+ - Python 3.6 or later
57
+ - API keys for GPT-4 and Claude, as required
58
+
59
+ ### Installation
60
+
61
+ Install **CommitAi** directly from PyPI:
62
+
63
+ ```bash
64
+ pip install commitai
65
+ ```
66
+
67
+ ### Configuration
68
+
69
+ #### API Keys
70
+
71
+ Set the necessary API keys as environment variables:
72
+
73
+ ```bash
74
+ export OPENAI_API_KEY="your_openai_api_key"
75
+ export ANTHROPIC_API_KEY="your_anthropic_api_key"
76
+ ```
77
+
78
+ #### Commit Templates
79
+
80
+ Set a global commit template environment variable:
81
+
82
+ ```bash
83
+ export TEMPLATE_COMMIT="My global custom template: {message}"
84
+ ```
85
+
86
+ Or, create a repository-specific template using:
87
+
88
+ ```bash
89
+ commitai-create-template "My repository-specific template: {message}"
90
+ ```
91
+
92
+ This creates a hidden template file within the `.git` directory of your repository.
93
+
94
+ ## Usage
95
+
96
+ To generate a commit message, provide a high-level explanation of your changes:
97
+
98
+ ```bash
99
+ commitai "This is a high-level explanation of my commit"
100
+ ```
101
+
102
+ #### Options
103
+
104
+ - `-a, --add`: Stage all changes before generating the commit message.
105
+ - `-c, --commit`: Automatically create the commit using the generated message.
106
+ - `-t, --template`: Specify a commit template. Defaults to the global template if available.
107
+ - `-m, --model`: Choose the AI model (`gpt-4` by default).
108
+
109
+ ### Additional Commands
110
+
111
+ - `commitai-create-template`: Set a custom template specific to your repository.
112
+
113
+ ## Contributing
114
+
115
+ Contributions are welcome! Feel free to fork the repository, push your changes to a branch, and open a pull request. For bugs, questions, or feature requests, please open an issue through the GitHub issue tracker.
116
+
117
+ ## License
118
+
119
+ **CommitAi** is open-source software licensed under the MIT License. See the [LICENSE](https://github.com/lguibr/CommitAi/blob/main/LICENSE) file for more details.
@@ -6,7 +6,7 @@ with open("README.md", "r") as fh:
6
6
  repo_url = "https://github.com/lguibr/commitai"
7
7
  setup(
8
8
  name="commitai",
9
- version="0.1.15",
9
+ version="0.1.16",
10
10
  author="Luis Guilherme",
11
11
  author_email="lgpelin92@gmail.com",
12
12
  packages=find_packages(),
commitai-0.1.15/PKG-INFO DELETED
@@ -1,97 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: commitai
3
- Version: 0.1.15
4
- Summary: Commitai helps you generate git commit messages using AI
5
- Home-page: https://github.com/lguibr/commitai
6
- Author: Luis Guilherme
7
- Author-email: lgpelin92@gmail.com
8
- Project-URL: Bug Tracker, https://github.com/lguibr/commitai/issues
9
- Project-URL: Documentation, https://github.com/lguibr/commitai/blob/main/README.md
10
- Project-URL: Source Code, https://github.com/lguibr/commitai
11
- Classifier: Development Status :: 3 - Alpha
12
- Classifier: Intended Audience :: Developers
13
- Classifier: License :: OSI Approved :: MIT License
14
- Classifier: Operating System :: OS Independent
15
- Classifier: Programming Language :: Python :: 3
16
- Classifier: Programming Language :: Python :: 3.6
17
- Classifier: Programming Language :: Python :: 3.7
18
- Classifier: Programming Language :: Python :: 3.8
19
- Classifier: Programming Language :: Python :: 3.9
20
- Requires-Python: >=3.6
21
- Description-Content-Type: text/markdown
22
- Requires-Dist: langchain
23
- Requires-Dist: click
24
- Requires-Dist: langchain-community
25
- Requires-Dist: langchain-anthropic
26
- Requires-Dist: langchain-openai
27
- Requires-Dist: setuptools
28
-
29
- # CommitAi - Commit Message AI
30
-
31
- [![CI](https://github.com/lguibr/commitai/workflows/CI/badge.svg)](https://github.com/lguibr/commitai/actions)
32
- [![codecov](https://codecov.io/gh/lguibr/commitai/graph/badge.svg?token=MXZKCXO6LA)](https://codecov.io/gh/lguibr/commitai)
33
- [![PyPI](https://img.shields.io/pypi/v/CommitAi.svg)](https://pypi.org/project/CommitAi/)
34
- [![Python Version](https://img.shields.io/pypi/pyversions/CommitAi.svg)](https://pypi.org/project/CommitAi/)
35
- [![License](https://img.shields.io/pypi/l/CommitAi.svg)](https://github.com/lguibr/CommitAi/blob/main/LICENSE)
36
-
37
- CommitAi is a command-line tool that helps you generate informative and relevant commit messages for your Git repositories using AI language models like GPT-4 and Claude. It analyzes your staged changes, combines them with a high-level explanation provided by you, and creates a commit message based on this information. Additionally, it supports custom commit message templates. This not only saves you time and effort but also ensures a consistent and meaningful commit history.
38
-
39
- ## Features
40
-
41
- - Automatically runs the repository's pre-commit hook (if it exists) before generating the commit message to avoid discarded commit costs.
42
- - Generates informative and relevant commit messages based on staged changes and user-provided explanations.
43
- - Supports custom commit message templates.
44
- - Integrates with AI language models like GPT-4 and Claude for intelligent commit message generation.
45
-
46
- ## Prerequisites
47
-
48
- - Python 3.x
49
- - API keys for the desired language models (e.g., OpenAI API key for GPT-4, Anthropic API key for Claude)
50
-
51
- ## Installation
52
-
53
- You can install commitai using pip:
54
-
55
- pip install commitai
56
-
57
- ## Configuration
58
-
59
- ### Environment Variables
60
-
61
- Before using commitai, you need to set the API key environment variables for the language models you want to use. For example:
62
-
63
- export OPENAI_API_KEY="your_openai_api_key"
64
- export ANTHROPIC_API_KEY="your_anthropic_api_key"
65
-
66
- You can also set the `TEMPLATE_COMMIT` environment variable to define a global template for your commit messages:
67
-
68
- export TEMPLATE_COMMIT="My global custom template: {message}"
69
-
70
- ### Template Configuration
71
-
72
- #### Creating a Template for the Repository
73
-
74
- You can create a custom template specific to the repository using the `create-template` command. This template will override the global template set in the `TEMPLATE_COMMIT` environment variable if present.
75
-
76
- commitai create-template "My repository-specific template: {message}"
77
-
78
- This command will create a hidden file inside the `.git` directory to store the template.
79
-
80
- ## Usage
81
-
82
- ### Generating Commit Messages
83
-
84
- commitai generate "This is a high-level explanation of my commit"
85
-
86
- - Use the `-a` or `--add` flag to stage all changes.
87
- - Use the `-c` or `--commit` flag to automatically create the commit.
88
- - Use the `-t` or `--template` flag for custom templates or utilize the `TEMPLATE_COMMIT` environment variable. If no template is provided, a default or global template will be used.
89
- - Use the `-m` or `--model` flag to specify the language model to use (default: `gpt-4`).
90
-
91
- ## Contributing
92
-
93
- We welcome contributions to the commitai project! Please feel free to submit issues, feature requests, or pull requests.
94
-
95
- ## License
96
-
97
- This project is released under the MIT License.
commitai-0.1.15/README.md DELETED
@@ -1,69 +0,0 @@
1
- # CommitAi - Commit Message AI
2
-
3
- [![CI](https://github.com/lguibr/commitai/workflows/CI/badge.svg)](https://github.com/lguibr/commitai/actions)
4
- [![codecov](https://codecov.io/gh/lguibr/commitai/graph/badge.svg?token=MXZKCXO6LA)](https://codecov.io/gh/lguibr/commitai)
5
- [![PyPI](https://img.shields.io/pypi/v/CommitAi.svg)](https://pypi.org/project/CommitAi/)
6
- [![Python Version](https://img.shields.io/pypi/pyversions/CommitAi.svg)](https://pypi.org/project/CommitAi/)
7
- [![License](https://img.shields.io/pypi/l/CommitAi.svg)](https://github.com/lguibr/CommitAi/blob/main/LICENSE)
8
-
9
- CommitAi is a command-line tool that helps you generate informative and relevant commit messages for your Git repositories using AI language models like GPT-4 and Claude. It analyzes your staged changes, combines them with a high-level explanation provided by you, and creates a commit message based on this information. Additionally, it supports custom commit message templates. This not only saves you time and effort but also ensures a consistent and meaningful commit history.
10
-
11
- ## Features
12
-
13
- - Automatically runs the repository's pre-commit hook (if it exists) before generating the commit message to avoid discarded commit costs.
14
- - Generates informative and relevant commit messages based on staged changes and user-provided explanations.
15
- - Supports custom commit message templates.
16
- - Integrates with AI language models like GPT-4 and Claude for intelligent commit message generation.
17
-
18
- ## Prerequisites
19
-
20
- - Python 3.x
21
- - API keys for the desired language models (e.g., OpenAI API key for GPT-4, Anthropic API key for Claude)
22
-
23
- ## Installation
24
-
25
- You can install commitai using pip:
26
-
27
- pip install commitai
28
-
29
- ## Configuration
30
-
31
- ### Environment Variables
32
-
33
- Before using commitai, you need to set the API key environment variables for the language models you want to use. For example:
34
-
35
- export OPENAI_API_KEY="your_openai_api_key"
36
- export ANTHROPIC_API_KEY="your_anthropic_api_key"
37
-
38
- You can also set the `TEMPLATE_COMMIT` environment variable to define a global template for your commit messages:
39
-
40
- export TEMPLATE_COMMIT="My global custom template: {message}"
41
-
42
- ### Template Configuration
43
-
44
- #### Creating a Template for the Repository
45
-
46
- You can create a custom template specific to the repository using the `create-template` command. This template will override the global template set in the `TEMPLATE_COMMIT` environment variable if present.
47
-
48
- commitai create-template "My repository-specific template: {message}"
49
-
50
- This command will create a hidden file inside the `.git` directory to store the template.
51
-
52
- ## Usage
53
-
54
- ### Generating Commit Messages
55
-
56
- commitai generate "This is a high-level explanation of my commit"
57
-
58
- - Use the `-a` or `--add` flag to stage all changes.
59
- - Use the `-c` or `--commit` flag to automatically create the commit.
60
- - Use the `-t` or `--template` flag for custom templates or utilize the `TEMPLATE_COMMIT` environment variable. If no template is provided, a default or global template will be used.
61
- - Use the `-m` or `--model` flag to specify the language model to use (default: `gpt-4`).
62
-
63
- ## Contributing
64
-
65
- We welcome contributions to the commitai project! Please feel free to submit issues, feature requests, or pull requests.
66
-
67
- ## License
68
-
69
- This project is released under the MIT License.
@@ -1,97 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: commitai
3
- Version: 0.1.15
4
- Summary: Commitai helps you generate git commit messages using AI
5
- Home-page: https://github.com/lguibr/commitai
6
- Author: Luis Guilherme
7
- Author-email: lgpelin92@gmail.com
8
- Project-URL: Bug Tracker, https://github.com/lguibr/commitai/issues
9
- Project-URL: Documentation, https://github.com/lguibr/commitai/blob/main/README.md
10
- Project-URL: Source Code, https://github.com/lguibr/commitai
11
- Classifier: Development Status :: 3 - Alpha
12
- Classifier: Intended Audience :: Developers
13
- Classifier: License :: OSI Approved :: MIT License
14
- Classifier: Operating System :: OS Independent
15
- Classifier: Programming Language :: Python :: 3
16
- Classifier: Programming Language :: Python :: 3.6
17
- Classifier: Programming Language :: Python :: 3.7
18
- Classifier: Programming Language :: Python :: 3.8
19
- Classifier: Programming Language :: Python :: 3.9
20
- Requires-Python: >=3.6
21
- Description-Content-Type: text/markdown
22
- Requires-Dist: langchain
23
- Requires-Dist: click
24
- Requires-Dist: langchain-community
25
- Requires-Dist: langchain-anthropic
26
- Requires-Dist: langchain-openai
27
- Requires-Dist: setuptools
28
-
29
- # CommitAi - Commit Message AI
30
-
31
- [![CI](https://github.com/lguibr/commitai/workflows/CI/badge.svg)](https://github.com/lguibr/commitai/actions)
32
- [![codecov](https://codecov.io/gh/lguibr/commitai/graph/badge.svg?token=MXZKCXO6LA)](https://codecov.io/gh/lguibr/commitai)
33
- [![PyPI](https://img.shields.io/pypi/v/CommitAi.svg)](https://pypi.org/project/CommitAi/)
34
- [![Python Version](https://img.shields.io/pypi/pyversions/CommitAi.svg)](https://pypi.org/project/CommitAi/)
35
- [![License](https://img.shields.io/pypi/l/CommitAi.svg)](https://github.com/lguibr/CommitAi/blob/main/LICENSE)
36
-
37
- CommitAi is a command-line tool that helps you generate informative and relevant commit messages for your Git repositories using AI language models like GPT-4 and Claude. It analyzes your staged changes, combines them with a high-level explanation provided by you, and creates a commit message based on this information. Additionally, it supports custom commit message templates. This not only saves you time and effort but also ensures a consistent and meaningful commit history.
38
-
39
- ## Features
40
-
41
- - Automatically runs the repository's pre-commit hook (if it exists) before generating the commit message to avoid discarded commit costs.
42
- - Generates informative and relevant commit messages based on staged changes and user-provided explanations.
43
- - Supports custom commit message templates.
44
- - Integrates with AI language models like GPT-4 and Claude for intelligent commit message generation.
45
-
46
- ## Prerequisites
47
-
48
- - Python 3.x
49
- - API keys for the desired language models (e.g., OpenAI API key for GPT-4, Anthropic API key for Claude)
50
-
51
- ## Installation
52
-
53
- You can install commitai using pip:
54
-
55
- pip install commitai
56
-
57
- ## Configuration
58
-
59
- ### Environment Variables
60
-
61
- Before using commitai, you need to set the API key environment variables for the language models you want to use. For example:
62
-
63
- export OPENAI_API_KEY="your_openai_api_key"
64
- export ANTHROPIC_API_KEY="your_anthropic_api_key"
65
-
66
- You can also set the `TEMPLATE_COMMIT` environment variable to define a global template for your commit messages:
67
-
68
- export TEMPLATE_COMMIT="My global custom template: {message}"
69
-
70
- ### Template Configuration
71
-
72
- #### Creating a Template for the Repository
73
-
74
- You can create a custom template specific to the repository using the `create-template` command. This template will override the global template set in the `TEMPLATE_COMMIT` environment variable if present.
75
-
76
- commitai create-template "My repository-specific template: {message}"
77
-
78
- This command will create a hidden file inside the `.git` directory to store the template.
79
-
80
- ## Usage
81
-
82
- ### Generating Commit Messages
83
-
84
- commitai generate "This is a high-level explanation of my commit"
85
-
86
- - Use the `-a` or `--add` flag to stage all changes.
87
- - Use the `-c` or `--commit` flag to automatically create the commit.
88
- - Use the `-t` or `--template` flag for custom templates or utilize the `TEMPLATE_COMMIT` environment variable. If no template is provided, a default or global template will be used.
89
- - Use the `-m` or `--model` flag to specify the language model to use (default: `gpt-4`).
90
-
91
- ## Contributing
92
-
93
- We welcome contributions to the commitai project! Please feel free to submit issues, feature requests, or pull requests.
94
-
95
- ## License
96
-
97
- This project is released under the MIT License.
File without changes
File without changes
File without changes