Skip to main content

Vifu Python SDK

The Python SDK embeds the Vifu Runtime, Agent Gateway, and local Server. Python functions can become local Agent providers. Vifu("name") creates or reopens one real App in the personal Server and records its project binding in .vifu/app.json.

Create an environment and install Vifu:

python3 -m venv .venv
. .venv/bin/activate
python -m pip install vifu

The wheel contains the generated UniFFI binding, native Rust library, and the same complete Vifu binary distributed in Vifu releases. That binary includes the Server, Dashboard, TUI, Gateway, SQLite storage, and Runtime APIs. The Python API calls the Runtime in the application process. It reuses a running local Server or starts the bundled binary in Server-only mode.

The public API provides:

  • Vifu for App identity, Agent registration, local Server connection, invocation, tracing, and remote calls.
  • VifuRuntime for persistent Runtime state, Agent registration, invocation, snapshots, and pending traces.
  • AgentTrace for activity, output deltas, and typed provider stages.
  • VifuGateway for explicit remote enrollment and advanced Gateway control.
  • VifuServer for advanced control of the bundled Vifu Server process.
  • VifuServerConfig for typed local Server startup configuration from Python.
  • LocalWhisper and LocalLlama for code-configured, in-process speech and language-model Providers.
  • Vifu.run() for the same registered Agent App lifecycle locally and on a compatible managed host.

Call app.run() after registering Agents to serve Endpoint invocations until the local process stops. An App may instead pass a local entrypoint such as app.run(local_main). Vifu calls that entrypoint for direct local execution. A compatible managed host uses the registered Endpoints from the same script, does not enter the local interaction loop, and stops after its assigned invocation completes. Managed lifecycle details are not part of application input or output.

Framework integrations can be registered as normal Agent handlers. An integration may declare vifu_name, vifu_capability, vifu_metadata, vifu_instructions, and related defaults on the handler object. It may also implement vifu_bind(...) and vifu_run() when it owns one foreground runtime such as a voice session. Vifu.run() binds and starts that lifecycle, so the application entrypoint remains only Agent registration:

app.agent("voice", voice_agent)
app.agent("assistant", assistant_agent)
app.run()

Install the optional Strands integration, then select an OpenAI-compatible Provider directly in Python, including hosted and loopback model servers:

python -m pip install "vifu[strands]"
from vifu.integrations.strands import openai_compatible_model

model = openai_compatible_model(
    request,
    url="http://127.0.0.1:11434/v1/chat/completions",
    model="qwen2.5:7b",
)

The API key remains process configuration and is never included in Agent metadata. strands_model(...) remains available when an App intentionally uses a versioned Vifu Agent Profile.

Start with the Python tutorial. Runnable framework integrations are available for Google ADK and Foundry Local.

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.

vifu-0.1.5-py3-none-win_amd64.whl (20.2 MB view details)

Uploaded Python 3Windows x86-64

vifu-0.1.5-py3-none-manylinux_2_28_x86_64.whl (23.4 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

vifu-0.1.5-py3-none-manylinux_2_28_aarch64.whl (22.8 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

vifu-0.1.5-py3-none-macosx_11_0_arm64.whl (21.2 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

vifu-0.1.5-py3-none-macosx_10_15_x86_64.whl (22.4 MB view details)

Uploaded Python 3macOS 10.15+ x86-64

File details

Details for the file vifu-0.1.5-py3-none-win_amd64.whl.

File metadata

  • Download URL: vifu-0.1.5-py3-none-win_amd64.whl
  • Upload date:
  • Size: 20.2 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vifu-0.1.5-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 81aca28f9b5fdc5e772c9c918461a782712d7b885c1484103e1cc07a19236af4
MD5 543c79a5388e9816e57f4fa0569088cb
BLAKE2b-256 6998fbd35e20ef733b8e573166cc14e2c06152e3663f4227dce42470e8febb42

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.5-py3-none-win_amd64.whl:

Publisher: release-python.yml on vifudotdev/vifu

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

File details

Details for the file vifu-0.1.5-py3-none-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: vifu-0.1.5-py3-none-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 23.4 MB
  • Tags: Python 3, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vifu-0.1.5-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c4a2cc539fdf9fd943fbca91540a4c4098011f37656154de5b202108ecfe4c59
MD5 30ed2c0f129e557ee3ed4fcc3aa01d39
BLAKE2b-256 d031f8245099ec9eceb05fe11d7e5558d02f8142e542f6f3fbb8d9d797037744

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.5-py3-none-manylinux_2_28_x86_64.whl:

Publisher: release-python.yml on vifudotdev/vifu

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

File details

Details for the file vifu-0.1.5-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for vifu-0.1.5-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0ee49021461808e49adc1e9f5b86d8b1ee08809e1a8b8cadbe6e53d087fb66fc
MD5 8be2743e243bdd692570fca2b86abe73
BLAKE2b-256 c788d4f8380de6847f9e803f8aa62853f188f5305018c01bf163f6c6cd8b78e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.5-py3-none-manylinux_2_28_aarch64.whl:

Publisher: release-python.yml on vifudotdev/vifu

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

File details

Details for the file vifu-0.1.5-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: vifu-0.1.5-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 21.2 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vifu-0.1.5-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0b1a8f48e72f93a635723e814063861753a6155eae2e1b71b1f2e077c59a260b
MD5 8f103fac7773b98231a66696d32e71b8
BLAKE2b-256 58563d4e90cfea62e46f4570f71278906174f35803c90ed10c82e4287ecf07a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.5-py3-none-macosx_11_0_arm64.whl:

Publisher: release-python.yml on vifudotdev/vifu

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

File details

Details for the file vifu-0.1.5-py3-none-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: vifu-0.1.5-py3-none-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 22.4 MB
  • Tags: Python 3, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for vifu-0.1.5-py3-none-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 e20a63063fe2877f70527e6a45370b58bf993c49b000e3465514322fe968896c
MD5 d2231aa5079237e698935d415677f9dc
BLAKE2b-256 fff6a19579168863e52197117b26c076d9b2f6d7124f349568a3217a2556236b

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.5-py3-none-macosx_10_15_x86_64.whl:

Publisher: release-python.yml on vifudotdev/vifu

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

Release history Release notifications | RSS feed

0.1.7

5 files

0.1.6

5 files

This release

0.1.5 This release

5 files

0.1.4

5 files

0.1.3

5 files

0.1.2

5 files

0.1.1

5 files

0.1.0

5 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