Metadata-Version: 2.4
Name: scry-run
Version: 0.1.2
Summary: LLM-powered dynamic code generation via metaclasses. Define classes with docstrings, call any method—code generates automatically, caches persistently, and executes instantly.
Project-URL: Homepage, https://github.com/Tener/scry-run
Project-URL: Repository, https://github.com/Tener/scry-run
Author: Krzysztof Skrzętnicki
License: MIT
Keywords: ai,claude,code-generation,llm,metaclass
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Code Generators
Requires-Python: >=3.10
Requires-Dist: claude-agent-sdk>=0.1.0
Requires-Dist: click>=8.0.0
Requires-Dist: jinja2>=3.0.0
Requires-Dist: rich>=13.0.0
Requires-Dist: tomli>=2.0.0; python_version < '3.11'
Provides-Extra: dev
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
Requires-Dist: pytest-timeout>=2.0.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Description-Content-Type: text/markdown

# scry-run

**Describe an app, run it.** A CLI tool that generates and runs Python applications from natural language descriptions.

## Installation

```bash
uv tool install scry-run
```

Or run without installing:

```bash
uvx scry-run --help
```

Requires [Claude Code CLI](https://github.com/anthropics/claude-code) to be installed.

## Quick Start

```bash
# Create an app
scry-run init --name=todoist --description='minimal web todo app'

# Run it
scry-run run todoist
```

## Demos

### Creating a simple Hello World app

![Hello Demo](demos/hello.gif)

### Building a maze game with PyGame

![Maze Demo](demos/maze.gif)

## CLI Commands

```bash
# Create a new app
scry-run init --name=NAME --description=DESC

# List all apps
scry-run list

# Run an app
scry-run run myapp [args...]

# Get app info
scry-run info myapp
scry-run which myapp

# Remove or reset an app
scry-run rm myapp
scry-run reset myapp

# Cache management
scry-run cache list myapp
scry-run cache show myapp MyClass.method
scry-run cache export myapp --output=code.py
scry-run cache prune myapp --all
```

## Configuration

| Variable | Description | Default |
|----------|-------------|---------|
| `SCRY_RUN_BACKEND` | Backend: `claude`, `frozen`, or `auto` | `auto` |
| `SCRY_RUN_MODEL` | Model override (e.g., `opus`) | (backend default) |

## License

MIT
