[{"data":1,"prerenderedAt":363},["ShallowReactive",2],{"navigation_docs":3,"-guides-self-hosting":151,"-guides-self-hosting-surround":358},[4,15,75,136],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":14},"Getting Started","i-lucide-rocket","/getting-started","1.getting-started",[10],{"title":11,"path":12,"stem":13,"icon":6},"Quick Start","/getting-started/quick-start","1.getting-started/1.quick-start",false,{"title":16,"icon":17,"path":18,"stem":19,"children":20,"page":14},"Guides","i-lucide-book-open","/guides","2.guides",[21,26,31,36,41,46,51,56,61,66,71],{"title":22,"path":23,"stem":24,"icon":25},"Deployment","/guides/deployment","2.guides/1.deployment","i-lucide-server",{"title":27,"path":28,"stem":29,"icon":30},"Get Help","/guides/get-help","2.guides/10.get-help","i-lucide-message-circle",{"title":32,"path":33,"stem":34,"icon":35},"Glossary","/guides/glossary","2.guides/11.glossary","i-lucide-book-marked",{"title":37,"path":38,"stem":39,"icon":40},"Concepts","/guides/concepts","2.guides/2.concepts","i-lucide-list",{"title":42,"path":43,"stem":44,"icon":45},"Roadmap","/guides/roadmap","2.guides/3.roadmap","i-lucide-map",{"title":47,"path":48,"stem":49,"icon":50},"Contribution Guide","/guides/contribution-guide","2.guides/4.contribution-guide","i-lucide-git-pull-request",{"title":52,"path":53,"stem":54,"icon":55},"Using the Dashboard","/guides/using-the-dashboard","2.guides/5.using-the-dashboard","i-lucide-layout-dashboard",{"title":57,"path":58,"stem":59,"icon":60},"Privacy and Data","/guides/privacy-and-data","2.guides/6.privacy-and-data","i-lucide-shield",{"title":62,"path":63,"stem":64,"icon":65},"Changelog","/guides/changelog","2.guides/7.changelog","i-lucide-history",{"title":67,"path":68,"stem":69,"icon":70},"Limits and Quotas","/guides/limits-and-quotas","2.guides/8.limits-and-quotas","i-lucide-gauge",{"title":72,"path":73,"stem":74,"icon":25},"Self-Hosting","/guides/self-hosting","2.guides/9.self-hosting",{"title":76,"icon":77,"path":78,"stem":79,"children":80,"page":14},"Platform","i-lucide-layers","/platform","3.platform",[81,86,91,96,100,105,110,114,119,123,128,132],{"title":82,"path":83,"stem":84,"icon":85},"Agent OS","/platform/agent","3.platform/1.agent","i-lucide-cpu",{"title":87,"path":88,"stem":89,"icon":90},"Store API Contract (for Agent OS)","/platform/store-api","3.platform/10.store-api","i-lucide-code-2",{"title":92,"path":93,"stem":94,"icon":95},"CLI Reference","/platform/cli-reference","3.platform/11.cli-reference","i-lucide-terminal",{"title":97,"path":98,"stem":99,"icon":25},"MCP Server Integration (optional)","/platform/mcp-server-integration","3.platform/12.mcp-server-integration",{"title":101,"path":102,"stem":103,"icon":104},"Channels (Telegram, Slack, Discord, Signal, Viber)","/platform/integrations","3.platform/2.integrations","i-lucide-plug",{"title":106,"path":107,"stem":108,"icon":109},"Skills Store (optional)","/platform/store","3.platform/3.store","i-lucide-store",{"title":111,"path":112,"stem":113,"icon":17},"Skills Authoring","/platform/skills-authoring","3.platform/4.skills-authoring",{"title":115,"path":116,"stem":117,"icon":118},"Security","/platform/security","3.platform/5.security","i-lucide-shield-check",{"title":120,"path":121,"stem":122,"icon":90},"Agent API Reference","/platform/agent-api","3.platform/6.agent-api",{"title":124,"path":125,"stem":126,"icon":127},"Agent Configuration","/platform/agent-config","3.platform/7.agent-config","i-lucide-settings",{"title":129,"path":130,"stem":131,"icon":127},"Channels Configuration","/platform/integrations-config","3.platform/8.integrations-config",{"title":133,"path":134,"stem":135,"icon":127},"Store Configuration (optional)","/platform/store-config","3.platform/9.store-config",{"title":137,"icon":138,"path":139,"stem":140,"children":141,"page":14},"Troubleshooting","i-lucide-wrench","/troubleshooting","4.troubleshooting",[142,146],{"title":143,"path":144,"stem":145,"icon":138},"Common Issues","/troubleshooting/common-issues","4.troubleshooting/1.common-issues",{"title":147,"path":148,"stem":149,"icon":150},"FAQ","/troubleshooting/faq","4.troubleshooting/2.faq","i-lucide-help-circle",{"id":152,"title":72,"body":153,"description":351,"extension":352,"links":353,"meta":354,"navigation":355,"path":73,"seo":356,"stem":74,"__hash__":357},"docs/2.guides/9.self-hosting.md",{"type":154,"value":155,"toc":340},"minimark",[156,161,177,181,192,229,233,237,317,321,330,334],[157,158,160],"h2",{"id":159},"overview","Overview",[162,163,164,165,168,169,172,173,176],"p",{},"You can run ",[166,167,82],"strong",{}," entirely on your own machine or server. Optionally, you can point it at a ",[166,170,171],{},"skill store"," (registry URL) that you host or use. This page gives a short checklist; for deployment details see ",[174,175,22],"a",{"href":23},".",[157,178,180],{"id":179},"architecture-self-hosted","Architecture (self-hosted)",[182,183,188],"pre",{"className":184,"code":186,"language":187},[185],"language-text","[Users / devices]\n       │\n       ▼\n[Agent OS server]  ← ~/.agent-os (config, DB, agents, skills)\n       │            ← PORT=3010, HOST=127.0.0.1 (or reverse proxy)\n       │\n       ├──► [Channels]  Telegram, Slack, Discord, Signal, Viber\n       │     (webhooks; server must be HTTPS in production)\n       │\n       └──► [Optional store]  Registry URL in config\n                 (GET registry + GET skill content)\n","text",[189,190,186],"code",{"__ignoreMap":191},"",[193,194,195,209,219],"ul",{},[196,197,198,200,201,204,205,208],"li",{},[166,199,82],{}," runs on one machine. All data (config, DB, agents, skills) lives under ",[166,202,203],{},"AGENT_OS_HOME"," (default ",[189,206,207],{},"~/.agent-os","). No separate “Integrations” service in this repo; channels are built in (webhooks + config).",[196,210,211,214,215,218],{},[166,212,213],{},"Channels"," — For production, expose the server over ",[166,216,217],{},"HTTPS"," (reverse proxy) and set each channel’s webhook URL on the platform. Tokens and default agents are in config.",[196,220,221,224,225,228],{},[166,222,223],{},"Store"," — Optional. If you run or use a skill store, set its ",[166,226,227],{},"registry URL"," in Settings so the dashboard and API can list and install skills by slug.",[157,230,232],{"id":231},"checklist","Checklist",[234,235,82],"h3",{"id":236},"agent-os",[193,238,241,261,271,285,298,307],{"className":239},[240],"contains-task-list",[196,242,245,250,251,254,255,258,259,176],{"className":243},[244],"task-list-item",[246,247],"input",{"disabled":248,"type":249},true,"checkbox"," Install and run (e.g. ",[189,252,253],{},"bun run dev"," or ",[189,256,257],{},"sulala start","). See ",[174,260,22],{"href":23},[196,262,264,266,267,270],{"className":263},[244],[246,265],{"disabled":248,"type":249}," Run ",[166,268,269],{},"sulala onboard"," once to create config and seed agents/skills.",[196,272,274,276,277,280,281,284],{"className":273},[244],[246,275],{"disabled":248,"type":249}," Set ",[166,278,279],{},"PORT"," and ",[166,282,283],{},"HOST"," if not default. For remote access, use a reverse proxy and HTTPS.",[196,286,288,276,290,293,294,297],{"className":287},[244],[246,289],{"disabled":248,"type":249},[166,291,292],{},"AI API keys"," in Settings or ",[189,295,296],{},"~/.agent-os/config.json"," (OpenAI, OpenRouter, etc.).",[196,299,301,303,304,306],{"className":300},[244],[246,302],{"disabled":248,"type":249}," (Optional) Set ",[166,305,227],{}," to your store’s registry so you can install skills from the store.",[196,308,310,312,313,316],{"className":309},[244],[246,311],{"disabled":248,"type":249}," (Optional) Configure ",[166,314,315],{},"channels"," in Settings (tokens, default agents). For webhooks, ensure the server is reachable over HTTPS and webhook URLs are set on each platform.",[234,318,320],{"id":319},"optional-store","Optional store",[193,322,324],{"className":323},[240],[196,325,327,329],{"className":326},[244],[246,328],{"disabled":248,"type":249}," If you run a store app, deploy it (e.g. Vercel or your server). Set its base URL and any admin/auth env. Point Agent OS at its registry URL as above.",[157,331,333],{"id":332},"summary","Summary",[162,335,336,337,339],{},"Agent OS is a single server (Bun). Self-hosting means running that server on your own host or VPS, with config and DB under ",[189,338,207],{},". Channels and an optional store are configured via config and Settings; no separate Integrations server is required in this repo.",{"title":191,"searchDepth":341,"depth":341,"links":342},2,[343,344,345,350],{"id":159,"depth":341,"text":160},{"id":179,"depth":341,"text":180},{"id":231,"depth":341,"text":232,"children":346},[347,349],{"id":236,"depth":348,"text":82},3,{"id":319,"depth":348,"text":320},{"id":332,"depth":341,"text":333},"Run Sulala Agent OS on your own infrastructure — server, channels, and optional store.","md",null,{},{"icon":25},{"title":72,"description":351},"rivjojTYC_vU9hdaGjwQ2FT5DibF-H2E3Qc-ISNEtvY",[359,361],{"title":67,"path":68,"stem":69,"description":360,"icon":70,"children":-1},"Configurable limits for Agent OS — per-agent limits, timeouts, and context.",{"title":82,"path":83,"stem":84,"description":362,"icon":85,"children":-1},"Lightweight Bun-based Agent Operating System — agents, skills, task queue, scheduler, graphs, memory, and channels.",1773850668598]