Metadata-Version: 2.4
Name: pgate
Version: 0.4.2
Summary: PGate — Prompt ORM for LLM agents. Store, compile, validate and cache prompt contracts locally.
License: MIT
Requires-Python: >=3.10
Requires-Dist: click>=8.1
Requires-Dist: jinja2>=3.1
Requires-Dist: jsonschema>=4.0
Requires-Dist: loguru>=0.7
Requires-Dist: mcp>=1.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pyyaml>=6.0
Provides-Extra: crypto
Requires-Dist: cryptography>=41.0; extra == 'crypto'
Provides-Extra: dev
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Provides-Extra: litellm
Requires-Dist: litellm>=1.0; extra == 'litellm'
Provides-Extra: postgres
Requires-Dist: psycopg2-binary>=2.9; extra == 'postgres'
Provides-Extra: serve
Requires-Dist: aiofiles>=23.0; extra == 'serve'
Requires-Dist: fastapi>=0.100; extra == 'serve'
Requires-Dist: uvicorn>=0.20; extra == 'serve'
Provides-Extra: watch
Requires-Dist: watchdog>=3.0; extra == 'watch'
Description-Content-Type: text/markdown

# PGate

**Prompt ORM for LLM agents.** Store, find, compile, validate, and cache prompt contracts — locally, without cloud, without telemetry.

## Install

```bash
pip install pgate
```

## Quickstart

```bash
pgate init
pgate add --file examples/report_sales.yaml
pgate compile --interactive
```

## MCP (Claude Desktop / Cursor)

Add to `claude_desktop_config.json`:

```json
{
  "pgate": {
    "command": "pgate",
    "args": ["mcp", "--stdio"]
  }
}
```

## Status

v0.1 — in development.
