Skip to main content

Rust-core, Python-facade framework for enterprise agentic systems.

Project description

tako 蛸

Rust-core, Python-facade framework for enterprise agentic systems.

Many arms, one mind.

CI PyPI License: Apache-2.0

tako is an open-source framework for building production agentic systems. It gives you vendor-neutral provider abstractions, a Rust orchestration core that keeps Python's GIL out of the hot path, MCP tool connectivity, and the governance plumbing (OTel tracing, OPA policy, PII redaction, budgets, circuit breakers) you actually need at scale — all with a Pythonic, dual sync/async API that ships as one pip install.

Inspiration & credit

tako is an open-source generalisation of three patterns Sakana AI published, plus AB-MCTS tree search:

  1. Trinity-style learned routing — a small model selects which provider/role handles each step. Xu et al., "TRINITY: An Evolved LLM Coordinator," arXiv:2512.04695.
  2. Conductor-style natural-language orchestration — a coordinator agent decomposes tasks and dispatches workers. Nielsen et al., "Learning to Orchestrate Agents in Natural Language with the Conductor," arXiv:2512.04388.
  3. Self-recursive test-time scaling — bounded recursion in which an agent reads its own output and decides whether to spin up corrective workflows. See Sakana AI's Fugu Beta blog post.
  4. AB-MCTS — Adaptive Branching Monte Carlo Tree Search. Inoue et al., arXiv:2503.04412; reference implementation by Sakana AI as TreeQuest (Apache-2.0).

tako is an independent open-source project. It is not affiliated with, endorsed by, or sponsored by Sakana AI or any model provider. The cited papers are credited as inspiration for the underlying patterns; the implementation is the work of the tako contributors. The name tako ("octopus") complements Sakana AI's "Fugu" (pufferfish) as a tribute.

Install

pip install tako-ai-core

The Python import name is still tako (import tako); the PyPI distribution is tako-ai-core because the bare tako slot was already taken by an unrelated 2011-era project.

No Rust toolchain required at install time — wheels are prebuilt for manylinux, musllinux, macOS universal2, and Windows x64/arm64.

Quickstart

import asyncio
import tako

client = tako.Client(
    providers=[
        tako.providers.Anthropic(model="claude-opus-4-7"),
        tako.providers.OpenAI(model="gpt-5"),
    ],
    mcp_servers=[
        tako.mcp.Stdio(command=["npx", "-y", "@modelcontextprotocol/server-everything"]),
    ],
    tracing=tako.tracing.Otlp(endpoint="http://otel-collector:4317"),
    budget=tako.Budget(max_usd_per_request=5.0, max_usd_per_day=500.0),
)

orch = tako.orchestrator.SingleAgent(
    provider="anthropic:claude-opus-4-7",
    max_steps=10,
)

async def main():
    result = await orch.run("What's the weather in Tokyo? Use a tool.")
    print(result.text)

asyncio.run(main())

# Synchronous sibling:
result = orch.run_sync("Quick question: ...")

Capabilities (current release)

Area What's available today
Providers OpenAI, Anthropic, Azure OpenAI, AWS Bedrock, Google Vertex (Gemini), Mistral, Ollama, plus an http-generic template adapter and a PythonProvider. All seven SDK-backed providers handle outbound vision content (inline + URL-source); Bedrock + Ollama use opt-in tako-side URL pre-fetch with the full SSRF mitigation stack (private-IP blocklist + DNS-rebind defence + per-host / wildcard / CIDR allowlist).
Orchestrators SingleAgent, Conductor, Trinity (rule-based or ONNX-backed router), SelfCaller (bounded recursion), AbMcts (Adaptive Branching MCTS with verifiers + router-driven branch expansion). All stream natively via OrchEvent.
Streaming Native provider.stream(...) on every SDK-backed provider; per-delta OrchEvent::VerifierScore on Trinity, Conductor, AbMcts (bounded mpsc::channel(64) for backpressure); streaming-aware ConfidenceGuard (RuleBasedGuard + opt-in LlmJudgeGuard per-N-delta).
MCP Stdio, Streamable HTTP (with notifications() SSE + Mcp-Session-Id lifecycle), WebSocket, gRPC (with mTLS).
OpenAI-compat HTTP server (tako-compat) Drop-in /v1/chat/completions with tako.* SSE extensions (tako.verifier_score, tako.recursion, tako.tool_call_*). Pluggable AuthResolver: static, JWT, OIDC, Vault, plus a composite ChainedAuthResolver with opt-in transport / infrastructure-error fail-fast. OIDC introspection ships every RFC 7662 / 8414 / 8705 auth method including mTLS with explicit cert/key rotation.
Governance OPA / Rego policy (Allow / Deny / RedactMessages / ForceModel / RequireApproval), PII / DLP redaction, OTel tracing with tako.* + gen_ai.* semconv, in-memory + Redis budgets, circuit breakers, rate limits.
Sigstore Tool-catalogue keyed + keyless verification with operator-pinned trust roots, Rekor SET + inclusion-proof + checkpoint freshness anchor (in-memory / on-disk JSON / Redis-backed StateStore), cosign protobuf-bundle.
Reliability Cascade fallback, governor rate-limit, failsafe circuit breaker, exponential-jitter retry.
API surface Sync + async dual API; mypy-strict types; full Pydantic v2 facade.

