Getting started
Introduction
Run durable Agent Turns with optional Conversation continuity and independently selected MemorySpaces.
nvoken is a durable agent runtime for product teams. Your application creates a versioned Agent, then starts a Turn whenever it has work for that Agent. nvoken runs the model-and-tool loop, streams progress, and keeps the accepted work recoverable if a caller disconnects or a worker restarts.
import { Client } from "@deepnoodle/nvoken";
const client = new Client();
const agent = await client.agents.create({
key: "support",
name: "Support",
instructions: "Be concise and helpful.",
model: "anthropic/claude-sonnet-5",
});
console.log(await agent.text("Summarize this request.", {
tenant: "acme",
user: "alice",
}));Five independent resources
- An Agent is stored, reusable behavior in an explicit App, tenant, or user owner namespace. Creating it also creates immutable revision 1.
- An Agent revision is an immutable behavior snapshot. A Turn records the exact revision it uses; later publication never changes accepted work.
- A Turn is one durable execution. It always states its tenant and may state an actor user.
- A Conversation is optional ordered transcript continuity. It does not choose the Agent, actor, or memory.
- A MemorySpace is optional durable memory selected independently from the Agent and Conversation. It is user-scoped or tenant-namespaced.
A standalone Turn omits a Conversation but keeps the same durable identity, stream, controls, recovery, and result APIs. A conversational Turn selects a Conversation explicitly:
const chat = agent.conversation({
tenant: "acme",
user: "alice",
key: "ticket-483",
owner: "user",
memory: { scope: "user", namespace: "support" },
});
console.log(await chat.text("What did we decide last time?"));Your application remains source of truth for users, tenant membership, product data, authorization, billing, and product-level orchestration. nvoken never infers those relationships from resource ownership.
Continue with the quickstart, then read Agents, Turns, Conversations, and MemorySpaces.