Skip to main content

Snowlgobe Connect SDK

The Snowglobe Connect SDK helps you connect your AI agents to Snowglobe. It sends simulated user messages to your LLM-based application during experiments. Your application should process these messages and return a response, enabling simulated conversations.

Installation

# Install client
pip install snowglobe

If using uv, set the --prerelease=allow flag

uv pip install --prerelease=allow snowglobe

snowglobe commands

snowglobe login  # Sets up your API key
snowglobe init  # Initializes a new agent connection and creates an agent wrapper file
snowglobe test  # Tests your agent connection
snowglobe start  # Starts the process of processing simulated user messages
snowglobe agent create --name <name>  # Creates an agent (scriptable init: CP application + wrapper file + mapping)
snowglobe agent profile  # Kicks off a new Agent Profile tuning job and waits for it (--no-wait to return immediately)
snowglobe agent profiles  # Lists Agent Profiles for a project agent
snowglobe --help

When using one of our specific preview environments in .snowgloberc one can override our server's URL with:

CONTROL_PLANE_URL=

Sample custom llm usage in agent wrapper file

Each agent wrapper file resides in the root directory of your project, and is named after the agent (e.g. My Agent Name becomes my_agent_name.py).

from snowglobe.client import CompletionRequest, CompletionFunctionOutputs
from openai import OpenAI
import os

client = OpenAI(api_key=os.getenv("SNOWGLOBE_API_KEY"))

def completion_fn(request: CompletionRequest) -> CompletionFunctionOutputs:
    """
    Process a scenario request from Snowglobe.
    
    This function is called by the Snowglobe client to process requests. It should return a
    CompletionFunctionOutputs object with the response content.

    Example CompletionRequest:
    CompletionRequest(
        messages=[
            SnowglobeMessage(role="user", content="Hello, how are you?", snowglobe_data=None),
        ]
    )

    Example CompletionFunctionOutputs:
    CompletionFunctionOutputs(response="This is a string response from your application")
    
    Args:
        request (CompletionRequest): The request object containing the messages.

    Returns:
        CompletionFunctionOutputs: The response object with the generated content.
    """

    # Process the request using the messages. Example:
    messages = request.to_openai_messages()
    response = client.chat.completions.create(
        model="gpt-4o-mini",
        messages=messages
    )
    return CompletionFunctionOutputs(response=response.choices[0].message.content)

Operator tuning

The wrapper exposes ~12 environment variables for concurrency, inbound rate limits, polling cadence, and HTTP retry. Defaults are tuned for low-to-medium throughput; raise them together (not individually) for higher load.

See .snowglobe/TUNING.md for the full knob reference, recipes, and the ratio caveat between dispatch concurrency and the inbound rate limiter.

Tracing & Telemetry

See our telemetry instrumentation extensions for snowglobe to help you track insightful traces from our agent:

Metadata

Release files for snowglobe 1.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for snowglobe 1.3.1
File Size Uploaded Provenance
snowglobe-1.3.1.tar.gz 178.4 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for snowglobe 1.3.1
File Interpreter ABI Platform
snowglobe-1.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 298.4 kB

Release files / snowglobe-1.3.1.tar.gz

Download URL snowglobe-1.3.1.tar.gz
Size 178.4 kB
Tags Source
SHA-256 checksum
How to use checksums
7fe67bcdeb149db4637041bb0f42ae9ae5b712fb8db7d7aa8c7009ba2374bd48
BLAKE2b-256 checksum
How to use checksums
756db2977ba4c7f6221f3fc9891500adb1dd357b7d051b48ac581ad3a1773e44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.

Transparency log

Release files / snowglobe-1.3.1-py3-none-any.whl

Download URL snowglobe-1.3.1-py3-none-any.whl
Size 120.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0c522d0c246689a05021850fe4ec46d46fec4f4dda950eb03e97feda4bce1132
BLAKE2b-256 checksum
How to use checksums
725c4ad794c602dfc98c83b2eb8dda083229a7cc6fd713b16a00bced5d392113
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.

Transparency log

Security for snowglobe 1.3.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for snowglobe-1.3.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.3.1 This release

2 release files Full provenance

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