For the chronological ledger of which capability landed in which phase (33 phases × 17 rows), see docs/feature_matrix.md or the Feature matrix page on the docs site.

Project history

The project ships in numbered phases. The rolling per-phase index lives in PLAN.md, individual plan documents under plans/, and the per-version release notes in CHANGELOG.md.

For a high-level summary of what shipped when, the docs site has a Feature matrix page (source).

Community

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

tako_ai_core-0.51.1-cp310-abi3-win_arm64.whl (12.4 MB view details)

Uploaded CPython 3.10+Windows ARM64

tako_ai_core-0.51.1-cp310-abi3-win_amd64.whl (13.3 MB view details)

Uploaded CPython 3.10+Windows x86-64

tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_x86_64.whl (13.9 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_aarch64.whl (13.1 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_x86_64.whl (13.6 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ x86-64

tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_aarch64.whl (12.9 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ ARM64

tako_ai_core-0.51.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (24.8 MB view details)

Uploaded CPython 3.10+macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file tako_ai_core-0.51.1-cp310-abi3-win_arm64.whl.

File metadata

File hashes

Hashes for tako_ai_core-0.51.1-cp310-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 7030bbb053486a1866c49917dce4c25ebdf1e68105e3978722ff7e4239240661
MD5 f7d0d2ea1a2e76c980f45673a16df0e1
BLAKE2b-256 5544b4b98dd47aabc1af2f6ca19bb033693ca10931635dd00f6568e12b943d41

See more details on using hashes here.

Provenance

The following attestation bundles were made for tako_ai_core-0.51.1-cp310-abi3-win_arm64.whl:

Publisher: wheels.yml on nyankobu010/tako-ai-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tako_ai_core-0.51.1-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for tako_ai_core-0.51.1-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 edd03fd4124010783d1d689b8601ddd127db7ba8203eec9eea06b9c3f9202928
MD5 3e5842e4a221090ab0a570f340e340e4
BLAKE2b-256 ebec5058133e11fd9ac1dab6f837de800a588d5067b1fc3cc5242fb22433fb8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tako_ai_core-0.51.1-cp310-abi3-win_amd64.whl:

Publisher: wheels.yml on nyankobu010/tako-ai-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a5cd10f05b2abfe9b937ffe060217e9cdbd433d4f9eee8177608f881f5863da4
MD5 4cca262964316656085517bbb238ea84
BLAKE2b-256 8ad489ef1b0b1c30a670b558f682562ac1718775cdeca1ec25f97b1a16265f6f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on nyankobu010/tako-ai-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f1fc4251aa7c853cd0bfced39fd186cbfe1b6ff91416b97378e63edae92e1242
MD5 5f70be283f8ebe7a14a622e4135d61cb
BLAKE2b-256 788653f9fc9c8329385f112f226f00ee35f341337602555de0a78d9f84aae489

See more details on using hashes here.

Provenance

The following attestation bundles were made for tako_ai_core-0.51.1-cp310-abi3-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on nyankobu010/tako-ai-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a23a1eaedd33a0cb85261c628cc06e42c96050a317a2e1b06bf59faccce89b53
MD5 d3c9c171b54782b74758df771798071a
BLAKE2b-256 8d5b23f78a3d3967c8362e50d276ea28d94faffc5df23de0031a0786116c7b7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on nyankobu010/tako-ai-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0c13d4c1c718838d2fea1b23bffcb5878cc10b021df641f0fe65c53096628458
MD5 3b1f1805a52bba605d8c32dd651321e1
BLAKE2b-256 216b2f96fa612530959b2881b1bf6aa15d3f08fe794bb81552ff47beb1446d2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tako_ai_core-0.51.1-cp310-abi3-manylinux_2_28_aarch64.whl:

Publisher: wheels.yml on nyankobu010/tako-ai-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tako_ai_core-0.51.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for tako_ai_core-0.51.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 97c05b7910988c429eb9e08abdc461835c5cefd89756e8a874f4ab8d61c6837c
MD5 fc74c4cfaae1c5464b6d1c25159257ac
BLAKE2b-256 d39c88def722ec8e73b95f171d9736a22e39f6bd23f00e40834b260bc6f997cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for tako_ai_core-0.51.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: wheels.yml on nyankobu010/tako-ai-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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