news 2026/8/29 22:08:53

dcg快速上手教程:一行命令让Claude Code不再误删你的项目文件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
dcg快速上手教程:一行命令让Claude Code不再误删你的项目文件

dcg快速上手教程:一行命令让Claude Code不再误删你的项目文件

【免费下载链接】destructive_command_guardThe Destructive Command Guard (dcg) is for blocking dangerous git and shell commands from being executed by agents.项目地址: https://gitcode.com/GitHub_Trending/de/destructive_command_guard

如果你正在用 Claude Code 这类 AI 编程智能体写代码,那么你一定听说过dcg(Destructive Command Guard,危险命令守卫)——一个专为 AI Agent 打造的危险命令拦截工具。它像一个安全钩子(Hook)插在智能体和系统之间,在git reset --hardrm -rf ./srcDROP TABLE这类破坏性命令真正执行之前就将其拦截,并给出原因说明和更安全的替代建议。整个过程只需一行命令安装,延迟低于 1 毫秒,几乎不占性能。

本文是一份面向新手的 dcg 快速上手教程:从 3 分钟安装、到看懂拦截提示、再到按需开启 50+ 安全包,带你完整配置好这套「AI 误删文件保险」。

为什么你需要 dcg?AI 智能体的「手滑」有多可怕

AI 编程智能体效率极高,但它们偶尔会执行灾难性命令,几秒钟内就能毁掉你几个小时未提交的工作:

典型事故后果
git reset --hard所有未提交的修改直接消失
rm -rf ./src项目源码目录被递归删除
git push --force覆盖远端共享分支历史
docker system prune/DROP TABLE容器数据或数据库数据不可逆丢失

dcg 的解法:它注册为智能体的 PreToolUse 钩子,在每条 shell 命令执行前先做检查——命中危险模式就阻止执行,并附上清晰的解释和更安全的替代方案;安全命令则静默放行,你几乎感觉不到它的存在。

它支持 Claude Code、Codex CLI、Gemini CLI、GitHub Copilot CLI、VS Code Copilot Chat、Cursor、Grok、Posit Assistant 等主流智能体,安装时会自动检测并配置你机器上已有的 Agent。

它是怎么工作的?四道过滤,毫秒级放行

dcg 内部是一条轻量流水线(对新手只需知道结论):

  1. 解析:从智能体收到的 JSON 中取出即将执行的命令;
  2. 规范化/usr/bin/git reset --hard会被识别为git reset --hard
  3. 快速拒绝:不含gitrm等关键词的命令(如lscargo build)直接放行,99% 以上命令走这条快车道;
  4. 模式匹配:先查安全白名单(如git checkout -b建分支),再查危险黑名单,命中即拦截。

两个特别贴心的设计:

  • 上下文感知grep "rm -rf"里出现危险字样只是数据,不会被误拦;真正会被执行的rm -rf /才拦。
  • 不只拦命令,还拦内嵌脚本python -c "shutil.rmtree(...)"、heredoc 里的危险代码同样会被扫描。

一键安装步骤(最快 3 分钟)

🐧Linux / macOS / WSL:克隆仓库后运行官方安装脚本即可,脚本会自动下载对应平台的二进制、校验 SHA256 签名,并自动为检测到的 AI 智能体配置钩子。

git clone https://gitcode.com/GitHub_Trending/de/destructive_command_guard cd destructive_command_guard bash install.sh --easy-mode

🪟Windows(原生 PowerShell):在仓库内执行安装脚本,自动校验 SHA256 并配置钩子,del /srd /sRemove-Item -Recurse等 Windows 危险命令开箱即拦:

powershell -File install.ps1 -EasyMode -Verify

💡 安装脚本入口分别是 install.sh 和 install.ps1;装完后执行dcg doctor可一键体检所有钩子配置是否正常。

安装完成后,重启你的智能体(如退出并重新打开 Claude Code)使钩子生效。至此,一行命令的保护已经就位。

眼见为实:AI 尝试误删时你会看到什么

当 Agent 想执行git reset --hard HEAD~5时,终端会弹出这样的拦截面板:

════════════════════════════════════════════════════════════ BLOCKED dcg ──────────────────────────────────────────────────────────── Reason: git reset --hard destroys uncommitted changes Command: git reset --hard HEAD~5 Tip: Consider using 'git stash' first to save your changes. ════════════════════════════════════════════════════════════

命令没有执行,且 Agent 会收到「先git stash保存更改」的建议,通常会自动改走安全路线。

想亲手体验?无需真的执行任何危险命令,两条诊断指令就够:

# 模拟评估一条命令(不执行),了解它会不会被拦 dcg test "rm -rf ./build" # 追问「为什么拦」:查看命中的规则包、原因和安全建议 dcg explain "git reset --hard HEAD"

最快配置方法:按需开启 50+ 安全包

默认(无配置文件)时,dcg 已强制启用最核心的三块防线:core.git(破坏性 git 命令)、core.filesystem(递归删除)和system.disk(磁盘级操作)。

要保护数据库、K8s、Docker、云资源等,只需在~/.config/dcg/config.toml中加一段配置:

