Metadata-Version: 2.4
Name: gitlint-rai
Version: 0.1.1
Summary: Gitlint plugin for RAI footer validation
Author-email: Ashley Childress <human@checkmarkdevtools.dev>
License-Expression: LicenseRef-PolyForm-Shield-1.0.0
Project-URL: Homepage, https://github.com/ChecKMarKDevTools/rai-lint
Project-URL: Repository, https://github.com/ChecKMarKDevTools/rai-lint
Project-URL: Issues, https://github.com/ChecKMarKDevTools/rai-lint/issues
Keywords: gitlint,rai,ai-attribution,commit-validation
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Software Development :: Version Control :: Git
Classifier: Typing :: Typed
Requires-Python: <3.13,>=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: gitlint>=0.19.1
Dynamic: license-file

# gitlint-rai

Gitlint plugin for enforcing AI attribution in commit messages using Git commit message trailers.

## Installation

```bash
pip install gitlint-rai
```

or with uv:

```bash
uv add gitlint-rai
```

## Usage

Add to `.gitlint`:

```ini
[general]
extra-path=gitlint_rai
```

Then run:

```bash
gitlint
```

Or use the standalone wrapper:

```bash
gitlint-rai
```

Verify the rule loaded:

```bash
gitlint --list-rules | grep rai-footer-exists
```

Expected output:

```
rai-footer-exists  Commit message must include a valid RAI footer
```

## Valid Footer Formats

1. **`Authored-by: [Human] <email>`** - Human only, no AI involvement
2. **`Commit-generated-by: [AI Tool] <email>`** - Trivial AI (docs, commit msg, reviews, advice, etc)
3. **`Assisted-by: [AI Tool] <email>`** - AI helped, but primarily human code
4. **`Co-authored-by: [AI Tool] <email>`** - Roughly half is AI generated and half human-authored content
5. **`Generated-by: [AI Tool] <email>`** - Majority of code was AI generated

All patterns are case-insensitive.

## Requirements

- Python >= 3.11, < 3.13
- gitlint >= 0.19.1

## License

PolyForm Shield License 1.0.0
