From c4d5a03da56975a454dde4760cd0215e316ad6e6 Mon Sep 17 00:00:00 2001 From: Jason Lee Date: Fri, 5 Jun 2026 09:44:50 +0800 Subject: [PATCH 1/5] docs: update MCP host to mcp.longbridge.com / mcp.longbridge.cn Replace https://openapi.longbridge.com/mcp with https://mcp.longbridge.com and https://openapi.longbridge.cn/mcp with https://mcp.longbridge.cn across docs (en/zh-CN/zh-HK), homepage components, README, and skill references. Also update the build-time MCP tools.json endpoint in config.mts. Co-Authored-By: Claude Opus 4.8 (1M context) --- README.md | 2 +- docs/.vitepress/config.mts | 2 +- .../theme/components/NewHomePage/ProductMCP.vue | 10 +++++----- docs/.vitepress/theme/components/NewHomePage/index.vue | 4 ++-- docs/en/docs/mcp.md | 10 +++++----- docs/en/skill/install/index.md | 6 +++--- docs/zh-CN/docs/mcp.md | 10 +++++----- docs/zh-CN/skill/install/index.md | 6 +++--- docs/zh-HK/docs/mcp.md | 10 +++++----- docs/zh-HK/skill/install/index.md | 6 +++--- skills/longbridge/references/mcp.md | 6 +++--- skills/longbridge/references/setup.md | 2 +- 12 files changed, 37 insertions(+), 37 deletions(-) diff --git a/README.md b/README.md index 332f62ef..728ffb95 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ pip install longbridge { "mcpServers": { "longbridge": { - "url": "https://openapi.longbridge.com/mcp" + "url": "https://mcp.longbridge.com" } } } diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 693d36ca..0f52e23d 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -15,7 +15,7 @@ import yaml from 'js-yaml' const __dirname = dirname(fileURLToPath(import.meta.url)) const docsRoot = resolve(__dirname, '..') -const MCP_TOOLS_URL = 'https://openapi.longbridge.com/mcp/tools.json' +const MCP_TOOLS_URL = 'https://mcp.longbridge.com/mcp/tools.json' const MCP_TOOLS_DATA_PATH = resolve(__dirname, 'data/mcp-tools.json') const regionCfg = getRegionConfig() const regionSrcExclude = computeSrcExclude(docsRoot) diff --git a/docs/.vitepress/theme/components/NewHomePage/ProductMCP.vue b/docs/.vitepress/theme/components/NewHomePage/ProductMCP.vue index eba0f8e1..8f4e56fa 100644 --- a/docs/.vitepress/theme/components/NewHomePage/ProductMCP.vue +++ b/docs/.vitepress/theme/components/NewHomePage/ProductMCP.vue @@ -50,7 +50,7 @@ const clients = [ name: 'Claude Code', logo: 'https://assets.lbctrl.com/uploads/6932dfac-0f9c-4577-bdd8-fc3d22d4223a/claude.svg', type: 'shell' as const, - cmd: 'claude mcp add --transport http longbridge https://openapi.longbridge.com/mcp', + cmd: 'claude mcp add --transport http longbridge https://mcp.longbridge.com', }, { id: 'codex', @@ -58,7 +58,7 @@ const clients = [ logo: 'https://assets.lbctrl.com/uploads/88eb58fe-b3bb-4875-90c7-c97e6d8fcc9e/openai.svg', type: 'ui' as const, steps: ['Settings', 'MCP Servers', 'Add Server'], - fields: { Name: 'longbridge', Type: 'Streamable HTTP', URL: 'https://openapi.longbridge.com/mcp' }, + fields: { Name: 'longbridge', Type: 'Streamable HTTP', URL: 'https://mcp.longbridge.com' }, }, { id: 'cursor', @@ -66,14 +66,14 @@ const clients = [ logo: 'https://assets.lbctrl.com/uploads/f694478e-201b-4e74-a7b6-023639a27805/cursor.svg', type: 'ui' as const, steps: ['Settings', 'MCP Servers', 'Add Remote MCP Server'], - fields: { URL: 'https://openapi.longbridge.com/mcp' }, + fields: { URL: 'https://mcp.longbridge.com' }, }, { id: 'zed', name: 'Zed', logo: 'https://assets.lbctrl.com/uploads/3418077a-9766-4514-bc8e-eef076309689/zed.svg', type: 'json' as const, - json: { mcpServers: { longbridge: { url: 'https://openapi.longbridge.com/mcp' } } }, + json: { mcpServers: { longbridge: { url: 'https://mcp.longbridge.com' } } }, }, { id: 'cherry', @@ -81,7 +81,7 @@ const clients = [ logo: 'https://assets.lbctrl.com/uploads/df8f9467-91a5-4bdb-8dde-5127441f0b04/cherrystudio.svg', type: 'ui' as const, steps: ['Settings', 'MCP Servers', 'Add'], - fields: { URL: 'https://openapi.longbridge.com/mcp' }, + fields: { URL: 'https://mcp.longbridge.com' }, }, ] diff --git a/docs/.vitepress/theme/components/NewHomePage/index.vue b/docs/.vitepress/theme/components/NewHomePage/index.vue index f8515458..78e1c5f0 100644 --- a/docs/.vitepress/theme/components/NewHomePage/index.vue +++ b/docs/.vitepress/theme/components/NewHomePage/index.vue @@ -1773,7 +1773,7 @@ const GETSTARTED = [ + + + + + +
@@ -2154,8 +2226,8 @@ function triggerRipple(event: MouseEvent, el: HTMLElement) { gap: 12px; } .skill-hero-install-label { - font-size: 12px; - color: var(--lb-fg-3); + font-size: 13px; + color: var(--lb-fg-2); font-weight: 500; } .skill-hero-install-cmd { @@ -2178,6 +2250,73 @@ function triggerRipple(event: MouseEvent, el: HTMLElement) { flex: 1; text-align: left; } +.skill-hero-connect-card { + display: flex; + flex-direction: column; + gap: 12px; + background: var(--lb-bg-2); + border: 1px solid var(--app-card-stroke); + border-radius: 10px; + padding: 16px; + max-width: 480px; + width: 100%; +} +.skill-hero-connect-step { + display: flex; + align-items: flex-start; + gap: 10px; + font-size: 13px; + color: var(--lb-fg-2); + text-align: left; + line-height: 1.5; +} +.skill-hero-connect-step-num { + flex: none; + width: 18px; + height: 18px; + border-radius: 50%; + background: color-mix(in srgb, var(--lb-brand) 14%, transparent); + color: var(--lb-brand); + font-size: 11px; + font-weight: 700; + display: inline-flex; + align-items: center; + justify-content: center; + margin-top: 1px; +} +.skill-hero-connect-card .btn { + margin-top: 4px; + align-self: center; +} +.skill-hero-seg { + display: inline-flex; + align-items: center; + gap: 2px; + padding: 3px; + border-radius: 999px; + background: var(--lb-bg-2); + border: 1px solid var(--app-card-stroke); +} +.skill-hero-seg-btn { + padding: 6px 18px; + border-radius: 999px; + font-size: 13px; + font-weight: 600; + color: var(--lb-fg-3); + background: transparent; + border: none; + cursor: pointer; + transition: + color 0.15s, + background 0.15s; +} +.skill-hero-seg-btn:hover { + color: var(--lb-fg-1); +} +.skill-hero-seg-btn.is-active { + color: #fff; + background: var(--lb-brand); +} .skill-hero-install-link { font-size: 13px; color: var(--lb-brand); @@ -2937,6 +3076,14 @@ function triggerRipple(event: MouseEvent, el: HTMLElement) { background: var(--lb-brand); color: #fff; } +.btn-dark { + background: #111; + color: #fff; +} +.dark .btn-dark { + background: #fff; + color: #111; +} /* ─── Skills Catalog ──────────────────────────────────────────────────────── */ .sc-header { From f0adabe780466ae12e767de7cb65b3ff7a94ca6a Mon Sep 17 00:00:00 2001 From: Jason Lee Date: Fri, 5 Jun 2026 15:22:19 +0800 Subject: [PATCH 4/5] docs: Add auth-code redemption path to Skill install guide The /connect Agent Auth Code flow lets users hand a one-time code to their AI. Update the install guide (en/zh-CN/zh-HK) so AI agents holding a code redeem it via `longbridge auth login --auth-code` directly, instead of falling back to the device flow that requires a hanging process and browser approval. Co-Authored-By: Claude Opus 4.8 (1M context) --- docs/en/skill/install/index.md | 8 +++++++- docs/zh-CN/skill/install/index.md | 8 +++++++- docs/zh-HK/skill/install/index.md | 8 +++++++- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/docs/en/skill/install/index.md b/docs/en/skill/install/index.md index 0a7b56ea..0281d1a5 100644 --- a/docs/en/skill/install/index.md +++ b/docs/en/skill/install/index.md @@ -7,7 +7,7 @@ description: Install Longbridge Skill for OpenClaw, Claude Code, Cursor, Codex, @@ -71,6 +71,12 @@ iwr https://open.longbridge.com/longbridge/longbridge-terminal/install.ps1 | iex longbridge auth login ``` +Already have a one-time authorization code from [open.longbridge.com/connect](https://open.longbridge.com/connect)? Redeem it directly — no browser needed: + +```bash +longbridge auth login --auth-code 1234567890 +``` + That's it. The AI can now call `longbridge` commands on your behalf. **Claude Code users:** The first time Claude runs a `longbridge` command, it will ask for permission. To allow all Longbridge commands without repeated prompts, add this to `.claude/settings.json` in your project (create the file if it doesn't exist): diff --git a/docs/zh-CN/skill/install/index.md b/docs/zh-CN/skill/install/index.md index af1fe588..f473e724 100644 --- a/docs/zh-CN/skill/install/index.md +++ b/docs/zh-CN/skill/install/index.md @@ -7,7 +7,7 @@ description: 在 OpenClaw、Claude Code、Cursor、Codex 等 AI 工具中安装 @@ -69,6 +69,12 @@ iwr https://open.longbridge.com/longbridge/longbridge-terminal/install.ps1 | iex longbridge auth login ``` +已有来自 [open.longbridge.com/connect](https://open.longbridge.com/connect) 的一次性授权码?直接兑换,无需浏览器: + +```bash +longbridge auth login --auth-code 1234567890 +``` + 完成后,AI 即可代你调用 `longbridge` 命令。 **Claude Code 用户:** Claude 首次运行 `longbridge` 命令时会弹出权限确认提示。若要避免每次都被询问,可在项目的 `.claude/settings.json` 中添加以下配置(文件不存在时新建): diff --git a/docs/zh-HK/skill/install/index.md b/docs/zh-HK/skill/install/index.md index cf092cc5..f270cb76 100644 --- a/docs/zh-HK/skill/install/index.md +++ b/docs/zh-HK/skill/install/index.md @@ -7,7 +7,7 @@ description: 在 OpenClaw、Claude Code、Cursor、Codex 等 AI 工具中安裝 @@ -69,6 +69,12 @@ iwr https://open.longbridge.com/longbridge/longbridge-terminal/install.ps1 | iex longbridge auth login ``` +已有來自 [open.longbridge.com/connect](https://open.longbridge.com/connect) 的一次性授權碼?直接兌換,無需瀏覽器: + +```bash +longbridge auth login --auth-code 1234567890 +``` + 完成後,AI 即可代你調用 `longbridge` 命令。 **Claude Code 用戶:** Claude 首次執行 `longbridge` 指令時會彈出權限確認提示。若要避免每次都被詢問,可在專案的 `.claude/settings.json` 中新增以下配置(文件不存在時新建): From e18fe16847ca58be3fa80d9196e6938513e3d730 Mon Sep 17 00:00:00 2001 From: Jason Lee Date: Fri, 5 Jun 2026 15:26:38 +0800 Subject: [PATCH 5/5] feat: include agent-auth page in CN region build; make Connect AI the default tab - region.config.ts: whitelist **/docs/agent-auth.md so /docs/agent-auth is accessible on open.longbridge.cn - Skill page: Connect AI is now the first and default segmented tab Co-Authored-By: Claude Opus 4.8 (1M context) --- docs/.vitepress/theme/components/Skill.vue | 12 ++++++------ region.config.ts | 3 +++ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/docs/.vitepress/theme/components/Skill.vue b/docs/.vitepress/theme/components/Skill.vue index c693aa40..22249f15 100644 --- a/docs/.vitepress/theme/components/Skill.vue +++ b/docs/.vitepress/theme/components/Skill.vue @@ -1046,7 +1046,7 @@ const CAP_REFERENCE = [ const activeCat = ref('All') const scenarioIdx = ref(0) const activeAgent = ref('OpenClaw') -const installMode = ref<'connect' | 'prompt'>('prompt') +const installMode = ref<'connect' | 'prompt'>('connect') const copied = ref(false) const copiedGetStarted = ref(false) @@ -1297,16 +1297,16 @@ function triggerRipple(event: MouseEvent, el: HTMLElement) {
- +