Metadata-Version: 2.3
Name: portico-cli
Version: 0.1.0
Summary: Render any input as a portico – a three-layer ASCII visualization.
Author: Tomás Ravalli
Author-email: Tomás Ravalli <tomravalli@gmail.com>
Requires-Dist: anthropic>=0.100.0
Requires-Dist: openai>=2.36.0
Requires-Dist: pydantic>=2.13.4
Requires-Dist: trafilatura>=2.0.0
Requires-Python: >=3.12
Description-Content-Type: text/markdown

# portico

Render any input -- text, code, URL, repo -- as a **portico**: a three-layer ASCII visualization (`roof` / `pillars` / `base`).

Always lowercase. The brand mark is `_ii^`.

## Status

Phase 0 (bootstrap) complete. The package skeleton compiles; no functionality is wired up yet. See the phased roadmap for what lands when.

## Develop

```bash
uv sync                         # install dev deps
uv run ruff check .             # lint
uv run pyright                  # type-check
uv run pytest                   # mocked tests; smoke eval auto-skips
```

The smoke eval (10 live Claude calls + rendered porticoes in `tests/eval/smoke/report/`) needs `ANTHROPIC_API_KEY`. With the key in 1Password CLI, run via:

```bash
op run --env-file=.env -- arch -arm64 uv run pytest
```

The `arch -arm64` is required because the 1Password CLI is x86_64 and would otherwise force a Rosetta child.
