Autonomous intelligence platform for the Zenon Network
Project description
Zenon Nebula
██████████████████▇▇▇▇▇▇▇▇▆▆▅▅▆▆▆▇▆▆▆▆▆▆▇▇▆▇▇▇▇▇▇▇▇▇▇▇▇████████
▇▇██████▇█▇███████▇▆▆▅▅▅▅▆▆▆▆▅▅▅▅▅▅▅▄▅▇▇▇▆▇▅▅▅▆▇▆▆▇▇▇▇█████████
█▇███ █▇▇▇▇▇▇▇▇▇▆▆▅▅▆▆▆▆▆▅▅▄▄▄▅▅▄▄▃▃▅▇▇▇▆▅▃▃▄▂▄▅▇▇▇▆▆▇▇▇▆▇▇▇███
█▇▇▇▇▇▇▇▆▆▆▆▆▆▆▅▅▆▇▇▇▇▇▆▆▅▄▃▄▄▅▄▅▃▂▅▆▅▃▄▅▇▇▆▅▄▓▄▅▆▅▅▄▆▇▇▇▇▇▇▇▇▇
█▇▇▇▇▇▇▇▇▄▆▆▄▆▆▆▅▆▆▆▆▆▅▄▃▃▄▅▄▂▁▃▒▁▂▂▃▄▅▅▇▇▇▇▆▅▅▄▅▅▆▆▆▆▇▇▇▇▇▇▇▇▇
█████▇▇▇▆▆▆▆▆▆▆▆▆▅▄▄▅▄▄▃▃▄▄▁▓▒▒▁▄▃▂▅▄▄▅▅▆▇▆▆▇▇▆▄▆▄▅▅▅▅▅▆▇▇▇▇▇▇▇
████▇▅███▅▆▅█▇▄▄█▇▆▇▇▇▇▃▇▇▇▆▇▇▓▃▁█▇▃▂▂▇▇▂▄▆▄▄▆▇▇▇▇▆▄███▄▇▇▇▇▇▇▇
██▇▇▇▃██▇█▂▄▇▇▂▃▇▇▂▁▓▁▁▁▇█▓▓▒█▆▃▁▆▇▃▄▄▇▆▂▓▆▅▃▆▆▆▆▆▁██▁█▇▅▇▇▇▇▇▇
▇▇▇▇▆▄▆▆▃▆█▇█▇▂▁▇▅▅▃▁▁▁▓▅▆▒▓▒▆▆▓▒▆▃▄▅▄▇▆▁▃▇▇▃▆▆▆▆▄▇▆▃▁▇██▆▇▇▇▇▇
█▇▇▇▆▅██▁▅▄▆▇▆▓▓▇▆▆▆▆▅▅▓▄▄▄▆▆▆▅▁▃▆▆▇▆▇▇▅▅▄▇▇███▇▃██▂▅▂▃▇▇▂▇▆▇▇▇
██▇▇▇▆▄▄▆▆▆▆▅▃▁▂▂▂▂▂▂▂▃▃▁▒▓▓▓▓▄▄▄▅▃▁▂▃▅▆▇▆▆▅▅▅▅▅▆▅▆▆▆▇▆▆▆▅▆▇▇▇▇
▇▇▇▇▇▇▇▇▇▇▇▇▅▓▃▃▂▁▃▂▂▃▂▂▄▃▁▒▓▂▂▃▃▄▃▃▃▅▆▇▇▆▆▆▆▆▆▆▆▆▇▆▇▇▇▇▇▇▇▇▇▇█
██▇▇▇█▇▇▇▇▆▅▂▅▅▄▂▂▂▃▂▓▂▄▅▅▄▁▒▓▓▁▂▂▄▄▄▆▆▆▅▆▆▆▆▆▆▆▆▄▇▇▇▇▇▇▇▇▇▇▇▇█
████████▇▇▆▅▇▇▆▆▇▆▆▆▅▄▄▆▆▆▅▄▄▃▄▁▂▁▁▓▓▃▁░▁▄▅▂▄▂▃▆▅▅▄▅▆▆▇▇▇▇▇▇███
███████▇▇▇▇▇▇▇▆▅▆▇▆▅▄▅▆▆▇▇▇▅▅▅▅▅▄▃▄▄▄▂▆▇▇▆▆▇▇▆▅▅▆▇▇▇▃▇▇▇▇▇▇████
█████████▇▇▇▇▇▇▇▇▇▆▆▆▆▆▇▇▇▇▇▇▇▇▆▆▆▇▆▆▆▇▇▇█████▇▇███████████████
autonomous intelligence for the Network of Momentum
| Metric | Count |
|---|---|
| Python files | 578 |
| Lines of code | 166,773 |
| Core modules | 147 |
| Domains | 18 |
| Engines | 104 |
| Test files | 209 |
| Scripts | 25 |
| Schema tables | 96 |
| MCP tools | 14 |
Nebula is an autonomous intelligence platform for the Network of Momentum. It monitors the entire Zenon ecosystem in real time - specs, code, governance, bridge health, liquidity, narratives, and security - cross-references every signal through Bayesian hypothesis evolution and collision detection, and produces mission-aligned battle plans. Nebula is critical Zenon infrastructure: the nervous system that keeps the community informed, the network hardened, and the roadmap honest.
Docs
Full operator + contributor documentation lives at ZenonOrg/nebula-docs — architecture, capabilities, mission, ADRs, threat model, feature deep-dives (MCP, RPC, cross-chain, discovery, corroboration, transport, spec audit).
Local preview:
git clone https://github.com/ZenonOrg/nebula-docs
cd nebula-docs
pip install mkdocs-material "mkdocstrings[python]"
mkdocs serve # http://127.0.0.1:8000
What stays in this repo (alongside the code):
CHANGELOG.md— shipped releasesCLAUDE.md— auto-regenerated machine-readable dev guidedocs/claims.yml— executable claim ledger (README truth gate)docs/tasks.yaml— internal task backlogdocs/runbooks/— operational failure-mode docsdocs/DOMAINS.md— auto-generated domain + engine catalog
Mission
Nebula is mission-driven via
core/mission/definition.py. Five
pillars (trustlessness, sovereignty, composability, auditability,
adoption) with weights that sum to 1. When the spec corpus is
available, core/mission/spec_derivation.py re-derives the
pillars; otherwise the hardcoded five are the fallback. The
mission belongs to Nebula and the Zenon protocol's trajectory,
not to any one author. See
docs/mission
for the full section and ADR-0010.
Quick Start
git clone https://github.com/ZenonOrg/nebula
cd nebula
pip install -r requirements.txt
cp env.example.txt .env
./nebula --cycles 5
./nebula status
Zero infra needed. The first cycle runs against a fresh SQLite
DB and populates data/engine.db with baseline findings.
CLI commands
CLI Commands
| Command | Description |
|---|---|
./nebula |
Run continuously (24/7) |
./nebula --cycles N |
Run N cycles then stop |
./nebula --budget N |
Run with a USD budget cap |
./nebula --hours N |
Run for N hours |
./nebula --domains sec,qual |
Run only selected domains |
./nebula status |
Show evidence count, hypotheses, collisions, uptime |
./nebula dashboard |
One-shot operational snapshot: findings, forecasts, disagreements, aspirations, peer catalogue, proposals, battle plan |
./nebula findings [--domain D] [--evidence-type T] [--limit N] [--full] |
Show recent findings; filter by domain or evidence_type (e.g. model_disagreement, counterfactual_forecast, symbolic_pattern, clarification_request) |
./nebula plan |
Show the latest War Room battle plan |
./nebula domains |
List every registered domain and its engines |
./nebula hypotheses |
Show Bayesian hypotheses with current confidence |
./nebula costs |
LLM cost breakdown by provider and model |
./nebula specs |
Spec coverage matrix across go-zenon, SDKs, CLI, wallet |
./nebula height |
Evidence-chain height (append-only) |
./nebula serve |
Start the MCP server (8 tools) |
./nebula rpc |
Start the JSON-RPC server (default: 127.0.0.1:8484) |
./nebula providers |
List shipped + user providers (kind, trust tier, status) |
./nebula providers test <name> |
Dry-run a provider to confirm it's reachable |
./nebula providers reload |
Re-read ~/.config/nebula/providers.toml without restarting |
./nebula findings --by-provider |
Group findings by the provider that produced them |
./nebula findings --by-author |
Group findings by discoverer_peer_id (task #64 attribution surface) |
./nebula snapshot export |
Export evidence snapshot for peer sharing |
./nebula snapshot import FILE |
Import a peer snapshot |
./nebula sync |
Pull the latest snapshot from configured peers |
./nebula workspace list |
Show the workspace manifest with per-entry clone status |
./nebula workspace bootstrap |
Clone every required Zenon repo into $ZENON_WORKSPACE_ROOT (idempotent) |
./nebula workspace update |
git fetch on every cloned manifest entry (never auto-merges) |
./nebula workspace pin |
Report current HEAD SHAs + branches of cloned entries |
./nebula plugins list |
Show plugins registered on this instance (name, source, engine count, author) |
./nebula plugins discover |
Show peer-plugin catalogue (metadata only; populated once Phase 3b transport ships) |
./nebula plugins lineage <name> |
Show which peers run a plugin by name |
./nebula aspirations list |
Show active aspirations (title, pillar, status) |
./nebula aspirations export [--label LABEL] [--note TEXT] [--output FILE] |
Write an AspirationPack JSON for sharing research focus |
./nebula aspirations import FILE [--activate] |
Insert aspirations from a pack (proposed by default; --activate promotes to active) |
./nebula threads list FILE |
Inspect a ResearchThread file (.thread.json) without importing — shows exporter, label, aspiration + evidence counts |
./nebula threads export [--label LABEL] [--note TEXT] [--domain DOMAIN] [--limit N] [--tag TAG]... [--output FILE] |
Write a ResearchThread JSON bundling aspirations + seed evidence + mission tags for end-to-end research sharing |
./nebula threads import FILE [--activate] |
Import a ResearchThread; aspirations land proposed (or active with --activate), evidence capped at 0.30 confidence and attributed to the exporter |
./nebula agents list [--ascending] [--limit N] [--tier high|known|fresh|untrusted] [--json] |
Show registered executor agents with trust + completion stats; --tier filters by trust band; --json emits a structured payload for scripting (task #68 I2) |
./nebula agents show <id> [--limit N] [--json] |
Detail view for one agent — trust, counters, timestamps, recent completion events; --json emits a structured payload |
./nebula agents trust <id> |
Print just the trust score (scripting-friendly; exit 1 when unknown) |
./nebula agents retire <id> [--yes] |
Deregister an agent; prompts for confirmation unless --yes is passed (leaves agent_completions audit trail intact) |
./nebula sim [governance|economic_shock|validator_set|bridge_liquidity] [--trials N] [--horizon N] [--min-severity stable|warning|critical] |
Run a simulation engine on-demand (counterfactual Monte Carlo forecasts) |
./nebula ask "question" |
Freeform query against the knowledge graph |
Adding a domain
Domains are auto-discovered at runtime. Drop a plugin in
domains/, restart. Every engine declares its own SCHEMA_SQL
constant so the registry picks the table up automatically.
from nebula_sdk import DomainPlugin, EngineDefinition
class MyDomain(DomainPlugin):
def name(self) -> str:
return "my_domain"
def get_engines(self) -> list:
return [EngineDefinition(
name="my_engine",
description="Does the thing.",
module_path="domains.my_domain.engines.my_engine",
priority=5,
)]
# ... plus the other abstract methods; see nebula_sdk/README.md
Third-party authors can pip install zenon-nebula-sdk —
a small, dependency-free package that exposes the stable plugin
ABCs. The SDK works standalone (stub implementations let you
author + test a plugin without a Nebula install) and
transparently re-exports the live core/ classes once Nebula is
installed alongside.
See domains/ for eighteen complete examples.
Stats
The stat block at the top of this file is auto-regenerated by
scripts/regen_docs.py. Live counts come directly from walking
the codebase, so they self-update on every commit that affects
the numbers.
python3 scripts/regen_docs.py # rewrite in place
python3 scripts/regen_docs.py --check # CI gate — no drift allowed
License
MIT - see LICENSE.
Built with Python 3.10+, SQLite, and xAI Grok.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zenon_nebula-0.6.17.tar.gz.
File metadata
- Download URL: zenon_nebula-0.6.17.tar.gz
- Upload date:
- Size: 1.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f52979ad2d55b9a82d274196ead5d2c9066b948c1c61e3a037baae46879e1cd
|
|
| MD5 |
22326a22bc9fe551f82b8c5e8e411dfc
|
|
| BLAKE2b-256 |
3c63a5f402b65350d083dbaa8cf26111a47932edb6514679712e8c77e1d13b50
|
Provenance
The following attestation bundles were made for zenon_nebula-0.6.17.tar.gz:
Publisher:
release.yml on ZenonOrg/nebula
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zenon_nebula-0.6.17.tar.gz -
Subject digest:
3f52979ad2d55b9a82d274196ead5d2c9066b948c1c61e3a037baae46879e1cd - Sigstore transparency entry: 1324395208
- Sigstore integration time:
-
Permalink:
ZenonOrg/nebula@f489cdf62dac3aa4e72f671a8dd1a2464b14b332 -
Branch / Tag:
refs/tags/v0.6.17 - Owner: https://github.com/ZenonOrg
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f489cdf62dac3aa4e72f671a8dd1a2464b14b332 -
Trigger Event:
push
-
Statement type:
File details
Details for the file zenon_nebula-0.6.17-py3-none-any.whl.
File metadata
- Download URL: zenon_nebula-0.6.17-py3-none-any.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f21bbdd29e78f62223a22f3c40eeecf23fe65d0bdd6023da820aaaf3b029cca
|
|
| MD5 |
05f7df803c372527375e910c825e22f0
|
|
| BLAKE2b-256 |
7b007512c81038c2fed79e2c662374c90567c06801e42465b21010847cd46cc1
|
Provenance
The following attestation bundles were made for zenon_nebula-0.6.17-py3-none-any.whl:
Publisher:
release.yml on ZenonOrg/nebula
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zenon_nebula-0.6.17-py3-none-any.whl -
Subject digest:
8f21bbdd29e78f62223a22f3c40eeecf23fe65d0bdd6023da820aaaf3b029cca - Sigstore transparency entry: 1324395344
- Sigstore integration time:
-
Permalink:
ZenonOrg/nebula@f489cdf62dac3aa4e72f671a8dd1a2464b14b332 -
Branch / Tag:
refs/tags/v0.6.17 - Owner: https://github.com/ZenonOrg
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f489cdf62dac3aa4e72f671a8dd1a2464b14b332 -
Trigger Event:
push
-
Statement type: