TofuPilotTofuPilot

Python SDK

Integrate test scripts faster with enhanced SDK features and better developer experience.

Python SDK

Our open-source Python client wraps our REST API, so you don't have to. It includes direct storage uploads for better performance, OpenHTF one-line integration, and offline upload helpers. It works well, but we want to make it even simpler to integrate into any test script, evolving from a basic client to a full SDK.

What we want to do:

  • Upload queue to handle cases where the test environment is offline
  • Review API parameter consistency, simplifying where possible (e.g., using native Python types for durations)
  • Improve console logging with clearer messages, links to the TofuPilot app, and direct error references in documentation
  • Smoother onboarding with a CLI-like experience to prompt for missing API keys and proactively resolve issues
  • Auto-generate the Python client structure from our OpenAPI spec, enabling future SDKs (C#, Rust, etc.)
  • Local config file support to offload parameters such as procedure ID from test scripts
  • Higher-level functions for structured logging of phases and measurements instead of requiring users to build a final upload structure manually
  • Real-time streaming of test phases and measurements in non-OpenHTF Python scripts
  • Review dependencies to keep the package as lightweight as possible

What we're not sure about yet:

  • Asynchronous test run uploads after execution
  • Anonymous usage analytics collection in Python to better understand usage patterns, needs, and issues

Status

Status: in_progress
Target: March

On this page