Skip to main content

Turn any LLM into an interactive UI. One line of Python — no React, no frontend setup.

Project description

Tilo

Turn any LLM into an interactive UI. One line of Python — no React, no frontend setup.

pip install "tilo[openai]"
import tilo

spec = tilo.generate(
    "Review this SaaS contract for payment, liability, and IP risks.",
    model="gpt-4o",          # or claude-opus-4-8 — provider auto-detected
)

tilo.view(spec)              # opens in your browser. that's it.

The LLM doesn't return a wall of text — it generates a structured, interactive surface: a risk chart, a before/after diff, a checklist, a human-approval gate, and a memory card, organised into tabs. Rendered with zero frontend setup.

No API key? Run tilo demo to open a sample surface. tilo serve then open http://localhost:8000/playground for a live editor.

Works with your stack

# OpenAI
from tilo.adapters.openai import generate_aip_spec
spec = generate_aip_spec(OpenAI(), "Analyse Q3 pipeline", skill="sales_dashboard")

# Anthropic
from tilo.adapters.anthropic_sdk import generate_aip_spec
spec = generate_aip_spec(Anthropic(), "Review this PR", skill="code_review")

# LangChain / LangGraph
from tilo.adapters.langchain import generate_aip_spec
spec = generate_aip_spec(ChatOpenAI(model="gpt-4o"), "Plan a trip to Tokyo")

# Bring your own LLM client
from tilo.prompt import AIPPromptBuilder
b = AIPPromptBuilder("Summarise this incident", skill="incident_response")
# b.system_prompt(), b.user_prompt() → your LLM → b.parse(response)

Render anywhere

Browser tilo.view(spec)
Jupyter / Colab tilo.notebook(spec)
Standalone HTML tilo.save_html(spec, "out.html")
Production React npm install @adam2go/tilo-react

Install options

pip install "tilo[openai]"      # OpenAI SDK
pip install "tilo[anthropic]"   # Anthropic SDK
pip install "tilo[langchain]"   # LangChain
pip install "tilo[all]"         # everything + Postgres driver

Why Tilo

As LLMs get stronger, a wall of text is still a wall of text. Tilo turns model output into something a human can click, edit, approve, and reject — and turns those actions into structured signal the model can learn from.

  • Structured UI beats prose for decisions.
  • Human confirmation is infrastructure — stronger models need more gates, not fewer.
  • Confirmed memory, not auto-memory — Tilo proposes; the human confirms.

Links

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tilo-0.2.0.tar.gz (181.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tilo-0.2.0-py3-none-any.whl (190.3 kB view details)

Uploaded Python 3

File details

Details for the file tilo-0.2.0.tar.gz.

File metadata

  • Download URL: tilo-0.2.0.tar.gz
  • Upload date:
  • Size: 181.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tilo-0.2.0.tar.gz
Algorithm Hash digest
SHA256 f22bc12507c6497a91aac8145fee31005b875efe5cac6a29fbeddd9b825986ed
MD5 11c56960d3ca9f19e53f4eebfaf45324
BLAKE2b-256 ef89df5540c0807757a3a9718f0147771ff6637bf8c4d762dc9ba902bccbb709

See more details on using hashes here.

Provenance

The following attestation bundles were made for tilo-0.2.0.tar.gz:

Publisher: publish.yml on adam2go/tilo-framework

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tilo-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: tilo-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 190.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tilo-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 242e82878b45af8860be9fc3ef3c9e9b908ff96a37d5fef64c3ad4278ff5c2db
MD5 41655d69fe29c695ff39ded9aa8f27ee
BLAKE2b-256 04e1c4f804247f8919ffa9a087c1d330bcc2654b1c9330495a3cb5feae9230a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tilo-0.2.0-py3-none-any.whl:

Publisher: publish.yml on adam2go/tilo-framework

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page