codezen


Namecodezen JSON
Version 0.4.0 PyPI version JSON
download
home_pagehttps://github.com/mmaorc/codezen
SummaryYour indispensable partner in programming
upload_time2023-06-08 14:22:00
maintainer
docs_urlNone
authorMaor Cohen
requires_python>=3.11,<4.0
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # CodeZen

## Description

CodeZen is a CLI utility that uses LLMs to help you debug and evolve your codebase based on your requests.

Usage examples:
```bash
codezen "Why am I getting <some exception message>?"
codezen "Write a README.md file for this project"
```

The differences from Github Copilot:
* This is a CLI tool, meaning it can be used regardless of your chosen IDE.
* This provides the LLM with the entire codebase, so it can do things that require a more holistic view of your project.

Current limitations:
* Only works for small codebases- currently it sends the entire codebase on each request (except the ignored files). 😆
* It can't change files autonomously, it only offers a solution.
* It uses gitignore file to know which files to ignore, so you must run this in a git repo and you can't currently ignore files that don't appear there.


## Installation
### Using PyPi
You can install the application using `pip` or `pipx`:
```bash
pip install --user codezen
```
or
```bash
pipx install codezen
```

### Compile from source

You can compile directly from source:
```bash
git clone https://github.com/mmaorc/codezen
cd codezen
poetry build
```


### Development
For development purposes, clone the repository, navigate to the project directory, and install it in a virtual environment:

```bash
git clone https://github.com/mmaorc/codezen
cd codezen
poetry install
poetry shell
```

## Usage

Before running the script, ensure that the `OPENAI_API_KEY` environment variable is set up correctly.

Run CodeZen with the following command:

```bash
codezen <issue_description>
```

`<issue_description>`: Describe the issue you are facing with your code

If you want to ignore additional files without adding them to your `.gitignore`, You can create a `.czignore` file at the project's root and add them there.

If you want to estimate the number of used tokens and show the files that are included in the prompt you can use:

``` bash
codezen <issue_description> --estimate
```


## Contributing

If you would like to contribute to this project, please feel free to fork the repository, create a feature branch, and submit a pull request.

## License

This project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mmaorc/codezen",
    "name": "codezen",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.11,<4.0",
    "maintainer_email": "",
    "keywords": "",
    "author": "Maor Cohen",
    "author_email": "me@maorcohen.net",
    "download_url": "https://files.pythonhosted.org/packages/48/93/7f8923476f787f49234c868b3cb4c50412f390327ae2380f03caeef83878/codezen-0.4.0.tar.gz",
    "platform": null,
    "description": "# CodeZen\n\n## Description\n\nCodeZen is a CLI utility that uses LLMs to help you debug and evolve your codebase based on your requests.\n\nUsage examples:\n```bash\ncodezen \"Why am I getting <some exception message>?\"\ncodezen \"Write a README.md file for this project\"\n```\n\nThe differences from Github Copilot:\n* This is a CLI tool, meaning it can be used regardless of your chosen IDE.\n* This provides the LLM with the entire codebase, so it can do things that require a more holistic view of your project.\n\nCurrent limitations:\n* Only works for small codebases- currently it sends the entire codebase on each request (except the ignored files). \ud83d\ude06\n* It can't change files autonomously, it only offers a solution.\n* It uses gitignore file to know which files to ignore, so you must run this in a git repo and you can't currently ignore files that don't appear there.\n\n\n## Installation\n### Using PyPi\nYou can install the application using `pip` or `pipx`:\n```bash\npip install --user codezen\n```\nor\n```bash\npipx install codezen\n```\n\n### Compile from source\n\nYou can compile directly from source:\n```bash\ngit clone https://github.com/mmaorc/codezen\ncd codezen\npoetry build\n```\n\n\n### Development\nFor development purposes, clone the repository, navigate to the project directory, and install it in a virtual environment:\n\n```bash\ngit clone https://github.com/mmaorc/codezen\ncd codezen\npoetry install\npoetry shell\n```\n\n## Usage\n\nBefore running the script, ensure that the `OPENAI_API_KEY` environment variable is set up correctly.\n\nRun CodeZen with the following command:\n\n```bash\ncodezen <issue_description>\n```\n\n`<issue_description>`: Describe the issue you are facing with your code\n\nIf you want to ignore additional files without adding them to your `.gitignore`, You can create a `.czignore` file at the project's root and add them there.\n\nIf you want to estimate the number of used tokens and show the files that are included in the prompt you can use:\n\n``` bash\ncodezen <issue_description> --estimate\n```\n\n\n## Contributing\n\nIf you would like to contribute to this project, please feel free to fork the repository, create a feature branch, and submit a pull request.\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Your indispensable partner in programming",
    "version": "0.4.0",
    "project_urls": {
        "Homepage": "https://github.com/mmaorc/codezen"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "14bf5bfc04565bcc53e877bfafab338222c9826d7619a9187c45d7e725814098",
                "md5": "c53df92fb5050b15300546c7a8bee6e4",
                "sha256": "76f7d714586e31ee34eac696c4a7858301d6d95059234610c123f5b76270d4fc"
            },
            "downloads": -1,
            "filename": "codezen-0.4.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c53df92fb5050b15300546c7a8bee6e4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11,<4.0",
            "size": 6072,
            "upload_time": "2023-06-08T14:21:57",
            "upload_time_iso_8601": "2023-06-08T14:21:57.771606Z",
            "url": "https://files.pythonhosted.org/packages/14/bf/5bfc04565bcc53e877bfafab338222c9826d7619a9187c45d7e725814098/codezen-0.4.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "48937f8923476f787f49234c868b3cb4c50412f390327ae2380f03caeef83878",
                "md5": "b970c46af1ab8636fc5253f7f15d006f",
                "sha256": "b67db69e623f159a3bd00aacb3bbfd5a8bc9f583fe3df30572826ba8e7a4327a"
            },
            "downloads": -1,
            "filename": "codezen-0.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "b970c46af1ab8636fc5253f7f15d006f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11,<4.0",
            "size": 4919,
            "upload_time": "2023-06-08T14:22:00",
            "upload_time_iso_8601": "2023-06-08T14:22:00.735987Z",
            "url": "https://files.pythonhosted.org/packages/48/93/7f8923476f787f49234c868b3cb4c50412f390327ae2380f03caeef83878/codezen-0.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-08 14:22:00",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mmaorc",
    "github_project": "codezen",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "codezen"
}
        
Elapsed time: 0.08581s