Agents

v0.1.0

Deploy AI agents with their own identity, capabilities, and governance. You own the logic, we handle the rest.

Typescript

bash
npm install @human/client-sdk

Deploy

Deploy a new agent under the authenticated org's namespace. This creates an Agent Passport, registers the agent in the org's namespace, and returns the full IdentityChain.

typescript
const agent = await client.agents.deploy({
name: 'invoice-processor',
version: '1.0.0',
capabilities: ['invoice/process'],
handler_module: './dist/handler.js',
});
console.log(agent.identity.agent.uri); // agent://org/acme/invoice-processor@v1.0.0
console.log(agent.identity.agent.did); // did:agent:7f3a2b9c-...
console.log(agent.identity.org.slug); // "acme"

Get

Get agent details by ID or URI.

Update Status

Update agent status.

Types

typescript
interface Agent {
/** Internal agent ID */
agent_id: AgentId;
/** Agent DID — cryptographic fingerprint */
did: AgentDid;
/** Agent URI — human-readable address */
uri: AgentUri;
/** Agent name within org namespace */
name: string;
/** Semantic version */
version: string;
/** Description */
description?: string;
/** Capabilities this agent provides */
capabilities: string[];
/** Current status */
status: AgentStatus;
/** Organization this agent belongs to */
org_id: OrgId;
/** Organization namespace slug */
org_slug: OrgSlug;
/** Full identity chain (available after deployment) */
identity: IdentityChain;
/** Template ID if installed from marketplace */
template_id?: TemplateId;
/** Who deployed this agent */
deployed_by: PassportId;
/** When agent was last deployed */
deployed_at: Timestamp;
}
interface DeployAgentRequest {
/** Agent name (unique within org namespace) */
name: string;
/** Semantic version */
version: string;
/** Human-readable description */
description?: string;
/** Capabilities this agent provides */
capabilities?: string[];
/** Handler module path */
handler_module?: string;
/** Handler container image */
handler_image?: string;
/** Handler external endpoint */
handler_endpoint?: string;
/** Marketplace template ID (if installing from marketplace) */
template_id?: TemplateId;
/** Additional manifest data */
manifest?: Record<string, unknown>;
}
interface CallAgentRequest {
/** Target agent — URI (recommended) or DID. URI is human-readable: agent://org/acme/invoice-processor@v1 DID is cryptographic: did:agent:7f3a2b9c-... */
target: AgentUri | AgentDid;
/** Input data for the agent */
input: unknown;
/** Delegation token (if not using API key auth) */
delegation_token?: string;
/** Timeout in milliseconds */
timeout?: number;
}