导航菜单
切换导航,有登录、外观设置等选项。平台方面,涵盖AI代码创作(如GitHub Copilot、GitHub Spark等)、开发者工作流(如Actions、Codespaces等)、应用程序安全(如GitHub Advanced Security等)、探索(如为何选择GitHub、文档等)。解决方案按公司规模(企业版、中小团队版等)、按用例(应用现代化、DevSecOps等)、按行业(医疗保健、金融服务等)分类。资源按主题探索(AI、软件开发等)、按类型探索(客户案例、活动与网络研讨会等)、支持与服务(文档、客户支持等)分类。开源包括社区(GitHub Sponsors)、项目(Security Lab、Maintainer Community等)、仓库(主题、热门趋势等)。企业版有企业解决方案(企业平台)和可用附加组件(GitHub Advanced Security、Copilot for Business等)。还有定价、搜索、提供反馈、保存的搜索等功能。
arnica/depsguard仓库
有通知、分叉、加星等操作,包含代码、问题、拉取请求等导航选项。主分支有分支和标签,展示文件夹和文件,包括最新提交、历史记录等。
depsguard介绍
可保护依赖项免受供应链攻击,是单静态二进制文件,零Rust crate依赖,由arnica提供。目录包含概述、安装、使用方法等内容。
概述
DepsGuard会查找npm、pnpm、yarn、bun和uv,读取配置文件并与推荐设置比较,可交互式应用修复,还扫描Renovate和Dependabot配置,不运行包安装操作,仅编辑批准的配置文件并写入备份。主要特性有交互式TUI、scan子命令、restore子命令、跨平台、无捆绑第三方Rust crate。技术栈涉及语言(Rust,最低支持版本1.74)、CLI/TUI、配置逻辑、网站等方面。
安装
预构建二进制文件包含多个平台的存档,下载解压后添加到PATH,可用匹配的.sha256文件验证完整性。按平台安装有Linux(Debian/Ubuntu通过APT)、macOS(Intel/Apple Silicon)、Windows(WinGet、Scoop等)等方式。也可通过crates.io安装,需要带有cargo的Rust工具链。包管理器方面,若组织提供DepsGuard,按说明操作,设置或自动化渠道属于维护者文档。还可从源代码构建,需要Rust 1.74+。
使用方法
有多种命令,如depsguard(交互式扫描、选择修复选项并应用)、depsguard scan(仅报告)等。使用步骤包括安装、运行、导航与选择、预览、应用、重新扫描、恢复等。注意某些设置有最低版本要求。
检查内容
对不同管理器(npm、pnpm、yarn等)的配置设置(如min-release-age、ignore-scripts等)进行检查,明确目标和原因。
配置文件位置
不同管理器在Linux、macOS、Windows的配置文件位置不同。用户级配置文件从标准位置读取,仓库级配置通过搜索发现,会跳过已知大目录。
紧急安全修复
若修补版本更新,可添加狭窄例外,安装修复后移除。优先使用特定包的例外,绕过冷却期前要检查CVE影响、是否有旧版本可用,升级后移除临时例外。不同管理器有不同绕过冷却期的方法。
备份与恢复
DepsGuard在修改文件前将备份写入~/.depsguard/backups/,可运行depsguard restore列出备份并恢复。
工作原理
涉及多个文件(main.rs、term.rs等),零第三方crate,颜色使用ANSI序列,支持Windows现代终端。
故障排除
针对不同症状(如depsguard: command not found、写入配置时权限错误等)有相应解决方法。
帮助与反馈
可报告bug或请求功能、报告安全漏洞,贡献者开发工作流程详见AGENTS.md。
相关链接
Dependency Cooldowns与DepsGuard互补,前者关注minimum-release-age冷却期,涵盖更广泛生态系统,后者涵盖npm/pnpm/yarn/bun/uv及Renovate/Dependabot,添加其他强化设置。
许可证
为MIT。