@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,553 @@
|
|
|
1
|
+
# CodeBuddy Code 开发容器
|
|
2
|
+
|
|
3
|
+
CodeBuddy Code 开发容器提供了一个预配置、安全的开发环境,适合需要一致性和隔离性工作空间的团队使用。它与 Visual Studio Code 的 Dev Containers 扩展以及类似工具无缝集成。
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
## 四步快速开始
|
|
7
|
+
|
|
8
|
+
1. **安装 VS Code 和 Remote - Containers 扩展**
|
|
9
|
+
2. **参考下方配置详解在工作区创建 `.devcontainer` 目录及相关文件**
|
|
10
|
+
3. **在 VS Code 中打开仓库**
|
|
11
|
+
4. **当提示时,点击 "Reopen in Container"**(或使用命令面板:Cmd+Shift+P → "Remote-Containers: Reopen in Container")
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 配置详解
|
|
16
|
+
|
|
17
|
+
**目录结构**
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
your-project/
|
|
21
|
+
├── .devcontainer/
|
|
22
|
+
│ ├── devcontainer.json
|
|
23
|
+
│ ├── Dockerfile
|
|
24
|
+
│ └── init-firewall.sh
|
|
25
|
+
└── ...
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
开发容器设置由**三个主要组件**构成:
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
### 🚀 安装 CodeBuddy Code(推荐方案)
|
|
33
|
+
|
|
34
|
+
#### 方案 1:使用 Dev Containers Feature(推荐)
|
|
35
|
+
|
|
36
|
+
**Dev Containers Feature** 是在 Dev Container 中安装 CodeBuddy Code 的**推荐方式**。它提供自动版本管理、与其他特性配置一致、简化维护等优势。
|
|
37
|
+
|
|
38
|
+
**优势:**
|
|
39
|
+
- ✅ **自动版本管理** - 轻松升级到最新版本或固定特定版本
|
|
40
|
+
- ✅ **配置一致性** - 与其他 Dev Containers 特性采用相同配置方式
|
|
41
|
+
- ✅ **简化维护** - 无需在 Dockerfile 中管理复杂的安装逻辑
|
|
42
|
+
- ✅ **团队共享** - 易于在团队中统一配置
|
|
43
|
+
|
|
44
|
+
**配置方法:**
|
|
45
|
+
|
|
46
|
+
在 `devcontainer.json` 中的 `features` 字段添加配置:
|
|
47
|
+
|
|
48
|
+
```json
|
|
49
|
+
{
|
|
50
|
+
"name": "CodeBuddy Code Sandbox",
|
|
51
|
+
"features": {
|
|
52
|
+
"ghcr.io/devcontainers-contrib/features/codebuddy-code:1": {
|
|
53
|
+
"version": "latest"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
// ... 其他配置
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**固定特定版本:**
|
|
61
|
+
|
|
62
|
+
```json
|
|
63
|
+
{
|
|
64
|
+
"features": {
|
|
65
|
+
"ghcr.io/devcontainers-contrib/features/codebuddy-code:1": {
|
|
66
|
+
"version": "2.16.0"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**使用默认最新版本:**
|
|
73
|
+
|
|
74
|
+
```json
|
|
75
|
+
{
|
|
76
|
+
"features": {
|
|
77
|
+
"ghcr.io/devcontainers-contrib/features/codebuddy-code:1": {}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
#### 方案 2:在 Dockerfile 中手动安装
|
|
83
|
+
|
|
84
|
+
如果需要更多控制或特殊场景,可在 Dockerfile 中手动安装。详见下方 **Dockerfile** 部分。
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
### 1. devcontainer.json
|
|
89
|
+
控制容器设置、管理扩展、配置卷挂载。
|
|
90
|
+
|
|
91
|
+
**包含 Dev Containers Feature 的完整示例:**
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"name": "CodeBuddy Code Sandbox",
|
|
96
|
+
"build": {
|
|
97
|
+
"dockerfile": "Dockerfile",
|
|
98
|
+
"args": {
|
|
99
|
+
"TZ": "${localEnv:TZ:America/Los_Angeles}",
|
|
100
|
+
"GIT_DELTA_VERSION": "0.18.2",
|
|
101
|
+
"ZSH_IN_DOCKER_VERSION": "1.2.0"
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
"features": {
|
|
105
|
+
"ghcr.io/devcontainers-contrib/features/codebuddy-code:1": {
|
|
106
|
+
"version": "latest"
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
"runArgs": [
|
|
110
|
+
"--cap-add=NET_ADMIN",
|
|
111
|
+
"--cap-add=NET_RAW"
|
|
112
|
+
],
|
|
113
|
+
"customizations": {
|
|
114
|
+
"vscode": {
|
|
115
|
+
"extensions": [
|
|
116
|
+
"dbaeumer.vscode-eslint",
|
|
117
|
+
"esbenp.prettier-vscode",
|
|
118
|
+
"eamodio.gitlens"
|
|
119
|
+
],
|
|
120
|
+
"settings": {
|
|
121
|
+
"editor.formatOnSave": true,
|
|
122
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
123
|
+
"editor.codeActionsOnSave": {
|
|
124
|
+
"source.fixAll.eslint": "explicit"
|
|
125
|
+
},
|
|
126
|
+
"terminal.integrated.defaultProfile.linux": "zsh",
|
|
127
|
+
"terminal.integrated.profiles.linux": {
|
|
128
|
+
"bash": {
|
|
129
|
+
"path": "bash",
|
|
130
|
+
"icon": "terminal-bash"
|
|
131
|
+
},
|
|
132
|
+
"zsh": {
|
|
133
|
+
"path": "zsh"
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
},
|
|
139
|
+
"remoteUser": "node",
|
|
140
|
+
"mounts": [
|
|
141
|
+
"source=codebuddy-code-bashhistory-${devcontainerId},target=/commandhistory,type=volume",
|
|
142
|
+
"source=codebuddy-code-config-${devcontainerId},target=/home/node/.codebuddy,type=volume"
|
|
143
|
+
],
|
|
144
|
+
"containerEnv": {
|
|
145
|
+
"NODE_OPTIONS": "--max-old-space-size=4096",
|
|
146
|
+
"CODEBUDDY_CONFIG_DIR": "/home/node/.codebuddy",
|
|
147
|
+
"POWERLEVEL9K_DISABLE_GITSTATUS": "true"
|
|
148
|
+
},
|
|
149
|
+
"workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=delegated",
|
|
150
|
+
"workspaceFolder": "/workspace",
|
|
151
|
+
"postStartCommand": "sudo /usr/local/bin/init-firewall.sh",
|
|
152
|
+
"waitFor": "postStartCommand"
|
|
153
|
+
}
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
**关键配置说明:**
|
|
157
|
+
- `features` - 声明使用 CodeBuddy Code Dev Containers Feature,支持版本管理
|
|
158
|
+
- `version: "latest"` - 使用最新版本(可替换为具体版本号如 "2.16.0")
|
|
159
|
+
- 注意:使用 Feature 方式时,Dockerfile 中无需 `CODEBUDDY_CODE_VERSION` 参数
|
|
160
|
+
|
|
161
|
+
### 2. Dockerfile
|
|
162
|
+
定义容器镜像、指定安装的工具。
|
|
163
|
+
|
|
164
|
+
#### 使用 Feature 时的简化 Dockerfile
|
|
165
|
+
|
|
166
|
+
如使用上方 Dev Containers Feature 安装 CodeBuddy Code,Dockerfile 可以更简洁(无需 `CODEBUDDY_CODE_VERSION` 参数和手动安装命令):
|
|
167
|
+
|
|
168
|
+
> 如果你选择使用 Dev Containers Feature 方式(推荐),可以参考下方"简化版 Dockerfile"。如需在 Dockerfile 中手动安装,可参考"完整版 Dockerfile"。
|
|
169
|
+
|
|
170
|
+
**简化版 Dockerfile(推荐配合 Feature 使用):**
|
|
171
|
+
|
|
172
|
+
```dockerfile
|
|
173
|
+
FROM node:20
|
|
174
|
+
|
|
175
|
+
ARG TZ
|
|
176
|
+
ENV TZ="$TZ"
|
|
177
|
+
|
|
178
|
+
# Install basic development tools and iptables/ipset
|
|
179
|
+
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
180
|
+
less \
|
|
181
|
+
git \
|
|
182
|
+
procps \
|
|
183
|
+
sudo \
|
|
184
|
+
fzf \
|
|
185
|
+
zsh \
|
|
186
|
+
man-db \
|
|
187
|
+
unzip \
|
|
188
|
+
gnupg2 \
|
|
189
|
+
gh \
|
|
190
|
+
iptables \
|
|
191
|
+
ipset \
|
|
192
|
+
iproute2 \
|
|
193
|
+
dnsutils \
|
|
194
|
+
aggregate \
|
|
195
|
+
jq \
|
|
196
|
+
nano \
|
|
197
|
+
vim \
|
|
198
|
+
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
199
|
+
|
|
200
|
+
# Ensure default node user has access to /usr/local/share
|
|
201
|
+
RUN mkdir -p /usr/local/share/npm-global && \
|
|
202
|
+
chown -R node:node /usr/local/share
|
|
203
|
+
|
|
204
|
+
ARG USERNAME=node
|
|
205
|
+
|
|
206
|
+
# Persist bash history.
|
|
207
|
+
RUN SNIPPET="export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
|
|
208
|
+
&& mkdir /commandhistory \
|
|
209
|
+
&& touch /commandhistory/.bash_history \
|
|
210
|
+
&& chown -R $USERNAME /commandhistory
|
|
211
|
+
|
|
212
|
+
# Set `DEVCONTAINER` environment variable to help with orientation
|
|
213
|
+
ENV DEVCONTAINER=true
|
|
214
|
+
|
|
215
|
+
# Create workspace and config directories and set permissions
|
|
216
|
+
RUN mkdir -p /workspace /home/node/.codebuddy && \
|
|
217
|
+
chown -R node:node /workspace /home/node/.codebuddy
|
|
218
|
+
|
|
219
|
+
WORKDIR /workspace
|
|
220
|
+
|
|
221
|
+
ARG GIT_DELTA_VERSION=0.18.2
|
|
222
|
+
RUN ARCH=$(dpkg --print-architecture) && \
|
|
223
|
+
wget "https://github.com/dandavison/delta/releases/download/${GIT_DELTA_VERSION}/git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb" && \
|
|
224
|
+
sudo dpkg -i "git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb" && \
|
|
225
|
+
rm "git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb"
|
|
226
|
+
|
|
227
|
+
# Set up non-root user
|
|
228
|
+
USER node
|
|
229
|
+
|
|
230
|
+
# Install global packages
|
|
231
|
+
ENV NPM_CONFIG_PREFIX=/usr/local/share/npm-global
|
|
232
|
+
ENV PATH=$PATH:/usr/local/share/npm-global/bin
|
|
233
|
+
|
|
234
|
+
# Set the default shell to zsh rather than sh
|
|
235
|
+
ENV SHELL=/bin/zsh
|
|
236
|
+
|
|
237
|
+
# Set the default editor and visual
|
|
238
|
+
ENV EDITOR=nano
|
|
239
|
+
ENV VISUAL=nano
|
|
240
|
+
|
|
241
|
+
# Default powerline10k theme
|
|
242
|
+
ARG ZSH_IN_DOCKER_VERSION=1.2.0
|
|
243
|
+
RUN sh -c "$(wget -O- https://github.com/deluan/zsh-in-docker/releases/download/v${ZSH_IN_DOCKER_VERSION}/zsh-in-docker.sh)" -- \
|
|
244
|
+
-p git \
|
|
245
|
+
-p fzf \
|
|
246
|
+
-a "source /usr/share/doc/fzf/examples/key-bindings.zsh" \
|
|
247
|
+
-a "source /usr/share/doc/fzf/examples/completion.zsh" \
|
|
248
|
+
-a "export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
|
|
249
|
+
-x
|
|
250
|
+
|
|
251
|
+
# CodeBuddy Code will be installed via Dev Containers Feature
|
|
252
|
+
|
|
253
|
+
# Copy and set up firewall script
|
|
254
|
+
COPY init-firewall.sh /usr/local/bin/
|
|
255
|
+
USER root
|
|
256
|
+
RUN chmod +x /usr/local/bin/init-firewall.sh && \
|
|
257
|
+
echo "node ALL=(root) NOPASSWD: /usr/local/bin/init-firewall.sh" > /etc/sudoers.d/node-firewall && \
|
|
258
|
+
chmod 0440 /etc/sudoers.d/node-firewall
|
|
259
|
+
USER node
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
#### 手动安装方式的完整 Dockerfile
|
|
263
|
+
|
|
264
|
+
如需完全控制安装过程,可在 Dockerfile 中手动安装 CodeBuddy Code(此方案不使用 Dev Containers Feature):
|
|
265
|
+
|
|
266
|
+
```dockerfile
|
|
267
|
+
FROM node:20
|
|
268
|
+
|
|
269
|
+
ARG TZ
|
|
270
|
+
ENV TZ="$TZ"
|
|
271
|
+
|
|
272
|
+
ARG CODEBUDDY_CODE_VERSION=latest
|
|
273
|
+
|
|
274
|
+
# Install basic development tools and iptables/ipset
|
|
275
|
+
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
276
|
+
less \
|
|
277
|
+
git \
|
|
278
|
+
procps \
|
|
279
|
+
sudo \
|
|
280
|
+
fzf \
|
|
281
|
+
zsh \
|
|
282
|
+
man-db \
|
|
283
|
+
unzip \
|
|
284
|
+
gnupg2 \
|
|
285
|
+
gh \
|
|
286
|
+
iptables \
|
|
287
|
+
ipset \
|
|
288
|
+
iproute2 \
|
|
289
|
+
dnsutils \
|
|
290
|
+
aggregate \
|
|
291
|
+
jq \
|
|
292
|
+
nano \
|
|
293
|
+
vim \
|
|
294
|
+
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
295
|
+
|
|
296
|
+
# Ensure default node user has access to /usr/local/share
|
|
297
|
+
RUN mkdir -p /usr/local/share/npm-global && \
|
|
298
|
+
chown -R node:node /usr/local/share
|
|
299
|
+
|
|
300
|
+
ARG USERNAME=node
|
|
301
|
+
|
|
302
|
+
# Persist bash history.
|
|
303
|
+
RUN SNIPPET="export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
|
|
304
|
+
&& mkdir /commandhistory \
|
|
305
|
+
&& touch /commandhistory/.bash_history \
|
|
306
|
+
&& chown -R $USERNAME /commandhistory
|
|
307
|
+
|
|
308
|
+
# Set `DEVCONTAINER` environment variable to help with orientation
|
|
309
|
+
ENV DEVCONTAINER=true
|
|
310
|
+
|
|
311
|
+
# Create workspace and config directories and set permissions
|
|
312
|
+
RUN mkdir -p /workspace /home/node/.codebuddy && \
|
|
313
|
+
chown -R node:node /workspace /home/node/.codebuddy
|
|
314
|
+
|
|
315
|
+
WORKDIR /workspace
|
|
316
|
+
|
|
317
|
+
ARG GIT_DELTA_VERSION=0.18.2
|
|
318
|
+
RUN ARCH=$(dpkg --print-architecture) && \
|
|
319
|
+
wget "https://github.com/dandavison/delta/releases/download/${GIT_DELTA_VERSION}/git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb" && \
|
|
320
|
+
sudo dpkg -i "git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb" && \
|
|
321
|
+
rm "git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb"
|
|
322
|
+
|
|
323
|
+
# Set up non-root user
|
|
324
|
+
USER node
|
|
325
|
+
|
|
326
|
+
# Install global packages
|
|
327
|
+
ENV NPM_CONFIG_PREFIX=/usr/local/share/npm-global
|
|
328
|
+
ENV PATH=$PATH:/usr/local/share/npm-global/bin
|
|
329
|
+
|
|
330
|
+
# Set the default shell to zsh rather than sh
|
|
331
|
+
ENV SHELL=/bin/zsh
|
|
332
|
+
|
|
333
|
+
# Set the default editor and visual
|
|
334
|
+
ENV EDITOR=nano
|
|
335
|
+
ENV VISUAL=nano
|
|
336
|
+
|
|
337
|
+
# Default powerline10k theme
|
|
338
|
+
ARG ZSH_IN_DOCKER_VERSION=1.2.0
|
|
339
|
+
RUN sh -c "$(wget -O- https://github.com/deluan/zsh-in-docker/releases/download/v${ZSH_IN_DOCKER_VERSION}/zsh-in-docker.sh)" -- \
|
|
340
|
+
-p git \
|
|
341
|
+
-p fzf \
|
|
342
|
+
-a "source /usr/share/doc/fzf/examples/key-bindings.zsh" \
|
|
343
|
+
-a "source /usr/share/doc/fzf/examples/completion.zsh" \
|
|
344
|
+
-a "export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
|
|
345
|
+
-x
|
|
346
|
+
|
|
347
|
+
# Install CodeBuddy Code (manual installation method - only if not using Dev Containers Feature)
|
|
348
|
+
RUN npm install -g @tencent-ai/codebuddy-code@${CODEBUDDY_CODE_VERSION}
|
|
349
|
+
|
|
350
|
+
# Copy and set up firewall script
|
|
351
|
+
COPY init-firewall.sh /usr/local/bin/
|
|
352
|
+
USER root
|
|
353
|
+
RUN chmod +x /usr/local/bin/init-firewall.sh && \
|
|
354
|
+
echo "node ALL=(root) NOPASSWD: /usr/local/bin/init-firewall.sh" > /etc/sudoers.d/node-firewall && \
|
|
355
|
+
chmod 0440 /etc/sudoers.d/node-firewall
|
|
356
|
+
USER node
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
> **注意:** 若使用此方式,devcontainer.json 中的 `build.args` 需包含 `"CODEBUDDY_CODE_VERSION"` 参数,且 `features` 字段中不应包含 CodeBuddy Code Feature。
|
|
360
|
+
|
|
361
|
+
### 3. init-firewall.sh
|
|
362
|
+
建立网络安全规则。
|
|
363
|
+
|
|
364
|
+
```bash
|
|
365
|
+
#!/bin/bash
|
|
366
|
+
set -euo pipefail # Exit on error, undefined vars, and pipeline failures
|
|
367
|
+
IFS=$'\n\t' # Stricter word splitting
|
|
368
|
+
|
|
369
|
+
# 1. Extract Docker DNS info BEFORE any flushing
|
|
370
|
+
DOCKER_DNS_RULES=$(iptables-save -t nat | grep "127\.0\.0\.11" || true)
|
|
371
|
+
|
|
372
|
+
# Flush existing rules and delete existing ipsets
|
|
373
|
+
iptables -F
|
|
374
|
+
iptables -X
|
|
375
|
+
iptables -t nat -F
|
|
376
|
+
iptables -t nat -X
|
|
377
|
+
iptables -t mangle -F
|
|
378
|
+
iptables -t mangle -X
|
|
379
|
+
ipset destroy allowed-domains 2>/dev/null || true
|
|
380
|
+
|
|
381
|
+
# 2. Selectively restore ONLY internal Docker DNS resolution
|
|
382
|
+
if [ -n "$DOCKER_DNS_RULES" ]; then
|
|
383
|
+
echo "Restoring Docker DNS rules..."
|
|
384
|
+
iptables -t nat -N DOCKER_OUTPUT 2>/dev/null || true
|
|
385
|
+
iptables -t nat -N DOCKER_POSTROUTING 2>/dev/null || true
|
|
386
|
+
echo "$DOCKER_DNS_RULES" | xargs -L 1 iptables -t nat
|
|
387
|
+
else
|
|
388
|
+
echo "No Docker DNS rules to restore"
|
|
389
|
+
fi
|
|
390
|
+
|
|
391
|
+
# First allow DNS and localhost before any restrictions
|
|
392
|
+
# Allow outbound DNS
|
|
393
|
+
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
|
|
394
|
+
# Allow inbound DNS responses
|
|
395
|
+
iptables -A INPUT -p udp --sport 53 -j ACCEPT
|
|
396
|
+
# Allow outbound SSH
|
|
397
|
+
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT
|
|
398
|
+
# Allow inbound SSH responses
|
|
399
|
+
iptables -A INPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
|
|
400
|
+
# Allow localhost
|
|
401
|
+
iptables -A INPUT -i lo -j ACCEPT
|
|
402
|
+
iptables -A OUTPUT -o lo -j ACCEPT
|
|
403
|
+
|
|
404
|
+
# Create ipset with CIDR support
|
|
405
|
+
ipset create allowed-domains hash:net
|
|
406
|
+
|
|
407
|
+
# Fetch GitHub meta information and aggregate + add their IP ranges
|
|
408
|
+
echo "Fetching GitHub IP ranges..."
|
|
409
|
+
gh_ranges=$(curl -s https://api.github.com/meta)
|
|
410
|
+
if [ -z "$gh_ranges" ]; then
|
|
411
|
+
echo "ERROR: Failed to fetch GitHub IP ranges"
|
|
412
|
+
exit 1
|
|
413
|
+
fi
|
|
414
|
+
|
|
415
|
+
if ! echo "$gh_ranges" | jq -e '.web and .api and .git' >/dev/null; then
|
|
416
|
+
echo "ERROR: GitHub API response missing required fields"
|
|
417
|
+
exit 1
|
|
418
|
+
fi
|
|
419
|
+
|
|
420
|
+
echo "Processing GitHub IPs..."
|
|
421
|
+
while read -r cidr; do
|
|
422
|
+
if [[ ! "$cidr" =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}$ ]]; then
|
|
423
|
+
echo "ERROR: Invalid CIDR range from GitHub meta: $cidr"
|
|
424
|
+
exit 1
|
|
425
|
+
fi
|
|
426
|
+
echo "Adding GitHub range $cidr"
|
|
427
|
+
ipset add allowed-domains "$cidr"
|
|
428
|
+
done < <(echo "$gh_ranges" | jq -r '(.web + .api + .git)[]' | aggregate -q)
|
|
429
|
+
|
|
430
|
+
# Resolve and add other allowed domains
|
|
431
|
+
for domain in \
|
|
432
|
+
"registry.npmjs.org" \
|
|
433
|
+
"copilot.tencent.com" \
|
|
434
|
+
"sentry.io" \
|
|
435
|
+
"marketplace.visualstudio.com" \
|
|
436
|
+
"vscode.blob.core.windows.net" \
|
|
437
|
+
"update.code.visualstudio.com"; do
|
|
438
|
+
echo "Resolving $domain..."
|
|
439
|
+
ips=$(dig +noall +answer A "$domain" | awk '$4 == "A" {print $5}')
|
|
440
|
+
if [ -z "$ips" ]; then
|
|
441
|
+
echo "ERROR: Failed to resolve $domain"
|
|
442
|
+
exit 1
|
|
443
|
+
fi
|
|
444
|
+
|
|
445
|
+
while read -r ip; do
|
|
446
|
+
if [[ ! "$ip" =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
|
447
|
+
echo "ERROR: Invalid IP from DNS for $domain: $ip"
|
|
448
|
+
exit 1
|
|
449
|
+
fi
|
|
450
|
+
echo "Adding $ip for $domain"
|
|
451
|
+
ipset add allowed-domains "$ip"
|
|
452
|
+
done < <(echo "$ips")
|
|
453
|
+
done
|
|
454
|
+
|
|
455
|
+
# Get host IP from default route
|
|
456
|
+
HOST_IP=$(ip route | grep default | cut -d" " -f3)
|
|
457
|
+
if [ -z "$HOST_IP" ]; then
|
|
458
|
+
echo "ERROR: Failed to detect host IP"
|
|
459
|
+
exit 1
|
|
460
|
+
fi
|
|
461
|
+
|
|
462
|
+
HOST_NETWORK=$(echo "$HOST_IP" | sed "s/\.[0-9]*$/.0\/24/")
|
|
463
|
+
echo "Host network detected as: $HOST_NETWORK"
|
|
464
|
+
|
|
465
|
+
# Set up remaining iptables rules
|
|
466
|
+
iptables -A INPUT -s "$HOST_NETWORK" -j ACCEPT
|
|
467
|
+
iptables -A OUTPUT -d "$HOST_NETWORK" -j ACCEPT
|
|
468
|
+
|
|
469
|
+
# Set default policies to DROP first
|
|
470
|
+
iptables -P INPUT DROP
|
|
471
|
+
iptables -P FORWARD DROP
|
|
472
|
+
iptables -P OUTPUT DROP
|
|
473
|
+
|
|
474
|
+
# First allow established connections for already approved traffic
|
|
475
|
+
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
|
|
476
|
+
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
|
|
477
|
+
|
|
478
|
+
# Then allow only specific outbound traffic to allowed domains
|
|
479
|
+
iptables -A OUTPUT -m set --match-set allowed-domains dst -j ACCEPT
|
|
480
|
+
|
|
481
|
+
# Explicitly REJECT all other outbound traffic for immediate feedback
|
|
482
|
+
iptables -A OUTPUT -j REJECT --reject-with icmp-admin-prohibited
|
|
483
|
+
|
|
484
|
+
echo "Firewall configuration complete"
|
|
485
|
+
echo "Verifying firewall rules..."
|
|
486
|
+
if curl --connect-timeout 5 https://example.com >/dev/null 2>&1; then
|
|
487
|
+
echo "ERROR: Firewall verification failed - was able to reach https://example.com"
|
|
488
|
+
exit 1
|
|
489
|
+
else
|
|
490
|
+
echo "Firewall verification passed - unable to reach https://example.com as expected"
|
|
491
|
+
fi
|
|
492
|
+
|
|
493
|
+
# Verify GitHub API access
|
|
494
|
+
if ! curl --connect-timeout 5 https://api.github.com/zen >/dev/null 2>&1; then
|
|
495
|
+
echo "ERROR: Firewall verification failed - unable to reach https://api.github.com"
|
|
496
|
+
exit 1
|
|
497
|
+
else
|
|
498
|
+
echo "Firewall verification passed - able to reach https://api.github.com as expected"
|
|
499
|
+
fi
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
---
|
|
503
|
+
|
|
504
|
+
## 安全特性
|
|
505
|
+
|
|
506
|
+
容器实现了**多层安全防护**:
|
|
507
|
+
|
|
508
|
+
- **精确访问控制**:限制出站连接到白名单域名(npm registry、GitHub、CodeBuddy API 等)
|
|
509
|
+
- **允许的出站连接**:防火墙允许出站 DNS 和 SSH 连接
|
|
510
|
+
- **默认拒绝策略**:阻止所有其他外部网络访问
|
|
511
|
+
- **启动验证**:容器初始化时验证防火墙规则
|
|
512
|
+
- **隔离**:创建与主系统分离的安全开发环境
|
|
513
|
+
|
|
514
|
+
### 重要安全提示
|
|
515
|
+
> 虽然开发容器提供了实质性的保护,但没有系统能够完全免疫所有攻击。当使用 `-y` (或 `--dangerously-skip-permissions`) 执行时,开发容器无法阻止恶意项目窃取容器内可访问的任何内容,包括 CodeBuddy Code 凭证。**我们建议仅在处理可信仓库时使用开发容器。** 始终保持良好的安全实践并监控 CodeBuddy 的活动。
|
|
516
|
+
|
|
517
|
+
### 无人值守操作
|
|
518
|
+
容器增强的安全措施(隔离和防火墙规则)允许您运行 `codebuddy -y` (或 `codebuddy --dangerously-skip-permissions`) 来绕过权限提示,实现无人值守操作。
|
|
519
|
+
|
|
520
|
+
---
|
|
521
|
+
|
|
522
|
+
## 自定义选项
|
|
523
|
+
|
|
524
|
+
开发容器配置设计灵活,可根据需求调整:
|
|
525
|
+
|
|
526
|
+
- 根据工作流添加或删除 VS Code 扩展
|
|
527
|
+
- 为不同硬件环境调整资源分配
|
|
528
|
+
- 调整网络访问权限
|
|
529
|
+
- 自定义 shell 配置和开发工具
|
|
530
|
+
|
|
531
|
+
---
|
|
532
|
+
|
|
533
|
+
## 使用场景
|
|
534
|
+
|
|
535
|
+
### 1. 安全的客户项目开发
|
|
536
|
+
使用开发容器隔离不同客户的项目,确保代码和凭证永不混合。
|
|
537
|
+
|
|
538
|
+
### 2. 团队快速入职
|
|
539
|
+
新团队成员可在几分钟内获得完全配置的开发环境,所有必要的工具和设置都已预装。
|
|
540
|
+
|
|
541
|
+
### 3. 一致的 CI/CD 环境
|
|
542
|
+
在 CI/CD 流水线中镜像您的开发容器配置,确保开发和生产环境匹配。
|
|
543
|
+
|
|
544
|
+
---
|
|
545
|
+
|
|
546
|
+
## 相关资源
|
|
547
|
+
|
|
548
|
+
- [VS Code 开发容器文档](https://code.visualstudio.com/docs/devcontainers/containers)
|
|
549
|
+
- [Bash 沙箱](./bash-sandboxing.md)
|
|
550
|
+
- [设置配置](./settings.md)
|
|
551
|
+
- [GitLab CI/CD 集成](./gitlab-ci-cd.md)
|
|
552
|
+
- 📖 [Official Dev Containers Docs](https://containers.dev/)
|
|
553
|
+
- 🔗 [devcontainers-contrib/features](https://github.com/devcontainers-contrib/features)
|