Ecosystem
The Rends Ecosystem — Beyond governance. The standard.
Free risk tooling, open source SDKs, AICAP™ agent passports and a sample incident database. A regulatory API, benchmarks and an insurer program are planned.
One SDK between your AI agent and its tools
Runtime interception for AI agents. Each tool call you wrap goes through synchronous policy enforcement before execution — not after — in default enforce mode (configurable; see Enforcement Modes below). Tamper-evident audit trail, kill switch, compliance passports.
The SDK is the reference client for the open standards at /standards — Rends Policy Language and the Agent Audit Log Schema, both MIT.
npm install @rends/agent-sdk@2.0.0pip install rends-agent-sdk==2.0.05-Stage Governance Pipeline
Every client.govern() call runs through this pipeline:
What you get
Core capabilities ship identically across both SDKs. Framework adapters differ by language — the published Node SDK has 4; the published Python SDK has 10.
- ✓Synchronous policy check before each wrapped tool call (allow, warn, block or escalate)
- ✓Tamper-evident audit trail with SHA-512 hash chains
- ✓Kill switch (Govern API) — pause or terminate an agent; the call returns only after the agent's recorded status confirms the stop, and the agent's next action checked through Rends is refused. In enforce mode, the SDK stops the action.
- ✓Three enforcement modes: enforce, monitor, dry-run
- ✓Fail-open option for non-blocking telemetry
- ✓Batched telemetry with automatic flush
- ✓TypeScript + Python — identical core API surface
TypeScript / Node.js
npm install @rends/agent-sdk@2.0.0
Python
pip install rends-agent-sdk==2.0.0
Quick Start — TypeScript
import { RendsClient } from "@rends/agent-sdk";
const client = new RendsClient({
apiKey: "ac_live_...",
orgId: "your-org-uuid",
agentId: "your-agent-uuid",
mode: "enforce", // or "monitor" or "dry-run"
});
const result = await client.govern(
{
actionType: "database_query",
actionName: "select_users",
resourceType: "customer_records",
inputSummary: "SELECT * FROM users WHERE region = us-east-1",
},
async (params) => db.query("SELECT * FROM users")
);
// result.allowed = true/false
// result.status = "pass" | "warn" | "block"
// result.result = query output (if allowed)
// result.check.violations = [{ruleName, message, severity}]Quick Start — Python
from rends_sdk import RendsClient, RendsClientConfig, ActionContext
async with RendsClient(RendsClientConfig(
api_key="ac_live_...",
org_id="your-org-uuid",
agent_id="your-agent-uuid",
)) as client:
result = await client.govern(
ActionContext(
action_type="database_query",
action_name="select_users",
resource_type="customer_records",
input_summary="SELECT * FROM users",
),
tool_fn=lambda p: db.query("SELECT * FROM users"),
)Framework Adapters
One-line integration for the frameworks below. 4 on Node, 10 on Python, in the published SDKs.
Node SDK adapters — 4 includednpm install @rends/agent-sdk@2.0.0
Google ADK · LangChain · OpenAI Agents · OpenTelemetry
LangChain
Node example
import { governTools } from "@rends/agent-sdk/adapters/langchain";
// Wrap all tools in one line
const governed = governTools(client, [search, calculator, browser]);
const agent = createReactAgent({ llm, tools: governed });Python SDK adapters — 10 includedpip install rends-agent-sdk==2.0.0
AutoGen · CrewAI · Google ADK · Haystack · LangChain · LangGraph · LlamaIndex · OpenAI Agents · OpenTelemetry · PydanticAI
CrewAI
Python example
from rends_sdk.adapters import govern_crewai_tool search = SerperDevTool() governed = govern_crewai_tool(client, search, resource_type="web_search") agent = Agent(tools=[governed], ...)
AutoGen
Python example
from rends_sdk.adapters import govern_autogen_tool
governed_search = govern_autogen_tool(
client, search_web, "search_web", resource_type="web_search"
)
agent.register_function(function_map={"search_web": governed_search})Enforcement Modes
enforce
BLOCK → throws GovernanceBlockError. Tool never executes.
monitor
All decisions logged but never block. Full telemetry, zero disruption.
dry-run
Policy checked, nothing executed. Test rules before deployment.