Current collected state Current
Observed since 20 Oct, 21:25 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
agenium
AGENIUM — Local, stateful agent-to-agent communication SDK with agent:// protocol
Local, stateful agent-to-agent communication using the agent:// protocol.
pip install agenium
import asyncio
from agenium import Agent
async def main():
# Create and start an agent
agent = Agent("my-agent")
# Register a tool
@agent.tool("greet", description="Greet someone")
async def greet(name: str) -> str:
return f"Hello, {name}! I'm {agent.name}."
# Start listening
await agent.start(port=8443)
# Register on the AGENIUM DNS
await agent.register(api_key="dom_your_key_here")
print(f"Agent running at agent://{agent.name}")
asyncio.run(main())
import asyncio
from agenium import Agent
async def main():
agent = Agent("client-agent")
await agent.start()
# Resolve and connect
session = await agent.connect("agent://my-agent")
# Call a remote tool
result = await agent.call_tool(session.id, "greet", {"name": "World"})
print(result) # "Hello, World! I'm my-agent."
# Send a message
await agent.send(session.id, "ping", {"data": "hello"})
await agent.stop()
asyncio.run(main())
from agenium.dns import DNSResolver
resolver = DNSResolver()
agent = await resolver.resolve("my-agent")
print(agent.endpoint) # https://1.2.3.4:8443
print(agent.tools) # [Tool(name='greet', ...)]
agent:// Protocol — URI-based agent addressing (agent://name)asyncio and httpx┌──────────┐ agent://name ┌──────────┐
│ Agent A │ ──────────────────> │ DNS │
│ │ <────────────────── │ Server │
│ (client) │ endpoint + tools │ │
└─────┬─────┘ └───────────┘
│
│ mTLS + HTTP/2
▼
┌──────────┐
│ Agent B │
│ (server) │
│ :8443 │
└──────────┘
Agent(name, config=None)Create an agent instance.
| Parameter | Type | Default | Description |
|---|---|---|---|
name | str | required | Agent name (2-50 chars, lowercase) |
config | AgentConfig | None | Optional configuration |
| Method | Description |
|---|---|
agent.start(port=8443) | Start the agent server |
agent.stop() | Gracefully shutdown |
agent.register(api_key) | Register on AGENIUM DNS |
agent.connect(uri) | Connect to another agent |
agent.send(session_id, event, data) | Send event to session |
agent.call_tool(session_id, tool, params) | Invoke remote tool |
agent.tool(name, ...) | Decorator to register a tool |
DNSResolver(server=None)Resolve agent:// URIs.
| Method | Description |
|---|---|
resolver.resolve(name) | Resolve agent name to endpoint |
resolver.resolve_uri(uri) | Resolve full agent:// URI |
This is the official Python SDK for AGENIUM. It's fully compatible with the Node.js SDK (npm install agenium).
MIT © AGENIUM
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
httpxEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | httpx>=0.25.0 | runtime |
cryptographyEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | cryptography>=41.0 | runtime |
pytestEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | pytest>=7.0; extra == "dev" | runtime |
pytest-asyncioEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | pytest-asyncio>=0.21; extra == "dev" | runtime |
ruffEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | ruff>=0.1; extra == "dev" | runtime |
bdist_wheel · 17.81 KB · Python py3
sdist · 18.2 KB · Python source
Observed since 20 Oct, 21:25 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:cf44b7f2203b4570ecf6af46f56543d4448a9c7cc3f836e91fa91131a2bccbd2