Generic leaf helpers, settings primitives, pooled clients, and LLM/AI factories for the TAI ecosystem.
Project description
tai42-kit
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+. Nothing is on PyPI yet, so install from source. Clone
this repo alongside tai42-contract — this repo's [tool.uv.sources] points at
../tai-contract — then add it as an editable dependency of the environment
that runs the server:
git clone https://github.com/tai42ai/tai-contract
git clone https://github.com/tai42ai/tai-kit
cd tai-skeleton # or your own app checkout
uv add --editable ../tai-kit # once published: uv add tai42-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 sync --extra dev --extra llm --extra jq --extra uvicorn --extra redis --extra curl --extra postgres
uv run ruff check .
uv run pyright # 0 errors; missing optional ML backends are warnings
uv run pytest # 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:
- Layering & the contract/kit/skeleton split: https://tai42.ai/concepts/layering
- Python SDK reference (this package's public API): https://tai42.ai/reference/python-sdk
License
Apache-2.0. See LICENSE and NOTICE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tai42_kit-0.1.0.tar.gz.
File metadata
- Download URL: tai42_kit-0.1.0.tar.gz
- Upload date:
- Size: 75.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1a3b4e5ec0990e59f337e9e3529a4e8c7515b5b51ec9d8ceb7b25230a3ae845
|
|
| MD5 |
4593334271ce5f9777380df152a3a27a
|
|
| BLAKE2b-256 |
b65848a30ddeb8851fc96d5daa345742847904a07d40353a1cbf0b95cccf9a9c
|
File details
Details for the file tai42_kit-0.1.0-py3-none-any.whl.
File metadata
- Download URL: tai42_kit-0.1.0-py3-none-any.whl
- Upload date:
- Size: 91.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80a4a86f70e44de8362b0921f83222f9a3fad45bbd2b084c8fe37605af00175e
|
|
| MD5 |
17be9b7503f82c413477dc3ebd678719
|
|
| BLAKE2b-256 |
3b210e277dce0133620c06b2b1dc6b9704ec6ee96e054bc857cac98e17c742e0
|