chanderraja/sift

GitHub: chanderraja/sift

Sift 是 SonarCloud 的增强型问题仪表盘,弥补了官方在批量筛选、导出和离线分类方面的短板,并支持与大语言模型协同进行修复规划。

Stars: 0 | Forks: 0

# Sift **状态:** 阶段 1–10 已合并到 `master` 分支。**已在 [sift-red.vercel.app](https://sift-red.vercel.app) 上线。** 完整的 12 阶段计划请参见 [`IMPLEMENTATION.md`](./IMPLEMENTATION.md)。下一阶段为阶段 11(设置、主题、优化)。 ## 为什么做这个项目 SonarCloud 非常擅长发现问题,但却有意限制问题的导出。当你在 IDE 中一次只修复一个问题时,这没什么问题;但当你需要对积压问题进行分类、向团队作简报,或者要求 LLM 起草修复计划时,这就很不方便了。Sift 填补了这一空白,并且从不会将你的 token 持久化保存在服务器上。 完整的产品规范请参见 [`SPEC.md`](./SPEC.md),模块化架构请参见 [`ARCHITECTURE.md`](./ARCHITECTURE.md)。 ## 隐私声明 - 你的 SonarCloud token 绝不会持久化保存在服务器上。 - 位于 SonarCloud API 前端的代理是**无状态的**:不记录 token、请求体或请求头;不进行缓存;没有任何持久化操作。代码位于 [`proxy/`](./proxy) 目录下,包含大约 50 行与供应商无关的逻辑以及轻量的平台适配器。 - 该应用附带零个第三方脚本:没有分析工具,没有错误报告器。已通过 CI 验证。 - 完整的威胁模型位于 [`SECURITY.md`](./SECURITY.md) 中。 ## 状态与路线图 Sift 正按照 [`IMPLEMENTATION.md`](./IMPLEMENTATION.md) 中规划的 12 个阶段进行构建。当阶段 12 完成时,即发布 v1.0 版本。v1.0 之后的路线图项目(SonarQube Server 支持、已保存的过滤器预设、趋势视图)在 [`SPEC.md`](./SPEC.md) 的第 15 节中进行跟踪。 ## 快速开始(面向开发者) 需要安装 [pnpm](https://pnpm.io) 和 Node 20 LTS。 ``` pnpm install pnpm dev # local dev server pnpm test # vitest, watch with pnpm test:watch pnpm e2e # playwright against the built app pnpm lint # eslint pnpm typecheck # tsc --noEmit pnpm build # production bundle ``` ## 自托管 规范实例运行在 Vercel 上。适用于 Cloudflare Workers 的代理适配器已单独编写文档。详细的自托管说明将随 v1.0 版本一同发布。 ### 构建时配置(环境变量) 自托管用户可以在不派生代码的情况下,在构建时覆盖冷启动默认值。在你的托管平台的环境变量设置中配置这些变量(例如:`vercel env add VITE_DEFAULT_STORAGE_MODE production`)。用户的选择如果被持久化保存,将始终优先于这些默认值;这些设置仅影响首次访问的用户。 | 变量 | 值 | 默认值 | 作用 | | --------------------------- | ----------------------------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `VITE_DEFAULT_STORAGE_MODE` | `local` / `session` / `cookie` / `memory` | `local` | SPA 默认保存 SonarCloud token 的位置。对于在共享机器部署且不希望 token 在关闭标签页后继续存在的场景,请选择 `session`。参见 [`SECURITY.md`](./SECURITY.md#token-storage-modes)。 | | `VITE_DEFAULT_REGION` | `eu` / `us` | `eu` | 为新用户预先选择的 SonarCloud 区域。对于位于 `sonarqube.us` 上的组织,请选择 `us`。 | ## 贡献指南 参见 [`CONTRIBUTING.md`](./CONTRIBUTING.md)。简而言之:主干开发,约定式提交,TDD,小型 PR。 ## 许可证 MIT — 参见 [`LICENSE`](./LICENSE)。引入的贡献按相同条款授权(参见 `CONTRIBUTING.md`)。项目名称和标志不受代码许可证涵盖;参见 [`TRADEMARK.md`](./TRADEMARK.md)。
标签:DevSecOps, DFIR, ESLint, LLM辅助修复, OSV, Playwright, pnpm, PoC框架, SonarCloud, TypeScript, Vercel, Vite, Vitest, Web安全, 上游代理, 云安全监控, 仪表盘, 前端, 单页应用, 威胁情报, 安全修复规划, 安全插件, 安全热点, 开发者工具, 开源框架, 持续集成, 无状态代理, 浏览器应用, 特征检测, 离线分流, 程序员工具, 网络安全, 自动化攻击, 蓝队分析, 质量门禁, 问题导出, 隐私保护, 静态分析, 项目分流