Current collected state Current
Observed since 21 Oct, 11:26 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Python SDK for AINative Agent APIs - agents, swarm, memory, graph, vectors, chat, files, tables, threads, events
Python SDK for all AINative Agent APIs -- agents, swarm tasks, memory, graph, vectors, chat, files, tables, threads, and real-time events.
pip install ainative-agent
import asyncio
from ainative_agent import AINativeClient
async def main():
async with AINativeClient(api_key="sk-your-key") as client:
# Register an agent
agent = await client.agents.register(
"my-agent", "worker", ["read", "write"]
)
# Store a memory
memory = await client.memory.remember(
"User prefers dark mode",
entity_id="user-123",
importance=0.8,
)
# Recall memories
results = await client.memory.recall("user preferences", entity_id="user-123")
# Submit a swarm task
task = await client.tasks.submit(
"Analyze error logs from last 24h",
agent_types=["analyst"],
)
# Poll until complete
async for update in client.tasks.poll(task.task_id):
print(f"Status: {update.status}")
asyncio.run(main())
| Module | Description |
|---|---|
client.agents | Agent registration, keys, and audit (AAP) |
client.tasks | Swarm task submission and polling |
client.memory | ZeroMemory: remember, recall, forget, reflect |
client.graph | Context graph: entities, edges, GraphRAG, ontology |
client.vectors | Vector embeddings: upsert, search, delete |
client.files | File storage: upload, download, presigned URLs |
client.tables | NoSQL tables: create, query, insert, update |
client.chat | Chat completions with streaming |
client.threads | Conversation threads |
client.events | Real-time WebSocket events |
The SDK supports two authentication methods:
# API Key (recommended for server-side)
client = AINativeClient(api_key="sk-your-key")
# JWT Token (for user-scoped access)
client = AINativeClient(token="eyJ...")
from ainative_agent import AINativeClient, AuthenticationError, RateLimitError, APIError
async with AINativeClient(api_key="sk-key") as client:
try:
agent = await client.agents.get("nonexistent")
except AuthenticationError:
print("Invalid credentials")
except RateLimitError as e:
print(f"Rate limited, retry after {e.retry_after}s")
except APIError as e:
print(f"API error {e.status_code}: {e.message}")
The SDK automatically retries requests on transient errors (429, 5xx) with exponential backoff, up to 3 attempts.
Apache-2.0
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.0 | 20 Apr 2026 | 11 |
This describes our collected data; it is not a security assessment.
Observed since 21 Oct, 11:26 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:d7e66dd918c85f9fe0aa042d8800c6daa87985b4a324f82712250d121d760b64