Skip to main content

Generic leaf helpers, settings primitives, pooled clients, and LLM/AI factories for the TAI ecosystem.

Project description

tai42-kit

License: Apache 2.0

Generic leaf helpers, settings primitives, pooled clients, and LLM/AI factories for the TAI ecosystem. It provides the reusable building blocks the server is composed from: data and text transforms, LangChain/FastMCP/MCP tool glue, the pooled-client facade and concrete drivers (redis, curl, mcp, postgres, http), the SSRF URL guard and safe download, MCP client transports over a UDS socket, the settings machinery, LLM/embedding factories with checkpoint/store backends, and logging setup. Heavier backends are gated behind extras and imported lazily. Typed package (py.typed).

Position in the ecosystem

TAI is an open-source runtime for MCP tools, agents, and workflows — the server that hosts a capability and supplies the operational layer around it (manifest loading, access control, OAuth connectors, background execution, monitoring, storage, and human-in-the-loop steps).

Three packages; each depends only on the ones to its left:

tai42-contract  <--  tai42-kit  <--  tai42-skeleton
(interfaces)      (helpers)     (the server)

tai42-kit obeys the leaf rule: its only tai-* dependency is tai42-contract. It implements the contract's BaseClient Protocol and consumes its manifest types; among tai-* packages it depends on nothing else.

Install

Requires Python 3.13+. Install from PyPI into the environment that runs the server:

uv add tai42-kit

Or from source — clone this repo and add it as an editable dependency; the tai42-* dependencies resolve in-tree from the workspace.

git clone https://github.com/tai42ai/tai42   # next to your app checkout
cd /path/to/your/app
uv add --editable ../tai42/core/kit

Backends are gated behind extras, so install the ones you need — e.g. the pooled-client drivers tai42-kit[redis], tai42-kit[postgres], tai42-kit[curl], the checkpoint/store backends tai42-kit[langgraph-checkpoint-postgres], tai42-kit[langgraph-checkpoint-sqlite], and LLM-provider backends like tai42-kit[anthropic], tai42-kit[google], tai42-kit[mistral], tai42-kit[xai], tai42-kit[ollama], tai42-kit[huggingface].

Development

uv venv --python 3.13
uv pip install --no-sources --editable ".[dev,llm,jq,uvicorn,redis,curl,postgres]"
uv run --no-sync ruff check .
uv run --no-sync ruff format --check .
uv run --no-sync pyright       # 0 errors; missing optional ML backends report as warnings
uv run --no-sync pytest --cov --cov-report=term-missing        # optional-extra tests skip if their extra is absent

See CONTRIBUTING.md for the rules.

Documentation

The whole platform — concepts, guides, and the generated reference — lives in the unified documentation site:

License

Apache-2.0. See LICENSE and NOTICE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tai42_kit-0.3.0.tar.gz (78.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tai42_kit-0.3.0-py3-none-any.whl (95.8 kB view details)

Uploaded Python 3

File details

Details for the file tai42_kit-0.3.0.tar.gz.

File metadata

  • Download URL: tai42_kit-0.3.0.tar.gz
  • Upload date:
  • Size: 78.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tai42_kit-0.3.0.tar.gz
Algorithm Hash digest
SHA256 cf1c9009536502cc3de42faec1c91910bc4ca9851d8f2a53ae2c07e853b76f56
MD5 c00a7b1720acf322e9543165b303970b
BLAKE2b-256 4e63a949b3ace90b8258130d56d17eb475c0360893fc0b6dffb9fdfc219dd2ed

See more details on using hashes here.

File details

Details for the file tai42_kit-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: tai42_kit-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 95.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tai42_kit-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0271eaf2c9ef3623bcf8840d86f0b3b60128066c6fc65c38424b4386ce9506c6
MD5 d10a6f8fa521c66bd9bdc3cccd07c4ab
BLAKE2b-256 bf01f5d6e2eba259e094fc444f3cf1f42f5782f6a6a4c270a32db60c8a84191b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page