PythonWoods/zenzic-action
GitHub: PythonWoods/zenzic-action
Zenzic 的官方 GitHub Action,在 CI 中对 Markdown/MDX 文档执行确定性完整性检查与 SAST 安全扫描,并将结果集成到 GitHub Code Scanning 和 PR 批注中。
Stars: 1 | Forks: 0
面向 Markdown/MDX 图的确定性文档完整性引擎与 SAST。
在 CI 中运行 Zenzic SAST 和图完整性分析——直接在 GitHub Code Scanning 中展示结果,无需阅读日志。 **退出码契约 (ADR-075)。** 该封装器原样传播 Zenzic 的退出码,不进行重映射。退出码 1(质量)遵循 `fail-on-error` 设置。退出码 2(凭证)和退出码 3(路径遍历)无论 `fail-on-error: false` 或 `--exit-zero` 设置如何,都会终止作业——安全发现绝不会在执行边界处被抑制。 ## 核心功能 | 功能 | 类别 | 描述 | |---|---|---| | **安全扫描 (SAST)** | 安全 | 检测硬编码 token (Z201) 和路径遍历 (Z202/Z203);退出码 2/3 在 `fail-on-error: false` 下依然生效 | | **图拓扑分析** | 拓扑 | 虚拟站点地图 (VSM) 验证跨文件链接、孤立页面和失效的导航图节点 | | **确定性 CI/CD 执行** | CI/CD | 零 DBT 质量门禁,确保跨构建环境的按位可复现执行 | | **零配置安装** | 执行 | `uvx zenzic` —— runner 上无需 Python 工具链 | | **SARIF 输出** | 集成 | 发现结果直接输入至 GitHub Code Scanning | | **主权审计模式** | 安全 | `audit: "true"` 绕过抑制规则,展示未过滤的文档图状态 | | **PR 批注** | 反馈 | 在 diff 上进行内联批注,按严重性进行颜色编码 | | **版本锁定** | 治理 | 锁定到确切版本(例如 `0.25.0`),实现确定性、可复现的 CI 门禁 | ## 快速开始 最小化配置——零 Python 设置,一步即可将 SARIF 发送到 Code Scanning: ``` - uses: actions/checkout@v4 - name: Run Zenzic Documentation Quality Gate uses: PythonWoods/zenzic-action@v2 with: version: "0.27.0" format: sarif upload-sarif: "true" permissions: contents: read security-events: write ``` 在你的仓库根目录放置一个 `.zenzic.toml`,该 action 会自动识别它——无需提供 `config-file` 输入。如果你的文档不在默认的 `docs/` 目录下,请运行一次 `zenzic init` 来生成配置。 有关高级配置(配置发现、主权覆盖、质量门禁评分、每晚审计),请参阅 [Zenzic Action 文档](https://zenzic.dev/docs/reference/zenzic-action)。 ## 🔍 可视化反馈 Zenzic Action 直接在你工作的地方展示结果——无需深入翻阅 CI 日志。
标签:GitHub Action, Markdown, SAST, 云安全监控, 图数据库, 文档完整性, 盲注攻击, 逆向工具, 静态分析