{"version":1,"pages":[{"id":"b3hG2cuDSC472vp2UJAh","title":"Overview","pathname":"/","siteSpaceId":"sitesp_WSKnQ","description":""},{"id":"aBvNwAwyIpjSeH4O4TEP","title":"FAQ","pathname":"/faq","siteSpaceId":"sitesp_WSKnQ","description":"Answers to the questions developers and AI assistants ask most often"},{"id":"C1O8PvyFku371264xoyS","title":"AI Agents","pathname":"/ai-agents","siteSpaceId":"sitesp_WSKnQ","description":"Build, run, and diagnose multi-agent AI systems on Ergo Framework"},{"id":"wlwZOqCyb2WXntUCmafl","title":"Actor Model","pathname":"/basics/actor-model","siteSpaceId":"sitesp_WSKnQ","description":"The Actor Model and Its Properties","breadcrumbs":[{"label":"Basics"}]},{"id":"31X7RmWRwfAdqG7eSoRt","title":"Supervision Tree","pathname":"/basics/supervision-tree","siteSpaceId":"sitesp_WSKnQ","description":"Process control and fault tolerance","breadcrumbs":[{"label":"Basics"}]},{"id":"Mh2jZsPVc5F4fQcmItue","title":"Generic Types","pathname":"/basics/generic-types","siteSpaceId":"sitesp_WSKnQ","description":"Data Types and Interfaces Used in Ergo Framework","breadcrumbs":[{"label":"Basics"}]},{"id":"EHJlsgZRecISzThkB5O7","title":"Node","pathname":"/basics/node","siteSpaceId":"sitesp_WSKnQ","description":"What is a Node in Ergo Framework?","breadcrumbs":[{"label":"Basics"}]},{"id":"DvG9k6KPP9niQbcr4yGB","title":"Process","pathname":"/basics/process","siteSpaceId":"sitesp_WSKnQ","description":"What is a Process in Ergo Framework","breadcrumbs":[{"label":"Basics"}]},{"id":"lnnCS7XVGtStLvhTYAq4","title":"Meta-Process","pathname":"/basics/meta-process","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Basics"}]},{"id":"y5aJIvk3D7qT81PcjD0B","title":"Application","pathname":"/basics/application","siteSpaceId":"sitesp_WSKnQ","description":"Grouping and Managing Actors as a Unit","breadcrumbs":[{"label":"Basics"}]},{"id":"OSGR1wbg0VKH3ubxRydL","title":"Links And Monitors","pathname":"/basics/links-and-monitors","siteSpaceId":"sitesp_WSKnQ","description":"Linking and Monitoring Mechanisms","breadcrumbs":[{"label":"Basics"}]},{"id":"nc52uqvHxbLIWUtbpNcp","title":"Events","pathname":"/basics/events","siteSpaceId":"sitesp_WSKnQ","description":"Publish/Subscribe Event Mechanism","breadcrumbs":[{"label":"Basics"}]},{"id":"Gv9pASjU5DzOIm2qnaCH","title":"Cron","pathname":"/basics/cron","siteSpaceId":"sitesp_WSKnQ","description":"Schedule tasks on a repetitive basis","breadcrumbs":[{"label":"Basics"}]},{"id":"sSDId8PHVsl89K7h1mr3","title":"Logging","pathname":"/basics/logging","siteSpaceId":"sitesp_WSKnQ","description":"Logging system and logger implementations","breadcrumbs":[{"label":"Basics"}]},{"id":"cZwAfFlUOLgQOvIJkU2O","title":"CertManager","pathname":"/basics/certmanager","siteSpaceId":"sitesp_WSKnQ","description":"TLS Certificate Management","breadcrumbs":[{"label":"Basics"}]},{"id":"SL4KDa2YMN7ONj41LQnH","title":"Project Structure","pathname":"/basics/project-structure","siteSpaceId":"sitesp_WSKnQ","description":"How to Structure Projects Built with Ergo Framework","breadcrumbs":[{"label":"Basics"}]},{"id":"PjXYriMvgy79ezHybM26","title":"Actor","pathname":"/actors/actor","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Actors"}]},{"id":"1crM9TP9WaqIbtAASNld","title":"Supervisor","pathname":"/actors/supervisor","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Actors"}]},{"id":"dxW3iX47jLJ7QwHS2Euq","title":"Pool","pathname":"/actors/pool","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Actors"}]},{"id":"b5DTp5SuDf2190BZPsnL","title":"Router","pathname":"/actors/router","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Actors"}]},{"id":"n3X2s8LP00VAjaq5L0e8","title":"WebWorker","pathname":"/actors/webworker","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Actors"}]},{"id":"FOcIqTgwZQZx4bkRTIue","title":"TCP","pathname":"/meta-processes/tcp","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Meta Processes"}]},{"id":"9wkb3KYSaT13oeXjKxqh","title":"UDP","pathname":"/meta-processes/udp","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Meta Processes"}]},{"id":"Ol28yjwxbb26O2NQvDnM","title":"Port","pathname":"/meta-processes/port","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Meta Processes"}]},{"id":"D2sDnvbwgJwQN8h08Lor","title":"Web","pathname":"/meta-processes/web","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Meta Processes"}]},{"id":"fZnvgJ4eXQbaDjzkxvOO","title":"Network Stack","pathname":"/networking/network-stack","siteSpaceId":"sitesp_WSKnQ","description":"Understanding the network stack for distributed communication","breadcrumbs":[{"label":"Networking"}]},{"id":"LYCxrxglyPplwYZfrMhJ","title":"Service Discovering","pathname":"/networking/service-discovering","siteSpaceId":"sitesp_WSKnQ","description":"How nodes find each other and establish connections","breadcrumbs":[{"label":"Networking"}]},{"id":"skZaitF0qMZQkhPP1lu7","title":"Network Transparency","pathname":"/networking/network-transparency","siteSpaceId":"sitesp_WSKnQ","description":"Making distributed communication feel local","breadcrumbs":[{"label":"Networking"}]},{"id":"V3diUgy9CvKOQkDLSQGd","title":"Static Routes","pathname":"/networking/static-routes","siteSpaceId":"sitesp_WSKnQ","description":"Controlling outgoing connections with static routing","breadcrumbs":[{"label":"Networking"}]},{"id":"f11mxURIFb9LJ5rx1rLx","title":"Behind the NAT","pathname":"/networking/behind-the-nat","siteSpaceId":"sitesp_WSKnQ","description":"Running nodes behind NAT or load balancers","breadcrumbs":[{"label":"Networking"}]},{"id":"JXrhijywXyidsb6rKwDN","title":"Mutual TLS","pathname":"/networking/mutual-tls","siteSpaceId":"sitesp_WSKnQ","description":"Mutual TLS authentication between nodes","breadcrumbs":[{"label":"Networking"}]},{"id":"zccmdS5sSIWSuhKXfEhm","title":"Remote Spawn Process","pathname":"/networking/remote-spawn-process","siteSpaceId":"sitesp_WSKnQ","description":"Spawning processes on remote nodes","breadcrumbs":[{"label":"Networking"}]},{"id":"uQIqTP4igxEdZdL9vpf9","title":"Remote Start Application","pathname":"/networking/remote-start-application","siteSpaceId":"sitesp_WSKnQ","description":"Starting applications on remote nodes","breadcrumbs":[{"label":"Networking"}]},{"id":"iDhoEclEDuNzJzDhAQz1","title":"Overview","pathname":"/testing/overview","siteSpaceId":"sitesp_WSKnQ","description":"How to test actor systems in Ergo, and which layer to use","breadcrumbs":[{"label":"Testing"}]},{"id":"Tehyv6v2j4SyIlCM3lYO","title":"Check","pathname":"/testing/check","siteSpaceId":"sitesp_WSKnQ","description":"The shared assertion vocabulary that unit and stage are written in","breadcrumbs":[{"label":"Testing"}]},{"id":"jowk5Tgew68IcnLJWqle","title":"Mock","pathname":"/testing/mock","siteSpaceId":"sitesp_WSKnQ","description":"Standalone fakes of the gen interfaces, for testing code that consumes them","breadcrumbs":[{"label":"Testing"}]},{"id":"ww2NzTTuxTuvmIqM9wxs","title":"Unit","pathname":"/testing/unit","siteSpaceId":"sitesp_WSKnQ","description":"The in-process harness for testing a single actor's logic","breadcrumbs":[{"label":"Testing"}]},{"id":"JG62Ua2fFYbdd2rEpVFy","title":"Stage","pathname":"/testing/stage","siteSpaceId":"sitesp_WSKnQ","description":"The live multi-node harness for testing the real runtime end to end","breadcrumbs":[{"label":"Testing"}]},{"id":"4Fg2R4J76w0jHdXnay3B","title":"Handling Sync Requests","pathname":"/advanced/handle-sync","siteSpaceId":"sitesp_WSKnQ","description":"Handling synchronous requests in the asynchronous actor model","breadcrumbs":[{"label":"Advanced"}]},{"id":"qTh2SBqdHWiSuDjHT4JJ","title":"Important Delivery Flag","pathname":"/advanced/important-delivery","siteSpaceId":"sitesp_WSKnQ","description":"Guaranteed message delivery with acknowledgment","breadcrumbs":[{"label":"Advanced"}]},{"id":"ofAnzkOWRL2OzoMJE80j","title":"Pub/Sub Internals","pathname":"/advanced/pub-sub-internals","siteSpaceId":"sitesp_WSKnQ","description":"How the Pub/Sub system works internally","breadcrumbs":[{"label":"Advanced"}]},{"id":"YKdWG9TmXhlBX9bMN6tr","title":"Message Versioning","pathname":"/advanced/message-versioning","siteSpaceId":"sitesp_WSKnQ","description":"Evolving message contracts in distributed clusters","breadcrumbs":[{"label":"Advanced"}]},{"id":"Xqt3o5bbPzKnC4e8bojx","title":"Building a Cluster","pathname":"/advanced/building-a-cluster","siteSpaceId":"sitesp_WSKnQ","description":"Building production clusters with Ergo technologies","breadcrumbs":[{"label":"Advanced"}]},{"id":"qi847CO46PXmI0zOcPjp","title":"Debugging","pathname":"/advanced/debugging","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"Advanced"}]},{"id":"i7NTNiZZdSX5BsWXhuYl","title":"Distributed Tracing","pathname":"/advanced/distributed-tracing","siteSpaceId":"sitesp_WSKnQ","description":"Distributed tracing across actor message chains","breadcrumbs":[{"label":"Advanced"}]},{"id":"JVYjklrLbvkA1shNIVSQ","title":"Inspecting Actor State","pathname":"/advanced/inspecting-state","siteSpaceId":"sitesp_WSKnQ","description":"HandleInspect as the observability surface of an actor, and what it makes possible","breadcrumbs":[{"label":"Advanced"}]},{"id":"hz1wAbFk6i9AZSzDKwaB","title":"Inspecting With Observer","pathname":"/advanced/observer","siteSpaceId":"sitesp_WSKnQ","description":"Real-time inspection and management of Ergo nodes","breadcrumbs":[{"label":"Advanced"}]},{"id":"BMiko4o6Y7pkDVUJVpIM","title":"Inspecting With an AI Agent","pathname":"/advanced/mcp","siteSpaceId":"sitesp_WSKnQ","description":"What your AI agent can do with a live Ergo cluster over MCP","breadcrumbs":[{"label":"Advanced"}]},{"id":"grPnyh7O9NrrPaS4tM44","title":"Actors","pathname":"/extra-library/actors","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"}]},{"id":"o1Xix195ulxgVSBjMxoB","title":"Health","pathname":"/extra-library/actors/health","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Actors"}]},{"id":"SRUSLFN5Excwbdo1oTvh","title":"Leader","pathname":"/extra-library/actors/leader","siteSpaceId":"sitesp_WSKnQ","description":"Distributed leader election for coordinating work across a cluster","breadcrumbs":[{"label":"extra library"},{"label":"Actors"}]},{"id":"2zOrRu9KKKPXXBhOuguI","title":"Metrics","pathname":"/extra-library/actors/metrics","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Actors"}]},{"id":"dr2fyf9ahjaua7iD35fC","title":"Applications","pathname":"/extra-library/applications","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"}]},{"id":"4PhXvQSUu8zr9I0O01R7","title":"Observer","pathname":"/extra-library/applications/observer","siteSpaceId":"sitesp_WSKnQ","description":"Web UI and MCP surface for monitoring, inspecting and managing Ergo nodes","breadcrumbs":[{"label":"extra library"},{"label":"Applications"}]},{"id":"AcRIP7RdTNFsS4FQK6so","title":"Radar","pathname":"/extra-library/applications/radar","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Applications"}]},{"id":"K1VvW9kydYCWpW7Ar9Xf","title":"Pulse","pathname":"/extra-library/applications/pulse","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Applications"}]},{"id":"TsJ6I9Wa95vtRsYLIsJD","title":"Grid","pathname":"/extra-library/applications/grid","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Applications"}]},{"id":"SFuVtQmcYcbus28LDUB3","title":"Meta-Processes","pathname":"/extra-library/meta-processes","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"}]},{"id":"80vzsWrTBQQvhuP7fhon","title":"WebSocket","pathname":"/extra-library/meta-processes/websocket","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Meta-Processes"}]},{"id":"DdNetsGLDzNgrdiOee8L","title":"SSE","pathname":"/extra-library/meta-processes/sse","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Meta-Processes"}]},{"id":"QRYk9dM7nwWiWNbUwR6j","title":"Loggers","pathname":"/extra-library/loggers","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"}]},{"id":"zo526GrC99NaqCGpMpQa","title":"Colored","pathname":"/extra-library/loggers/colored","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Loggers"}]},{"id":"I9wxLz7GRPumsIblDu54","title":"Rotate","pathname":"/extra-library/loggers/rotate","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Loggers"}]},{"id":"XgEutbAEp0gin4BWWezb","title":"Sentry","pathname":"/extra-library/loggers/sentry","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Loggers"}]},{"id":"zJ6Vpk1GvSF58uKsa5rs","title":"Registrars","pathname":"/extra-library/registrars","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"}]},{"id":"NLewR1cNeKrGIYfRTk7n","title":"Saturn Сlient","pathname":"/extra-library/registrars/saturn-client","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Registrars"}]},{"id":"08i5IhMLr1TVji0Hp43i","title":"etcd Client","pathname":"/extra-library/registrars/etcd-client","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"},{"label":"Registrars"}]},{"id":"PYUbljDgJcn1OCi6ukY1","title":"Network Protocols","pathname":"/extra-library/network-protocols","siteSpaceId":"sitesp_WSKnQ","description":"","breadcrumbs":[{"label":"extra library"}]},{"id":"pcXEpTdQ0QPRutsg80Ok","title":"Erlang","pathname":"/extra-library/network-protocols/erlang","siteSpaceId":"sitesp_WSKnQ","description":"Erlang network stack","breadcrumbs":[{"label":"extra library"},{"label":"Network Protocols"}]},{"id":"SJEiG5T7CvmWJCZVd3Tp","title":"Boilerplate Code Generation","pathname":"/tools/ergo","siteSpaceId":"sitesp_WSKnQ","description":"Boilerplate Generator for Ergo Framework Projects","breadcrumbs":[{"label":"Tools"}]},{"id":"uzIekwteAf8UhjqTMqzN","title":"Actor Model Vet Tool","pathname":"/tools/argus","siteSpaceId":"sitesp_WSKnQ","description":"Vet Tool for Ergo Actor Model Invariants","breadcrumbs":[{"label":"Tools"}]},{"id":"IwwL4h8HXffjYVuPAcEX","title":"Saturn - Central Registrar","pathname":"/tools/saturn","siteSpaceId":"sitesp_WSKnQ","description":"Ergo Service Registry and Discovery","breadcrumbs":[{"label":"Tools"}]}]}