@tencent-ai/agent-sdk 0.3.98 → 0.3.100
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli/CHANGELOG.md +50 -0
- package/cli/dist/codebuddy-headless.js +137 -108
- package/cli/dist/web-ui/assets/index-BoMlEqUE.js +439 -0
- package/cli/dist/web-ui/assets/index-Dt1puyHn.css +32 -0
- package/cli/dist/web-ui/docs/cn/cli/acp.md +152 -0
- package/cli/dist/web-ui/docs/cn/cli/agent-teams.md +327 -0
- package/cli/dist/web-ui/docs/cn/cli/bash-sandboxing.md +290 -0
- package/cli/dist/web-ui/docs/cn/cli/best-practices.md +554 -0
- package/cli/dist/web-ui/docs/cn/cli/channels-reference.md +293 -0
- package/cli/dist/web-ui/docs/cn/cli/channels.md +215 -0
- package/cli/dist/web-ui/docs/cn/cli/checkpointing.md +51 -0
- package/cli/dist/web-ui/docs/cn/cli/cli-reference.md +187 -0
- package/cli/dist/web-ui/docs/cn/cli/common-workflows.md +1013 -0
- package/cli/dist/web-ui/docs/cn/cli/costs.md +174 -0
- package/cli/dist/web-ui/docs/cn/cli/devcontainer.md +553 -0
- package/cli/dist/web-ui/docs/cn/cli/env-vars.md +326 -0
- package/cli/dist/web-ui/docs/cn/cli/gitlab-ci-cd.md +357 -0
- package/cli/dist/web-ui/docs/cn/cli/headless.md +258 -0
- package/cli/dist/web-ui/docs/cn/cli/hooks-guide.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/hooks.md +805 -0
- package/cli/dist/web-ui/docs/cn/cli/iam.md +530 -0
- package/cli/dist/web-ui/docs/cn/cli/ide-integrations.md +92 -0
- package/cli/dist/web-ui/docs/cn/cli/installation.md +291 -0
- package/cli/dist/web-ui/docs/cn/cli/interactive-mode.md +233 -0
- package/cli/dist/web-ui/docs/cn/cli/mcp.md +739 -0
- package/cli/dist/web-ui/docs/cn/cli/memory.md +436 -0
- package/cli/dist/web-ui/docs/cn/cli/models.md +356 -0
- package/cli/dist/web-ui/docs/cn/cli/overview.md +100 -0
- package/cli/dist/web-ui/docs/cn/cli/plugin-marketplaces.md +533 -0
- package/cli/dist/web-ui/docs/cn/cli/plugins-reference.md +774 -0
- package/cli/dist/web-ui/docs/cn/cli/plugins.md +689 -0
- package/cli/dist/web-ui/docs/cn/cli/quickstart.md +249 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/README.md +199 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.10.0.md +23 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.10.1.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.11.0.md +24 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.12.0.md +21 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.13.0.md +20 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.14.0.md +22 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.14.1.md +8 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.15.0.md +18 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.15.1.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.16.0.md +20 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.17.0.md +29 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.18.0.md +17 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.19.0.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.19.1.md +14 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.19.2.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.20.0.md +23 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.20.1.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.21.0.md +13 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.22.0.md +16 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.23.0.md +20 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.23.2.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.23.3.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.23.4.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.23.5.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.24.0.md +17 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.25.0.md +18 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.25.1.md +21 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.26.0.md +18 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.27.0.md +16 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.27.1.md +16 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.27.2.md +7 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.27.3.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.28.0.md +26 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.28.1.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.29.0.md +35 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.3.1.md +16 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.30.0.md +19 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.30.1.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.31.0.md +51 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.31.1.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.31.2.md +16 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.32.0.md +19 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.33.0.md +28 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.33.1.md +7 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.36.3.md +17 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.0.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.1.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.10.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.11.md +8 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.12.md +14 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.13.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.14.md +24 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.15.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.16.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.17.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.18.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.19.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.2.md +28 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.20.md +8 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.3.md +22 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.4.md +19 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.5.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.6.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.7.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.8.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.37.9.md +8 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.38.0.md +22 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.38.1.md +6 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.38.2.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.39.0.md +18 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.4.0.md +19 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.40.0.md +20 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.40.1.md +6 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.0.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.1.md +6 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.2.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.3.md +8 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.4.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.5.md +10 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.6.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.7.md +14 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.41.8.md +18 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.42.0.md +39 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.42.1.md +8 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.42.3.md +18 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.43.0.md +27 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.43.1.md +27 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.44.0.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.44.1.md +22 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.45.0.md +34 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.45.1.md +7 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.46.0.md +12 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.47.0.md +20 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.48.0.md +32 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.48.1.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.49.0.md +26 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.49.1.md +14 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.49.2.md +39 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.49.3.md +7 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.49.5.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.49.6.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.49.7.md +7 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.5.0.md +24 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.0.md +25 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.1.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.2.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.3.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.4.md +17 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.5.md +16 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.6.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.50.7.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.51.0.md +24 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.51.1.md +17 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.51.2.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.52.0.md +30 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.52.1.md +28 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.52.2.md +12 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.52.3.md +13 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.52.4.md +27 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.52.5.md +21 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.52.6.md +7 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.53.0.md +29 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.54.0.md +26 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.55.0.md +21 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.55.1.md +13 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.56.0.md +20 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.56.1.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.57.0.md +32 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.57.1.md +10 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.58.0.md +34 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.59.0.md +28 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.6.0.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.6.1.md +10 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.60.0.md +20 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.61.0.md +29 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.61.1.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.61.2.md +6 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.61.3.md +13 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.62.0.md +21 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.62.1.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.63.0.md +19 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.63.1.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.63.2.md +7 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.63.3.md +6 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.63.4.md +8 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.63.5.md +6 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.64.0.md +37 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.64.1.md +6 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.64.2.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.65.0.md +19 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.65.1.md +11 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.66.0.md +15 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.66.1.md +14 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.66.2.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.67.0.md +33 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.7.0.md +16 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.8.0.md +18 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.8.1.md +17 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.8.2.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.8.3.md +14 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.8.4.md +9 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.8.5.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.8.6.md +14 -0
- package/cli/dist/web-ui/docs/cn/cli/release-notes/v2.9.0.md +5 -0
- package/cli/dist/web-ui/docs/cn/cli/remote-control.md +247 -0
- package/cli/dist/web-ui/docs/cn/cli/sandboxing.md +316 -0
- package/cli/dist/web-ui/docs/cn/cli/scheduled-tasks.md +161 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-custom-tools.md +1195 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-demos.md +347 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-hooks.md +803 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-mcp.md +643 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-permissions.md +501 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-python.md +783 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-sessions.md +332 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk-typescript.md +759 -0
- package/cli/dist/web-ui/docs/cn/cli/sdk.md +1105 -0
- package/cli/dist/web-ui/docs/cn/cli/security.md +387 -0
- package/cli/dist/web-ui/docs/cn/cli/settings.md +602 -0
- package/cli/dist/web-ui/docs/cn/cli/skills.md +448 -0
- package/cli/dist/web-ui/docs/cn/cli/slash-commands.md +397 -0
- package/cli/dist/web-ui/docs/cn/cli/statusline.md +525 -0
- package/cli/dist/web-ui/docs/cn/cli/sub-agents.md +634 -0
- package/cli/dist/web-ui/docs/cn/cli/terminal-config.md +77 -0
- package/cli/dist/web-ui/docs/cn/cli/tools-reference.md +99 -0
- package/cli/dist/web-ui/docs/cn/cli/troubleshooting.md +190 -0
- package/cli/dist/web-ui/docs/cn/cli/web-ui.md +164 -0
- package/cli/dist/web-ui/docs/cn/cli/wecom-bot-setup.md +274 -0
- package/cli/dist/web-ui/docs/cn/cli/worktree.md +660 -0
- package/cli/dist/web-ui/docs/en/cli/acp.md +126 -0
- package/cli/dist/web-ui/docs/en/cli/agent-teams.md +327 -0
- package/cli/dist/web-ui/docs/en/cli/bash-sandboxing.md +357 -0
- package/cli/dist/web-ui/docs/en/cli/best-practices.md +554 -0
- package/cli/dist/web-ui/docs/en/cli/channels-reference.md +293 -0
- package/cli/dist/web-ui/docs/en/cli/channels.md +215 -0
- package/cli/dist/web-ui/docs/en/cli/checkpointing.md +53 -0
- package/cli/dist/web-ui/docs/en/cli/cli-reference.md +187 -0
- package/cli/dist/web-ui/docs/en/cli/common-workflows.md +1011 -0
- package/cli/dist/web-ui/docs/en/cli/costs.md +174 -0
- package/cli/dist/web-ui/docs/en/cli/devcontainer.md +553 -0
- package/cli/dist/web-ui/docs/en/cli/env-vars.md +326 -0
- package/cli/dist/web-ui/docs/en/cli/gitlab-ci-cd.md +357 -0
- package/cli/dist/web-ui/docs/en/cli/headless.md +258 -0
- package/cli/dist/web-ui/docs/en/cli/hooks-guide.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/hooks.md +801 -0
- package/cli/dist/web-ui/docs/en/cli/iam.md +526 -0
- package/cli/dist/web-ui/docs/en/cli/ide-integrations.md +92 -0
- package/cli/dist/web-ui/docs/en/cli/installation.md +266 -0
- package/cli/dist/web-ui/docs/en/cli/interactive-mode.md +233 -0
- package/cli/dist/web-ui/docs/en/cli/mcp.md +739 -0
- package/cli/dist/web-ui/docs/en/cli/memory.md +436 -0
- package/cli/dist/web-ui/docs/en/cli/models.md +355 -0
- package/cli/dist/web-ui/docs/en/cli/overview.md +100 -0
- package/cli/dist/web-ui/docs/en/cli/plugin-marketplaces.md +534 -0
- package/cli/dist/web-ui/docs/en/cli/plugins-reference.md +774 -0
- package/cli/dist/web-ui/docs/en/cli/plugins.md +688 -0
- package/cli/dist/web-ui/docs/en/cli/quickstart.md +249 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/README.md +193 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.10.0.md +23 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.10.1.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.11.0.md +24 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.12.0.md +21 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.13.0.md +20 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.14.0.md +22 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.14.1.md +8 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.15.0.md +18 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.15.1.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.16.0.md +20 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.17.0.md +29 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.18.0.md +17 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.19.0.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.19.1.md +14 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.19.2.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.20.0.md +23 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.20.1.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.21.0.md +13 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.22.0.md +16 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.23.0.md +41 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.23.2.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.23.3.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.23.4.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.23.5.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.24.0.md +17 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.25.0.md +18 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.25.1.md +21 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.26.0.md +18 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.27.0.md +16 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.27.1.md +16 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.27.2.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.27.3.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.28.0.md +26 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.28.1.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.29.0.md +35 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.3.1.md +16 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.30.0.md +19 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.30.1.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.31.0.md +51 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.31.1.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.31.2.md +16 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.32.0.md +19 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.33.0.md +28 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.33.1.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.34.0.md +27 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.34.1.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.35.0.md +22 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.36.0.md +23 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.36.1.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.36.2.md +22 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.36.3.md +17 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.0.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.1.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.10.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.11.md +8 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.12.md +14 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.13.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.14.md +24 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.15.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.16.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.17.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.18.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.19.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.2.md +28 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.20.md +8 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.3.md +22 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.4.md +19 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.5.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.6.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.7.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.8.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.37.9.md +8 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.38.0.md +22 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.38.1.md +6 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.38.2.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.39.0.md +18 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.4.0.md +19 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.40.0.md +20 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.40.1.md +6 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.0.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.1.md +6 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.2.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.3.md +8 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.4.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.5.md +10 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.6.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.7.md +14 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.41.8.md +18 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.42.0.md +39 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.42.1.md +8 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.42.3.md +18 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.43.0.md +27 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.43.1.md +27 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.44.0.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.44.1.md +22 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.45.0.md +34 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.45.1.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.46.0.md +12 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.47.0.md +20 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.48.0.md +32 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.48.1.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.49.0.md +26 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.49.1.md +14 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.49.2.md +39 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.49.3.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.49.5.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.49.6.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.49.7.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.5.0.md +24 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.0.md +25 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.1.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.2.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.3.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.4.md +17 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.5.md +16 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.6.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.50.7.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.51.0.md +24 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.51.1.md +17 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.51.2.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.52.0.md +30 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.52.1.md +28 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.52.2.md +12 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.52.3.md +13 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.52.4.md +27 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.52.5.md +21 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.52.6.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.53.0.md +29 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.54.0.md +26 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.55.0.md +21 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.55.1.md +13 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.56.0.md +20 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.56.1.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.57.0.md +32 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.57.1.md +10 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.58.0.md +34 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.59.0.md +28 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.6.0.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.6.1.md +10 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.60.0.md +20 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.61.0.md +29 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.61.1.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.61.2.md +6 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.61.3.md +13 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.62.0.md +21 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.62.1.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.63.0.md +19 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.63.1.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.63.2.md +7 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.63.3.md +6 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.63.4.md +8 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.63.5.md +6 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.64.0.md +37 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.64.1.md +6 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.64.2.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.65.0.md +19 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.65.1.md +11 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.66.0.md +15 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.66.1.md +14 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.66.2.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.67.0.md +33 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.7.0.md +16 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.8.0.md +18 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.8.1.md +17 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.8.2.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.8.3.md +14 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.8.4.md +9 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.8.5.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.8.6.md +14 -0
- package/cli/dist/web-ui/docs/en/cli/release-notes/v2.9.0.md +5 -0
- package/cli/dist/web-ui/docs/en/cli/remote-control.md +247 -0
- package/cli/dist/web-ui/docs/en/cli/sandboxing.md +316 -0
- package/cli/dist/web-ui/docs/en/cli/scheduled-tasks.md +160 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-custom-tools.md +1131 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-demos.md +347 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-hooks.md +813 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-mcp.md +645 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-permissions.md +461 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-python.md +797 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-sessions.md +340 -0
- package/cli/dist/web-ui/docs/en/cli/sdk-typescript.md +770 -0
- package/cli/dist/web-ui/docs/en/cli/sdk.md +1103 -0
- package/cli/dist/web-ui/docs/en/cli/security.md +388 -0
- package/cli/dist/web-ui/docs/en/cli/settings.md +602 -0
- package/cli/dist/web-ui/docs/en/cli/skills.md +448 -0
- package/cli/dist/web-ui/docs/en/cli/slash-commands.md +397 -0
- package/cli/dist/web-ui/docs/en/cli/statusline.md +525 -0
- package/cli/dist/web-ui/docs/en/cli/sub-agents.md +621 -0
- package/cli/dist/web-ui/docs/en/cli/terminal-config.md +77 -0
- package/cli/dist/web-ui/docs/en/cli/tools-reference.md +99 -0
- package/cli/dist/web-ui/docs/en/cli/troubleshooting.md +190 -0
- package/cli/dist/web-ui/docs/en/cli/web-ui.md +164 -0
- package/cli/dist/web-ui/docs/en/cli/wecom-bot-setup.md +274 -0
- package/cli/dist/web-ui/docs/en/cli/worktree.md +660 -0
- package/cli/dist/web-ui/docs/search-index-en.json +1 -0
- package/cli/dist/web-ui/docs/search-index-zh.json +1 -0
- package/cli/dist/web-ui/docs/sidebar-en.json +1 -0
- package/cli/dist/web-ui/docs/sidebar-zh.json +1 -0
- package/cli/dist/web-ui/index.html +2 -2
- package/cli/package.json +1 -1
- package/cli/product.cloudhosted.json +4 -3
- package/cli/product.internal.json +4 -3
- package/cli/product.ioa.json +4 -3
- package/cli/product.json +13 -6
- package/cli/product.selfhosted.json +4 -3
- package/package.json +1 -1
- package/cli/dist/web-ui/assets/index-4SCgPWnj.css +0 -32
- package/cli/dist/web-ui/assets/index-BijmmKDe.js +0 -391
|
@@ -0,0 +1,526 @@
|
|
|
1
|
+
# Identity and Access Management
|
|
2
|
+
|
|
3
|
+
> Learn how to configure user authentication, authorization, and access control for CodeBuddy Code in your organization.
|
|
4
|
+
|
|
5
|
+
## Authentication Methods
|
|
6
|
+
|
|
7
|
+
### Quick Start
|
|
8
|
+
|
|
9
|
+
Choose an authentication method based on your scenario:
|
|
10
|
+
|
|
11
|
+
| Scenario | Recommended Method | How to Get Credentials |
|
|
12
|
+
|:---------|:-------------------|:-----------------------|
|
|
13
|
+
| Individual Developer | `CODEBUDDY_API_KEY` | [Get API Key from platform](#individual-users-get-api-key) |
|
|
14
|
+
| Enterprise/Team (OAuth Integration) | `apiKeyHelper` | [Create app to get Client ID/Secret](#enterprise-users-oauth-authentication) |
|
|
15
|
+
| CI/CD with existing OAuth token | `CODEBUDDY_AUTH_TOKEN` | Use existing token directly |
|
|
16
|
+
| Third-party Model Service | `CODEBUDDY_API_KEY` + `BASE_URL` | Get from third-party provider |
|
|
17
|
+
|
|
18
|
+
> When multiple authentication methods are configured, they take effect in the following priority: **CODEBUDDY_AUTH_TOKEN > apiKeyHelper > CODEBUDDY_API_KEY**
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Enterprise Users: OAuth Authentication
|
|
22
|
+
|
|
23
|
+
Suitable for enterprise/team integration, obtaining tokens via OAuth 2.0.
|
|
24
|
+
|
|
25
|
+
> Currently only introducing the Client Credentials authorization method, suitable for server-side applications and CI/CD scenarios.
|
|
26
|
+
|
|
27
|
+
**Step 1: Create Application, Get Client ID and Secret**
|
|
28
|
+
|
|
29
|
+
Refer to the [Enterprise Developer Quick Start](https://copilot.tencent.com/apiDocs/open-platform.html) to complete:
|
|
30
|
+
1. Create an enterprise application
|
|
31
|
+
2. Get Client ID and Client Secret
|
|
32
|
+
|
|
33
|
+
**Step 2: Create a Script to Get Token**
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
#!/bin/bash
|
|
37
|
+
# get-oauth-token.sh - OAuth 2.0 Client Credentials flow
|
|
38
|
+
|
|
39
|
+
CLIENT_ID="${OAUTH_CLIENT_ID}"
|
|
40
|
+
CLIENT_SECRET="${OAUTH_CLIENT_SECRET}"
|
|
41
|
+
TOKEN_URL="https://copilot.tencent.com/oauth2/token"
|
|
42
|
+
|
|
43
|
+
response=$(curl -s -X POST "$TOKEN_URL" \
|
|
44
|
+
-H "Content-Type: application/x-www-form-urlencoded" \
|
|
45
|
+
-d "grant_type=client_credentials" \
|
|
46
|
+
-d "client_id=$CLIENT_ID" \
|
|
47
|
+
-d "client_secret=$CLIENT_SECRET")
|
|
48
|
+
|
|
49
|
+
echo "$response" | jq -r '.access_token'
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**Step 3: Configure apiKeyHelper**
|
|
53
|
+
|
|
54
|
+
Configure in `~/.codebuddy/settings.json` or project `.codebuddy/settings.json`:
|
|
55
|
+
|
|
56
|
+
```json
|
|
57
|
+
{
|
|
58
|
+
"apiKeyHelper": "/path/to/get-oauth-token.sh"
|
|
59
|
+
}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
After configuration, you can use the `codebuddy` command.
|
|
63
|
+
|
|
64
|
+
> Tokens obtained by apiKeyHelper are cached for 5 minutes by default. You can adjust this via the `CODEBUDDY_CODE_API_KEY_HELPER_TTL_MS` environment variable (in milliseconds).
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
### Third-Party Model Services
|
|
69
|
+
|
|
70
|
+
Suitable for using third-party model services like OpenRouter.
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
export CODEBUDDY_API_KEY="sk-or-v1-xxx"
|
|
74
|
+
export CODEBUDDY_BASE_URL="https://openrouter.ai/api/v1"
|
|
75
|
+
codebuddy --model openai/gpt-4
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
### Authentication Methods Explained
|
|
81
|
+
|
|
82
|
+
#### CODEBUDDY_API_KEY
|
|
83
|
+
|
|
84
|
+
Static API Key, suitable for most scenarios.
|
|
85
|
+
|
|
86
|
+
| Feature | Description |
|
|
87
|
+
|:--------|:------------|
|
|
88
|
+
| Environment Variable | `CODEBUDDY_API_KEY` |
|
|
89
|
+
| Auth Type | API Key (X-Api-Key header) |
|
|
90
|
+
| Use Cases | Personal development, third-party model services |
|
|
91
|
+
|
|
92
|
+
> **Warning: When using API Key, you must also configure the `CODEBUDDY_INTERNET_ENVIRONMENT` environment variable!**
|
|
93
|
+
>
|
|
94
|
+
> | Version | Configuration Value |
|
|
95
|
+
> |:--------|:--------------------|
|
|
96
|
+
> | International | Not set (default) |
|
|
97
|
+
> | China | `internal` |
|
|
98
|
+
> | iOA | `ioa` |
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# International version
|
|
102
|
+
export CODEBUDDY_API_KEY="your-api-key"
|
|
103
|
+
|
|
104
|
+
# China version
|
|
105
|
+
export CODEBUDDY_API_KEY="your-api-key"
|
|
106
|
+
export CODEBUDDY_INTERNET_ENVIRONMENT=internal
|
|
107
|
+
|
|
108
|
+
# iOA version
|
|
109
|
+
export CODEBUDDY_API_KEY="your-api-key"
|
|
110
|
+
export CODEBUDDY_INTERNET_ENVIRONMENT=ioa
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
#### CODEBUDDY_AUTH_TOKEN
|
|
114
|
+
|
|
115
|
+
Pre-obtained OAuth Bearer Token, suitable for CI/CD or scenarios with existing tokens.
|
|
116
|
+
|
|
117
|
+
| Feature | Description |
|
|
118
|
+
|:--------|:------------|
|
|
119
|
+
| Environment Variable | `CODEBUDDY_AUTH_TOKEN` |
|
|
120
|
+
| Auth Type | Bearer Token (Authorization header) |
|
|
121
|
+
| Use Cases | CI/CD automation, existing OAuth token |
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
export CODEBUDDY_AUTH_TOKEN="eyJhbGciOiJSUzI1NiIs..."
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Can also be configured in settings.json:
|
|
128
|
+
|
|
129
|
+
```json
|
|
130
|
+
{
|
|
131
|
+
"env": {
|
|
132
|
+
"CODEBUDDY_AUTH_TOKEN": "your-oauth-token"
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
#### apiKeyHelper
|
|
138
|
+
|
|
139
|
+
Dynamically obtain tokens via script, suitable for OAuth integration or scenarios requiring periodic token refresh.
|
|
140
|
+
|
|
141
|
+
| Feature | Description |
|
|
142
|
+
|:--------|:------------|
|
|
143
|
+
| Configuration | `apiKeyHelper` field in settings.json |
|
|
144
|
+
| Auth Type | Bearer Token (returned by script) |
|
|
145
|
+
| Caching | Default 5 minutes, configurable via `CODEBUDDY_CODE_API_KEY_HELPER_TTL_MS` |
|
|
146
|
+
| Use Cases | OAuth Client Credentials, Vault integration, automatic token refresh |
|
|
147
|
+
|
|
148
|
+
**Script Requirements:**
|
|
149
|
+
- Output the token to standard output (stdout)
|
|
150
|
+
- Exit with code 0 to indicate success
|
|
151
|
+
- Script execution timeout is 30 seconds
|
|
152
|
+
|
|
153
|
+
**Configuration Example:**
|
|
154
|
+
|
|
155
|
+
```json
|
|
156
|
+
{
|
|
157
|
+
"apiKeyHelper": "/path/to/get-token.sh"
|
|
158
|
+
}
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
**Example of Getting Token from Vault:**
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
#!/bin/bash
|
|
165
|
+
vault read -field=api_key secret/codebuddy/api-key
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
For detailed authentication configuration, see [Settings Documentation - Environment Variables](settings.md#environment-variables).
|
|
169
|
+
|
|
170
|
+
## Access Control and Permissions
|
|
171
|
+
|
|
172
|
+
We support fine-grained permissions so you can precisely specify what the agent is allowed to do (e.g., run tests, run linters) and not allowed to do (e.g., update cloud infrastructure). These permission settings can be checked into version control and distributed to all developers in your organization, or customized by individual developers.
|
|
173
|
+
|
|
174
|
+
### Permission System
|
|
175
|
+
|
|
176
|
+
CodeBuddy Code uses a hierarchical permission system to balance functionality and security:
|
|
177
|
+
|
|
178
|
+
| Tool Type | Examples | Requires Approval | "Yes, don't ask again" Behavior |
|
|
179
|
+
|:----------|:---------|:------------------|:--------------------------------|
|
|
180
|
+
| Read-only | File reading, LS, Grep | No | N/A |
|
|
181
|
+
| Bash commands | Shell execution | Yes | Permanently remembered by project directory and command |
|
|
182
|
+
| File modifications | Edit/Write files | Yes | Effective until session ends |
|
|
183
|
+
|
|
184
|
+
### Configuring Permissions
|
|
185
|
+
|
|
186
|
+
You can use `/permissions` to view and manage CodeBuddy Code's tool permissions. This UI lists all permission rules and the settings.json files they come from.
|
|
187
|
+
|
|
188
|
+
* **Allow** rules will allow CodeBuddy Code to use specified tools without further manual approval.
|
|
189
|
+
* **Ask** rules will prompt for user confirmation when CodeBuddy Code attempts to use specified tools. Ask rules take precedence over allow rules.
|
|
190
|
+
* **Deny** rules will block CodeBuddy Code from using specified tools. Deny rules take precedence over allow and ask rules.
|
|
191
|
+
* **Additional directories** extend CodeBuddy's file access to directories beyond the initial working directory.
|
|
192
|
+
* **Default mode** controls CodeBuddy's permission behavior when encountering new requests.
|
|
193
|
+
|
|
194
|
+
Permission rules use the format: `Tool` or `Tool(optional-specifier)`
|
|
195
|
+
|
|
196
|
+
Rules with only the tool name match any use of that tool. For example, adding `Bash` to the allow rules list will allow CodeBuddy Code to use the Bash tool without user approval.
|
|
197
|
+
|
|
198
|
+
#### Permission Modes
|
|
199
|
+
|
|
200
|
+
CodeBuddy Code supports several permission modes, which can be set as `defaultMode` in the [settings file](settings.md#configuration-files):
|
|
201
|
+
|
|
202
|
+
| Mode | Description |
|
|
203
|
+
|:-----|:------------|
|
|
204
|
+
| `default` | Standard behavior - prompts for permission on first use of each tool |
|
|
205
|
+
| `acceptEdits` | Automatically accepts file edit permissions for the session |
|
|
206
|
+
| `plan` | Plan mode - CodeBuddy can analyze but not modify files or execute commands |
|
|
207
|
+
| `bypassPermissions` | Skips all permission prompts (requires secure environment - see warning below) |
|
|
208
|
+
|
|
209
|
+
<Warning>
|
|
210
|
+
`bypassPermissions` mode should only be used in secure, isolated environments, such as Docker containers or VMs. Using this mode on production environments or systems with sensitive data may pose security risks.
|
|
211
|
+
</Warning>
|
|
212
|
+
|
|
213
|
+
#### Working Directory
|
|
214
|
+
|
|
215
|
+
By default, CodeBuddy can access files in the directory where it's launched. You can extend this access:
|
|
216
|
+
|
|
217
|
+
* **At startup**: Use the `--add-dir <path>` CLI parameter
|
|
218
|
+
* **During session**: Use the `/add-dir` slash command
|
|
219
|
+
* **Persistent configuration**: Add to `additionalDirectories` in the [settings file](settings.md#configuration-files)
|
|
220
|
+
|
|
221
|
+
Files in additional directories follow the same permission rules as the original working directory - they can be read without prompts, and file edit permissions follow the current permission mode.
|
|
222
|
+
|
|
223
|
+
#### Tool-Specific Permission Rules
|
|
224
|
+
|
|
225
|
+
Some tools support more fine-grained permission control:
|
|
226
|
+
|
|
227
|
+
**Bash**
|
|
228
|
+
|
|
229
|
+
* `Bash(npm run build)` exactly matches the Bash command `npm run build`
|
|
230
|
+
* `Bash(npm run test:*)` matches Bash commands starting with `npm run test`
|
|
231
|
+
* `Bash(curl http://site.com/:*)` matches curl commands starting with `curl http://site.com/`
|
|
232
|
+
|
|
233
|
+
<Tip>
|
|
234
|
+
CodeBuddy Code recognizes shell operators (like `&&`), so prefix matching rules like `Bash(safe-cmd:*)` won't grant it permission to run commands like `safe-cmd && other-cmd`
|
|
235
|
+
</Tip>
|
|
236
|
+
|
|
237
|
+
<Warning>
|
|
238
|
+
Important limitations of Bash permission patterns:
|
|
239
|
+
|
|
240
|
+
1. This tool uses **prefix matching**, not regular expressions or glob patterns
|
|
241
|
+
2. The wildcard `:*` only works at the end of the pattern to match any subsequent content
|
|
242
|
+
3. Patterns like `Bash(curl http://github.com/:*)` can be bypassed in multiple ways:
|
|
243
|
+
* Options before URL: `curl -X GET http://github.com/...` doesn't match
|
|
244
|
+
* Different protocol: `curl https://github.com/...` doesn't match
|
|
245
|
+
* Redirects: `curl -L http://bit.ly/xyz` (redirects to github)
|
|
246
|
+
* Variables: `URL=http://github.com && curl $URL` doesn't match
|
|
247
|
+
* Extra spaces: `curl http://github.com` doesn't match
|
|
248
|
+
|
|
249
|
+
For more reliable URL filtering, consider:
|
|
250
|
+
|
|
251
|
+
* Using the WebFetch tool with `WebFetch(domain:github.com)` permission
|
|
252
|
+
* Instructing CodeBuddy Code via CODEBUDDY.md about allowed curl patterns
|
|
253
|
+
* Using hooks for custom permission validation
|
|
254
|
+
</Warning>
|
|
255
|
+
|
|
256
|
+
**Read & Edit**
|
|
257
|
+
|
|
258
|
+
`Edit` rules apply to all built-in tools that edit files. CodeBuddy will try its best to apply `Read` rules to all built-in tools that read files, like Grep, Glob, and LS.
|
|
259
|
+
|
|
260
|
+
Read and Edit rules both follow the [gitignore](https://git-scm.com/docs/gitignore) specification, with four different pattern types:
|
|
261
|
+
|
|
262
|
+
| Pattern | Meaning | Example | Matches |
|
|
263
|
+
|---------|---------|---------|---------|
|
|
264
|
+
| `//path` | **Absolute** path from filesystem root | `Read(//Users/alice/secrets/**)` | `/Users/alice/secrets/**` |
|
|
265
|
+
| `~/path` | Path from **home directory** | `Read(~/Documents/*.pdf)` | `/Users/alice/Documents/*.pdf` |
|
|
266
|
+
| `/path` | **Relative to settings file** path | `Edit(/src/**/*.ts)` | `<settings file path>/src/**/*.ts` |
|
|
267
|
+
| `path` or `./path` | **Relative to current directory** | `Read(*.env)` | `<cwd>/*.env` |
|
|
268
|
+
|
|
269
|
+
<Warning>
|
|
270
|
+
Patterns like `/Users/alice/file` are not absolute paths - they're relative to your settings file! Use `//Users/alice/file` for absolute paths.
|
|
271
|
+
</Warning>
|
|
272
|
+
|
|
273
|
+
**Examples:**
|
|
274
|
+
|
|
275
|
+
* `Edit(/docs/**)` - Edit in `<project>/docs/` (not `/docs/`!)
|
|
276
|
+
* `Read(~/.zshrc)` - Read home directory's `.zshrc`
|
|
277
|
+
* `Edit(//tmp/scratch.txt)` - Edit absolute path `/tmp/scratch.txt`
|
|
278
|
+
* `Read(src/**)` - Read from `<current directory>/src/`
|
|
279
|
+
|
|
280
|
+
**WebFetch**
|
|
281
|
+
|
|
282
|
+
* `WebFetch(domain:example.com)` matches fetch requests to example.com
|
|
283
|
+
|
|
284
|
+
**MCP**
|
|
285
|
+
|
|
286
|
+
* `mcp__puppeteer` matches any tool provided by the `puppeteer` server (name configured in CodeBuddy Code)
|
|
287
|
+
* `mcp__puppeteer__*` wildcard syntax, also matches all tools from the `puppeteer` server
|
|
288
|
+
* `mcp__puppeteer__puppeteer_navigate` matches the `puppeteer_navigate` tool provided by the `puppeteer` server
|
|
289
|
+
|
|
290
|
+
<Tip>
|
|
291
|
+
To approve all tools from an MCP server, you can use either format:
|
|
292
|
+
|
|
293
|
+
* Use: `mcp__github` (approves all GitHub tools)
|
|
294
|
+
* Use: `mcp__github__*` (approves all GitHub tools, equivalent to the above)
|
|
295
|
+
|
|
296
|
+
To approve only specific tools, list each one:
|
|
297
|
+
|
|
298
|
+
* Use: `mcp__github__get_issue`
|
|
299
|
+
* Use: `mcp__github__list_issues`
|
|
300
|
+
</Tip>
|
|
301
|
+
|
|
302
|
+
### Permission Configuration Examples
|
|
303
|
+
|
|
304
|
+
**Basic Permission Configuration:**
|
|
305
|
+
|
|
306
|
+
```json
|
|
307
|
+
{
|
|
308
|
+
"permissions": {
|
|
309
|
+
"allow": [
|
|
310
|
+
"Read",
|
|
311
|
+
"Edit",
|
|
312
|
+
"Bash(git:*)",
|
|
313
|
+
"Bash(npm:*)"
|
|
314
|
+
],
|
|
315
|
+
"ask": [
|
|
316
|
+
"WebFetch",
|
|
317
|
+
"Bash(docker:*)"
|
|
318
|
+
],
|
|
319
|
+
"deny": [
|
|
320
|
+
"Bash(rm:*)",
|
|
321
|
+
"Bash(sudo:*)",
|
|
322
|
+
"Edit(**/*.env)",
|
|
323
|
+
"Read(~/.ssh/**)"
|
|
324
|
+
]
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
**Security-Restricted Configuration:**
|
|
330
|
+
|
|
331
|
+
```json
|
|
332
|
+
{
|
|
333
|
+
"permissions": {
|
|
334
|
+
"allow": [
|
|
335
|
+
"Read",
|
|
336
|
+
"Edit(src/**)",
|
|
337
|
+
"Bash(git:status,git:diff)"
|
|
338
|
+
],
|
|
339
|
+
"deny": [
|
|
340
|
+
"Edit(**/*.env)",
|
|
341
|
+
"Edit(**/*.key)",
|
|
342
|
+
"Edit(**/*.pem)",
|
|
343
|
+
"Bash(wget:*)",
|
|
344
|
+
"Bash(curl:*)",
|
|
345
|
+
"Read(/etc/**)",
|
|
346
|
+
"Read(~/.ssh/**)",
|
|
347
|
+
"Read(~/.aws/**)"
|
|
348
|
+
],
|
|
349
|
+
"defaultMode": "default"
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
### Using Hooks for Additional Permission Control
|
|
355
|
+
|
|
356
|
+
[CodeBuddy Code hooks](hooks.md) provide a way to register custom shell commands for runtime permission evaluation. When CodeBuddy Code makes a tool call, PreToolUse hooks run before the permission system, and hook output can decide to approve or deny the tool call instead of the permission system.
|
|
357
|
+
|
|
358
|
+
See [Hooks Documentation](hooks.md) for details.
|
|
359
|
+
|
|
360
|
+
## Settings Priority
|
|
361
|
+
|
|
362
|
+
When multiple settings sources exist, they are applied in the following order (from highest to lowest priority):
|
|
363
|
+
|
|
364
|
+
1. Command line arguments
|
|
365
|
+
2. Local project settings (`.codebuddy/settings.local.json`)
|
|
366
|
+
3. Shared project settings (`.codebuddy/settings.json`)
|
|
367
|
+
4. User settings (`~/.codebuddy/settings.json`)
|
|
368
|
+
|
|
369
|
+
This hierarchy ensures flexibility at project and user levels where appropriate.
|
|
370
|
+
|
|
371
|
+
## Credential Management
|
|
372
|
+
|
|
373
|
+
CodeBuddy Code securely manages your authentication credentials:
|
|
374
|
+
|
|
375
|
+
| Platform | Storage Location |
|
|
376
|
+
|:---------|:-----------------:|
|
|
377
|
+
| macOS | Encrypted macOS Keychain |
|
|
378
|
+
| Linux | System keyring (GNOME Keyring, KWallet) |
|
|
379
|
+
| Windows | Windows Credential Manager |
|
|
380
|
+
|
|
381
|
+
**Dynamic Credential Retrieval:** Use `apiKeyHelper` to configure custom scripts for dynamic token retrieval. See [apiKeyHelper Configuration](#apikeyhelper) for details.
|
|
382
|
+
|
|
383
|
+
## Security Best Practices
|
|
384
|
+
|
|
385
|
+
### 1. Principle of Least Privilege
|
|
386
|
+
|
|
387
|
+
Only grant CodeBuddy Code the minimum permissions needed to complete tasks:
|
|
388
|
+
|
|
389
|
+
```json
|
|
390
|
+
{
|
|
391
|
+
"permissions": {
|
|
392
|
+
"allow": [
|
|
393
|
+
"Read",
|
|
394
|
+
"Edit(src/**/*.ts)",
|
|
395
|
+
"Bash(npm:test,npm:build)"
|
|
396
|
+
],
|
|
397
|
+
"deny": [
|
|
398
|
+
"Edit(**/*.env)",
|
|
399
|
+
"Bash(rm:*)",
|
|
400
|
+
"Bash(sudo:*)"
|
|
401
|
+
]
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
```
|
|
405
|
+
|
|
406
|
+
### 2. Protect Sensitive Files
|
|
407
|
+
|
|
408
|
+
Always deny access to files containing sensitive information:
|
|
409
|
+
|
|
410
|
+
```json
|
|
411
|
+
{
|
|
412
|
+
"permissions": {
|
|
413
|
+
"deny": [
|
|
414
|
+
"Read(.env)",
|
|
415
|
+
"Read(.env.*)",
|
|
416
|
+
"Read(secrets/**)",
|
|
417
|
+
"Read(~/.ssh/**)",
|
|
418
|
+
"Read(~/.aws/**)",
|
|
419
|
+
"Edit(**/*.key)",
|
|
420
|
+
"Edit(**/*.pem)"
|
|
421
|
+
]
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
```
|
|
425
|
+
|
|
426
|
+
### 3. Use Bash Sandbox
|
|
427
|
+
|
|
428
|
+
Enable sandboxing on supported platforms to isolate bash commands:
|
|
429
|
+
|
|
430
|
+
```json
|
|
431
|
+
{
|
|
432
|
+
"sandbox": {
|
|
433
|
+
"enabled": true,
|
|
434
|
+
"autoAllowBashIfSandboxed": true,
|
|
435
|
+
"excludedCommands": ["docker"]
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
See [Bash Sandbox Documentation](bash-sandboxing.md) for details.
|
|
441
|
+
|
|
442
|
+
### 4. Review Permission Logs
|
|
443
|
+
|
|
444
|
+
Regularly check CodeBuddy Code's permission usage to ensure compliance with security policies.
|
|
445
|
+
|
|
446
|
+
### 5. Team Configuration Sharing
|
|
447
|
+
|
|
448
|
+
Check team-level permission configurations into version control:
|
|
449
|
+
|
|
450
|
+
```bash
|
|
451
|
+
# Create team shared configuration
|
|
452
|
+
.codebuddy/settings.json
|
|
453
|
+
|
|
454
|
+
# Add to .gitignore
|
|
455
|
+
.codebuddy/settings.local.json
|
|
456
|
+
```
|
|
457
|
+
|
|
458
|
+
## Common Questions
|
|
459
|
+
|
|
460
|
+
### What if API Key authentication fails?
|
|
461
|
+
|
|
462
|
+
This is the most common issue, usually caused by **not configuring or incorrectly configuring the `CODEBUDDY_INTERNET_ENVIRONMENT` environment variable**.
|
|
463
|
+
|
|
464
|
+
**Troubleshooting Steps:**
|
|
465
|
+
|
|
466
|
+
1. Confirm which version you're using (International/China/iOA)
|
|
467
|
+
2. Check if environment variables are correctly set:
|
|
468
|
+
|
|
469
|
+
```bash
|
|
470
|
+
# Check current configuration
|
|
471
|
+
echo $CODEBUDDY_API_KEY
|
|
472
|
+
echo $CODEBUDDY_INTERNET_ENVIRONMENT
|
|
473
|
+
```
|
|
474
|
+
|
|
475
|
+
3. Set the correct environment variables based on your version:
|
|
476
|
+
|
|
477
|
+
| Version | `CODEBUDDY_INTERNET_ENVIRONMENT` |
|
|
478
|
+
|:--------|:---------------------------------|
|
|
479
|
+
| International | Not set or `public` |
|
|
480
|
+
| China | `internal` |
|
|
481
|
+
| iOA | `ioa` |
|
|
482
|
+
|
|
483
|
+
**Common Errors:**
|
|
484
|
+
|
|
485
|
+
- China version users forget to set `CODEBUDDY_INTERNET_ENVIRONMENT=internal`
|
|
486
|
+
- iOA version users set it to `internal` instead of `ioa`
|
|
487
|
+
- Environment variables only take effect in the current terminal and are lost when opening a new terminal (recommend adding to shell configuration file)
|
|
488
|
+
|
|
489
|
+
### How do I temporarily bypass permissions?
|
|
490
|
+
|
|
491
|
+
Start CodeBuddy Code with `--permission-mode bypassPermissions`:
|
|
492
|
+
|
|
493
|
+
```bash
|
|
494
|
+
codebuddy --permission-mode bypassPermissions
|
|
495
|
+
```
|
|
496
|
+
|
|
497
|
+
<Warning>
|
|
498
|
+
Only use this option in secure, isolated environments!
|
|
499
|
+
</Warning>
|
|
500
|
+
|
|
501
|
+
### How do I set different permissions for specific projects?
|
|
502
|
+
|
|
503
|
+
Create `.codebuddy/settings.json` in the project root directory:
|
|
504
|
+
|
|
505
|
+
```json
|
|
506
|
+
{
|
|
507
|
+
"permissions": {
|
|
508
|
+
"allow": ["project-specific permissions"]
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
### How do I view current permission configuration?
|
|
514
|
+
|
|
515
|
+
Use the `/permissions` command to view all effective permission rules and their sources.
|
|
516
|
+
|
|
517
|
+
## See Also
|
|
518
|
+
|
|
519
|
+
* [Settings Configuration](settings.md) - Learn about complete configuration options
|
|
520
|
+
* [Hooks Documentation](hooks.md) - Use hooks for advanced permission control
|
|
521
|
+
* [Bash Sandbox](bash-sandboxing.md) - Learn about sandbox isolation features
|
|
522
|
+
* [MCP Integration](mcp.md) - Configure MCP server permissions
|
|
523
|
+
|
|
524
|
+
---
|
|
525
|
+
|
|
526
|
+
*Ensure CodeBuddy Code works within security boundaries through proper permission configuration*
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# IDE Integration
|
|
2
|
+
|
|
3
|
+
CodeBuddy Code supports two integration methods with editors, both at the same level of IDE integration capabilities:
|
|
4
|
+
|
|
5
|
+
1. Using the ACP (Agent Client Protocol) as a universal "Agent Server" called by IDEs
|
|
6
|
+
2. Using the `--ide` startup parameter and `/ide` slash command as an "IDE plugin backend companion process" for deep integration
|
|
7
|
+
|
|
8
|
+
## Integration Method 1: ACP Protocol Integration
|
|
9
|
+
|
|
10
|
+
Suitable for editors that support ACP, such as Zed, using CodeBuddy Code as a universal Agent Server.
|
|
11
|
+
|
|
12
|
+
### Supported Editors
|
|
13
|
+
|
|
14
|
+
#### Zed Editor
|
|
15
|
+
|
|
16
|
+
Full integration via ACP protocol, supporting:
|
|
17
|
+
|
|
18
|
+
- Project context awareness
|
|
19
|
+
- Tool operation delegation (file read/write, terminal commands)
|
|
20
|
+
- Permission request interaction
|
|
21
|
+
- Real-time streaming responses
|
|
22
|
+
|
|
23
|
+
For configuration details, see: [ACP Protocol Integration Documentation](./acp.md)
|
|
24
|
+
|
|
25
|
+
## Integration Method 2: IDE Plugin Integration (`--ide` / `/ide`)
|
|
26
|
+
|
|
27
|
+
Suitable for VS Code / Cursor / Windsurf / JetBrains series IDEs, integrated through plugin + local MCP server. The IDE-side plugin is responsible for:
|
|
28
|
+
|
|
29
|
+
- Creating and maintaining MCP connections (SSE / WebSocket)
|
|
30
|
+
- Passing workspace information, selections, and other context to CodeBuddy via MCP protocol
|
|
31
|
+
- Exposing IDE capabilities like `openFile` / `openDiff` / `getDiagnostics` / `close_tab` for CodeBuddy to call
|
|
32
|
+
|
|
33
|
+
### `--ide` Startup Parameter
|
|
34
|
+
|
|
35
|
+
When you start CodeBuddy directly in the terminal, you can use the `--ide` parameter to have the CLI actively try to connect to the IDE corresponding to the current working directory:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
codebuddy --ide
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Behavior description:
|
|
42
|
+
|
|
43
|
+
- CodeBuddy will scan lock files created by IDE plugins in the current user directory to detect available IDE instances
|
|
44
|
+
- Only considers an IDE as "valid" if its workspace contains the current directory
|
|
45
|
+
- Prioritizes connecting to IDEs whose "workspace matches and process chain is upstream of the current terminal"
|
|
46
|
+
- After successful connection, the CLI will obtain from the IDE MCP server:
|
|
47
|
+
- File/diff preview (openFile / openDiff)
|
|
48
|
+
- Diagnostic information (getDiagnostics)
|
|
49
|
+
- Selection change notifications (selection_changed)
|
|
50
|
+
|
|
51
|
+
> `--ide` is just a quick connection method when "you manually start the CLI from an IDE terminal" and is not responsible for actually starting the IDE or plugin.
|
|
52
|
+
|
|
53
|
+
### `/ide` Slash Command
|
|
54
|
+
|
|
55
|
+
When using IDE plugin integration in CodeBuddy's interactive interface, you can use the `/ide` command to view and manage the current IDE connection status:
|
|
56
|
+
|
|
57
|
+
```text
|
|
58
|
+
/ide
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Typical uses include:
|
|
62
|
+
|
|
63
|
+
- Viewing whether an IDE is currently connected and which one
|
|
64
|
+
- Selecting which instance to connect to when multiple available IDEs exist
|
|
65
|
+
- Manually disconnecting or re-establishing MCP connections with the IDE
|
|
66
|
+
|
|
67
|
+
The specific interaction behavior is determined by the IDE integration UI, but the overall positioning is "managing IDE integration status" rather than directly initiating chat.
|
|
68
|
+
|
|
69
|
+
## Which Integration Method to Choose?
|
|
70
|
+
|
|
71
|
+
- If your editor natively supports ACP (such as Zed), we recommend using **ACP Protocol Integration**:
|
|
72
|
+
- Start with `codebuddy --acp`
|
|
73
|
+
- The editor is responsible for session UI and tool delegation
|
|
74
|
+
- If you use VS Code / Cursor / JetBrains, etc., and install the CodeBuddy plugin from the plugin marketplace, we recommend using **`--ide` / `/ide` Plugin Integration**:
|
|
75
|
+
- The plugin is responsible for starting the CodeBuddy process and establishing MCP connections
|
|
76
|
+
- The CLI side establishes and manages connections with the IDE through `--ide` / `/ide`
|
|
77
|
+
|
|
78
|
+
Both methods are equivalent at the "integration level" - they both allow CodeBuddy to deeply collaborate with the IDE as an external Agent, just with different access protocols and UI carriers.
|
|
79
|
+
|
|
80
|
+
## Future Plans
|
|
81
|
+
|
|
82
|
+
Future versions will provide more enhanced features:
|
|
83
|
+
|
|
84
|
+
- Friendlier DIFF display and modification confirmation process (combined with IDE diff preview)
|
|
85
|
+
- Richer context selection and visualization in IDE plugins
|
|
86
|
+
- More official integrations with editors and IDEs
|
|
87
|
+
|
|
88
|
+
## Related Documentation
|
|
89
|
+
|
|
90
|
+
- [ACP Protocol Integration](./acp.md) - Detailed ACP configuration guide
|
|
91
|
+
- [CLI Reference Manual](./cli-reference.md) - Command-line parameter descriptions
|
|
92
|
+
- [Slash Commands](./slash-commands.md) - Overview of session commands including `/ide`
|