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.6-py3-none-win_amd64.whl (20.2 MB view details)

Uploaded Python 3Windows x86-64

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

Uploaded Python 3manylinux: glibc 2.28+ x86-64

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

Uploaded Python 3manylinux: glibc 2.28+ ARM64

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

Uploaded Python 3macOS 11.0+ ARM64

vifu-0.1.6-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.6-py3-none-win_amd64.whl.

File metadata

  • Download URL: vifu-0.1.6-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.6-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 c0ca16e9166160b7dd351156f364186069069fdcfcc0c338e0d0839eceb78b7d
MD5 104348c93d0cd17433ff40fd8ef8bd81
BLAKE2b-256 75de1d118c2bd0de76fac799db7961c990dcc676f4da96d6aaa8d71c11e02716

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.6-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.6-py3-none-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: vifu-0.1.6-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.6-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e22d51c46549aa5acb8e39c47334907c08fa047fa3bc2b259e176f44681e7d0f
MD5 6063375b8172906c40f15eca642fd8af
BLAKE2b-256 cac35ed5156217ea9562c68980986bcca35f1994690e8b1c7462faddef26be0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.6-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.6-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for vifu-0.1.6-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b6d94c085dbe780dabd8e80b65c0fe96f0fc429377bd22790e8d390924178e55
MD5 48566f3274b6e62031a2e03bff6998fa
BLAKE2b-256 b37517c623d9d38e9cef271ef5f7a3b7918e090606a5b9b298d29d04b1e1b58d

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.6-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.6-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: vifu-0.1.6-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.6-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01f17b7cf013455edae2c9a4ad43c809154f5a6140835bf4f8a102979ad89249
MD5 d37152fff2a55486ea92bfb14142abbd
BLAKE2b-256 8c80dc3d13e0640ad149f2068c510adbe6f5c205341a498a2a45ff7c6620f511

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.6-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.6-py3-none-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: vifu-0.1.6-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.6-py3-none-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 f4ea2b5431a3077aa568449b189fb3f57fe1497c4685fc418e1ecd52214ebfe6
MD5 8b21f3dfdd68e3251821abea6ff65176
BLAKE2b-256 de53297c75d72a8c48ce784a94bda6e83ba3d3b668ef4d5b60e9ca39f5000c2d

See more details on using hashes here.

Provenance

The following attestation bundles were made for vifu-0.1.6-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

This release

0.1.6 This release

5 files

0.1.5

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