Thoth SDK
sdk v0.1.15 / proxy v0.3.4

Changelog

Release notes for Thoth SDKs, the Thoth binary line (proxy + thothctl), and IaC providers.

All notable changes to Thoth SDKs, the Thoth binary line (thoth + thothctl), and IaC providers are documented here. Releases follow Semantic Versioning. Latest versions: Go v0.1.17 · Python v0.1.16 · TypeScript v0.1.18 · Thoth binary line v0.3.4 · Terraform Provider v0.1.11 · Pulumi Provider v0.1.11.

Release note: This changelog lists customer-facing release versions only. SDK and binary lines are listed at their published release numbers.

Subscribe

  • Direct feed URL: https://docs.atensecurity.com/docs/changelog/rss.xml
  • One-click Feedly subscribe: Feedly
  • One-click Inoreader subscribe: Inoreader

Jump to release

v0.1.18 / v0.3.4June 8, 2026

Enterprise release pathway: Homebrew tap + notarized PKG + supply-chain trust metadata

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.17
  • Python SDK: unchanged at sdk/python/v0.1.16
  • TypeScript SDK: unchanged at sdk/npm/v0.1.18
  • Thoth proxy + thothctl binary line: thoth/v0.3.4
  • Terraform provider: unchanged at v0.1.11
  • Pulumi provider: unchanged at v0.1.11

Enterprise distribution and verification

  • Added Homebrew tap publication flow for atensecurity/homebrew-tap.
  • Added notarized macOS PKG release pathway for MDM deployments (Jamf/Intune/Kandji).
  • Published Santa trust metadata (santa-metadata.json) and signing metadata for endpoint allowlisting.
  • Expanded release metadata set: SBOMs (CycloneDX + SPDX), provenance, immutable manifest, checksums, and Sigstore keyless signatures.
  • Added documentation runbooks for release channels, Santa trust policy, Kandji deployment, and deployment validation matrix.
v0.1.18 / v0.3.3May 14, 2026

MODIFY, DEFER, and complete MOSES decision envelope across Python, Go, and TypeScript

This release line publishes:

  • Go SDK: sdk/go/v0.1.17
  • Python SDK: unchanged at sdk/python/v0.1.16
  • TypeScript SDK: sdk/npm/v0.1.18
  • Thoth proxy + thothctl binary line: unchanged at thoth/v0.3.3
  • Terraform provider: unchanged at v0.1.11
  • Pulumi provider: unchanged at v0.1.11

Two new decision outcomes

  • MODIFY — the enforcer rewrites tool arguments before execution. The governed wrapper calls the tool with the modified args. PolicyViolationError / ThothPolicyViolation is not raised — execution proceeds with policy-applied arguments. The audit trail carries both the original request and the modification reason.
  • DEFER — the enforcer signals the caller to retry after a specified timeout. Different from STEP_UP: no human approval required, time-bounded, and recoverable by design. The error surfaces deferTimeoutSeconds / DeferTimeoutSeconds for caller-side retry logic.

Legacy enforcer aliases normalize automatically: TRANSFORM→MODIFY, HOLD/DEFERRED→DEFER, DENY→BLOCK, CHALLENGE/ESCALATE→STEP_UP.

Full MOSES ML decision envelope in SDK error types

PolicyViolationError (Go) and ThothPolicyViolation (Python and TypeScript) now carry six new fields from the MOSES two-tier enforcement path:

FieldDescription
decision_envelope_version / DecisionEnvelopeVersionSchema version of the enforcer response — for forward-compatibility checks
enforcement_trace_id / EnforcementTraceIDCorrelation ID following the request through enforcer → fast-ML → deep-LLM
fastml_features / FastMLFeaturesONNX fast-ML feature vector used to score the request
score_components / ScoreComponentsComposite risk score breakdown by component (scope, velocity, identity binding, etc.)
top_contributors / TopContributorsRanked list of highest-weight features that drove the decision
decision_evidence / DecisionEvidenceRaw evidence fields from the enforcer response envelope

