在介绍了 Bear 的一键配置后,今天,我们将介绍如何通过 Protocol Launcher 与 CodeBuddy 中国版 联动,让 AI 辅助编程变得更加高效。
作为开发者,你可能经常遇到这些场景:
- 在文档中提供一个"在 CodeBuddy 中打开"的按钮,方便用户快速查看项目。
- 在内部平台点击链接,直接在本地编辑器中跳转到某个特定文件。
- 引导用户在本地 CodeBuddy 中快速克隆远程仓库或打开远程开发环境。
现在,通过 Protocol Launcher,你可以摆脱手动拼接复杂的 codebuddycn:// 协议链接,以类型安全的方式提升开发效率。
CodeBuddy 中国版与深度链接
CodeBuddy 中国版本是一款智能编程助手,提供了强大的深度链接支持,允许从网页或第三方应用直接触发打开文件、克隆仓库、远程连接等操作。
然而,手动拼接这些链接通常需要处理复杂的参数编码,且缺乏类型提示,极易出错。
核心能力:全方位编辑器集成
Protocol Launcher 为 CodeBuddy 中国版专门提供了 protocol-launcher/code-buddy-cn 模块,支持以下核心功能:
快速上手
首先,确保你的项目中已安装:
npm install protocol-launcher
在代码中你可以根据场景选择两种导入方式:
- 按需加载(通过子路径导入),支持 Tree Shaking,体积更小;
- 全量导入(从根包导入),写法更简单,但会引入所有已支持应用的逻辑。
// ✅ 推荐:按需加载 CodeBuddy 中国版模块
import { open, openFile, openFolder, openRemote, cloneProject, openExtension, openSettings } from 'protocol-launcher/code-buddy-cn'
// 也可以从根包导入,但会包含所有应用模块
// import { codeBuddyChina } from 'protocol-launcher'
场景一:一键打开编辑器 (open)
这是最基础的用法,用于快速唤起 CodeBuddy 中国版:
import { open } from 'protocol-launcher/code-buddy-cn'
const url = open()
// => 'codebuddycn://getStarted'
场景二:精确打开文件 (openFile)
如果你想让用户在本地编辑器中快速查看某个特定的代码文件:
import { openFile } from 'protocol-launcher/code-buddy-cn'
const url = openFile({
path: '/etc/hosts', // 文件路径
line: 10, // 可选:行号
column: 5, // 可选:列号
openInNewWindow: true, // 可选:是否在新窗口打开
})
// => 'codebuddycn://file/etc/hosts:10:5?windowId=_blank'
场景三:打开项目目录 (openFolder)
打开整个项目文件夹,适合快速进入工作区:
import { openFolder } from 'protocol-launcher/code-buddy-cn'
const url = openFolder({
path: '/code/my-project', // 文件夹路径
openInNewWindow: true, // 可选:是否在新窗口打开
})
// => 'codebuddycn://file/code/my-project?windowId=_blank'
场景四:远程开发 (openRemote)
CodeBuddy 中国版支持三种远程开发模式,Protocol Launcher 可以帮你快速生成远程连接链接:
import { openRemote } from 'protocol-launcher/code-buddy-cn'
// SSH 远程连接
const sshUrl = openRemote({
type: 'ssh-remote',
host: 'root@172.18.105.209:22',
path: '/code/my-project',
})
// => 'codebuddycn://vscode-remote/ssh-remote+root@172.18.105.209:22/code/my-project'
// WSL 远程连接
const wslUrl = openRemote({
type: 'wsl',
host: 'Ubuntu',
path: '/home/user/project',
})
// Dev Container 远程连接
const devContainerUrl = openRemote({
type: 'dev-container',
host: 'my-project-container',
path: '/workspace',
})
场景五:克隆 Git 仓库 (cloneProject)
引导用户快速克隆远程仓库到本地:
import { cloneProject } from 'protocol-launcher/code-buddy-cn'
const url = cloneProject({
repo: 'https://github.com/zhensherlock/protocol-launcher',
})
// => 'codebuddycn://vscode.git/clone?url=https://github.com/zhensherlock/protocol-launcher'
场景六:打开扩展详情页 (openExtension)
快速跳转到扩展商店的某个扩展详情页:
import { openExtension } from 'protocol-launcher/code-buddy-cn'
const url = openExtension({
id: 'esbenp.prettier-vscode',
})
// => 'codebuddycn:extension/esbenp.prettier-vscode'
场景七:打开设置页面 (openSettings)
快速打开设置页面,支持直接定位到特定设置项:
import { openSettings } from 'protocol-launcher/code-buddy-cn'
// 打开设置首页
const settingsUrl = openSettings()
// => 'codebuddycn://settings'
// 打开特定设置项
const terminalSettingsUrl = openSettings({
path: 'terminal.integrated.suggest.enabled',
})
// => 'codebuddycn://settings/terminal.integrated.suggest.enabled'
为什么选择 Protocol Launcher?
- 推荐方式:使用子路径导入(如 import { openFile } from 'protocol-launcher/code-buddy-cn'),这样构建工具只会打包相关的代码。
- 全量方式:也可以从根包导入(如 import { codeBuddyChina } from 'protocol-launcher'),建议生产环境始终使用按需加载。
结语
通过 Protocol Launcher,你可以极大降低用户进入项目的门槛。无论是在开源项目的文档中,还是企业内部的开发平台,它都是连接 Web 与本地 CodeBuddy 中国版最优雅的桥梁。
🔗 相关链接
- Protocol Launcher 官网:https://protocol-launcher.huayi-data.com/
- CodeBuddy 中国版文档:CodeBuddy China | Protocol Launcher
