# Buck the Duck
Get to know Buck, your duckling companion that will help you use generating AI and make your commits more meaningful without any interaction at all.
Buck knows to read your recent changes before you commit them and helps you with your less important day-to-day tasks to improve maintenance of your project.
Buck knows to read only the files you want it to read, Buck is not nosey it will only read the classes & methods* without the content to keep the exposure to the minimum (* only React files will be sent fully)
Buck today knows - Python, NodeJS (+Typescript), but it can get around other languages (but see * above)
Buck knows to integrate today with OpenAI ChatGPT and Google Gemini and knows to use them both in case your tokens run out!
## Installation
`pip install BuckTheDuck`
## Getting started
1. Get a token from either [OpenAI](https://help.openai.com/en/articles/4936850-where-do-i-find-my-openai-api-key) or [Gemini](https://ai.google.dev/gemini-api/docs/api-key)
2. Run `buck init`
1. Choose the Gen AI you wish to use and add the API key - Don't worry it is only being saved on your machine.
2. You can set both OpenAI and Gemini as your Generative AI if you with to have a fallback by running the init again
3. Run `buck help` to see the manu
4. GA features are
1. `buck commit` - will automatically generate commit message on your changes
1. `buck commit -c` - will open a conversation with the generative AI to be able to give feedback to it
2. `buck cop` - commit and push, will also create the branch at the remote if necessary
5. Beta features
1. `buck cr` - Will try to help you with code review on your changes
2. `buck branch_summarize` - Will generate a summary of the current changes, currently only will be written to the prompt
## Authors and acknowledgment
Yoav Alroy as sole Author
## License
MIT License
## Project status
The backlog is rich, any that wish to assist may contact me at yoavalro@gmail.com
Raw data
{
"_id": null,
"home_page": null,
"name": "BuckTheDuck",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "GIT, GENAI, AUTOMATION, CLI",
"author": "Yoav Alroy",
"author_email": "yoavalro@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/87/66/a24bc20190d490b23b9c04c9de84976fe43e7dccd8721b79a772d0f5f80e/bucktheduck-0.0.4.tar.gz",
"platform": null,
"description": "# Buck the Duck\nGet to know Buck, your duckling companion that will help you use generating AI and make your commits more meaningful without any interaction at all.\n\nBuck knows to read your recent changes before you commit them and helps you with your less important day-to-day tasks to improve maintenance of your project.\nBuck knows to read only the files you want it to read, Buck is not nosey it will only read the classes & methods* without the content to keep the exposure to the minimum (* only React files will be sent fully)\n\nBuck today knows - Python, NodeJS (+Typescript), but it can get around other languages (but see * above)\n\nBuck knows to integrate today with OpenAI ChatGPT and Google Gemini and knows to use them both in case your tokens run out!\n## Installation\n`pip install BuckTheDuck`\n\n## Getting started\n1. Get a token from either [OpenAI](https://help.openai.com/en/articles/4936850-where-do-i-find-my-openai-api-key) or [Gemini](https://ai.google.dev/gemini-api/docs/api-key) \n2. Run `buck init`\n 1. Choose the Gen AI you wish to use and add the API key - Don't worry it is only being saved on your machine.\n 2. You can set both OpenAI and Gemini as your Generative AI if you with to have a fallback by running the init again\n3. Run `buck help` to see the manu\n4. GA features are \n 1. `buck commit` - will automatically generate commit message on your changes\n 1. `buck commit -c` - will open a conversation with the generative AI to be able to give feedback to it \n 2. `buck cop` - commit and push, will also create the branch at the remote if necessary\n5. Beta features\n 1. `buck cr` - Will try to help you with code review on your changes\n 2. `buck branch_summarize` - Will generate a summary of the current changes, currently only will be written to the prompt\n\n## Authors and acknowledgment\nYoav Alroy as sole Author\n\n## License\nMIT License\n\n## Project status\nThe backlog is rich, any that wish to assist may contact me at yoavalro@gmail.com\n",
"bugtrack_url": null,
"license": "MIT",
"summary": null,
"version": "0.0.4",
"project_urls": null,
"split_keywords": [
"git",
" genai",
" automation",
" cli"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c00e7c8597087a98fb6402c05e67035f1b66d19d447998e2679502f772194586",
"md5": "15999b30f43963baeb686dc089291c80",
"sha256": "7c5c8281d8e3ea29782c7554b243ce2dcf8c71a124d83521cc8bbbe19ae3ac2b"
},
"downloads": -1,
"filename": "BuckTheDuck-0.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "15999b30f43963baeb686dc089291c80",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 34134,
"upload_time": "2024-08-09T14:11:56",
"upload_time_iso_8601": "2024-08-09T14:11:56.704404Z",
"url": "https://files.pythonhosted.org/packages/c0/0e/7c8597087a98fb6402c05e67035f1b66d19d447998e2679502f772194586/BuckTheDuck-0.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8766a24bc20190d490b23b9c04c9de84976fe43e7dccd8721b79a772d0f5f80e",
"md5": "0402544a3ef0d40b1c5aeeb9b4deb929",
"sha256": "e1d4b2f26d30e455281cd8677d2d3c3a84cd57aaf11ec61ef5cb73b15dd18422"
},
"downloads": -1,
"filename": "bucktheduck-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "0402544a3ef0d40b1c5aeeb9b4deb929",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 18992,
"upload_time": "2024-08-09T14:11:58",
"upload_time_iso_8601": "2024-08-09T14:11:58.266171Z",
"url": "https://files.pythonhosted.org/packages/87/66/a24bc20190d490b23b9c04c9de84976fe43e7dccd8721b79a772d0f5f80e/bucktheduck-0.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-09 14:11:58",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "bucktheduck"
}