{
  "uid": "cogitave.learn.docs.what-is-namzu",
  "kind": "doc",
  "href": "/docs/what-is-namzu/",
  "title": "What Namzu is",
  "summary": "Namzu is an agent kernel for TypeScript, not an application framework. What that distinction buys you, what the kernel owns, what it deliberately refuses to own, and how the layering keeps your stack yours.",
  "type": "explanation",
  "products": [
    "namzu"
  ],
  "roles": [
    "developer",
    "solution-architect"
  ],
  "levels": [
    "beginner"
  ],
  "subjects": [],
  "headings": [
    "The distinction that matters",
    "What the kernel owns",
    "What it refuses to own",
    "How it is licensed",
    "Where Yuva fits",
    "Next steps"
  ],
  "source": "\n# What Namzu is\n\n**Namzu is an agent kernel for TypeScript.** It runs agents the way an operating\nsystem runs processes: isolation, scheduling, budgets, signals, memory,\ndurability, and an auditable event stream. It does not render a user interface,\nit does not choose your database, and it does not have a favourite model vendor.\n\n## The distinction that matters\n\nMost agent libraries are *application frameworks*. They ship a chat interface, a\nhosted dashboard, a fast path for one vendor, and drivers for a handful of\ndatabases. You get a demo in an hour. Three months later the framework owns your\nfrontend, your storage, your observability, and your model choice - and none of\nthose decisions were yours.\n\nNamzu takes the Unix position instead. At the bottom sits a kernel that:\n\n- isolates work and mediates what it can reach,\n- schedules tool calls and propagates signals across a call tree,\n- manages memory pressure and persists checkpoints,\n- emits an auditable event stream.\n\nAbove the kernel is user space: shells, editors, IDEs, voice gateways, React\napps - whatever you want. The kernel does not care which one you pick, and the\none you pick cannot break the isolation the kernel provides.\n\n## What the kernel owns\n\n| Concern | In the kernel |\n|---|---|\n| Agent lifecycle, scheduling, signals | Yes |\n| Budgets and memory pressure | Yes |\n| Durability and checkpoints | Yes |\n| Inter-process communication, MCP and A2A | Yes |\n| Provider abstraction | Yes - one uniform surface |\n| Auditable event stream | Yes |\n\n## What it refuses to own\n\nThis list is a feature, not a gap:\n\n- **No user interface.** No chat window, no dashboard, no components.\n- **No hosted service.** Nothing phones home; there is no control plane you must\n  sign into.\n- **No favoured vendor.** Providers are drivers in separate packages\n  (`@namzu/openai`, `@namzu/anthropic`, `@namzu/ollama`, and others). You install\n  the one you use; the kernel treats them identically.\n- **No opinion about your data layer.** Contracts, not drivers.\n\nThe consequence is that swapping a model vendor is a one-line change at\nregistration, and swapping the shell around your agent is not the kernel's\nbusiness at all.\n\n## How it is licensed\n\nNamzu is **Fair Source**: `FSL-1.1-MIT`. Every published version converts to MIT\ntwo years after its release. You can read the source, run it, and build on it\ntoday, and the code becomes fully permissive on a published schedule.\n\n## Where Yuva fits\n\nNamzu and [Yuva](what-is-yuva.md) are separate products at different layers, and\nNamzu does not require Yuva. Namzu is a TypeScript kernel you install from npm\nand run on Node. Yuva is a from-scratch sovereign unikernel in Rust - a much\nlower floor, with its own maturity and its own honest status. Read the Yuva page\nbefore assuming the two are a single stack.\n\n## Next steps\n\n- [Quickstart](quickstart.md) - a working call in five minutes.\n- [Choose a provider](choose-a-provider.md) - the eight drivers.\n- [Packages](packages.md) - the whole published surface, package by package.\n- [Agent identity and capabilities](agent-identity-and-capabilities.md) - the\n  authorisation model every Cogitave agent runs under.\n",
  "lastReviewed": "2026-07-26",
  "order": 1
}