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

# SDKs & CLI

> Official client libraries and command-line tools for Hexel Studio.

The SDKs wrap the REST API so you can work in Python or TypeScript without constructing raw HTTP requests. They handle authentication, token refresh, and pagination for you. The CLI handles infrastructure tasks — deploying agents, managing sandboxes, checking usage — from your terminal. Pick whichever fits your workflow.

Hexel Studio offers official SDKs for Python and TypeScript, plus two command-line tools. Each provides programmatic access to Compute, Orchestration, and the Tool Gateway, with authentication and token refresh handled automatically.

## Choose your tool

<CardGroup cols={2}>
  <Card title="Python SDK" icon="python" href="/docs/sdks/python/quickstart">
    `pip install hexel` — Python 3.10+
  </Card>

  <Card title="TypeScript SDK" icon="js" href="/docs/sdks/typescript/quickstart">
    `npm install hexel-sdk` — Node.js 18+
  </Card>

  <Card title="CLI (hexel)" icon="square-terminal" href="/docs/sdks/cli/quickstart">
    Infrastructure and resource management from your terminal.
  </Card>
</CardGroup>

## SDK coverage

| Area                                               |  Python (`hexel`)  |   TypeScript (`hexel-sdk`)  |
| -------------------------------------------------- | :----------------: | :-------------------------: |
| Compute (sandboxes, agents, instances)             |          ✓         |              ✓              |
| Orchestration (tasks, fleets, approvals, policies) |          ✓         |              ✓              |
| Tools (Tool Gateway)                               |   `client.tools`   | `client.orchestrator.tools` |
| Agent runtime helpers                              |  `client.runtime`  |       `client.runtime`      |
| LLM auto-instrumentation                           | `hexel.instrument` |              —              |

<Warning>
  There is no `client.compute.instance.deploy()` in either SDK. Deploy instances via the REST API or the `hexel` CLI. The SDKs manage instances after deployment (list, get, stop, redeploy, delete).
</Warning>

<Note>
  The Data Platform (knowledge, memory, connectors) is accessed via the REST API and Console, not the SDKs.
</Note>

## Two CLIs

| Tool        | For                | Commands                                                                     |
| ----------- | ------------------ | ---------------------------------------------------------------------------- |
| **`hexel`** | Platform operators | `compute`, `fleet`, `task`, `tools`, `policy`, `approval`, `runtime`, `auth` |

## Authentication

All clients support both methods and read the same environment variables:

<Tabs>
  <Tab title="Python">
    ```python theme={"dark"}
    from hexel import Hexel

    client = Hexel(api_key="YOUR_API_KEY")
    # or
    client = Hexel(client_id="YOUR_CLIENT_ID", client_secret="YOUR_CLIENT_SECRET")
    ```
  </Tab>

  <Tab title="TypeScript">
    ```typescript theme={"dark"}
    import { Hexel } from "hexel-sdk";

    const client = new Hexel({ apiKey: "YOUR_API_KEY" });
    // or
    const client = new Hexel({ clientId: "YOUR_CLIENT_ID", clientSecret: "YOUR_CLIENT_SECRET" });
    ```
  </Tab>

  <Tab title="CLI">
    ```bash theme={"dark"}
    export HEXEL_API_KEY="YOUR_API_KEY"
    hexel auth login
    ```
  </Tab>
</Tabs>

See [Authentication](/docs/getting-started/authentication) for details on token exchange and refresh.

## Next steps

Pick a tool above, or start with the [Python SDK quickstart](/docs/sdks/python/quickstart).
