Skip to main content

funduq

The network-free core: agents, threads, runs, dispatch, and the protocol adapters. A library you embed, not a server you run.

pip install funduq              # SQLite, the zero-config default
pip install "funduq[postgres]"  # for a real multi-writer deployment

This package implements no transport: its code neither listens nor dials. Serving — an HTTP or gRPC binding for the AG-UI and A2A doors — lives downstream, in funduq-server. What is here is everything that decides: the roster, the run record, dispatch to a connected provider, and translation at the doors.

Two protocols are quoted rather than transcribed. AG-UI shapes come from ag-ui-protocol and A2A's from a2a-sdk, including the method names, so a protocol rename fails at import here instead of at a client six months later.

What you hold

from funduq import CoreSettings, Funduq, A2AAdapter, AGUIAdapter, KyokAdapter

The record, and three carrier-neutral doors that return objects rather than responses. Names resolve on first use, so python -m funduq.migrate does not pay for a door it will not open.

Holding this obliges you, and the obligations come in two kinds: the ones core can be given are required arguments and fail at the first request, and the ones core cannot observe are yours alone. Which is which is written down.

What you get

  • Agents, threads and runs — a run is one turn of an agent's loop, with its identity held across a pause for a human, so work can span hours.
  • Dispatch — runs offered to whichever provider is serving, per-thread ordering, declared concurrency, and quality counters for what funduq can see from where it stands.
  • Doors — AG-UI and A2A adapters over one seat, so which protocol a request arrived by changes nothing about how it is decided.
  • Identity — providers prove a key to connect, callers may carry an actor chain, and neither is optional for being in-process.

Read before deploying

What a deployment has to know and what a deployment owes — in particular that core's caller doors are not independently safe: verifying a chain is not authenticating a caller, and a door has no live channel to do the second. Putting an authenticating seat in front of them is the first duty on the second page, and the one core refuses without.

Its companions

funduq-contract the bytes both sides sign — core depends on it, and so does the SDK
funduq-provider-sdk what a provider implements, with [llm] for completions

Apache-2.0. Docs at https://hukaichun.github.io/funduq/.

Metadata

Release files for funduq 0.0.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for funduq 0.0.11
File Size Uploaded
funduq-0.0.11.tar.gz 257.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for funduq 0.0.11
File Interpreter ABI Platform
funduq-0.0.11-py3-none-any.whl Python 3 none any Details

Total release size: 338.5 kB

Release files / funduq-0.0.11.tar.gz

Download URL funduq-0.0.11.tar.gz
Size 257.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4a45783ed45a7a094e019b4241596ceee261bdb8d7ba74c6307be6934d51b2e3
BLAKE2b-256 checksum
How to use checksums
e75dcb707bd971fd98833707bee584a19ad8d6d9fa1ea8fb1e4a97e68398f3d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log

Release files / funduq-0.0.11-py3-none-any.whl

Download URL funduq-0.0.11-py3-none-any.whl
Size 81.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a88a1daaba0c220b313539c696c1a92ef73b7e0f87b32294d49f690b8e32a682
BLAKE2b-256 checksum
How to use checksums
e7b2a274972d98a0da53bf60f8bff30a99c52fe6d1138c2edc7e4b2243fe8de2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.11 This release

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page