Skip to main content

Python SDK for managing Tarko Agent UI Builder static assets

Project description

Tarko Agent UI Python SDK

Python SDK for serving @tarko/agent-ui-builder static assets.

Quick Start

pip install tarko-agent-ui
# Or with uv
uv add tarko-agent-ui
# Create app.py
from fastapi import FastAPI
from fastapi.responses import HTMLResponse
from tarko_agent_ui import get_agent_ui_html

app = FastAPI()

@app.get("/")
def home():
    return HTMLResponse(get_agent_ui_html(
        base_url="http://localhost:8000/api"
    ))

# Run: uvicorn app:app
# Visit: http://localhost:8000

That's it! You now have a fully functional Agent UI.

Configuration

Customize your Agent UI with the ui_config parameter:

get_agent_ui_html(
    base_url="http://localhost:8000/api",  # Your agent API endpoint
    ui_config={
        "title": "My Agent",
        "logo": "https://example.com/logo.png",
        "subtitle": "AI assistant for your needs",
        "welcomePrompts": [
            "What can you help me with?",
            "Tell me about your capabilities",
            "Show me an example"
        ]
    }
)

Environment Variables

Use environment variables for flexible deployment:

AGENT_BASE_URL=http://my-agent.com/api python app.py
import os
from tarko_agent_ui import get_agent_ui_html

base_url = os.getenv("AGENT_BASE_URL", "http://localhost:8000/api")
html = get_agent_ui_html(base_url=base_url)

Framework Examples

FastAPI (click to expand)
from fastapi import FastAPI
from fastapi.responses import HTMLResponse
from tarko_agent_ui import get_agent_ui_html

app = FastAPI()

@app.get("/", response_class=HTMLResponse)
async def root():
    return HTMLResponse(get_agent_ui_html(
        base_url="http://localhost:8000/api",
        ui_config={"title": "FastAPI Agent"}
    ))
Flask (click to expand)
from flask import Flask
from tarko_agent_ui import get_agent_ui_html

app = Flask(__name__)

@app.route('/')
def root():
    return get_agent_ui_html(
        base_url="http://localhost:5000/api",
        ui_config={"title": "Flask Agent"}
    )
Django (click to expand)
# views.py
from django.http import HttpResponse
from tarko_agent_ui import get_agent_ui_html

def home(request):
    html = get_agent_ui_html(
        base_url="http://localhost:8000/api",
        ui_config={"title": "Django Agent"}
    )
    return HttpResponse(html)

Complete Example

See examples/fastapi_server.py for a production-ready FastAPI server with:

  • Comprehensive UI configuration
  • Error handling
  • Environment variable support
# Try the example
git clone https://github.com/agent-infra/tarko-agent-ui-python.git
cd tarko-agent-ui-python
uv sync
python examples/fastapi_server.py

API Reference

get_agent_ui_html(base_url, ui_config=None)

Returns configured Agent UI HTML content with injected environment variables.

Parameters:

  • base_url (str): Agent API base URL
  • ui_config (dict, optional): UI configuration object

Returns: Complete HTML string ready for serving

Note: This is the recommended approach - no need to mount static files!

get_static_path() (Advanced)

Returns absolute path to bundled static assets.

Use case: Only needed if you want to serve static files separately (e.g., for custom routing or CDN setup).

How It Works

  1. Zero Dependencies: Pure Python package with no external dependencies
  2. Pre-bundled Assets: Static assets are included with the package
  3. Framework Agnostic: Returns HTML strings that work with any Python web framework
  4. No Runtime Downloads: Everything works offline after installation

Backend Integration

To connect your Agent backend, implement the Agent API Protocol (documentation coming soon).

Requirements

  • Python 3.8+
  • Any Python web framework (FastAPI, Flask, Django, etc.)

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

tarko_agent_ui-0.3.0b12.post1.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

tarko_agent_ui-0.3.0b12.post1-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file tarko_agent_ui-0.3.0b12.post1.tar.gz.

File metadata

File hashes

Hashes for tarko_agent_ui-0.3.0b12.post1.tar.gz
Algorithm Hash digest
SHA256 94ded20e4ca2075499ad976b1b3754089ed18c504afc9a82c8a1516c716327d6
MD5 fe49bcc420d8d0626df2655e32da3918
BLAKE2b-256 096af641bd1a64ae78ff5c137748762918f5ff2bac8bb97f28b1f1f23d320c7a

See more details on using hashes here.

File details

Details for the file tarko_agent_ui-0.3.0b12.post1-py3-none-any.whl.

File metadata

File hashes

Hashes for tarko_agent_ui-0.3.0b12.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 d7bcda1506480c334e8de632ab7c070c37cbd0e6ec4ca781c6295420e4a7a760
MD5 c3afb292075ee49bdbb9e09a49869b95
BLAKE2b-256 a536deadfba545e3d8a12529e6d9fd9ee4f87764d823f60a30b8006b6b0a876f

See more details on using hashes here.

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