mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-10-28 19:35:27 +08:00
* docs: add sandbox documentation for all languages Add comprehensive documentation for the code sandbox feature: - Overview, built-in tools, scope and lifecycle - Backend configuration (Docker/Nsjail/E2B) - Security profiles (default/offline_readonly/network_basic/network_extended) - Complete configuration reference Languages: zh, en, ja * docs: add skills documentation for all languages Add comprehensive Skills system documentation covering: - Design philosophy and industry practices comparison (Claude Code, OpenAI GPTs, Cursor) - Layered architecture (management, import, execution layers) - Current activation mechanism ([ACTIVATE_SKILL:] marker) with TODO for future Tool Call optimization - Agent Skills open standard compliance with field specifications - Complete tools API reference Languages: zh, en, ja Co-Authored-By: Claude Opus 4.7 <[email protected]> * docs: update sandbox documentation to include new tools and configuration options * Refactor Skills API documentation to align with Tool Call mechanism - Updated the overview of the Skills system to emphasize the Tool Call mechanism for activating and registering skills. - Removed deprecated tools and consolidated functionality into `activate` and `register_skill`. - Revised usage examples and parameters for the new tools, ensuring clarity on their requirements and expected responses. - Enhanced descriptions of the activation process, including the injection of skill instructions and mounting of skill packages. - Improved error handling documentation for better user guidance. - Added notes on sandbox requirements for tool usage and the creation of new skills. * docs: align sandbox runtime guides * docs: align sandbox & skills guides with current Box implementation Correct five inaccuracies across the zh/en/ja sandbox and skills docs so they match the actual code: - Box launch command: use the lbp CLI subcommand (`langbot_plugin.cli.__init__ box`) instead of the removed `langbot_plugin.box --mode ws`. - Environment variables: replace the obsolete `LANGBOT_BOX_LOCAL_*` vars with the unified `SECTION__SUBSECTION__KEY` override convention (`BOX__LOCAL__*`); note that the langbot_box service reads no config.yaml/env and is configured by LangBot over INIT RPC. - Skills: drop the stale "falls back to data/skills" claims — the Box Runtime is the sole source of skills; when Box is unavailable the skill list is simply empty. - Document the new `box.enabled` master switch (default true) and what it gates. - Document that the langbot_box compose service is optional, gated behind the `box`/`all` compose profile. * docs: align sandbox docs with implementation * docs: simplify sandbox naming and diagrams * docs: shorten AI capability nav labels * docs: merge sandbox configuration pages * docs: document BOX__BACKEND as sole backend selector * docs: recommend all profile for docker deploy * docs: add docker permission fix for sandbox * chore(skills): add obra/superpowers writing-skills Install the writing-skills skill from obra/superpowers via `npx skills add`. Lands the skill files under .agents/skills/ (universal layout) with a Claude Code symlink at .claude/skills/ and the pin in skills-lock.json. Also gitignore .claude/settings.local.json since it's per-user Claude Code state (skill symlinks under .claude/skills/ remain tracked). * docs(sandbox,skills): tighten user guides for onboarding Rewrite the sandbox and skills user guides to be shorter, plainer, and focused on getting users productive instead of explaining internals. Changes per page (zh/en/ja kept in lockstep): - sandbox/readme: 170 → 73 lines. Drop the "what is a sandbox" essay, decorative mermaid, and the backend table that already lives in config.mdx. Lead with the six built-in tools and the scope picker (the parts users actually configure). - sandbox/runtime-relationships: 75 → 54 lines. Replace the runtime prose with a single comparison table; tighten the troubleshooting entry-points. - skills/readme: 320 → 114 lines. Cut the "design philosophy" / "industry comparison" / "KV cache theory" sections — those are implementation details users don't need to ship. Lead with the user-visible flow (Agent reads <available_skills> → calls activate → follows the SKILL.md). - skills/skill-format: 360 → 134 lines. One excellent example (api-tester) instead of three overlapping ones. Drop the standalone "field details" subsections that just restate the table. - skills/tools-api: 200 → 122 lines. Drop the old-vs-new historical comparison and the duplicated activation section; keep the two tool signatures, parameters, returns and errors. sandbox/config.mdx left untouched (already condensed upstream). Principles applied come from obra/superpowers writing-skills (installed in 08c35a4): lead with use, one excellent example, tables for scanning, cut internals and history. * docs(sandbox): drop redundant 'how to choose' table from runtime-relationships The 对照表 above already has a '何时使用 / When to use' column that says the same thing. Repeating it as a second 怎么选 / How to Choose table was pure noise. * docs(skills): collapse to one page, link out for SKILL.md spec Delete skill-format.mdx and tools-api.mdx — Skills now has a single page. The format details and tools reference were already covered in shorter form inside readme.mdx; the separate pages were repetition. In readme.mdx: - Inline a compact 'SKILL.md format' section (one example + a three- field table) and point at agentskills.io for the canonical spec. - Drop the 'next steps' section and the tools-api link, since both destinations no longer exist. docs.json: remove the two pages from each locale's Skills nav. Add redirects from the old paths to readme so existing links don't 404. * docs(nav): flatten Skills — single page, no group wrapper Group with one child is just visual noise in the sidebar. Replace { group: Skills, pages: [...readme] } with the readme path directly in the parent AI Configuration group, in all three locales. * docs(mcp,skills): lead with LangBot Space as the preferred install path LangBot Space (https://space.langbot.app) now hosts a curated list of MCP servers and Skills. Surface that as the first install option in both user guides. - usage/mcp/readme: rework the intro Info block to recommend LangBot Space first (third-party channels demoted to "alternative source"). Add a "Install from LangBot Space (Preferred)" section above the existing manual flow; rename that flow to "Add MCP Server Manually". - usage/skills/readme: add a "Install from LangBot Space (Preferred)" section above "Creating a Skill"; rename the existing section to "Creating a Custom Skill" so the contrast is clear. zh/en/ja kept in sync. * docs(skills): reorganize the readme around the user journey The old structure interleaved "what it is" → "how it works internally" → "prerequisites" → "format spec" → install options. Reorder around how users actually approach the page: Intro → compare with plugins/MCP → install → enable → write → debug Specific moves: - Drop the standalone "Workflow" flow diagram; fold the one important point (activation pulls SKILL.md via Tool Result) into the intro. - Merge the standalone "Prerequisites" section into a short Note on the Install heading — that's where the constraint actually applies. - Bring "Install from LangBot Space" and "Create your own" together under one "Install" H2 with H3 subsections; they were sibling H2s before, which buried the relationship. - Move "Writing a SKILL.md" after install + enable, since most users start with marketplace skills. - Demote the "Tools the Agent sees" table to an H3 inside the writing section — it's reference, not a top-level concern. 114 → 100 lines, zh/en/ja in lockstep. * docs(mcp,models): reorder MCP page + move tool-use capability to Models Two related changes, same as the Skills cleanup pattern: usage/mcp/readme — reorganize around the user journey - Drop the standalone "Enable function calling on the model" section; that belongs in the Models doc (it's not MCP-specific — sandbox tools and Skills depend on the same model capability). - Drop the redundant "Effect" section — its one fact (built-in Agent + tool-use model) already lives in the Note under "Three Transport Modes". - Group install paths under one "Installing an MCP Server" H2 with Space (preferred) and manual flows as H3 siblings, mirroring the Skills doc layout. - Move the stdio MCP technical block under a clearly-labeled "Advanced: stdio MCP" H2 so casual readers skim past it. - Trim screenshot duplication and collapse three steps in the manual flow into one paragraph + one screenshot per step. - 140 → 107 lines, zh/en/ja kept in lockstep. usage/models/readme — rename and expand "function calling" → "tool use" - The checkbox is renamed to "Tool Use" (zh: 工具使用能力 / ja: ツール 使用); function calling kept in parentheses for recognition. - Expand the bullet into a Note that explicitly lists where the capability matters: MCP servers, sandbox built-ins (exec/read/write/ edit/glob/grep), Skills. Without it, even bound extensions stay silent. - Note that the underlying model must actually support function calling for the checkbox to take effect. * docs(sandbox): point sandbox/config readers to System Environment Settings The page lists box.* YAML blocks without ever telling the reader where those settings actually go. Add a one-line Note at the top linking to deploy/settings (System Environment Settings), where the data/config.yaml location and load mechanism are documented. * docs(sandbox/config): align the page with the real config structure The previous version listed local / docker / nsjail / e2b as four parallel "backends" in one flat table. That's wrong: looking at the config template and the SDK's _select_backend, the real model is: - box.backend accepts 'local' | 'docker' | 'nsjail' | 'e2b' - 'local' is shorthand for "auto-pick from Docker / Nsjail" — not a fourth backend - 'local', 'docker', 'nsjail' all *share* the box.local.* config section; the section is misleadingly named ("local" here means "host-local backends", not "for backend: 'local'") - 'e2b' uses box.e2b.* instead - 'local' is the only value that auto-falls-back; everything else is a hard selection Rewrite the page around that structure: - Group backends as "local containers" vs "cloud" with the four values inside, and call out the local-vs-fourth-backend distinction. - Split the old single "common settings" table into two clearly-scoped tables: box.local.* (for local backends) and box.e2b.* (for cloud). - Move box.runtime.endpoint into the Docker Compose section, where it actually matters. - Add an explicit note that backend is a hard selection — only 'local' fans out. zh/en/ja kept in lockstep. * docs(deploy): note Box control-plane transport differs by deploy method In Docker deployments the Box control plane runs as the langbot_box container (WebSocket); manual / uvx deployments use a stdio subprocess. Also clarify the LangBot image bundles the docker client so langbot_box can create sandbox containers via the mounted socket without extra setup. zh / en / ja. --------- Co-authored-by: Claude Opus 4.7 <[email protected]> Co-authored-by: Junyan Qin <[email protected]>
893 lines
28 KiB
JSON
893 lines
28 KiB
JSON
{
|
||
"$schema": "https://mintlify.com/docs.json",
|
||
"theme": "mint",
|
||
"name": "LangBot",
|
||
"colors": {
|
||
"primary": "#4692dd",
|
||
"light": "#4692dd",
|
||
"dark": "#4692dd"
|
||
},
|
||
"fontFamily": "Noto Sans SC",
|
||
"logo": {
|
||
"light": "/logo/langbot-logo-0.5x.png",
|
||
"dark": "/logo/langbot-logo-0.5x.png",
|
||
"href": "https://langbot.app"
|
||
},
|
||
"favicon": "/favicon.ico",
|
||
"description": "Production-grade No-code AI Bot Platform. Connect DeepSeek, Dify, GPT-4 & Claude to WeChat, Discord, Telegram, Slack, Lark & DingTalk in 5 minutes.",
|
||
"seo": {
|
||
"indexing": "all",
|
||
"metatags": {
|
||
"og:site_name": "LangBot Docs",
|
||
"twitter:card": "summary_large_image",
|
||
"og:image": "https://langbot.app/og-image.png"
|
||
}
|
||
},
|
||
"navbar": {
|
||
"links": [
|
||
{
|
||
"label": "Home",
|
||
"href": "https://langbot.app"
|
||
},
|
||
{
|
||
"label": "Cloud",
|
||
"href": "https://space.langbot.app/cloud"
|
||
},
|
||
{
|
||
"label": "Market",
|
||
"href": "https://space.langbot.app"
|
||
},
|
||
{
|
||
"label": "Blog",
|
||
"href": "https://blog.langbot.app"
|
||
},
|
||
{
|
||
"label": "Roadmap",
|
||
"href": "https://langbot.featurebase.app/roadmap"
|
||
}
|
||
]
|
||
},
|
||
"footer": {
|
||
"socials": {
|
||
"github": "https://github.com/langbot-app/LangBot"
|
||
}
|
||
},
|
||
"redirects": [
|
||
{
|
||
"source": "/en/usage/sandbox/backend",
|
||
"destination": "/en/usage/sandbox/config"
|
||
},
|
||
{
|
||
"source": "/en/usage/sandbox/profiles",
|
||
"destination": "/en/usage/sandbox/config"
|
||
},
|
||
{
|
||
"source": "/zh/usage/sandbox/backend",
|
||
"destination": "/zh/usage/sandbox/config"
|
||
},
|
||
{
|
||
"source": "/zh/usage/sandbox/profiles",
|
||
"destination": "/zh/usage/sandbox/config"
|
||
},
|
||
{
|
||
"source": "/ja/usage/sandbox/backend",
|
||
"destination": "/ja/usage/sandbox/config"
|
||
},
|
||
{
|
||
"source": "/ja/usage/sandbox/profiles",
|
||
"destination": "/ja/usage/sandbox/config"
|
||
},
|
||
{
|
||
"source": "/en/usage/skills/skill-format",
|
||
"destination": "/en/usage/skills/readme"
|
||
},
|
||
{
|
||
"source": "/en/usage/skills/tools-api",
|
||
"destination": "/en/usage/skills/readme"
|
||
},
|
||
{
|
||
"source": "/zh/usage/skills/skill-format",
|
||
"destination": "/zh/usage/skills/readme"
|
||
},
|
||
{
|
||
"source": "/zh/usage/skills/tools-api",
|
||
"destination": "/zh/usage/skills/readme"
|
||
},
|
||
{
|
||
"source": "/ja/usage/skills/skill-format",
|
||
"destination": "/ja/usage/skills/readme"
|
||
},
|
||
{
|
||
"source": "/ja/usage/skills/tools-api",
|
||
"destination": "/ja/usage/skills/readme"
|
||
},
|
||
{
|
||
"source": "/en/deploy/platforms/:slug*",
|
||
"destination": "/en/usage/platforms/:slug*"
|
||
},
|
||
{
|
||
"source": "/zh/deploy/platforms/:slug*",
|
||
"destination": "/zh/usage/platforms/:slug*"
|
||
},
|
||
{
|
||
"source": "/ja/deploy/platforms/:slug*",
|
||
"destination": "/ja/usage/platforms/:slug*"
|
||
},
|
||
{
|
||
"source": "/en/deploy/models/:slug*",
|
||
"destination": "/en/usage/models/:slug*"
|
||
},
|
||
{
|
||
"source": "/zh/deploy/models/:slug*",
|
||
"destination": "/zh/usage/models/:slug*"
|
||
},
|
||
{
|
||
"source": "/ja/deploy/models/:slug*",
|
||
"destination": "/ja/usage/models/:slug*"
|
||
},
|
||
{
|
||
"source": "/en/deploy/pipelines/:slug*",
|
||
"destination": "/en/usage/pipelines/:slug*"
|
||
},
|
||
{
|
||
"source": "/zh/deploy/pipelines/:slug*",
|
||
"destination": "/zh/usage/pipelines/:slug*"
|
||
},
|
||
{
|
||
"source": "/ja/deploy/pipelines/:slug*",
|
||
"destination": "/ja/usage/pipelines/:slug*"
|
||
},
|
||
{
|
||
"source": "/en/deploy/knowledge/:slug*",
|
||
"destination": "/en/usage/knowledge/:slug*"
|
||
},
|
||
{
|
||
"source": "/zh/deploy/knowledge/:slug*",
|
||
"destination": "/zh/usage/knowledge/:slug*"
|
||
},
|
||
{
|
||
"source": "/ja/deploy/knowledge/:slug*",
|
||
"destination": "/ja/usage/knowledge/:slug*"
|
||
},
|
||
{
|
||
"source": "/en/deploy/mcp/:slug*",
|
||
"destination": "/en/usage/mcp/:slug*"
|
||
},
|
||
{
|
||
"source": "/zh/deploy/mcp/:slug*",
|
||
"destination": "/zh/usage/mcp/:slug*"
|
||
},
|
||
{
|
||
"source": "/ja/deploy/mcp/:slug*",
|
||
"destination": "/ja/usage/mcp/:slug*"
|
||
},
|
||
{
|
||
"source": "/insight/:slug*",
|
||
"destination": "/en/insight/:slug*"
|
||
},
|
||
{
|
||
"source": "/plugin/:slug*",
|
||
"destination": "/en/plugin/:slug*"
|
||
},
|
||
{
|
||
"source": "/deploy/:slug*",
|
||
"destination": "/en/deploy/:slug*"
|
||
},
|
||
{
|
||
"source": "/workshop/:slug*",
|
||
"destination": "/en/workshop/:slug*"
|
||
},
|
||
{
|
||
"source": "/develop/:slug*",
|
||
"destination": "/en/develop/:slug*"
|
||
},
|
||
{
|
||
"source": "/usage/:slug*",
|
||
"destination": "/en/usage/:slug*"
|
||
},
|
||
{
|
||
"source": "/config/:slug*",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/webui/:slug*",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/posts/:slug*",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/session/:slug*",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/pipeline/:slug*",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/i18n/:slug*",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/development/:slug*",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/api/v1/:slug*",
|
||
"destination": "/en/api-reference/:slug*"
|
||
},
|
||
{
|
||
"source": "/README_EN",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/ws",
|
||
"destination": "/en/insight/guide"
|
||
},
|
||
{
|
||
"source": "/app",
|
||
"destination": "/en/insight/guide"
|
||
}
|
||
],
|
||
"navigation": {
|
||
"languages": [
|
||
{
|
||
"language": "en",
|
||
"tabs": [
|
||
{
|
||
"tab": "Guides",
|
||
"groups": [
|
||
{
|
||
"group": "Quick Start",
|
||
"pages": [
|
||
"en/insight/guide",
|
||
"en/insight/features",
|
||
"en/insight/community",
|
||
"en/insight/data-collection-policy"
|
||
]
|
||
},
|
||
{
|
||
"group": "Installation",
|
||
"pages": [
|
||
"en/deploy/langbot/package",
|
||
"en/deploy/langbot/docker",
|
||
"en/deploy/langbot/one-click/1panel",
|
||
"en/deploy/langbot/one-click/bt",
|
||
"en/deploy/langbot/manual",
|
||
"en/deploy/settings",
|
||
"en/deploy/update",
|
||
"en/deploy/command"
|
||
]
|
||
},
|
||
{
|
||
"group": "Configure Bots",
|
||
"pages": [
|
||
"en/usage/platforms/readme",
|
||
"en/usage/platforms/discord",
|
||
"en/usage/platforms/telegram",
|
||
"en/usage/platforms/slack",
|
||
"en/usage/platforms/line",
|
||
"en/usage/platforms/webpage",
|
||
"en/usage/platforms/kook",
|
||
"en/usage/platforms/lark",
|
||
"en/usage/platforms/dingtalk",
|
||
"en/usage/platforms/wxoa",
|
||
{
|
||
"group": "QQ (OneBot v11)",
|
||
"pages": [
|
||
"en/usage/platforms/qq/aiocqhttp/napcat",
|
||
"en/usage/platforms/qq/aiocqhttp/lagrange",
|
||
"en/usage/platforms/qq/aiocqhttp/llonebot"
|
||
],
|
||
"icon": "/images/platforms/qq.svg"
|
||
},
|
||
{
|
||
"group": "Satori (QQ & Multi-Platform)",
|
||
"pages": [
|
||
"en/usage/platforms/satori/llonebot"
|
||
],
|
||
"icon": "robot"
|
||
},
|
||
{
|
||
"group": "QQ Official Bot",
|
||
"pages": [
|
||
"en/usage/platforms/qq/official_webhook"
|
||
],
|
||
"icon": "/images/platforms/qq.svg"
|
||
},
|
||
{
|
||
"group": "WeCom (Enterprise WeChat)",
|
||
"pages": [
|
||
"en/usage/platforms/wecom/wecom",
|
||
"en/usage/platforms/wecom/wecomcs",
|
||
"en/usage/platforms/wecom/wecombot"
|
||
],
|
||
"icon": "/images/platforms/wecom.svg"
|
||
},
|
||
{
|
||
"group": "WeChat",
|
||
"pages": [
|
||
"en/usage/platforms/wechat/weixin"
|
||
],
|
||
"icon": "/images/platforms/wechat.svg"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"group": "AI Configuration",
|
||
"pages": [
|
||
"en/usage/models/readme",
|
||
"en/usage/pipelines/readme",
|
||
{
|
||
"group": "LLMOps Platforms",
|
||
"pages": [
|
||
"en/usage/pipelines/dify",
|
||
"en/usage/pipelines/n8n",
|
||
"en/usage/pipelines/langflow",
|
||
"en/usage/pipelines/coze"
|
||
]
|
||
},
|
||
"en/usage/knowledge/readme",
|
||
"en/usage/mcp/readme",
|
||
{
|
||
"group": "Sandbox",
|
||
"pages": [
|
||
"en/usage/sandbox/readme",
|
||
"en/usage/sandbox/runtime-relationships",
|
||
"en/usage/sandbox/config"
|
||
]
|
||
},
|
||
"en/usage/skills/readme"
|
||
]
|
||
},
|
||
{
|
||
"group": "Advanced Operations",
|
||
"pages": [
|
||
"en/workshop/production/proxy-and-ssl",
|
||
"en/workshop/network-details",
|
||
"en/workshop/mcp-details",
|
||
"en/insight/platform-features",
|
||
{
|
||
"group": "Third-Party Model Providers",
|
||
"pages": [
|
||
"en/workshop/newapi-integration",
|
||
"en/workshop/ppio-integration",
|
||
"en/workshop/302ai-integration"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"group": "Using Plugins",
|
||
"pages": [
|
||
"en/plugin/plugin-intro",
|
||
"en/plugin/compatibility"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"tab": "Developers",
|
||
"groups": [
|
||
{
|
||
"group": "Plugin Development",
|
||
"pages": [
|
||
"en/plugin/dev/tutor",
|
||
"en/plugin/dev/basic-info",
|
||
"en/plugin/dev/directory-structure",
|
||
{
|
||
"group": "Component Development",
|
||
"pages": [
|
||
"en/plugin/dev/components/add",
|
||
"en/plugin/dev/components/event-listener",
|
||
"en/plugin/dev/components/command",
|
||
"en/plugin/dev/components/tool",
|
||
"en/plugin/dev/components/knowledge-engine",
|
||
"en/plugin/dev/components/parser",
|
||
"en/plugin/dev/components/page"
|
||
]
|
||
},
|
||
"en/plugin/dev/style",
|
||
"en/plugin/dev/migration",
|
||
{
|
||
"group": "Publish Plugin",
|
||
"pages": [
|
||
"en/plugin/dev/publish/market",
|
||
"en/plugin/dev/publish/github"
|
||
]
|
||
},
|
||
"en/develop/plugin-runtime"
|
||
]
|
||
},
|
||
{
|
||
"group": "Plugin SDK API",
|
||
"pages": [
|
||
"en/plugin/dev/apis/common",
|
||
"en/plugin/dev/apis/pipeline-events",
|
||
"en/plugin/dev/apis/messages",
|
||
"en/plugin/dev/apis/tech-details"
|
||
]
|
||
},
|
||
{
|
||
"group": "Core Development",
|
||
"pages": [
|
||
"en/develop/dev-config",
|
||
"en/develop/comp-arch",
|
||
"en/workshop/impl-platform-adapter"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"tab": "API Reference",
|
||
"groups": [
|
||
{
|
||
"group": "Service API",
|
||
"pages": [
|
||
"en/tags/readme",
|
||
"en/tags/webhook"
|
||
]
|
||
},
|
||
{
|
||
"group": "HTTP API Reference",
|
||
"openapi": {
|
||
"source": "openapi/service-api-en.json",
|
||
"directory": "en/api-reference"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"language": "cn",
|
||
"tabs": [
|
||
{
|
||
"tab": "指南",
|
||
"groups": [
|
||
{
|
||
"group": "快速开始",
|
||
"pages": [
|
||
"zh/insight/guide",
|
||
"zh/insight/features",
|
||
"zh/insight/community",
|
||
"zh/insight/data-collection-policy"
|
||
]
|
||
},
|
||
{
|
||
"group": "安装部署",
|
||
"pages": [
|
||
"zh/deploy/langbot/package",
|
||
"zh/deploy/langbot/docker",
|
||
"zh/deploy/langbot/one-click/1panel",
|
||
"zh/deploy/langbot/one-click/bt",
|
||
"zh/deploy/langbot/manual",
|
||
"zh/deploy/settings",
|
||
"zh/deploy/update",
|
||
"zh/deploy/command"
|
||
]
|
||
},
|
||
{
|
||
"group": "配置机器人",
|
||
"pages": [
|
||
"zh/usage/platforms/readme",
|
||
{
|
||
"group": "企业微信",
|
||
"icon": "/images/platforms/wecom.svg",
|
||
"pages": [
|
||
"zh/usage/platforms/wecom/wecom",
|
||
"zh/usage/platforms/wecom/wecomcs",
|
||
"zh/usage/platforms/wecom/wecombot"
|
||
]
|
||
},
|
||
{
|
||
"group": "微信",
|
||
"icon": "/images/platforms/wechat.svg",
|
||
"pages": [
|
||
"zh/usage/platforms/wechat/weixin",
|
||
"zh/usage/platforms/wechat/wechatpad"
|
||
]
|
||
},
|
||
{
|
||
"group": "QQ 官方机器人",
|
||
"icon": "/images/platforms/qq.svg",
|
||
"pages": [
|
||
"zh/usage/platforms/qq/official_webhook",
|
||
"zh/usage/platforms/qq/official"
|
||
]
|
||
},
|
||
{
|
||
"group": "QQ (OneBot v11)",
|
||
"icon": "/images/platforms/qq.svg",
|
||
"pages": [
|
||
"zh/usage/platforms/qq/aiocqhttp/napcat",
|
||
"zh/usage/platforms/qq/aiocqhttp/lagrange",
|
||
"zh/usage/platforms/qq/aiocqhttp/llonebot"
|
||
]
|
||
},
|
||
"zh/usage/platforms/lark",
|
||
"zh/usage/platforms/dingtalk",
|
||
"zh/usage/platforms/wxoa",
|
||
"zh/usage/platforms/kook",
|
||
{
|
||
"group": "Satori (QQ 等多平台)",
|
||
"icon": "robot",
|
||
"pages": [
|
||
"zh/usage/platforms/satori/llonebot"
|
||
]
|
||
},
|
||
"zh/usage/platforms/discord",
|
||
"zh/usage/platforms/telegram",
|
||
"zh/usage/platforms/slack",
|
||
"zh/usage/platforms/line",
|
||
"zh/usage/platforms/webpage"
|
||
]
|
||
},
|
||
{
|
||
"group": "配置 AI 能力",
|
||
"pages": [
|
||
"zh/usage/models/readme",
|
||
"zh/usage/pipelines/readme",
|
||
{
|
||
"group": "LLMOps 平台",
|
||
"pages": [
|
||
"zh/usage/pipelines/dify",
|
||
"zh/usage/pipelines/n8n",
|
||
"zh/usage/pipelines/langflow",
|
||
"zh/usage/pipelines/tbox",
|
||
"zh/usage/pipelines/coze"
|
||
]
|
||
},
|
||
"zh/usage/knowledge/readme",
|
||
"zh/usage/mcp/readme",
|
||
{
|
||
"group": "沙箱",
|
||
"pages": [
|
||
"zh/usage/sandbox/readme",
|
||
"zh/usage/sandbox/runtime-relationships",
|
||
"zh/usage/sandbox/config"
|
||
]
|
||
},
|
||
"zh/usage/skills/readme"
|
||
]
|
||
},
|
||
{
|
||
"group": "进阶运维",
|
||
"pages": [
|
||
"zh/workshop/production/proxy-and-ssl",
|
||
"zh/workshop/network-details",
|
||
"zh/workshop/mcp-details",
|
||
"zh/insight/platform-features",
|
||
{
|
||
"group": "第三方模型接入",
|
||
"pages": [
|
||
"zh/workshop/newapi-integration",
|
||
"zh/workshop/shengsuanyun-integration",
|
||
"zh/workshop/tokenpony-integration",
|
||
"zh/workshop/ppio-integration",
|
||
"zh/workshop/302ai-integration"
|
||
]
|
||
},
|
||
{
|
||
"group": "规模使用",
|
||
"hidden": true,
|
||
"pages": [
|
||
"zh/tob/index",
|
||
"zh/tob/platform",
|
||
"zh/tob/provider",
|
||
"zh/tob/contact"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"group": "插件使用",
|
||
"pages": [
|
||
"zh/plugin/plugin-intro",
|
||
"zh/plugin/compatibility"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"tab": "开发者",
|
||
"groups": [
|
||
{
|
||
"group": "插件开发",
|
||
"pages": [
|
||
"zh/plugin/dev/tutor",
|
||
"zh/plugin/dev/basic-info",
|
||
"zh/plugin/dev/directory-structure",
|
||
{
|
||
"group": "组件开发",
|
||
"pages": [
|
||
"zh/plugin/dev/components/add",
|
||
"zh/plugin/dev/components/event-listener",
|
||
"zh/plugin/dev/components/command",
|
||
"zh/plugin/dev/components/tool",
|
||
"zh/plugin/dev/components/knowledge-engine",
|
||
"zh/plugin/dev/components/parser",
|
||
"zh/plugin/dev/components/page"
|
||
]
|
||
},
|
||
"zh/plugin/dev/style",
|
||
"zh/plugin/dev/migration",
|
||
{
|
||
"group": "发布插件",
|
||
"pages": [
|
||
"zh/plugin/dev/publish/market",
|
||
"zh/plugin/dev/publish/github"
|
||
]
|
||
},
|
||
"zh/develop/plugin-runtime"
|
||
]
|
||
},
|
||
{
|
||
"group": "插件 SDK API",
|
||
"pages": [
|
||
"zh/plugin/dev/apis/common",
|
||
"zh/plugin/dev/apis/pipeline-events",
|
||
"zh/plugin/dev/apis/messages",
|
||
"zh/plugin/dev/apis/tech-details"
|
||
]
|
||
},
|
||
{
|
||
"group": "核心开发",
|
||
"pages": [
|
||
"zh/develop/dev-config",
|
||
"zh/develop/comp-arch",
|
||
"zh/workshop/impl-platform-adapter",
|
||
{
|
||
"group": "Discord 适配器",
|
||
"pages": [
|
||
"zh/develop/adapter/discord/README",
|
||
"zh/develop/adapter/discord/quick_start",
|
||
"zh/develop/adapter/discord/design",
|
||
"zh/develop/adapter/discord/api_reference",
|
||
"zh/develop/adapter/discord/troubleshooting"
|
||
]
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"tab": "API 参考",
|
||
"groups": [
|
||
{
|
||
"group": "Service API",
|
||
"pages": [
|
||
"zh/tags/readme",
|
||
"zh/tags/webhook"
|
||
]
|
||
},
|
||
{
|
||
"group": "HTTP API Reference",
|
||
"openapi": {
|
||
"source": "openapi/service-api-zh.json",
|
||
"directory": "zh/api-reference"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"language": "jp",
|
||
"tabs": [
|
||
{
|
||
"tab": "ガイド",
|
||
"groups": [
|
||
{
|
||
"group": "クイックスタート",
|
||
"pages": [
|
||
"ja/insight/guide",
|
||
"ja/insight/features",
|
||
"ja/insight/community",
|
||
"ja/insight/data-collection-policy"
|
||
]
|
||
},
|
||
{
|
||
"group": "インストール",
|
||
"pages": [
|
||
"ja/deploy/langbot/package",
|
||
"ja/deploy/langbot/docker",
|
||
"ja/deploy/langbot/one-click/1panel",
|
||
"ja/deploy/langbot/one-click/bt",
|
||
"ja/deploy/langbot/manual",
|
||
"ja/deploy/settings",
|
||
"ja/deploy/update",
|
||
"ja/deploy/command"
|
||
]
|
||
},
|
||
{
|
||
"group": "ボットを設定",
|
||
"pages": [
|
||
"ja/usage/platforms/readme",
|
||
"ja/usage/platforms/discord",
|
||
"ja/usage/platforms/telegram",
|
||
"ja/usage/platforms/slack",
|
||
"ja/usage/platforms/line",
|
||
"ja/usage/platforms/webpage",
|
||
"ja/usage/platforms/kook",
|
||
"ja/usage/platforms/lark",
|
||
"ja/usage/platforms/dingtalk",
|
||
"ja/usage/platforms/wxoa",
|
||
{
|
||
"group": "QQ (OneBot v11)",
|
||
"pages": [
|
||
"ja/usage/platforms/qq/aiocqhttp/napcat",
|
||
"ja/usage/platforms/qq/aiocqhttp/lagrange",
|
||
"ja/usage/platforms/qq/aiocqhttp/llonebot"
|
||
],
|
||
"icon": "/images/platforms/qq.svg"
|
||
},
|
||
{
|
||
"group": "Satori(QQ等マルチプラットフォーム)",
|
||
"pages": [
|
||
"ja/usage/platforms/satori/llonebot"
|
||
],
|
||
"icon": "robot"
|
||
},
|
||
{
|
||
"group": "QQ 公式ボット",
|
||
"pages": [
|
||
"ja/usage/platforms/qq/official_webhook"
|
||
],
|
||
"icon": "/images/platforms/qq.svg"
|
||
},
|
||
{
|
||
"group": "WeCom(企業微信)",
|
||
"pages": [
|
||
"ja/usage/platforms/wecom/wecom",
|
||
"ja/usage/platforms/wecom/wecomcs",
|
||
"ja/usage/platforms/wecom/wecombot"
|
||
],
|
||
"icon": "/images/platforms/wecom.svg"
|
||
},
|
||
{
|
||
"group": "WeChat",
|
||
"pages": [
|
||
"ja/usage/platforms/wechat/weixin"
|
||
],
|
||
"icon": "/images/platforms/wechat.svg"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"group": "AI 設定",
|
||
"pages": [
|
||
"ja/usage/models/readme",
|
||
"ja/usage/pipelines/readme",
|
||
{
|
||
"group": "LLMOps プラットフォーム",
|
||
"pages": [
|
||
"ja/usage/pipelines/dify",
|
||
"ja/usage/pipelines/n8n",
|
||
"ja/usage/pipelines/langflow",
|
||
"ja/usage/pipelines/coze"
|
||
]
|
||
},
|
||
"ja/usage/knowledge/readme",
|
||
"ja/usage/mcp/readme",
|
||
{
|
||
"group": "サンドボックス",
|
||
"pages": [
|
||
"ja/usage/sandbox/readme",
|
||
"ja/usage/sandbox/runtime-relationships",
|
||
"ja/usage/sandbox/config"
|
||
]
|
||
},
|
||
"ja/usage/skills/readme"
|
||
]
|
||
},
|
||
{
|
||
"group": "運用ガイド",
|
||
"pages": [
|
||
"ja/workshop/production/proxy-and-ssl",
|
||
"ja/workshop/network-details",
|
||
"ja/workshop/mcp-details",
|
||
"ja/insight/platform-features",
|
||
{
|
||
"group": "サードパーティモデル接続",
|
||
"pages": [
|
||
"ja/workshop/newapi-integration",
|
||
"ja/workshop/ppio-integration",
|
||
"ja/workshop/302ai-integration"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"group": "プラグインの利用",
|
||
"pages": [
|
||
"ja/plugin/plugin-intro",
|
||
"ja/plugin/compatibility"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"tab": "開発者",
|
||
"groups": [
|
||
{
|
||
"group": "プラグイン開発",
|
||
"pages": [
|
||
"ja/plugin/dev/tutor",
|
||
"ja/plugin/dev/basic-info",
|
||
"ja/plugin/dev/directory-structure",
|
||
{
|
||
"group": "コンポーネント開発",
|
||
"pages": [
|
||
"ja/plugin/dev/components/add",
|
||
"ja/plugin/dev/components/event-listener",
|
||
"ja/plugin/dev/components/command",
|
||
"ja/plugin/dev/components/tool",
|
||
"ja/plugin/dev/components/knowledge-engine",
|
||
"ja/plugin/dev/components/parser",
|
||
"ja/plugin/dev/components/page"
|
||
]
|
||
},
|
||
"ja/plugin/dev/style",
|
||
"ja/plugin/dev/migration",
|
||
{
|
||
"group": "プラグインを配布",
|
||
"pages": [
|
||
"ja/plugin/dev/publish/market",
|
||
"ja/plugin/dev/publish/github"
|
||
]
|
||
},
|
||
"ja/develop/plugin-runtime"
|
||
]
|
||
},
|
||
{
|
||
"group": "プラグイン SDK API",
|
||
"pages": [
|
||
"ja/plugin/dev/apis/common",
|
||
"ja/plugin/dev/apis/pipeline-events",
|
||
"ja/plugin/dev/apis/messages",
|
||
"ja/plugin/dev/apis/tech-details"
|
||
]
|
||
},
|
||
{
|
||
"group": "コア開発",
|
||
"pages": [
|
||
"ja/develop/dev-config",
|
||
"ja/develop/comp-arch",
|
||
"ja/workshop/impl-platform-adapter"
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"tab": "API リファレンス",
|
||
"groups": [
|
||
{
|
||
"group": "Service API",
|
||
"pages": [
|
||
"ja/tags/readme",
|
||
"ja/tags/webhook"
|
||
]
|
||
},
|
||
{
|
||
"group": "HTTP API Reference",
|
||
"openapi": {
|
||
"source": "openapi/service-api-ja.json",
|
||
"directory": "ja/api-reference"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
"fonts": {
|
||
"family": "Source Sans Pro"
|
||
},
|
||
"metadata": {
|
||
"google-site-verification": "LBNmWbXCAXdoqrbwg5Gep-xzQ7u7lJHSdpR49N3Ttgg"
|
||
}
|
||
}
|