# Overview

> Install atensec-thoth for Python, @atensec/thoth for TypeScript, or thoth-go for Go.

Source: https://docs.atensecurity.com/docs/getting-started

Thoth governs agent tool calls before they execute.
Choose a language below. New to Thoth? [Run your first governed
agent](https://docs.atensecurity.com/docs/getting-started/quickstart) for a complete example, including
connection setup and expected results.

## Install an SDK

**Python**

Use Python 3.12 or later. Install in your project's virtual environment:

```bash title="Terminal"
python3 -m venv .venv
source .venv/bin/activate
python -m pip install atensec-thoth
```

With Poetry, use `poetry add atensec-thoth`. The distribution name is
**atensec-thoth**; the Python import is **thoth**:

```python
import thoth
print(thoth.__version__)
```

See the [Python SDK reference](https://docs.atensecurity.com/docs/sdks/python) for generic agents, Anthropic,
OpenAI, and framework-specific adapters. LangGraph uses the explicit
[instrument_langgraph integration](https://docs.atensecurity.com/docs/sdks/langgraph-integration).

**TypeScript**

Use Node.js 22 or later. For a new TypeScript project:

```bash title="Terminal"
npm init -y
npm pkg set type=module
npm install @atensec/thoth
npm install --save-dev tsx typescript @types/node
```

Import from `@atensec/thoth`. Run TypeScript files with `npx tsx <filename.ts>`.
Existing projects can use their own build setup and package manager.
See the [TypeScript SDK reference](https://docs.atensecurity.com/docs/sdks/typescript).

**Go**

Use Go 1.25 or later. In a new directory:

```bash title="Terminal"
go mod init my-governed-agent
go get github.com/atensecurity/thoth-go
```

Import from `github.com/atensecurity/thoth-go`.
See the [Go SDK reference](https://docs.atensecurity.com/docs/sdks/go).

## Connect to your tenant

You need the tenant ID, unified API base URL, and execute key supplied for your
environment. [Trial access and setup](https://docs.atensecurity.com/docs/getting-started/trial-quickstart)
explains each value. The agent's runtime key should be separate from any
organization read/write key used for administration.

Installing a package does not configure server policy. An agent's
`approved_scope` describes its intended tools; the enforcer still decides
whether each action may proceed. Keep fail-open disabled while verifying
those decisions.

## Next step

[Run your first governed agent →](https://docs.atensecurity.com/docs/getting-started/quickstart)

The first-agent guide pins tested package versions. For your own deployments,
lock the version you have validated and review the [changelog](https://docs.atensecurity.com/docs/changelog)
before upgrading.

Managing desktop MCP tools or a fleet instead? Use the [MCP proxy
guide](https://docs.atensecurity.com/docs/mcp/proxy) or [endpoint deployment guides](https://docs.atensecurity.com/docs/deployments).
