🦔 SmartFabric
Carry IAIso containment across the whole fleet. One wire protocol, one node fingerprint — so many governed AI agents behave as one governed data fabric, not a pile of independently-wrapped agents.
IAIso §0 · Fabric · binds to IAIso v5.0 core · SmartTasks.cloud · the Smart* family
The problem: AI is spreading through your systems, and you can't see the layer it lives on
AI/LLM calls now sit inside your CRM, your CI, your data pipelines, your agents. Each one influences and controls real systems — and each is wired in its own bespoke way. There is no common layer where you can measure, monitor, audit, and trace what the AI is doing across all of it. You can't govern a black box, and you certainly can't govern a hundred differently-shaped black boxes.
SmartFabric is the hardened layer that separates AI/LLM traffic and functionality out into its own governed plane. It is the reference implementation of the IAIso Fabric Protocol (IFP): a wire protocol + a node fingerprint that every AI node publishes, so a heterogeneous fleet becomes measurable and enforceable as one organism.
Where the IAIso engine answers "is this agent over pressure?", IFP answers "what is the pressure of the whole system, is any node about to breach, and can a global halt be honoured everywhere at once?" — the questions IAIso's Layer 3 (ecosystem coupling), Layer 4 (escalation) and Layer 6 (existential guards) can only answer if nodes speak a common protocol.
Install
SmartFabric is not published on PyPI or any other package registry yet. Until
this section says otherwise, a package called sf-smartfabric on any registry
is not ours, and neither is smartfabric.
Install from a clone (Python 3.10 or later):
git clone https://github.com/SmartTasksOrg/sf-smartfabric
cd sf-smartfabric
python -m venv .venv
. .venv/bin/activate # Windows PowerShell: .\.venv\Scripts\Activate.ps1
python -m pip install .
sf-smartfabric --demo
Status
- Version 0.5.0, experimental. The reference implementation of the IAIso Fabric Protocol (IFP), version 0.5.0, with a frozen wire format and ports in nine other languages that reproduce the same behavioural vectors.
- Published: nowhere yet; install from a clone (above).
- Tested: on Python 3.10, 3.11 and 3.12 (Linux): the 59 tests, the demo, the behavioural vectors, the live
FAB-L-*harness against an in-process node, andports/conformance/run.shacross every port whose toolchain the runner has, on every push to master and every pull request (.github/workflows/ci.yml). - Not tested: Windows and macOS; Protobuf binary interop (field numbers are frozen, not exercised without
protoc); ed25519 report signing (not implemented yet: a content digest stands in for the signature). - Ports: Node, Java, C, C++, Go, PHP, Rust, Ruby and C# ports in
ports/reproduce the Python reference's vectors (ports/conformance/run.sh, run in CI); none is published on a registry. - Protocol: a frozen wire format (canonical-JSON encoding + LEB128 framing and a field-number-frozen
proto/fabric.proto, seedocs/08_WIRE_FORMAT.md) and behavioural conformance (spec/vectors/pins inputs to outputs;sf-smartfabric vectorsruns them). StaticFAB-*checks remain for what a node declares. - Container image: the deploy configs reference
ghcr.io/smarttasksorg/sf-smartfabric:0.5.0, which is not published yet; build it locally fromDockerfileuntil it is. - Security review: none independent. Report vulnerabilities as described in SECURITY.md.
What it does, in one screen
sf-smartfabric --demo runs three things against bundled synthetic data, no network:
- Single-node pressure — drives a token/tool workload up the
dp/dtcurve until it hits the release threshold and atomically resets (invariant 2: lossy, no learning across resets). - Fleet pressure — aggregates five nodes into one topology-weighted
P_fleet(Layer-3), so a high-centrality hub moves the number more than a leaf. - Conformance — runs the
FAB-*suite over an example fingerprint and prints a pass/fail report a node can carry in its own contract.
Run it in your stack
| Where you work | How you run it |
|---|---|
| Python | from a clone: python -m pip install . (not on PyPI yet) |
| CLI (validate) | sf-smartfabric validate <fp.json> · conformance <fp.json> · fleet <fleet.json> |
| CLI (run a node) | sf-smartfabric serve runs a node · sf-smartfabric registry runs the fleet registry · sf-smartfabric live runs the FAB-L-* harness |
| Behavioural proof | sf-smartfabric vectors runs the pinned interop vectors; ports/conformance/run.sh runs them across Python + Node + Java |
| Other languages | independent ports in ports/ (Node, Java runnable; Go, PHP, Rust shipped). The protocol is defined by spec/vectors/*.json — reproduce them and you're conformant |
What's in this repo
- The spec —
docs/, reading order below.docs/07is the binding to the real IAIso v5.0 core (pressure fields, layers 0–6, the 5 invariants);docs/08is the frozen wire format. - The contract —
schema/fingerprint.schema.json: the machine-readable descriptor every node publishes, plus a passingexample.fingerprint.json. - A runnable reference —
src/sf_smartfabric/: the pressure engine, fleet aggregation, CIR envelope + wire codec, theFAB-*conformance suite, a live HTTP/CIR node (node.py) with optional mTLS (mtls.py), an over-the-wire harness (live.py), and a registry (registry.py) for fleet discovery +P_fleetaggregation. Deterministic, offline, dependency-light. - Independent ports —
ports/: Node + Java (runnable, in CI) and Go, PHP, Rust (shipped, vector-checked). Interop harness inports/conformance/. - Toolchain integrations —
integrations/: LangChain, n8n, Flowise, and a GitHub Action that gate/meter agents through a fabric node. - Deployments —
deploy/: Dockerfile, a two-node compose fabric, and GCP/AWS/Azure recipes for the node service. - Conformance vectors —
spec/vectors/: pinned input→output cases (pressure, fleet, envelope) that define the protocol independently of code. - Family metadata —
spec/iaiso-map.json,.smart.json. - Tests —
tests/: the public suite (59 green), including the live node harness.
Reading order
| Doc | What it covers |
|---|---|
docs/00_OVERVIEW.md |
Fabric model, the three planes, how it wraps the core |
docs/07_IAISO_CORE_BINDING.md |
The binding: pressure model, layers 0–6, the 5 invariants, and the trust boundary |
docs/01_PROTOCOL_CHARACTERISTICS.md |
The full conformance surface (26 characteristics) |
docs/02_FINGERPRINT.md |
Ports, standards, command-translation (CIR) + containment posture |
docs/03_SUBSTRATE_AND_LAYERS.md |
Two axes: containment layers 0–6 × physical substrate S0–S10 |
docs/04_MAPPING.md |
Fabric services: pressure aggregator, escalation broker, consent issuer |
docs/05_DYNAMICS_AND_GOVERNANCE.md |
Pressure dynamics + influence governance, with the honest boundary |
docs/06_CONFORMANCE_CHECKLIST.md |
The executable FAB-* static suite + the behavioural-vector / two-implementation bar |
docs/08_WIRE_FORMAT.md |
The frozen wire format: canonical JSON, framing, Protobuf, versioning |
docs/09_TRANSPORT_AND_OPERATIONS.md |
Running the system: the node service, mTLS, live FAB-L conformance, the registry |
docs/10_DEPLOYMENT.md |
Deploying it: one image, the full platform matrix incl. k8s/Helm and GPU providers |
How it works (the honest version)
The IAIso trust boundary is inherited, not hidden: IFP bounds cooperating
nodes and makes them measurable and attestable. Pressure is computed at the
infrastructure level, outside the model (invariant 5), so a node can't game its
own valve, and the fabric trusts attested infra telemetry, not model
self-report. For adversarial containment you still bind thresholds to an
out-of-process anchor (seccomp / container / VM / hypervisor FLOP cap) at
substrate S0–S4 — and layer0_caps.hardware_attested is the wire-level claim
that you did. FAB-I-006 fails any node that claims Layer 0 without it. Safety
through structure, not hope.
Rule/check IDs are namespaced FAB-* so output looks kin to the rest of the
family (SmartPangolin's SEC-*, SmartSeal's SEAL-*).
Part of the Smart* family
SmartFabric is the fabric layer of IAIso — the plane the other tools ride on. It stacks naturally with SmartSeal (provenance records on the observability plane), SmartRoute (trust-gated routing), and SmartLLMCost (the resource-accounting record — characteristic #23). Everything conforms to the open IAIso standard and bundles in SmartTasks.cloud.
Contact
Companies wanting hands-on integration of the fabric into their architecture, audit-ready: enterprise@smarttasks.cloud.
Metadata
Release files for sf-smartfabric 0.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sf_smartfabric-0.5.0.tar.gz | 42.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sf_smartfabric-0.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 82.8 kB
Release files / sf_smartfabric-0.5.0.tar.gz
| Download URL | sf_smartfabric-0.5.0.tar.gz |
|---|---|
| Size | 42.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a9a5d9b3a6c51ac3dd535bbb248e590e65b31b4161b3b504d39a6c6272620d57
|
|
BLAKE2b-256 checksum How to use checksums |
1b0dc38f8b7aa4592adf2b75e6575909623368208d6c2df3a3be0e0727ff3ed7
|
| 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 Oct 9, 2026.
Transparency logRelease files / sf_smartfabric-0.5.0-py3-none-any.whl
| Download URL | sf_smartfabric-0.5.0-py3-none-any.whl |
|---|---|
| Size | 40.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9c4204fba7ad850543c791df4b444429d2423c68fe6361354747c09ea4e46089
|
|
BLAKE2b-256 checksum How to use checksums |
2981c6feb4f72f3f4f37c248f0f08b0c55af8126bb4f48dca540ccef0729d680
|
| 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 Oct 9, 2026.
Transparency log