> ## Documentation Index
> Fetch the complete documentation index at: https://docs.honeyhive.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# SDK Overview

> Choose the right HoneyHive SDK for your use case

## Python OTEL SDK (Recommended)

HoneyHive provides a full-featured Python SDK built on OpenTelemetry for comprehensive tracing, observability, and evals.

<CardGroup cols={2}>
  <Card title="Python SDK - Reference Docs" icon="python" href="https://honeyhiveai.github.io/python-sdk/">
    Complete API reference documentation
  </Card>

  <Card title="Python SDK - GitHub" icon="github" href="https://github.com/honeyhiveai/python-sdk">
    Source code and examples
  </Card>
</CardGroup>

### Key Features

* **OpenTelemetry-based** - Follows GenAI semantic conventions and W3C Trace Context with automatic context propagation. [Learn more](/v2/tracing/introduction#opentelemetry-architecture)
* **Auto-instrumentation** - Automatically trace major model providers and agent frameworks using OpenTelemetry instrumentors
* **Custom instrumentation** - Built-in utilities like `@trace`, `enrich_span()`, and context managers for manual tracing
* **BYOI architecture** - Install only the instrumentors you need without dependency conflicts or version lock-in. [Learn more](/v2/tracing/introduction#byoi-bring-your-own-instrumentor)
* **Multi-instance support** - Run isolated tracer instances for multi-tenant apps or environment-based routing. [Learn more](/v2/tracing/introduction#multi-instance-tracing)

***

## TypeScript API SDK

The [`@honeyhive/api-client`](/v2/sdk-reference/typescript-sdk-ref) package gives you a type-safe TypeScript client for the HoneyHive REST API. Browse the generated reference for the full client surface.

<CardGroup cols={2}>
  <Card title="TypeScript API SDK - Reference" icon="js" href="/v2/sdk-reference/typescript-sdk-ref">
    Full generated reference for `@honeyhive/api-client`
  </Card>
</CardGroup>

***

## HoneyHive CLI

The HoneyHive CLI lets you work with HoneyHive from your terminal. Use it for scripting, automation, CI workflows, and AI coding agents like Cursor and Claude Code.

<CardGroup cols={2}>
  <Card title="CLI Docs" icon="terminal" href="/v2/sdk-reference/cli">
    Find installation steps and generated command reference links
  </Card>

  <Card title="Use with Coding Agents" icon="robot" href="/v2/introduction/ai-coding-agents">
    Combine the CLI with HoneyHive Skills and Docs MCP
  </Card>
</CardGroup>

***

## OpenAPI Client (Any Language)

HoneyHive publishes a [public OpenAPI specification](https://github.com/honeyhiveai/honeyhive-openapi) that fully describes our REST API. Every team can use their preferred open-source client generator to produce a lightweight client in their respective language on top of our public OpenAPI spec.

<CardGroup cols={2}>
  <Card title="OpenAPI Client" icon="code" href="/v2/sdk-reference/openapi-sdks">
    Generate type-safe clients in any language
  </Card>

  <Card title="OpenAPI Spec (GitHub)" icon="github" href="https://github.com/honeyhiveai/honeyhive-openapi">
    Browse the full OpenAPI specification
  </Card>
</CardGroup>

### When to Use OpenAPI Clients

Generated OpenAPI clients have no external dependencies beyond your language's standard HTTP libraries, making them ideal for:

* **Any language** - Go, Java, Ruby, Rust, C#, PHP, or any language with an OpenAPI generator
* **Serverless environments** - AWS Lambda, Google Cloud Functions, Azure Functions where package size matters
* **Regulated environments** - Industries with strict security requirements where adding dependencies is difficult
* **Full control** - Customize the generated code, extend it, or integrate it directly into your existing codebase

***

## Quick Comparison

| Feature                    | Python OTEL SDK                           | TypeScript API SDK                | HoneyHive CLI                          | OpenAPI Client (Generated)                          |
| -------------------------- | ----------------------------------------- | --------------------------------- | -------------------------------------- | --------------------------------------------------- |
| **Dependencies**           | OpenTelemetry + provider SDKs             | openapi-fetch + axios             | Single binary                          | Zero external dependencies                          |
| **Auto-instrumentation**   | Yes (via BYOI)                            | No - manual API calls             | N/A                                    | No - manual API calls                               |
| **Custom instrumentation** | `@trace`, `enrich_span`, `enrich_session` | Type-safe REST methods            | N/A                                    | Type-safe generated client                          |
| **Context propagation**    | Automatic                                 | Manual                            | N/A                                    | Manual                                              |
| **Language**               | Python                                    | TypeScript / Node.js              | Shell / CI                             | Any language with an OpenAPI generator              |
| **Setup effort**           | Low - auto-traces LLM calls               | Low - install and run             | Low - one binary, no runtime           | Low - generate and use                              |
| **Use case**               | Most Python applications                  | TypeScript / Node.js applications | Automation, CI, and terminal workflows | Other languages, serverless, regulated environments |

***

## Getting Started

<CardGroup cols={2}>
  <Card title="Quick Start Guide" icon="rocket" href="/v2/tutorials/add-tracing-5min">
    Add tracing to your app in 5 minutes
  </Card>

  <Card title="Integrations" icon="plug" href="/v2/integrations/openai">
    Browse framework and provider integrations
  </Card>
</CardGroup>
