N
Health: Not checked yetWe have not completed a health check for this listing yet.Last checked 7/28/2026, 3:01:07 PM

Nobulex

arian-gogani
๐Ÿ”’ Security
0 Views
0 Installs

๐Ÿ“‡ ๐Ÿ  ๐ŸŽ ๐ŸชŸ ๐Ÿง - Proof-of-behavior enforcement for AI agents. Define behavioral covenant rules (permit/forbid/require), enforce at runtime before execution, get SHA-256 hash-chained tamper-evident audit logs, and verify compliance independently. Cross-agent verification handshake โ€” no proof, no transaction. MIT licensed, 4,244 tests.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "arian-gogani-nobulex": {
      "command": "npx",
      "args": [
        "-y",
        "arian-gogani-nobulex"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

Nobulex - Credit scores for AI agents

CI OpenSSF PyPI npm License Spec OWASP AST09



Every person has a credit score. Every business has one. AI agents have nothing.

Nobulex is the credit and trust protocol for autonomous AI agents.
Agents earn trust score through verified behavior. Higher trust, more access.
Autonomy earned, not granted.

Website ยท Try it live ยท Quickstart ยท Spec ยท PyPI ยท npm

Reference implementation of the OWASP Agentic Skills Top 10 โ€” AST09 execution-receipt pattern ยท listed in the OWASP solutions catalog ยท in the Microsoft Agent Governance Toolkit adopters ยท merged to the Dify marketplace


Break the AI. Win $7,400.

Five AI agents, each with rules they must not break. Make them violate their own rules. Beat Level 5 to claim the bounty. 2,847 attempts, 0 winners so far.

Enter the Arena โ†’


Install

pip install nobulex
npm install @nobulex/core
from nobulex.agent import Agent
agent = Agent("my-agent")
receipt = agent.act("send_email", scope="user@example.com")
assert receipt.verify()  # tamper-proof
Nobulex demo: install, sign an agent action, verify it offline with no operator trust

How it works

Every agent action produces a cryptographic receipt -- Ed25519 signed before and after execution, hash-chained for tamper evidence. A third party can verify the full history without trusting the agent or the operator.

Here is the whole idea in one run (python -m nobulex demo):

generated 3 receipts
  allow: 141ca2947a7e819b8bdebbf8... verified=True
  allow: f3377758ac94d812535cbb99... verified=True
  deny:  85b2dfd6b87f2678795726e4... verified=True
trust score: 23.26

tamper test:
  modified receipt verified=False   (tamper detected)

Change one byte of a receipt and verification fails. That is the whole guarantee.

Performance: ~13,683 signed receipts/sec at p50 (Python SDK, single core). Full signed-and-chained receipt takes ~73 ฮผs end-to-end. See BENCHMARKS.md for the full breakdown; reproduce with python3 scripts/benchmark.py.

Receipts accumulate into trust score -- a credit score for the agent.

Tiertrust scoreAccess Level
Restricted0 -- 30Read-only, sandboxed execution
Standard30 -- 60Financial ops up to $500, API access
Trusted60 -- 85Cross-org operations, regulated markets
Sovereign85+Full autonomy, self-directed

Agents that create more value earn more access. Agents that deviate get cut off automatically. Not as punishment -- as math.


Quick start

Python (recommended for AI agents)

pip install nobulex

One line to add receipts to any function:

from nobulex import track

@track(agent_id="my-agent")
def send_email(to, subject, body):
    # your existing code, unchanged
    return smtp.send(to, subject, body)

# Every call now produces a signed receipt automatically
send_email("user@example.com", "Hello", "Report attached")

# Success = receipt. Exception = DENY receipt. Trust score accumulates.
print(send_email.receipts)     # signed, tamper-evident
print(send_email.trust_score)  # earned over time

Or use the Agent API directly:

from nobulex import Agent

agent = Agent("my-agent")
receipt = agent.act("send_email", scope="user@example.com")
assert receipt.verify()       # any third party can check
print(agent.trust_score)      # builds with every action

LangChain integration

from nobulex.integrations.langchain import NobulexAuditHandler

handler = NobulexAuditHandler(agent_id="my-agent")
agent.invoke({"input": "..."}, config={"callbacks": [handler]})
handler.export("audit.json")  # signed, hash-chained audit trail

CrewAI integration

from nobulex.integrations.crewai import NobulexCrewAudit

audit = NobulexCrewAudit(agent_id="my-crew")
audit.record_task("credit_check", "loan-app-4821")
audit.export("audit.json")

Google ADK integration

from nobulex.integrations.google_adk import NobulexADKCallback

cb = NobulexADKCallback(agent_id="my-agent")

@cb.wrap_tool("web_search")
def search(query):
    return do_search(query)

cb.export("audit.json")

PydanticAI integration

from nobulex.integrations.pydantic_ai import NobulexPydanticAIAudit

audit = NobulexPydanticAIAudit(agent_id="typed-agent")
audit.record_tool("get_weather", {"city": "Berlin"}, {"temp": 22})
audit.export("audit.json")

Haystack integration

from nobulex.integrations.haystack import NobulexHaystackAudit

audit = NobulexHaystackAudit(agent_id="my-pipeline")
audit.record_component("Retriever", {"query": "test"}, {"docs": 5})
audit.export("audit.json")

LlamaIndex integration

from nobulex.integrations.llama_index import NobulexLlamaIndexAudit

audit = NobulexLlamaIndexAudit(agent_id="llama-agent")
audit.record_tool("web_search", {"query": "test"}, {"results": 5})
audit.export("audit.json")

Verify any exported trail (no operator trust)

from nobulex.chain import verify_audit_trail
report = verify_audit_trail("audit.json", authorized_keys=AGENT_PUBLIC_KEY)
assert report["chain_intact"] and report["authenticated"]

JavaScript / TypeScript

npm install @nobulex/core
npx tsx examples/trust-capital-demo.ts
Agent starts at RESTRICTED tier (trust score: 0)

Action 1: read_data        - ALLOWED   (trust score: 12)
Action 2: read_data        - ALLOWED   (trust score: 24)
Action 3: process_payment  - BLOCKED   (insufficient trust)
Action 4: read_data        - ALLOWED   (trust score: 36)
Action 5: read_data        - ALLOWED   (trust score: 48)

Agent promoted to STANDARD tier
Action 6: process_payment  - ALLOWED   (trust score: 65)

Agent promoted to TRUSTED tier (trust score: 89)
Action 8: approve_contract  - ALLOWED

Who is accountable?

An agent key is free to generate. So if the score lives on the key, the score is theater: an agent with a bad record deletes the key, makes a new one, and starts clean in thirty seconds. A human can't do that with a credit score, because the SSN is scarce. That scarcity is what makes a score mean anything.

So the file doesn't live on the key. It lives on the operator: the legal entity accountable for the agent. Agents inherit trust from their operator the way a corporate card inherits its limit from the company rather than from the plastic.

from nobulex import Agent, OperatorRegistry, VerificationLevel

registry = OperatorRegistry()
registry.register("acme", "Acme Corporation", VerificationLevel.KYB)
registry.bind_agent("acme", agent.public_key)

# The question a relying party actually asks:
registry.is_accountable(agent.public_key, VerificationLevel.KYB)  # True
registry.operator_for(agent.public_key).legal_name                # "Acme Corporation"

Burning a key doesn't escape the record:

before the burnafter
agent's own score8.00.0 (fresh key)
operator score8.03.4 (history survived)
churn ratio0.00.5 (the burn is visible)
new agent starts at2.72, not 0

And the attack doesn't work one level up either: an unverified operator can claim a score of 99 and passes exactly 0.0 to a new agent, so registering fake operators to farm trust fails by construction.

Meanwhile the honest operator gets paid for it. Acme at 90 with zero churn means their next agent starts at 60 instead of 0. That's the reason to bind keys rather than stay anonymous.

python packages/python/examples/sybil_resistance.py

The protocol

DECLARE โ”€โ”€โ–บ ENFORCE โ”€โ”€โ–บ PROVE โ”€โ”€โ–บ ACCUMULATE

Covenant      Pre-execution     Receipt chain     trust score
defines       receipt blocks    verified by       earned over
the rules     violations        third parties     time
              before they
              happen                              โ”€โ”€โ–บ more access
                                                      โ”€โ”€โ–บ more receipts
                                                           โ”€โ”€โ–บ higher trust

The flywheel: more trust score leads to more valuable work, which produces more receipts, which builds higher trust score. Accountability becomes the most profitable strategy.


Code

import { createDID, parseSource, EnforcementMiddleware, verify } from '@nobulex/core';

const agent = await createDID();
const spec = parseSource(`
  covenant SafeTrader {
    permit read;
    permit transfer (amount <= 500);
    forbid transfer (amount > 500);
    forbid delete;
  }
`);

const mw = new EnforcementMiddleware({ agentDid: agent.did, spec });

await mw.execute(
  { action: 'transfer', params: { amount: 300 } },  // allowed
  async () => ({ success: true }),
);

await mw.execute(
  { action: 'transfer', params: { amount: 600 } },  // BLOCKED before execution
  async () => ({ success: true }),                    // never runs
);

const result = verify(spec, mw.getLog());
console.log(result.compliant);   // true

Traction

Independent, verifiable signals (each links to evidence):

WhatEvidence
OWASP Agentic Skills Top 10 (AST09)Bilateral receipt pattern merged as normative guidance (PR #35). Vendor listing in the solutions catalog (PR #38). Fixture-corpus proposal (PR #46, merged as a discussion doc, not a normative spec). All merged by project lead Ken Huang, Jun-Jul 2026. The action_ref hash construction itself is in the solutions catalog, not the normative page
IETF Conformancedraft-farley-acta-signed-receipts: 4/4 vectors pass. Implementation PR #12 filed
OWASP CheatSheetSeriesSections 8-11 (JCS canonicalization, cross-agent accountability, sanctions-list freshness, regulatory mapping) merged into master by Jim Manico, Jun 2026 (PR #2210)
Dify Plugin MarketplacePlugin merged into official dify-plugins repository (PR #2500). Nobulex receipts available to 90K+ star Dify ecosystem
Microsoft AI Agents for BeginnersPR open to add nobulex as the Python production receipt library in Lesson 18 - Securing AI Agents with Cryptographic Receipts (PR #571)
AgentAudit AIDesign-partner conversation. A signed specimen receipt verifies end-to-end in 10 lines of Python (fixture)
Microsoft AGTListed in ADOPTERS (PR merged by Microsoft maintainers)
builderz-labs / mission-controlCross-session trust score RFC accepted as open issue; TypeScript reference implementation delivered

EU AI Act Article 12 enforcement: December 2, 2027.


Verify API

Receipts verify offline with the SDK today โ€” no server, no network, no callback:

from nobulex.agent import Agent

agent = Agent("billing-bot")
receipt = agent.act("charge", scope="invoice:042")
assert receipt.verify()   # recomputes action_ref + checks the Ed25519 signature, offline

The hosted verification layer is the paid product โ€” rate-limited tiers, agent trust scores, and regulator-ready compliance reports. It is implemented in packages/verify-api/ (Flask + Dockerfile) and is not yet deployed to nobulex.com.

EndpointWhat it doesTier
POST /verifyVerify signature + recompute action_refFree
POST /verify/chainVerify chain integrityPro
POST /verify/bundleCompliance report for regulatorsPro
GET /agent/:id/scoreTrust score (A-F grade)Free
GET /demo/tamper-testLive tamper detection demoFree

Planned pricing: Free 100/day ยท Pro ($99/mo) 10K/day ยท Scale ($499/mo) unlimited.

Pricing | Methodology


Why now

AI agents are being deployed into production with no accountability infrastructure.

  • 86% of AI agents deployed without security approval (CSA, 2026)
  • UUMit launched the first A2A marketplace with zero identity verification
  • $138B+ committed to physical AI with zero accountability layer
  • Top models score 10-15% on real problems (LemmaBench) with zero traceability on failure

The agents are deployed. The money is flowing. The accountability infrastructure doesn't exist yet. We're building it.


Standards

StandardStatus
Proof-of-Behavior specdraft-gogani-nobulex-proof-of-behavior-00
Microsoft AGTListed in ADOPTERS (PR merged)
CTEF v0.3.214/14 byte-match conformance
A2A ProtocolReceipt row proposed; URN scheme urn:nobulex:receipt:<id>
NIST RFIFormal comments submitted

Development

git clone https://github.com/arian-gogani/nobulex.git
cd nobulex && npm install
npx vitest run              # tests
npx tsx examples/demo.ts    # end-to-end
npx tsx benchmarks/bench.ts # benchmarks

Website ยท Try it ยท npm ยท Spec ยท X @nobulexlabs

Curated resource: Awesome AI Agent Accountability โ€” standards, regulations, and tools for verifiable agent behavior.

Star this repo to follow the project

MIT License

Related MCP Servers

G
GhidraMCP

๐Ÿ โ˜• ๐Ÿ  - MCP server for integrating Ghidra with AI assistants. This plugin enables binary analysis, providing tools for function inspection, decompilation, memory exploration, and import/export analysis via the Model Context Protocol.

๐Ÿ”’ Security1 views
U
Unphurl Mcp

๐Ÿ“‡ โ˜๏ธ - URL intelligence for AI agents. 13 tools for security signals and data quality: redirect behaviour, brand impersonation detection, domain age, SSL validation, parked detection, URL structural analysis, DNS enrichment.

๐Ÿ”’ Security0 views
M
MCP Dandan

๐Ÿ ๐Ÿ“‡ ๐Ÿ  ๐ŸŽ ๐ŸชŸ ๐Ÿง - Real-time security framework for MCP servers that detects and blocks malicious AI agent behavior by analyzing tool call patterns and intent across multiple threat detection engines.

๐Ÿ”’ Security0 views
A
Arc Gate Mcp

๐Ÿ - Runtime governance for MCP tool calls. Blocks prompt injection and capability abuse before tool results reach your agent.

๐Ÿ”’ Security0 views
โ˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.