接入 CodeBuddy IDE
CodeBuddy IDE 是腾讯推出的 AI 编程 IDE。
方式一 · 让 CodeBuddy IDE 自己配置(推荐)
把下面的提示复制给 CodeBuddy IDE:
text
帮我配置知言家 AI Coding 伴侣的 CodeBuddy IDE Hook。读 https://zyhome.run/docs/integrations/codebuddy-ide.txt 按步骤执行。保留已有配置,冲突时先问我,不要整文件覆盖。完成后告诉我改了什么、是否需要重启。方式二 · 手动配置
CodeBuddy IDE 通过用户级 Hook 同步任务状态。
确认本机已安装知言家驱动,并确认 %LOCALAPPDATA%\zy_home_vibe_coding_driver\bin\zy_home_vibe_coding_driver_hookbridge.exe 存在。修改前备份 settings.json;已有同名 zy-vibe- handler 时更新它,不要重复追加。
1. 保存转发脚本
把下面内容保存到 %USERPROFILE%\.codebuddy\zy-vibe-coding-driver.ps1:
powershell
param([string]$HookEventName = "")
$Utf8NoBom = New-Object System.Text.UTF8Encoding $false
try { [Console]::InputEncoding = $Utf8NoBom; $OutputEncoding = $Utf8NoBom } catch {}
$raw = ""
if ([Console]::IsInputRedirected) {
$s = [Console]::OpenStandardInput()
$m = New-Object System.IO.MemoryStream
$b = New-Object byte[] 4096
while (($r = $s.Read($b, 0, $b.Length)) -gt 0) { $m.Write($b, 0, $r) }
if ($m.Length -gt 0) { $raw = $Utf8NoBom.GetString($m.ToArray()) }
}
if ([string]::IsNullOrWhiteSpace($raw)) { $raw = @($input) -join "`n" }
$payload = $null
if (-not [string]::IsNullOrWhiteSpace($raw)) {
try { $payload = $raw | ConvertFrom-Json } catch { exit 0 }
}
if ($payload -isnot [pscustomobject]) { $payload = [pscustomobject]@{} }
$effective = ""
foreach ($k in @("hook_event_name","hookEventName","event","type")) {
$mt = $payload.PSObject.Properties.Match($k)
if ($mt.Count -gt 0 -and "$($mt[0].Value)" -ne "") { $effective = "$($mt[0].Value)"; break }
}
if ([string]::IsNullOrWhiteSpace($effective)) { $effective = $HookEventName }
if ([string]::IsNullOrWhiteSpace($effective)) { exit 0 }
$bridge = Join-Path $env:LOCALAPPDATA "zy_home_vibe_coding_driver\bin\zy_home_vibe_coding_driver_hookbridge.exe"
if (Test-Path -LiteralPath $bridge -PathType Leaf) {
$payload | ConvertTo-Json -Depth 20 -Compress | & $bridge --source codebuddy --hook-event-name $effective
}
exit 02. 合并 hooks 配置
编辑 %USERPROFILE%\.codebuddy\settings.json。文件不存在时创建;已存在时把下面各事件追加到对应数组,保留其他配置和已有 Hook。
json
{
"hooks": {
"UserPromptSubmit": [
{ "hooks": [ { "type": "command", "command": "powershell.exe -NoProfile -ExecutionPolicy Bypass -File \"$HOME/.codebuddy/zy-vibe-coding-driver.ps1\" -HookEventName UserPromptSubmit", "timeout": 8 } ] }
],
"PreToolUse": [
{ "hooks": [ { "type": "command", "command": "powershell.exe -NoProfile -ExecutionPolicy Bypass -File \"$HOME/.codebuddy/zy-vibe-coding-driver.ps1\" -HookEventName PreToolUse", "timeout": 8 } ] }
],
"PostToolUse": [
{ "hooks": [ { "type": "command", "command": "powershell.exe -NoProfile -ExecutionPolicy Bypass -File \"$HOME/.codebuddy/zy-vibe-coding-driver.ps1\" -HookEventName PostToolUse", "timeout": 8 } ] }
],
"Stop": [
{ "hooks": [ { "type": "command", "command": "powershell.exe -NoProfile -ExecutionPolicy Bypass -File \"$HOME/.codebuddy/zy-vibe-coding-driver.ps1\" -HookEventName Stop", "timeout": 8 } ] }
]
}
}原样保留 --source codebuddy,只配置 UserPromptSubmit、PreToolUse、PostToolUse 和 Stop。
3. 重启
完全退出 CodeBuddy IDE 后重新打开,并新建 Agent 会话。
验证
- 确认脚本和
settings.json已保存,JSON 可以正常解析。 - 新建 Agent 会话并发送一条普通消息。
- 确认驱动控制台出现来源为"CodeBuddy"的任务记录,设备灯效随会话状态变化。
注意事项
- 不要添加
SessionStart、SessionEnd、PreCompact,它们不对应一轮任务灯语。 - 不要添加 IDE Hook 官方页面未列出的
PermissionRequest、PermissionDenied、PostToolUseFailure或StopFailure。 - 与 CodeBuddy Code CLI 共用
~/.codebuddy/settings.json;两个产品都安装时,各自事件合并到同一文件,注意保留对方已配置的事件。
速查
| 项目 | 路径或动作 |
|---|---|
| 转发脚本位置 | %USERPROFILE%\.codebuddy\zy-vibe-coding-driver.ps1 |
| 配置文件 | %USERPROFILE%\.codebuddy\settings.json |
| 支持事件 | UserPromptSubmit、PreToolUse、PostToolUse、Stop |
| 完成后 | 重开 CodeBuddy IDE 并新建 Agent 会话 |