These fields are available directly on the caught exception — no additional API calls needed for incident reporting or audit trail reconstruction.

Canonical observe mode

shadow is no longer part of the public SDK surface. The canonical enforcement mode is observe. The enforcer and all three SDKs continue to accept shadow as an alias — no config changes required in running deployments.

Expanded policy context propagation

ThothConfig / Config now accepts environment, enforcement_trace_id, session_intent, purpose, data_classification, and task_context. All fields are forwarded on every enforcement call.

HTTP diagnostics

Improved error messages for 401/403 enforcer responses with actionable hints about API key scope and ingest token configuration.

v0.1.17 / v0.3.3May 10, 2026

Proxy 0.3.3 and provider 0.1.7 release alignment

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.15
  • Python SDK: sdk/python/v0.1.16
  • TypeScript SDK: sdk/npm/v0.1.17
  • Thoth proxy + thothctl binary line: thoth/v0.3.3
  • Terraform provider: v0.1.7
  • Pulumi provider: v0.1.7

Docs and release consistency

  • Promoted Thoth CLI/proxy docs to the thoth/v0.3.3 binary line.
  • Standardized provider references on v0.1.7 across Terraform and Pulumi docs.
v0.1.16 / v0.3.0May 5, 2026

Org API key auth for IaC + Thoth 0.3.0 release line

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.15
  • Python SDK: unchanged at sdk/python/v0.1.15
  • TypeScript SDK: unchanged at sdk/npm/v0.1.16
  • Thoth proxy + thothctl binary line: thoth/v0.3.0
  • Terraform provider: v0.1.3
  • Pulumi provider: v0.1.2

Infrastructure-as-code provider releases

  • Added org-level API key auth for provider workflows and preserved bearer-token compatibility.
  • Standardized CI/CD auth through THOTH_API_KEY for Terraform and Pulumi provider usage.
  • Updated provider release notes and docs for dual-auth guidance.

Thoth binary line release

  • Published thoth/v0.3.0 and aligned customer-facing install/version references.
  • Updated release docs to reflect the current stable binary line for thoth and thothctl.
v0.1.15 / v0.2.23April 30, 2026

Canonical release lines, Secrets Broker GA docs, and ingest resilience

This release line publishes:

  • Go SDK: sdk/go/v0.1.14
  • Python SDK: sdk/python/v0.1.14
  • TypeScript SDK: sdk/npm/v0.1.15
  • Thoth endpoint runtime: thoth/v0.2.23

