This release is a pre-release and may not be stable for production use.
BIGHUB SDK
Better decisions for IT agent actions.
Beta release: this is the first public Better Decision SDK beta.
BIGHUB helps AI agents and CI/CD workflows make better IT decisions before execution.
It takes a proposed IT action, builds a Decision Packet, runs DecisionBrain, and returns execution guidance:
- proceed when appropriate
- pause for review
- ask for more context
- advise not to run
- suggest a real
better_actiononly when the backend actually produced one
pip install --pre bighub
For future stable releases, use:
pip install bighub
Python 3.9+. Single dependency: httpx.
Quick Start
from bighub import Bighub
def run(action_to_run):
raise NotImplementedError("Connect this to your executor.")
bighub = Bighub(api_key="your_api_key")
decision = bighub.decide(
action="Roll out billing-api v3.12 to production",
context={
"system": "kubernetes",
"environment": "production",
"service": "billing-api",
"ticket": "CHG-4401",
},
)
if decision.needs_review:
decision.request_review()
elif decision.needs_more_context:
print("More context required:", decision.reason)
elif decision.should_not_run:
print("Do not run:", decision.reason)
elif decision.can_run:
action_to_run = decision.better_action or decision.proposed_action
run(action_to_run)
for factor in decision.salient_factors:
print("Important factor:", factor.get("factor"), factor.get("severity"))
space = decision.responsible_action_space or {}
print("Available actions:", space.get("available", []))
print("Constrained actions:", space.get("constrained", []))
bighub.close()
Recommended flow:
proposed IT action -> Decision Packet -> DecisionBrain -> better_action when real -> execution mode and flags -> review or context when needed
When to use BIGHUB
Use BIGHUB before risky actions such as:
- GitHub Actions, GitLab CI, or Jenkins deploys
terraform apply- Argo CD sync or Kubernetes / OpenShift rollout
- Okta or IAM access changes
- credential rotation
- incident updates in Slack
- security gates after Trivy / Syft / SBOM signals
- production actions that may need review or additional context
If your workflow only reads data or performs harmless lookups, you probably do not need BIGHUB.
What a Decision returns
High-value fields most workflows care about:
better_action: a real backend-produced alternative when available, otherwiseNonemode: execution guidance such asautonomous,constrained,review,blocked, orneeds_contextcan_run,needs_review,needs_more_context,should_not_run: direct operational flagsrisk: top-level risk score when provideddecision_path: routing or evaluation path when providedpacket: theDecisionPacketused for the decisionbrain: theDecisionBrainResultwith reasoning summary, confidence, expected regret when provided, and related signalsselected_model: present only when the backend actually selected oneresponsible_action_space: the responsible action space for the current situation, grouped intoavailable,constrained,forbidden, andinformation_gatheringactionssalient_factors: the most important decision-time factors BIGHUB identified, such as weak verifier coverage, unavailable rollback, open obligations, active incidents, irreversibility, or high blast radiusoperational_intent: declared and inferred operational intent for the proposed actionagent_operational_body: what the agent can touch, verify, rollback, cannot observe, or must escalateaction_interpretation_layer: the interpreted operational meaning of the raw action
For a smaller stable surface, use decision.brief():
brief = decision.brief()
print(brief.salient_factors)
print(brief.action_space_counts)
print(brief.action_family)
print(brief.intent_mismatch)
if brief.can_run:
run(brief.recommended_action)
elif brief.needs_review:
print("Review required:", brief.reason)
decision.brief() keeps this compact: it exposes salient factor names and action-space counts, while the full Decision object keeps the detailed responsible_action_space and salient_factors payloads.
Semantic decision views
When available, BIGHUB also returns semantic views of the proposed action:
operational_intent: declared and inferred operational intentagent_operational_body: what the agent can touch, verify, rollback, or cannot observeaction_interpretation_layer: interpreted operational meaning of the raw action
These fields are explanatory and additive. Execution remains controlled by mode, can_run, needs_review, should_not_run, and related gating fields.
Honest behavior
The SDK is intentionally strict about what it does and does not invent:
better_actionisNoneunless BIGHUB returned a genuinely distinct recommendationselected_modelisNoneunless the backend actually selected onedecision_pathand model-selection fields stay empty when the backend did not provide them- outcomes are optional and not required for a first integration
- legacy
BighubClientandclient.actions.evaluate(...)remain available for existing integrations
If a backend decision_packet has no packet_sha256, the SDK computes a stable local hash and marks it with packet.packet_sha256_is_local=True.
Optional: outcome reporting
If you want a learning loop later, report what happened after execution:
decision.report_outcome(
status="completed",
evidence={"deployment_id": "dep_123"},
)
Outcome reporting is optional. The primary integration wedge is still the decision before execution.
After outcomes are reported, you can inspect learning impact:
from bighub import BighubClient
client = BighubClient(api_key="your_api_key")
impact = client.learning.impact()
print(impact.get("future_decisions_verdict_changed"))
print(impact.get("avg_regret_reduction"))
metrics = client.learning.disagreement_metrics()
print(metrics.get("avg_regret_reduction"))
client.close()
Learning impact
BIGHUB can also expose post-outcome learning metrics when outcomes and disagreements are available.
from bighub import BighubClient
client = BighubClient(api_key="your_api_key")
impact = client.learning.impact()
print(impact.get("future_decisions_learning_influenced"))
print(impact.get("future_decisions_verdict_changed"))
print(impact.get("avg_regret_reduction"))
disagreements = client.learning.disagreement_metrics()
print(disagreements.get("bighub_regret_reduction_rate"))
print(disagreements.get("avg_regret_reduction"))
client.close()
These metrics are post-outcome signals. They are not required for first integration and are separate from the pre-execution decision returned by bighub.decide(...).
CI/CD and system integrations
You can connect system evidence so BIGHUB sees recent operational context before deciding.
For lower-level resources, BighubClient remains available:
from bighub import BighubClient
client = BighubClient(api_key="your_api_key")
client.systems.save_connection(
"gitlab",
{
"base_url": "https://gitlab.com",
"gitlab_token": "glpat_...",
"project_id": "123",
},
display_name="GitLab production",
)
client.systems.update_poll_schedule("gitlab", enabled=True, interval_seconds=300)
client.systems.poll("gitlab")
world = client.systems.world_state()
client.close()
System providers currently supported by the SDK/API include okta, slack, github, datadog, sentry, aws_cloudtrail, terraform, kubernetes, argocd, gitlab, jenkins, azure, prometheus, grafana, and openshift.
Poll snapshots and histories are redacted before persistence and exposure. They provide best-effort operational context; they are not a replacement for production monitoring.
Typical uses:
- gate a GitHub Actions or GitLab deploy with recent operational context
- inspect Kubernetes, Argo CD, Prometheus, or Grafana state before rollout
- apply IAM or Okta changes with better review posture
- incorporate security and incident signals before execution
Compatibility
The modern entrypoint is bighub.decide(...).
For existing integrations, legacy BighubClient, client.actions.submit(...), and client.actions.evaluate(...) remain supported.
Links
- bighub.io
- GitHub repository
- Python examples
- OpenAI adapter
- MCP server
- PyPI - bighub
- PyPI - bighub-openai
License
Apache-2.0
Metadata
Release files for bighub 0.1.0b5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| bighub-0.1.0b5.tar.gz | 56.7 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bighub-0.1.0b5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 118.3 kB
Release files / bighub-0.1.0b5.tar.gz
| Download URL | bighub-0.1.0b5.tar.gz |
|---|---|
| Size | 56.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3880412cab2eb45dd848de5f5a1173f450e0633c4a9f59e42f6e98b0652c73fa
|
|
BLAKE2b-256 checksum How to use checksums |
da89867ed19a19d3c27928c40e29e6cf7a13bd91e2abeb3391aa76a39d443bc8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 May 16, 2026.
Transparency logRelease files / bighub-0.1.0b5-py3-none-any.whl
| Download URL | bighub-0.1.0b5-py3-none-any.whl |
|---|---|
| Size | 61.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6d1dc5463dc4b2d734e36d748c8446bbdc885519054c1eeeb7bc75a2ec109d37
|
|
BLAKE2b-256 checksum How to use checksums |
87b41df8ce3c59737bb904d3e357cda9da7dce7f0c1f5781d30c2850980d0aca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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 May 16, 2026.
Transparency logSecurity for bighub 0.1.0b5
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for bighub-0.1.0b5.tar.gz
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 May 16, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.