Skip to main content

z4j framework-free agent bootstrapper (Apache 2.0)

Project description

z4j-bare

PyPI version Python License

The framework-free agent runtime for z4j.

Bootstraps a z4j agent inside any Python process, Celery worker, RQ worker, Dramatiq actor, plain script, custom service, and connects it to z4j over an authenticated WebSocket. Used directly when there's no framework adapter (z4j-django / z4j-flask / z4j-fastapi); used indirectly by those framework adapters too.

Compatibility

Python 3.11+. No framework or engine pinned; pair with whichever engine adapter your worker runs (z4j-celery, z4j-rq, z4j-dramatiq, z4j-huey, z4j-arq, z4j-taskiq) and that adapter carries the engine-version floor.

Full per-adapter matrix at https://z4j.dev/reference/compatibility/.

What it ships

  • Agent runtime, connect, authenticate, supervise, reconnect with bounded backoff
  • Outbound buffer, every event written to a local SQLite ring before going out on the wire; durable across short brain outages and agent restarts
  • Engine signal hooks, wired up by whichever engine adapter you install (z4j-celery, z4j-rq, etc.); the runtime drains them into the buffer
  • Schedule inventory, emits a full snapshot at boot, on a periodic timer (default 15 min), and on demand from the brain's Sync now command. Existing schedules show up automatically.
  • Command dispatcher, receives operator actions from the brain (retry, cancel, restart, schedule.fire, schedule.resync, etc.) and routes them to the right adapter

Install

pip install z4j-bare

Most users install a framework adapter (z4j-django / z4j-flask / z4j-fastapi) which pulls z4j-bare automatically.

Quick start (framework-free worker)

from z4j_bare import install_agent
from z4j_celery import CeleryEngineAdapter

install_agent(
    engines=[CeleryEngineAdapter(celery_app=app)],
    brain_url="https://brain.example.com",
    token="z4j_agent_...",
    project_id="my-project",
)

Reliability

  • No exception from the agent ever propagates back into your worker / signal handler / request path. Every brain interaction is wrapped in a top-level try/except.
  • Events buffer locally when z4j is unreachable. Workers never block on network I/O.
  • Supervisor reconnects on every transient failure (network, TLS, protocol mismatch) with bounded backoff.

Documentation

Full docs at z4j.dev/frameworks/bare/.

License

Apache-2.0, see LICENSE.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

z4j_bare-1.6.8.tar.gz (113.9 kB view details)

Uploaded Source

Built Distribution

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

z4j_bare-1.6.8-py3-none-any.whl (104.5 kB view details)

Uploaded Python 3

File details

Details for the file z4j_bare-1.6.8.tar.gz.

File metadata

  • Download URL: z4j_bare-1.6.8.tar.gz
  • Upload date:
  • Size: 113.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for z4j_bare-1.6.8.tar.gz
Algorithm Hash digest
SHA256 51ae7386b598288109a422ab53eb6d64e66204b2d27acf528fbf4c8983a3c43e
MD5 00481f473f8982e8fcfff180d9804abc
BLAKE2b-256 f70bf9c7c57c6f44241a185709d17928a496e18cf806c041177d39814433878d

See more details on using hashes here.

File details

Details for the file z4j_bare-1.6.8-py3-none-any.whl.

File metadata

  • Download URL: z4j_bare-1.6.8-py3-none-any.whl
  • Upload date:
  • Size: 104.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for z4j_bare-1.6.8-py3-none-any.whl
Algorithm Hash digest
SHA256 fc71866511abee0a914301acfcd7d6359d99bdaef0bca3f1062ec1601c9f3938
MD5 a4a4d614163ee78ce2d1023e9dd4a475
BLAKE2b-256 5847da9c394e45600d14b5cf0fbadd2c74d16f439f019ed6002a814cc2e7d156

See more details on using hashes here.

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