Metadata-Version: 2.4
Name: lookspan
Version: 0.1.0
Summary: Lookspan Python SDK — emit spans from AI agents to the local-first observability dashboard.
Project-URL: Homepage, https://github.com/JoniMartin27/lookspan
Project-URL: Issues, https://github.com/JoniMartin27/lookspan/issues
Project-URL: Source, https://github.com/JoniMartin27/lookspan
Author: Jonathan Martin
License: MIT
Keywords: agents,ai,llm,lookspan,mcp,observability,tracing
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Requires-Dist: httpx>=0.27.0
Provides-Extra: dev
Requires-Dist: mypy>=1.10; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.6; extra == 'dev'
Description-Content-Type: text/markdown

# lookspan

Python SDK for [Lookspan](https://github.com/lookspan/lookspan) — emit spans from your AI
agents to the local-first observability dashboard.

## Install

```bash
pip install lookspan
```

## Quick start

```python
from lookspan import LookspanClient, Span, SpanType, SpanStatus

client = LookspanClient(endpoint="http://127.0.0.1:3100/api/ingest")

trace_id = client.new_trace_id()
span_id = client.new_span_id()

client.send([
    Span(
        trace_id=trace_id,
        span_id=span_id,
        parent_span_id=None,
        type=SpanType.LLM_CALL,
        name="my-agent.completion",
        started_at="2026-05-08T12:00:00Z",
        ended_at="2026-05-08T12:00:01Z",
        status=SpanStatus.OK,
        framework="custom",
        model="claude-opus-4-7",
        provider="anthropic",
    )
])

client.flush()
```

For framework-specific adapters, see `lookspan-langgraph` and `lookspan-crewai`.
