Metadata-Version: 2.4
Name: llm-uv-tool
Version: 0.1.0
Summary: A plugin for LLM that enables proper plugin management when installed via uv tool.
Project-URL: Documentation, https://github.com/joshuadavidthomas/llm-uv-tool#readme
Project-URL: Issues, https://github.com/joshuadavidthomas/llm-uv-tool/issues
Project-URL: Source, https://github.com/joshuadavidthomas/llm-uv-tool
Author-email: Josh Thomas <josh@joshthomas.dev>
License-File: AUTHORS.md
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Plugins
Classifier: License :: OSI Approved :: MIT License
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.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: Implementation :: CPython
Requires-Python: >=3.10
Requires-Dist: llm>=0.24.2
Requires-Dist: uv>=0.6.14
Description-Content-Type: text/markdown

# llm-uv-tool

A plugin for [LLM](https://github.com/simonw/llm) that provides integration when installing LLM as a uv tool.

## Requirements

- Python 3.10, 3.11, 3.12, 3.13
- uv

## Installation

```bash
uv install --with llm-uv-tool llm
```

## Usage

This plugin overrides two built-in LLM commands:

- `llm install`
- `llm uninstall`

These modified commands use uv tool install with appropriate flags instead of pip, maintaining a list of installed plugins to ensure they're properly managed within uv's environment.

## Why use this?

When you install LLM as a standalone CLI tool using uv's tool feature (`uv tool install llm`), the standard plugin installation mechanism (which uses pip) doesn't play well with uv's isolated environment approach.

This plugin attempts to solve that problem by:

1. Tracking which plugins you've installed
2. Ensuring those plugins are preserved when installing/uninstalling
3. Providing a consistent installation experience that works with uv's tool system
4. Maintaining the same API and user experience as the built-in LLM install/uninstall commands

Using this plugin helps ensure your LLM plugins remain properly installed when using uv's tool system.
