[{"data":1,"prerenderedAt":417},["ShallowReactive",2],{"navigation_docs":3,"-troubleshooting-faq":151,"-troubleshooting-faq-surround":414},[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":147,"body":153,"description":407,"extension":408,"links":409,"meta":410,"navigation":411,"path":148,"seo":412,"stem":149,"__hash__":413},"docs/4.troubleshooting/2.faq.md",{"type":154,"value":155,"toc":395},"minimark",[156,161,191,195,214,218,242,246,274,278,300,304,339,344,348,380,384],[157,158,160],"h2",{"id":159},"do-i-need-a-separate-integrations-service","Do I need a separate Integrations service?",[162,163,164,165,169,170,173,174,177,178,181,182,186,187,190],"p",{},"No. Agent OS does not include an OAuth integrations server. For ",[166,167,168],"strong",{},"channels"," (Telegram, Slack, Discord, Signal, Viber), you only configure tokens and default agents in ",[166,171,172],{},"Settings → Channels",". Skills that need OAuth (e.g. Gmail) can use a ",[166,175,176],{},"Portal"," (external OAuth service) with a runtime-supplied base URL, or store credentials in ",[166,179,180],{},"skill config"," (e.g. user pastes a token). See ",[183,184,185],"a",{"href":102},"Channels"," and ",[183,188,189],{"href":112},"Skills authoring",".",[157,192,194],{"id":193},"where-are-api-keys-and-channel-tokens-stored","Where are API keys and channel tokens stored?",[162,196,197,198,204,205,208,209,190],{},"In ",[166,199,200],{},[201,202,203],"code",{},"~/.agent-os/config.json"," (or under ",[201,206,207],{},"AGENT_OS_HOME","). The server and CLI read from this file; env vars can override. Never commit this file. Skill-specific config (e.g. API keys for a skill) is in ",[166,210,211],{},[201,212,213],{},"~/.agent-os/configs/\u003Cskill_id>.json",[157,215,217],{"id":216},"can-i-use-a-skill-store","Can I use a skill store?",[162,219,220,221,224,225,228,229,234,235,238,239,190],{},"Yes. Agent OS supports an ",[166,222,223],{},"optional"," store: set the store’s ",[166,226,227],{},"registry URL"," in Settings (or config). The dashboard can then list and install skills by slug. You can also install skills by copying to ",[166,230,231],{},[201,232,233],{},"~/.agent-os/skills/"," or using ",[166,236,237],{},"Install system skills"," from the seed dir. See ",[183,240,241],{"href":107},"Store",[157,243,245],{"id":244},"whats-the-difference-between-a-skill-and-a-tool","What’s the difference between a skill and a tool?",[247,248,249,264],"ul",{},[250,251,252,255,256,259,260,263],"li",{},[166,253,254],{},"Skill"," — An installable module (folder under ",[201,257,258],{},"~/.agent-os/skills/\u003Cname>/",") with skill.yaml (or SKILL.md) and optional tools.yaml. It ",[166,261,262],{},"registers"," tools and may require config (API keys, etc.).",[250,265,266,269,270,273],{},[166,267,268],{},"Tool"," — A callable capability the model uses (e.g. echo, time, or tools defined in a skill’s tools.yaml). The ",[166,271,272],{},"tool registry"," holds all tools; each agent gets tools from its listed skills + built-in allowlist.",[157,275,277],{"id":276},"why-dont-i-see-any-skills-in-the-store-registry","Why don’t I see any skills in the store / registry?",[247,279,280,286,289],{},[250,281,282,283,285],{},"Ensure the ",[166,284,227],{}," is set in Settings (or config) to a valid endpoint (e.g. your store’s registry API).",[250,287,288],{},"Ensure the server can reach that URL (no firewall blocking outbound HTTPS).",[250,290,291,292,296,297,299],{},"If you don’t use a store, install skills by copying to ",[166,293,294],{},[201,295,233],{}," or use ",[166,298,237],{}," (dashboard or API).",[157,301,303],{"id":302},"how-do-i-add-my-own-skill-without-a-store","How do I add my own skill without a store?",[247,305,306,329],{},[250,307,308,311,312,316,317,320,321,324,325,328],{},[166,309,310],{},"Copy"," — Create a folder under ",[166,313,314],{},[201,315,258],{}," with ",[201,318,319],{},"skill.yaml"," (or ",[201,322,323],{},"SKILL.md",") and optional ",[201,326,327],{},"tools.yaml",", then restart the server (or use Install system skills if the skill is in the seed dir).",[250,330,331,334,335,338],{},[166,332,333],{},"Upload"," — Use ",[166,336,337],{},"POST /api/skills/upload"," (zip) or the dashboard upload if available.",[162,340,341,342,190],{},"See ",[183,343,189],{"href":112},[157,345,347],{"id":346},"the-channel-telegramslacketc-doesnt-reply","The channel (Telegram/Slack/etc.) doesn’t reply.",[247,349,350,362,369],{},[250,351,197,352,354,355,186,358,361],{},[166,353,172],{},", confirm ",[166,356,357],{},"token",[166,359,360],{},"default agent id"," for that channel.",[250,363,364,365,368],{},"For webhooks, ensure the server is reachable over ",[166,366,367],{},"HTTPS"," and the webhook URL is set on the platform (use set-webhook for Telegram/Viber if needed).",[250,370,371,372,375,376,379],{},"For Slack/Discord, ensure ",[166,373,374],{},"signing secret"," or ",[166,377,378],{},"public key"," is set so the server can verify requests.",[157,381,383],{"id":382},"is-the-server-exposed-to-the-internet","Is the server exposed to the internet?",[162,385,386,387,390,391,394],{},"By default, no. The server binds to ",[166,388,389],{},"127.0.0.1"," (localhost). Only processes on your machine can reach it unless you set ",[166,392,393],{},"HOST"," to another address or put the server behind a reverse proxy and expose it.",{"title":396,"searchDepth":397,"depth":397,"links":398},"",2,[399,400,401,402,403,404,405,406],{"id":159,"depth":397,"text":160},{"id":193,"depth":397,"text":194},{"id":216,"depth":397,"text":217},{"id":244,"depth":397,"text":245},{"id":276,"depth":397,"text":277},{"id":302,"depth":397,"text":303},{"id":346,"depth":397,"text":347},{"id":382,"depth":397,"text":383},"Frequently asked questions about Sulala Agent OS.","md",null,{},{"icon":150},{"title":147,"description":407},"Zaq0HuDpjmR8_H4KLBufhPZIof7E2EyQGPWTaXhlfUA",[415,409],{"title":143,"path":144,"stem":145,"description":416,"icon":138,"children":-1},"Solutions to common problems when running Sulala Agent OS.",1773850668598]