Skip to main content

stbass

License: MIT

Formal concurrency primitives for the agentic era. Too many bass players? Now they're in tune.

Named after Spinal Tap's infamous revolving door of bass players -- each one meeting a more absurd fate than the last. Like an uncoordinated parallel system, nobody knew who was playing bass at any given time. stbass brings order to that chaos.

Why

stbass is a process algebra library inspired by Occam-2's CSP (Communicating Sequential Processes) concurrency model. CSP, originally formalized by Tony Hoare, models concurrent systems as independent processes that communicate exclusively through typed channels -- no shared mutable state, no locks, no data races.

Occam-2 brought CSP to hardware with constructs like PAR, SEQ, ALT, and channel-based communication. stbass brings these same formally-verified concurrency primitives to Python's async ecosystem, purpose-built for orchestrating agentic workflows.

Quick Start

from stbass import PAR, SEQ, Chan, Process

# Define typed channels
input_chan = Chan[str]("input")
output_chan = Chan[str]("output")

# Compose processes with PAR and SEQ
pipeline = SEQ(
    fetch_data(input_chan),
    PAR(
        analyze(input_chan, output_chan),
        summarize(input_chan, output_chan),
    ),
    report(output_chan),
)

result = await pipeline.run()

Installation

pip install stbass

License

MIT License - see LICENSE for details.

Download files

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

Source Distribution

stbass-0.1.1.tar.gz (44.4 kB view details)

Uploaded Source

Built Distribution

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

stbass-0.1.1-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file stbass-0.1.1.tar.gz.

File metadata

  • Download URL: stbass-0.1.1.tar.gz
  • Upload date:
  • Size: 44.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for stbass-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a506d543a417323601abeba5a4c4b666db52248b16ae5208f6b5437bdc4b2861
MD5 9caf33fd823768d969b6dfc277089e05
BLAKE2b-256 8e3a19cb0bbe08b59f0938c38fe4fa5800c5e42c0bd36b51d6a8119ca6075b8d

See more details on using hashes here.

File details

Details for the file stbass-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: stbass-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 21.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for stbass-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 697b8809cc0a61259319dde237275898a6cb8e083c4c8f606c7fcf47f81a02c9
MD5 0c7c8685361fe130ae01b4dce1676b21
BLAKE2b-256 2d44036b9efa4f94b035ba9d91845b222379d15ba44d8028d6519c3ee543c5a2

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page