Agent Nebula SecureAgent
Build standards-based A2A agents with business skills in Python and protocol, security, and presentation defined through configuration.
Getting started · Configuration · Architecture · Security · A2UI · Agent Nebula · Examples
agent-nebula-secureagent is the lightweight developer-facing facade over agent-nebula-platform. It uses the official A2A Python SDK through Platform rather than reimplementing A2A. A2UI is optional. An agent can run standalone without registering with Agent Nebula.
Why SecureAgent?
Working directly with an A2A server requires assembling protocol handlers, Agent Card metadata, transport hosting, security integration, and lifecycle behavior around application logic. SecureAgent delegates those infrastructure responsibilities to Platform. Developers concentrate on skills while configuring published capabilities and security separately. This reduces duplicated infrastructure code; it does not remove the need to design and test business logic or access policies.
| Capability | What developers gain |
|---|---|
| A2A 1.0 | Official SDK-based messaging, skills, tasks, streaming, and supported bindings via Platform |
| One skill API | Bind Python handlers to published skill identifiers; avoid protocol-specific business implementations |
| Configuration-driven design | Change Agent Cards, endpoints, TLS, OAuth, and Registry settings without rewriting skill handlers |
| A2UI v1.0 | Return interactive UI surfaces with declarative presentation.json and configured catalogs |
| Security integration | Reuse Platform enforcement and SDK primitives for OAuth, scopes, TLS/mTLS, JWT, and DPoP where configured |
| Optional Agent Nebula | Register and discover agents; use hosted OAuth and policy services for controlled invocation |
Architecture
Business skills (Python) + configuration + optional A2UI presentation
|
v
agent-nebula-secureagent
(public application facade)
|
v
agent-nebula-platform
(A2A/A2UI composition, security, lifecycle)
/ \
official a2a-sdk agent-nebula-sdk
(security primitives)
|
optional Agent Nebula services
(Registry, discovery, OAuth, policy)
See architecture and component boundaries. A2A is implemented through the official SDK; REST and MCP are not currently exposed as working SecureAgent server adapters (details).
Quick start
Requires Python 3.12 and Agent Nebula Platform 5.x (which supplies the Agent Nebula SDK dependency). Install the released package and its declared dependencies:
python3.12 -m venv .venv
. .venv/bin/activate
python -m pip install agent-nebula-secureagent
An A2A server defines its published skills in a2aserver.conf and binds executable handlers to those identifiers:
from agent_nebula_secureagent import SecureAgent
agent = SecureAgent(config="config/secureagent.conf")
agent.use_protocol("a2a", role="server", config="config/a2aserver.conf")
@agent.skill("inventory.lookup", description="Look up inventory")
async def inventory_lookup(payload):
return {"sku": payload["sku"], "available": 12}
agent.run()
This snippet illustrates the API; it requires valid configuration files. Follow the complete getting-started guide and the runnable examples for complete configurations and server/client commands.
Configuration-driven development
| File | Responsibility |
|---|---|
secureagent.conf |
Application identity and generic runtime settings |
a2aserver.conf |
Agent Card, advertised skills, A2A bindings, listener and server security |
a2aclient.conf |
Outbound A2A connections, trust and client authentication |
a2ui.conf |
Optional A2UI capability and component catalogs |
presentation.json |
Optional skill-owned UI component tree, bindings, and actions |
nebula.conf |
Optional Agent Nebula Registry onboarding and registration |
The configuration formats, supported keys, and ownership boundaries are documented in the configuration reference. A2UI presentation remains separate from Python business logic (A2UI guide).
Authentication and authorization
SecureAgent does not implement a competing authentication stack. Platform interprets A2A security declarations and composes enforcement; agent-nebula-sdk supplies reusable security primitives. Configuration determines which mechanisms are enabled. A trust bundle alone does not enable mTLS, and declaring an OAuth scope does not by itself establish a hosted policy decision. See security and authorization.
Agent Nebula Enterprise Registry Hub (optional)
Agent Nebula provides hosted A2A Registry and discovery, Explorer, Playground, OAuth, policy, and account-management services. Its organizational model is Publisher → Provider → Agents. Developers can register publicly reachable agents and test OAuth-scoped, policy-controlled invocation; local standalone examples do not require these services.
Start with Agent Nebula integration, then follow the platform-integrated examples for onboarding, registration, and invocation scenarios.
Documentation
- Getting started · Public API · Skills
- Architecture · A2A · A2UI
- Configuration reference · Security
- Agent Nebula services and integration · REST/MCP status
- A2A Schema Contract extension
License
Licensed under the Apache License, Version 2.0. See CONTRIBUTING.md for contribution guidance.
Metadata
Release files for agent-nebula-secureagent 5.0.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 | |
|---|---|---|---|
| agent_nebula_secureagent-5.0.0.tar.gz | 63.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| agent_nebula_secureagent-5.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 91.1 kB
Release files / agent_nebula_secureagent-5.0.0.tar.gz
| Download URL | agent_nebula_secureagent-5.0.0.tar.gz |
|---|---|
| Size | 63.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f4dc6927e91fcccc8ef09d5b2056043a8fdf81e65cd42b4ae5ee4c41f09b1033
|
|
BLAKE2b-256 checksum How to use checksums |
1d6607b91d68549ea7bc1a7cfac75f3579bb704792f776124f675cd0ab0e0bad
|
| 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 19, 2026.
Transparency logRelease files / agent_nebula_secureagent-5.0.0-py3-none-any.whl
| Download URL | agent_nebula_secureagent-5.0.0-py3-none-any.whl |
|---|---|
| Size | 27.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d0671087f6eb7324ea9c62f6137cb45d95c719458778276c8cb69971d3f09e59
|
|
BLAKE2b-256 checksum How to use checksums |
e2d5ad54ed4d813211bc67cb87ca66835ad4b1f7580dd18253a68e9f6791ea91
|
| 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 19, 2026.
Transparency log