Skip to main content

Smello logo

Smello Server

A local web dashboard for inspecting outgoing and incoming HTTP requests, pytest results, logs, and exceptions captured by the smello client SDK.

Setup

pip install smello-server
smello-server

Or run with Docker:

docker run -p 127.0.0.1:5110:5110 ghcr.io/smelloscope/smello

The server listens at http://localhost:5110.

Then install the client SDK and run your code with Smello:

pip install smello
smello run my_app.py

Outgoing HTTP requests, pytest results, unhandled exceptions, and optional log records are captured automatically.

To capture tests, install the client with pip install "smello[pytest]". The bundled plugin supports pytest 7 and later.

See Debug pytest tests with Smello for a runnable example and dashboard walkthrough.

Calls to the OpenAI, Anthropic, and Gemini APIs render as a readable conversation in the dashboard, with the system prompt, tool calls, and token usage broken out. The raw JSON stays one tab away.

API

Smello Server provides a JSON API for exploring captured events from the command line.

# List all captured events (unified timeline)
curl -s http://localhost:5110/api/events | python -m json.tool

# Filter by event type (http, http_incoming, test, log, exception)
curl -s 'http://localhost:5110/api/events?event_type=exception'

# Filter by method, host, status, or full-text search
curl -s 'http://localhost:5110/api/events?method=POST&host=api.stripe.com'

# Filter by app or session
curl -s 'http://localhost:5110/api/events?app=myapp&session=debug-payment'

# Get full event details
curl -s http://localhost:5110/api/events/{id} | python -m json.tool

# Clear all events
smello clear

# Equivalent HTTP API call
curl -X DELETE http://localhost:5110/api/events

CLI Options

smello-server --host 0.0.0.0 --port 5110 --db-path /tmp/smello.db  # LAN access

Event retention

Smello Server deletes events older than seven days when it starts and every hour after that. Set SMELLO_RETENTION_DAYS to a non-negative integer to change the retention period:

SMELLO_RETENTION_DAYS=30 smello-server

Set it to 0 to keep events indefinitely. The server rejects negative or malformed values at startup.

Requires

  • Python >= 3.14

Links

Download files

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

Source Distribution

smello_server-0.11.0.tar.gz (298.1 kB view details)

Uploaded Source

Built Distribution

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

smello_server-0.11.0-py3-none-any.whl (287.9 kB view details)

Uploaded Python 3

File details

Details for the file smello_server-0.11.0.tar.gz.

File metadata

  • Download URL: smello_server-0.11.0.tar.gz
  • Upload date:
  • Size: 298.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for smello_server-0.11.0.tar.gz
Algorithm Hash digest
SHA256 834a95305e43cc72a7fadf86435a7692c804af78b922a2d3a1e5879298bc07d8
MD5 2ca5be7ff80c76e96ea5b75379f0eaaf
BLAKE2b-256 fc218f7995c641a94f73d31100ff1b53f06c3793215368fc548c7c59f8b05bb5

See more details on using hashes here.

Provenance

The following attestation bundles were made for smello_server-0.11.0.tar.gz:

Publisher: publish-server.yml on smelloscope/smello

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

File details

Details for the file smello_server-0.11.0-py3-none-any.whl.

File metadata

  • Download URL: smello_server-0.11.0-py3-none-any.whl
  • Upload date:
  • Size: 287.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for smello_server-0.11.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5426e5c5591b3cd1fee23a69c0bca3cd8bb82837017dd4e505c2dbab67afadf5
MD5 26a29496d2a59134739223fd5e5960cc
BLAKE2b-256 b6bff81d60393c8036829075f459daf079c15b88f3553c6c294c78861d3f2758

See more details on using hashes here.

Provenance

The following attestation bundles were made for smello_server-0.11.0-py3-none-any.whl:

Publisher: publish-server.yml on smelloscope/smello

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

Release history Release notifications | RSS feed

0.13.0

2 files

0.12.0

2 files

This release

0.11.0 This release

2 files

0.10.0

2 files

0.9.0

2 files

0.8.3

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0

2 files

0.7.1

2 files

0.7.0

2 files

0.6.1

2 files

0.6.0

2 files

0.5.0

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.4

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.2

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page