Metadata-Version: 2.4
Name: verploy
Version: 0.0.3
Summary: A local-first CI/CD tool for agentic engineering.
Author: Peter Lavigne
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: License :: OSI Approved :: Apache Software License
Requires-Dist: pl-run-program>=0.0.30
Requires-Dist: pl-user-io>=0.0.18
Requires-Dist: typer==0.21.1
Requires-Dist: pl-mocks-and-fakes>=0.0.30
Requires-Dist: pl-tiny-clients>=0.0.42
Requires-Python: >=3.12
Project-URL: Homepage, https://github.com/Peter-Lavigne/verploy
Project-URL: Repository, https://github.com/Peter-Lavigne/verploy
Description-Content-Type: text/markdown

# verploy

A local-first CI/CD tool for agentic engineering.

`verploy verify` rebases worktrees and runs automated verifications. Coding agents run this from worktrees and docker containers.

`verploy deploy` builds on `verploy verify`, adding manual verification, fast-forward merging, and automated deployment. Users run this.

Rationale:
- Local-first workflows significantly reduce per-prompt latency compared to using remote agents and GitHub's CI/CD
- Manual verification should be programmatically defined on a per-project basis
- Worktree support enables agents to work independently
- Rebase conflict handling discourages agents from modifying git
- Docker containers are necessary to sandbox autonomous agents
- Agents should not have access to on-device deployment credentials

## Installation

Verploy is available as [`verploy`](https://pypi.org/project/verploy/) on PyPI.

Because verploy uses other tools you have installed, it's recommended to install it per-project instead of globally:

```bash
uv add --dev verploy
```

## Setup

Add a `.verploy/` directory to your project with any of these executable scripts:

- `verify` -- runs before committing (e.g. linting, type checking, tests)
- `manual` -- interactive checks run between verification and deploy
- `deploy` -- runs after pushing (e.g. publishing to PyPI)

## Usage

```bash
uv run verploy verify
uv run verploy deploy
```

## License

Licensed under the Apache License 2.0. See [LICENSE](./LICENSE).