[packs] enabled = [ "database.postgresql", # 拦截 DROP TABLE、TRUNCATE "kubernetes.kubectl", # 拦截 kubectl delete namespace "cloud.aws", # 拦截 aws ec2 terminate-instances "containers.docker", # 拦截 docker system prune ]

📦 全部 50+ 安全包覆盖数据库、容器、Kubernetes、云厂商、CDN、CI/CD、密钥管理、消息队列、监控、支付、Windows 原生命令等类别,完整清单见 docs/packs/README.md。核心 git 拦截规则的实现可参考 src/packs/core/git.rs。

配置优先级(从高到低):命令行参数 → 环境变量 → 用户配置~/.config/dcg/config.toml→ 系统配置,细节见 docs/configuration.md。

命令被拦但确实要执行?三条合规出路

dcg 不是一堵死墙,为「明知故犯」的操作留了逃生通道:

方法适用场景用法
临时放行码一次性运维操作拦截信息中会给出 6 位短码,执行dcg allow-once <code>即可临时放行(24 小时过期)
永久白名单固定工作流dcg allowlist add core.git:reset-hard -r "原因说明"
环境变量绕过紧急情况DCG_BYPASS=1 <命令>(慎用)

日常更推荐临时放行码:既留痕又安全,且码与具体命令一一绑定,过期自动清理。

常见问题 FAQ

Q:它会拖慢我的开发速度吗?不会。快速拒绝过滤器让 99% 的普通命令在微秒级放行,典型命令整体延迟低于 1 毫秒,终端里完全无感。

Q:为什么我grep "git reset --hard"文档没有被拦?这是特性不是 Bug——dcg 的上下文分类器能区分「数据中的危险字样」和「真正会执行的危险命令」,因此误报率很低。

Q:它能防住黑客吗?不能。dcg 的设计目标是防护「善意但会犯错」的 AI 智能体(以及手滑的你),属于防御层而非对抗恶意攻击的边界。日常仍建议配合勤 commit、勤备份。

Q:支持哪些智能体?完整的支持矩阵与按智能体定制策略(信任级别、独立白名单)见 docs/agents.md。

Q:想卸载怎么办?仓库提供 uninstall.sh(macOS/Linux)与 uninstall.ps1(Windows),会自动移除 dcg 的钩子、二进制和配置,不影响其他工具。

写在最后

给 AI 智能体「上保险」的最佳时机是事故发生之前。花 3 分钟跑完上面两步安装,你就拥有了一个默认拦截破坏性 git/文件命令、可按需扩展到 50+ 领域的守护进程——从此 Claude Code 再「手滑」,你的项目文件也安然无恙。🛡️

【免费下载链接】destructive_command_guardThe Destructive Command Guard (dcg) is for blocking dangerous git and shell commands from being executed by agents.项目地址: https://gitcode.com/GitHub_Trending/de/destructive_command_guard

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/29 22:07:21

程序员中医之腰椎间盘突出的中医牵引与按摩

15-腰椎间盘突出的中医牵引与按摩 坐了一天&#xff0c;下班的时候腰疼得直不起来&#xff0c;有时候还带着一条腿麻、疼&#xff0c;从屁股一直疼到小腿&#xff0c;咳嗽、打喷嚏的时候疼得更厉害&#xff0c;晚上睡觉翻个身都疼。去医院拍个CT或MRI&#xff0c;报告上写着&qu…

作者头像 李华
网站建设 2026/8/29 22:03:15

Crawl4AI 实战指南:从网页采集到 LLM 就绪数据的完整路径

Crawl4AI 实战指南&#xff1a;从网页采集到 LLM 就绪数据的完整路径 【免费下载链接】crawl4ai &#x1f680;&#x1f916; Crawl4AI: Open-source LLM Friendly Web Crawler & Scraper. Dont be shy, join here: https://discord.gg/jP8KfhDhyN 项目地址: https://git…

作者头像 李华
网站建设 2026/8/29 22:02:12

ai文章怎么去掉ai痕迹?改完AI味还要复查AIGC检测和重复率

ai文章怎么去掉ai痕迹&#xff1f;改完AI味还要复查AIGC检测和重复率 一篇文章读起来每句话都没错&#xff0c;但开头总是“随着”&#xff0c;中间总是“首先、其次”&#xff0c;结尾一定是“综上所述”。作者把这些词删了&#xff0c;再测AIGC疑似度&#xff0c;结果变化不…

作者头像 李华
网站建设 2026/8/29 22:01:23

存储过程实战指南:从封装SQL到跨数据库迁移

1. 存储过程&#xff1a;数据库里的“预制菜”如果你经常和数据库打交道&#xff0c;尤其是处理一些重复性高、逻辑复杂的业务&#xff0c;比如月底对账、批量数据清洗、或者生成复杂的报表&#xff0c;你肯定对写一堆又长又臭的SQL脚本感到头疼。每次都要从头写&#xff0c;容…

作者头像 李华
网站建设 2026/8/29 21:58:39

Godot Engine 动画速度控制:让角色动作跟上游戏节奏

Godot Engine 动画速度控制&#xff1a;让角色动作跟上游戏节奏 【免费下载链接】godot Godot Engine – Multi-platform 2D and 3D game engine 项目地址: https://gitcode.com/GitHub_Trending/go/godot 角色冲刺太快、技能前摇太慢&#xff0c;很多时候不需要重做动画…

作者头像 李华