Metadata-Version: 2.4
Name: modwire-cli
Version: 1.0.0
Summary: Command-line runtime for the Modwire ecosystem.
Author: Tomasz Szpak
License-Expression: MIT
Project-URL: Homepage, https://github.com/modwire/modwire-cli
Project-URL: Repository, https://github.com/modwire/modwire-cli
Project-URL: Issues, https://github.com/modwire/modwire-cli/issues
Project-URL: Changelog, https://github.com/modwire/modwire-cli/blob/main/CHANGELOG.md
Keywords: architecture,cli,code-analysis,modwire,static-analysis
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Typing :: Typed
Classifier: Topic :: Software Development :: Quality Assurance
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: click>=8.1
Requires-Dist: modwire<6,>=5
Requires-Dist: modwire-extraction<3,>=2
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == "dev"
Requires-Dist: pytest>=8; extra == "dev"
Requires-Dist: ruff>=0.8; extra == "dev"
Requires-Dist: twine>=5; extra == "dev"
Dynamic: license-file

# modwire-cli

The thin command-line reporter for the Modwire ecosystem. It extracts a source
map, calls Modwire, and prints Modwire's reports.

## Installation

```bash
python -m pip install modwire-cli
```

Python 3.12 or newer is required.

## Usage

```bash
modwire architecture reports
modwire --config-dir .modwire architecture health src python
```

For development:

```bash
uv sync --all-groups
uv run pytest
uv build
```

Run the same checks used by CI with `make verify`.

## Release

Releases use strict `vX.Y.Z` tags. Before creating the first release, configure
the `pypi` environment and a Trusted Publisher for the `modwire/modwire-cli`
GitHub repository on PyPI. Then publish a GitHub release:

```bash
gh release create v1.0.0 --target main --generate-notes --title v1.0.0
```

The release workflow verifies the tag and distribution metadata, publishes to
PyPI without a long-lived token, and attaches the distributions to the release.