Release and upgrade clarity

  • Standardized customer docs on canonical release channels (thoth/v* for endpoint runtime, sdk/* for SDKs).
  • Updated install and quick-reference pages to reflect current stable versions and package constraints.

Operator workflows

  • Added customer-ready strict-mode Secrets Broker examples for MCP tools (for example Figma, Notion, and Stitch host bindings).
  • Documented fail-closed token handling patterns for endpoint runtime use without storing long-lived tokens in local tool config.

Runtime resilience

  • Hardened telemetry ingest behavior for intermittent 403/edge enforcement failures to reduce dropped event noise and improve operator troubleshooting.
v0.1.14 / v0.2.22April 28, 2026

SDK log-level controls + governance envelope hardening

This release line publishes:

  • Go SDK: sdk/go/v0.1.13
  • Python SDK: sdk/python/v0.1.13
  • TypeScript SDK: sdk/npm/v0.1.14
  • Thoth endpoint runtime: thoth/v0.2.22

SDK diagnostics and enforcement traceability

  • Added SDK log-level controls across Go, Python, and TypeScript for cleaner operator debugging.
  • Improved STEP_UP token and enforcement trace diagnostics to make approval-path troubleshooting faster.

Thoth control-plane hardening

  • Unified auth/delegation envelope fields across control-plane and runtime services.
  • Added stricter default purpose-class enforcement and promotion lifecycle guardrails.
  • Hardened model-router policy behavior and admin settings integration for safer runtime rollout control.
  • Clarified API key redaction output and governance feed query UX.
v0.5.5 / v0.2.20April 27, 2026

Tenant-scoped telemetry and API-key hardening

This release line publishes:

  • Go SDK: sdk/go/v0.1.11
  • Python SDK: sdk/python/v0.5.4
  • TypeScript SDK: sdk/npm/v0.5.5
  • Thoth endpoint runtime: thoth/v0.2.20

SDK telemetry isolation

  • Go, Python, and TypeScript SDK ingestion paths now align to tenant-scoped telemetry/event IDs to avoid cross-tenant event collisions.
  • Instrumentation payload models were updated to preserve scoped event identity throughout ingest and normalization.

Endpoint runtime management

  • Improved API key management UX and guidance for scope-aware authorization.
  • Set a secure 90-day default API key expiry with proactive warnings for near-expiry keys.
  • Fixed shadow mode STEP_UP visibility so review-to-agent-registry flows surface approval state consistently.
v0.5.4 / v0.2.19April 26, 2026

In-place runtime update experience

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.10
  • Python SDK: unchanged at sdk/python/v0.5.3
  • TypeScript SDK: unchanged at sdk/npm/v0.5.4
  • Thoth endpoint runtime: thoth/v0.2.19

Lifecycle management

  • Added in-place update workflows for endpoint runtime and admin tooling.
  • Each command checks GitHub Releases, verifies asset checksums (checksums.sha256), and installs only verified binaries.
  • --force is supported for explicit reinstallation of the latest release.

Customer docs

  • Updated external docs to reflect current Thoth binary line v0.2.19.
  • Added update workflow guidance so operators can keep binaries current without reinstall scripts.
v0.5.4 / v0.2.18April 26, 2026

Scoped key reliability + SDK ingest auth parity

This release line publishes:

  • Go SDK: sdk/go/v0.1.10
  • Python SDK: unchanged at sdk/python/v0.5.3
  • TypeScript SDK: sdk/npm/v0.5.4
  • Thoth endpoint runtime: thoth/v0.2.18

SDK ingest reliability

  • Go and TypeScript SDK emitters now send both Authorization: Bearer ... and X-Api-Key headers on ingest calls to match enforcer/runtime expectations.
  • Non-2xx ingest failures now log the HTTP status, target URL, and a safe response-body snippet to speed up debugging.

API key management

  • API key creation and authorization flows now support explicit scope selectors:
    • --organization
    • --fleet-id
    • --endpoint-id
    • --agent-id
  • Command help now explains key scope vs runtime context matching in plain language.
  • Authorization output now includes clear hints when validation fails due to expiry, permission mismatch, or scope mismatch.

Operator docs

  • Public runbooks now use explicit scope flags in API key command examples so customer operators can copy/paste known-good commands.
v0.1.6 / v0.2.8April 24, 2026

Python SDK ThothClient Backward-Compatibility Export

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.5
  • Python SDK: unchanged at sdk/python/v0.1.6
  • TypeScript SDK: unchanged at sdk/npm/v0.1.6
  • Thoth binary line: unchanged at thoth/v0.2.8

Python SDK (aten-thoth)

  • Restored from thoth import ThothClient compatibility export.
  • Added legacy method aliases (wrap, wrap_openai_tools, wrap_anthropic_tools) that delegate to current instrument* APIs.

Documentation

  • Python SDK README now includes a legacy compatibility section for ThothClient.
  • Docs-site Python SDK reference now calls out preferred module-level APIs and legacy ThothClient support.
v0.1.6 / v0.2.8April 22, 2026

Headless operations improvements

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.5
  • Python SDK: unchanged at sdk/python/v0.1.6
  • TypeScript SDK: unchanged at sdk/npm/v0.1.6
  • Thoth endpoint runtime: thoth/v0.2.8

Fleet management + MDM providers

  • Added tenant-scoped MDM provider configuration and sync workflows for Jamf and Intune.
  • Fleet management now supports on-demand provider inventory synchronization to upsert endpoint records.
  • Provider sync now supports default fleet and environment mapping for imported endpoints.

Headless control plane

  • Admin tooling is now documented as the default path for no-dashboard bootstrap and updates.
  • New headless operations section covers API-driven and automation-driven orchestration patterns.
  • Documentation now emphasizes customer-run automation workflows without dashboard dependency.
  • SIEM/PAM integration guidance is now aligned to API-first and CI-driven operations.
  • Added browser control-plane workflows for provider, policy, and enrollment management across supported browsers.
  • Added browser sync workflows for endpoint-side policy resolution and managed artifact application (applied/rendered/dry_run) to support mixed browser fleets.

Manual endpoint enrollment

  • Fleet management now provides generated re-enrollment scripts for endpoints not associated with a fleet.
  • Direct endpoint enrollment supports optional fleet assignment through THOTH_FLEET_ID.
  • Endpoint health state remains current through periodic proxy check-ins.

Documentation

  • Added external-facing docs for MDM provider sync and manual endpoint enrollment flow.
  • Proxy install docs now default to thoth/v0.2.8.
  • Added public-platform delivery workflows: Terraform-based public repo bootstrap and CI mirroring for provider/runbook content.
v0.1.6 / v0.2.7April 21, 2026

Proxy Identity Defaults + Enforcer Context-Diff Warnings

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.5
  • Python SDK: unchanged at sdk/python/v0.1.6
  • TypeScript SDK: unchanged at sdk/npm/v0.1.6
  • MCP Proxy: thoth/v0.2.7

MCP Proxy (thoth binary)

  • Endpoint identity resolution now defaults to immutable machine identity (Intune/Jamf managed ID override, then OS machine ID), with hostname only as last-resort fallback.
  • THOTH_USER_ID remains required and must be a valid email address.
  • enforcer_url and govapi_url are inferred from tenant_id + apex_domain.
  • --enforcer-url / THOTH_ENFORCER_URL are now deprecated and ignored.

Enforcer

  • Requests with valid keys now proceed even when endpoint/fleet scope context does not match exactly; enforcer emits warnings for follow-up.
  • Tenant user-domain mismatches are now warn-only when key validation succeeds.

Documentation

  • Customer docs now reflect thoth/v0.2.7 defaults for identity, URL inference, and runtime env expectations.
v0.1.6 / v0.2.3April 20, 2026

Wrap-Config Env Injection + Simpler Endpoint Routing

This release line publishes:

  • Go SDK: unchanged at sdk/go/v0.1.5
  • Python SDK: unchanged at sdk/python/v0.1.6
  • TypeScript SDK: unchanged at sdk/npm/v0.1.6
  • MCP Proxy: thoth/v0.2.3

MCP Proxy (thoth binary)

  • thoth wrap-config now supports repeatable --env KEY=VALUE to inject runtime environment values directly into selected MCP server entries.
  • Wrap output remains idempotent and now reports environment changes when values are updated.
  • Fleet registration URL handling is simplified:
    • govapi_url is derived automatically from tenant_id + apex_domain as https://grid.<tenant>.<apex-domain>.
    • enforcer_url is derived automatically as https://enforce.<tenant>.<apex-domain> when not explicitly set.
    • legacy gov_api_url compatibility paths are removed.
  • Runtime identity hardening:
    • THOTH_USER_ID must be a valid email address.
    • customer domain policy is enforced centrally by enforcer tenant metadata (admin-managed), with automatic request blocking for non-matching user domains.

Documentation

  • Customer-facing docs are updated for v0.2.3.
  • Proxy setup examples now use supported wrap-config flags and document inline environment injection via --env.
v0.1.6 / v0.2.2April 19, 2026

Fail-Closed Enforcement + Canonical Contract Parity

This release line publishes:

  • Go SDK: sdk/go/v0.1.5
  • Python SDK: sdk/python/v0.1.6
  • TypeScript SDK: sdk/npm/v0.1.6
  • MCP Proxy: thoth/v0.2.2

Proxy + SDK enforcement behavior

  • Go and proxy paths now enforce fail-closed posture on enforcer/runtime failures.
  • Enforcement payload contract is normalized to canonical fields:
    • tool_args
    • enforcement_trace_id
    • user_id, approved_scope, session_intent, session_tool_calls
  • Session tool-call history is bounded to the latest 128 calls for parity across Go and proxy paths.

Documentation

  • Docs now reflect fail-closed behavior in SDK guidance and security posture sections.
  • Version banners and docs-site changelog are updated for the latest SDK/proxy releases.
v0.1.3 / v0.2.0April 15, 2026

Telemetry Metadata + Policy Context Propagation

This release publishes:

  • Go SDK: unchanged at sdk/go/v0.1.2
  • Python SDK: sdk/python/v0.1.3
  • TypeScript SDK: sdk/npm/v0.1.3
  • MCP Proxy: thoth/v0.2.0 (public release: atensecurity/thoth v0.2.0)

Python SDK (aten-thoth)

  • BehavioralEvent now includes endpoint context fields:
    • endpoint_id
    • hostname
  • BehavioralEvent now includes WORM chain evidence fields:
    • chain_index
    • hash
    • previous_hash
    • signature
  • Dependency lock/metadata refreshed as part of the SDK patch line.

TypeScript SDK (@atensec/thoth)

  • Enforcer payload now propagates:
    • tool_args
    • user_id
    • metadata.policy_context
    • enforcement_trace_id
  • ThothConfig adds:
    • policyContext
    • enforcementTraceId
  • Instrumentation now serializes tool call arguments safely before enforcement checks.

MCP Proxy (thoth binary)

  • Emitted events now include normalized top-level endpoint metadata:
    • endpoint_id
    • hostname
  • Event metadata includes hostname consistently for downstream pipelines.
  • MCP proxy distribution now uses the cross-platform thoth binary release line.
  • Docs + install path standardized to:
    • curl -fsSL https://install.atensecurity.com/thoth | sh
    • GitHub release assets from atensecurity/thoth
v0.1.2April 10, 2026

Tenant API URL Contract + Session Intent Enforcement

This release publishes v0.1.2 for all Thoth SDKs:

  • Go: sdk/go/v0.1.2
  • Python: sdk/python/v0.1.2
  • TypeScript: sdk/npm/v0.1.2

Unified SDK API URL contract

  • Go, Python, and TypeScript SDKs now use a single tenant API URL for both:
    • policy enforcement (POST /v1/enforce)
    • behavioral event ingestion (POST /v1/events/batch)
  • SDK startup now requires tenant API URL configuration via:
    • explicit config (APIURL / api_url / apiUrl)
    • or THOTH_API_URL
  • Removed SDK fallbacks to hosted global defaults and split endpoint semantics.

Go SDK

  • NewClient now fails fast when APIURL is missing.
  • Examples and tests updated to pass THOTH_API_URL explicitly.
  • SDK docs now include required env setup and quickstart examples.

Python SDK

  • ThothConfig now requires tenant API URL resolution (api_url or THOTH_API_URL) and enforces a single URL contract.
  • resolved_enforcer_url now follows the single-URL contract and mirrors resolved_api_url.
  • session_intent is now accepted in config and passed to enforcement payloads.
  • Step-up polling now sends auth headers when api_key is present.

TypeScript SDK

  • Removed HOSTED_API_URL fallback and split enforcer semantics.
  • instrument() now throws at startup when apiUrl/THOTH_API_URL is missing.
  • Enforcement and event emission now route through the same tenant API URL.
  • sessionIntent is now supported in config and forwarded to enforcement payloads.
  • Runtime/test baseline updated and validated for Node.js 18+ compatibility.
v0.1.1March 31, 2026API Contract Fixes

This patch release fixes critical mismatches between the Go and TypeScript SDKs and the enforcement API. All SDK consumers on v0.1.0 should upgrade.

Go SDK (github.com/atensecurity/thoth-go)

  • Critical enforcement compatibility and decision-handling fixes across request/response mapping.
  • Endpoint and schema alignment updates for stable enforcement and step-up behavior.
  • Improved client metadata propagation and response observability fields.

TypeScript SDK (@atensec/thoth)

  • emitBehavioralEvent was not exported from the package root. It is now accessible via import { emitBehavioralEvent } from "@atensec/thoth".

REST API documentation

  • All endpoint paths, request field names (corrected to snake_case), response schemas, and HTTP status codes in the API reference now match the actual backend.
v0.1.0March 30, 2026

First General Availability Release

This is the first general-availability release of the Thoth SDK. All three language SDKs (Python, Go, TypeScript) are stable and production-ready.

Hosted API — single API key, zero infrastructure

The Thoth enforcement and event ingestion API is now hosted at https://api.atensecurity.com. Authentication requires a single THOTH_API_KEY — no AWS credentials, no infrastructure setup. All three SDKs pick it up automatically from the environment.

export THOTH_API_KEY="thoth_live_your_key_here"

Python SDK (thoth-sdk)

  • instrument(agent, ...) — Instrument any AI agent with a .tools attribute. Auto-detects LangChain AgentExecutor and CrewAI Agent via duck-typing.
  • instrument_anthropic(tool_fns, ...) — Wrap tool execution functions for Anthropic Claude agentic loops. Returns a governed dict[str, Callable].
  • instrument_openai(tool_fns, ...) — Wrap tool execution functions for OpenAI tool-calling loops.
  • ThothPolicyViolation exception — raised when the enforcer blocks a tool call. Fields: tool_name, reason, violation_id.
  • get_current_session() — Access the active session context from within a governed tool call.
  • ThothConfig — Pydantic model with full field validation.
  • EnforcementMode enum — observe | progressive | step_up | block.
  • LangGraph and CrewAI integrations — auto-detected via duck-typing.

Go SDK (github.com/atensecurity/thoth-go)

  • NewClient(Config) — Initialize the Thoth client with env-var fallback.
  • Client.WrapTool / Client.WrapToolFunc — wrap string and map tool functions.
  • Client.StartSession(ctx, agentID, sessionID) — per-request session isolation.
  • PolicyViolationError, StepUpRequiredError — typed error values.
  • Fail-open guarantee — enforcer unreachable never blocks tool execution.

TypeScript SDK (@atensec/thoth)

  • instrument<T>(agent, config) — generic agent instrumentation; preserves TypeScript types.
  • wrapAnthropicTools / wrapOpenAITools — sub-path imports for framework-specific wrappers.
  • ThothPolicyViolation — extends Error. Fields: toolName, reason, violationId.
  • EnforcementMode enum, ThothConfig interface, BehavioralEvent interface.
  • Async generator support and strict: true compilation.

REST API (https://api.atensecurity.com)

  • POST /v1/events/batch — up to 100 events per batch; idempotent via event_id; 90-day retention.
  • POST /v1/enforce — returns ALLOW | BLOCK | STEP_UP with progressive anomaly scoring.
  • GET /v1/enforce/hold/{hold_token} — returns pending | approved | denied | expired.
  • Rate limits: 1,000 req/min (events), 500 req/min (enforce), 200 req/min (hold) per tenant.
ModeBehavior
observeLog and emit events only. Never block.
progressiveEscalating enforcement based on session anomaly scoring. Default.
step_upAlways require human approval for out-of-scope tools.
blockImmediately reject with ThothPolicyViolation.

On this page