Metadata-Version: 2.3
Name: git-draft
Version: 0.27.0
Summary: Version-controlled code assistant
License: MIT
Author: Matthieu Monsch
Author-email: mtth@apache.org
Requires-Python: >=3.12
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Provides-Extra: openai
Requires-Dist: gitpython (>=3.1.44,<4)
Requires-Dist: jinja2 (>=3.1.5,<4)
Requires-Dist: openai (>=1.64.0,<2) ; extra == "openai"
Requires-Dist: prettytable (>=3.15.1,<4)
Requires-Dist: xdg-base-dirs (>=6.0.2,<7)
Project-URL: Documentation, https://mtth.github.io/git-draft
Project-URL: Repository, https://github.com/mtth/git-draft
Description-Content-Type: text/markdown

# `git-draft(1)` [![CI](https://github.com/mtth/git-draft/actions/workflows/ci.yaml/badge.svg)](https://github.com/mtth/git-draft/actions/workflows/ci.yaml) [![codecov](https://codecov.io/gh/mtth/git-draft/graph/badge.svg?token=3OTKAI0FP6)](https://codecov.io/gh/mtth/git-draft) [![Pypi badge](https://badge.fury.io/py/git-draft.svg)](https://pypi.python.org/pypi/git-draft/)

> [!NOTE]
> WIP: Unstable API.


## Highlights

* Concurrent edits. By default `git-draft` does not touch the working directory.
* Customizable prompt templates.
* Extensible bot API.


## Installation

```sh
pipx install git-draft[openai]
```


## Next steps

* Mechanism for reporting feedback from a bot, and possibly allowing user to
  interactively respond.
* Add configuration option to auto sync and `--no-sync` flag. Similar to reset.
* Add "amend" commit when finalizing. This could be useful training data,
  showing what the bot did not get right.
* Convenience functionality for simple cases: checkout option which applies the
  changes, and finalizes the draft if specified multiple times. For example `git
  draft -cc add-test symbol=foo`

