# ngram > Build persistent agents with memory, relationships, tools, and spatial presence. - [Build a presence.](https://docs.ngram.space/index.md): Persistent agents with memory, relationships, tools, and bodies that meet you where you are. - [Your first Entity](https://docs.ngram.space/quickstart.md): From a fresh checkout to a persistent agent, with hosted or local inference. - [One Entity, many surfaces](https://docs.ngram.space/concepts.md): Understand the boundaries that let identity persist while models, tools, and bodies change. - [Choose your setup](https://docs.ngram.space/onboarding.md): Select the simplest runtime topology that supports your project. - [Create an Entity](https://docs.ngram.space/guides/creating-entities.md): Give your agent an identity, a voice, and a configuration you can understand. - [Personality and voice](https://docs.ngram.space/guides/personality-and-voice.md): Shape how an Entity responds, and how a spatial shell presents those responses. - [Give memory a readable form](https://docs.ngram.space/guides/knowledge-and-journal.md): Curate durable knowledge and inspect the Entity’s journal. - [Give the Entity useful reach](https://docs.ngram.space/guides/tools.md): Discover tools, configure execution, and add an MCP server with a complete local example. - [Turn an intention into a routine](https://docs.ngram.space/guides/automations.md): Create scheduled work with an inspectable schedule, delivery route, and stop control. - [Meet your Entity in Telegram](https://docs.ngram.space/guides/telegram.md): Connect a bot, map your identity, and use direct runtime controls. - [Connect a Discord surface](https://docs.ngram.space/guides/discord.md): Use a bot as another conversation channel for the same Entity. - [Add a surface to one Entity](https://docs.ngram.space/build/presence-and-social.md): Implement input, delivery, identity mapping, and lifecycle behavior around the shared runtime. - [Frequently asked questions](https://docs.ngram.space/faq.md): Practical answers about models, memory, embodiment, and operating ngram. - [Extend the right boundary](https://docs.ngram.space/build/overview.md): A map of the places to add capability without duplicating Entity state. - [Give intelligence a place.](https://docs.ngram.space/spatial/overview.md): Connect a persistent Entity to a body that can act in a shared spatial environment. - [Your first spatial session](https://docs.ngram.space/spatial/quickstart.md): Pair one running Entity, one human relationship, and one WebXR shell. - [From your laptop to Quest](https://docs.ngram.space/deployment/quest-lab.md): Launch an authenticated local Entity and WebXR shell with one supervised command. - [Design a shell](https://docs.ngram.space/spatial/shells.md): Give the same Entity a different model, voice, movement vocabulary, and spatial behavior. - [Spatial tool reference](https://docs.ngram.space/spatial/tools.md): Exact parameters for the 21 spatial tools exposed by the canonical Entity integration. - [Build something in the room](https://docs.ngram.space/spatial/recipes.md): Compose spatial tools into concrete explanations, experiments, and shared workspaces. - [Read the room accurately](https://docs.ngram.space/spatial/capabilities.md): Distinguish registered tools, connected backends, and the capabilities of the current surface. - [The spatial contract](https://docs.ngram.space/spatial/protocol.md): How events and structured actions connect an Entity, gateway, shell runtime, and surface. - [Run on your own machine](https://docs.ngram.space/deployment/local.md): Keep the Entity runtime local, with either Ollama or a hosted model. - [Use a hosted brain](https://docs.ngram.space/deployment/hosted-inference-testing.md): Run the same Entity with an API provider while keeping identity, tools, and memory in ngram. - [Run a persistent worker](https://docs.ngram.space/deployment/hybrid-railway.md): Deploy the Entity on Railway, with durable state and a hosted or private inference route. - [Connect private inference](https://docs.ngram.space/deployment/gateway.md): Expose an authenticated model endpoint to a worker without moving the Entity to the model host. - [Move the Entity, replace the model](https://docs.ngram.space/build/portable-inference.md): Separate inference routing from the portable state that carries continuity. - [You control when it runs](https://docs.ngram.space/guides/usage-and-controls.md): Pause inference, interrupt a turn, and manage context without losing your Entity. - [Keep the Entity intact](https://docs.ngram.space/deployment/persistence.md): Understand which state lives in the database, on disk, and inside a portable Entity. - [Deploy with clear boundaries](https://docs.ngram.space/deployment/security.md): Protect credentials, tool access, surfaces, and the state that makes an Entity personal. - [Find the failing boundary](https://docs.ngram.space/troubleshooting.md): Work from the runtime outward: declaration, provider, storage, bridge, and surface. - [One Entity, several ways to run](https://docs.ngram.space/agents/overview.md): Choose a foreground conversation, a scheduled runtime, or a headless worker. - [Operate a headless Entity](https://docs.ngram.space/agents/worker.md): Run messaging, spatial connections, and background scheduling without a terminal conversation. - [Continuity lives in the runtime](https://docs.ngram.space/architecture/overview.md): Follow the boundaries between the Entity, cognition, memory, presence, and inference. - [From input to action](https://docs.ngram.space/architecture/cognition.md): Routing, context assembly, bounded tool use, and compaction inside one Entity turn. - [Identity that outlives a model](https://docs.ngram.space/architecture/identity.md): Traits, voice, drives, relationships, and the distinction between a declaration and lived state. - [Retain what matters](https://docs.ngram.space/architecture/memory.md): The stores and retrieval paths that give an Entity continuity beyond live context. - [One runtime, many surfaces](https://docs.ngram.space/architecture/presence.md): Adapters, delivery, scheduled work, and embodied expression around the Entity. - [A changing internal state](https://docs.ngram.space/architecture/soma.md): The simulated body signals that influence an Entity between and during turns. - [The GEN pipeline](https://docs.ngram.space/architecture/gen-noise-pipeline.md): How bounded associative fragments enter the Entity’s body context. - [Work between conversations](https://docs.ngram.space/architecture/autonomous-wake.md): Bounded wake conditions, session budgets, delivery, and explicit operator control. - [Recombine distant experience](https://docs.ngram.space/architecture/dream-consolidation.md): An optional idle-time generation mechanism with explicitly low-confidence outputs. - [Learn from recorded outcomes](https://docs.ngram.space/architecture/learning.md): Feedback, retained corrections, and procedural guidance without model weight training. - [CLI reference](https://docs.ngram.space/reference/cli.md): Every ngram command and its flags. - [Configuration](https://docs.ngram.space/reference/configuration.md): Harness defaults and entity YAML reference. - [Environment variables](https://docs.ngram.space/reference/environment-variables.md): Every NGRAM_* and platform variable. - [Hardware](https://docs.ngram.space/reference/hardware.md): GPU VRAM requirements and model sizing. - [Build with us](https://docs.ngram.space/contributing.md): Make changes that preserve one Entity across models, tools, and surfaces. - [What ships in v1](https://docs.ngram.space/releases.md): The first coherent ngram runtime: persistent identity, useful tools, and spatial presence.