HoraDomu/Atheon

GitHub: HoraDomu/Atheon

Atheon 是一个社区驱动的通用模式匹配引擎,通过可共享的规则库对任意输入文本进行多领域模式检测并精确定位匹配项。

Stars: 3 | Forks: 3

Atheon

![Go](https://img.shields.io/badge/Go-1.21%2B-00ADD8) ![License](https://img.shields.io/badge/license-MIT-green) ![Patterns](https://img.shields.io/badge/patterns-14-blueviolet) Atheon 是一个社区驱动的模式匹配引擎。你定义你要寻找的目标,把它指向任何东西。它会找出每一个匹配项,并准确告诉你它们的位置,每次都会为每条规则返回明确的 `true` 或 `false`。 ## Atheon 是什么 Atheon 是一个围绕单一理念构建的 CLI 工具:**任何模式,任何领域,任何输入。** 它不在乎你是在扫描泄露的凭证、患者标识符、金融账号、合规范围代码中的违禁字符串,还是其他任何你可以描述为规则的东西。只要模式是清晰的——只要它能返回 true 或 false——Atheon 就能运行它。 引擎本身刻意保持极简。它对“什么更重要”没有任何预设倾向。这些知识存在于模式之中,而模式来自于社区。 ## 使命 Atheon 并不想成为下一个大型密钥扫描器。它不追求成为一个庞然大物。它致力于成为一个**平台**。 理念是这样的:一个团队的开发人员正在处理敏感数据。他们为 Atheon 编写了一个模式,将其贡献出来,并在下一个版本中发布。现在,每个使用 Atheon 的用户都注册了该模式。处于类似情况的下一个团队不必从零开始构建——它已经在那里了。 这就是 Atheon:一个社区驱动的引擎,在这里,你、我以及其他任何人都可以添加让每个用户受益的模式。我们的目标是建立一个涵盖各个领域的规则库——只要文本中包含重要的东西——这个库不是由一家公司建立的,而是由每一个使用它的人共同构建的。 **安全。合规。金融。医疗保健。法律。运营。游戏。一切。** 只要你能描述出规则,Atheon 就能运行它。 ## 查看实际运行效果 [![在 YouTube 上观看](https://img.youtube.com/vi/4vlepIzRGqw/maxresdefault.jpg)](https://youtu.be/4vlepIzRGqw) 跳至 **9:36** 观看现场演示,或观看完整视频以了解 Atheon 的核心内容。 ## 让一切变为现实的场景 一名开发人员完成了一个冲刺并推送了一个配置文件。隐藏在三周前调试会话的注释中的,是一个生产环境的 API key。提交顺利通过了。流水线检查合格。两个月后,有人注意到异常的账单活动。 接入 pre-push hook 的 Atheon: ``` $ atheon ./ openai-api-key config/app.yaml:47 # de****4f59 1 finding(s) scanned 14 file(s) 22.1 KB 3ms ``` 退出代码 `1`。推送从未发生。密钥从未离开过本机。 就是这样。这就是这款产品。 ## 安装 **Homebrew (macOS / Linux):** ``` brew tap HoraDomu/atheon brew install atheon ``` **Scoop (Windows):** ``` scoop bucket add atheon https://github.com/HoraDomu/scoop-atheon scoop install atheon ``` **手动安装:** 从 [Releases](https://github.com/HoraDomu/Atheon/releases/latest) 下载适合你平台的二进制文件。无需安装,没有 runtime,也没有依赖项。将其放入你的 PATH 中即可运行。 **从源码构建:** ``` go build -o atheon . ``` ## 用法 ``` atheon scan a directory or file atheon --file scan a single file explicitly atheon --env scan all environment variables atheon --json output findings as JSON atheon list list every loaded pattern atheon --help show help ``` 支持管道符 — 传入 `-` 以从 stdin 读取: ``` cat file.txt | atheon - git diff | atheon - ``` 退出代码 `0` = 干净无痕。退出代码 `1` = 有发现。默认对 CI 友好。 **跨平台:** 原生支持 Windows、macOS(Intel + Apple Silicon)和 Linux 的二进制文件。没有 runtime,没有依赖项。 **忽略规则** 目录扫描会自动遵循 `.gitignore`。在你的项目根目录放置一个 `.atheonignore` 文件,可以排除尚未覆盖的任何内容——测试夹具、生成的文件、`.env` 文件: ``` # .atheonignore test/ *.generated.go .env ``` 要仅抑制单行而不忽略整个文件,请在该行的任意位置添加 `atheon:ignore`: ``` DEBUG_KEY=sk-fake-key-for-testing # atheon:ignore ``` **JSON 输出** 使用 `--json` 可与其他工具集成,或在此基础上构建你自己的 pipeline: ``` atheon --json ./ ``` 输出是一个 JSON 数组,每个发现结果对应一个对象: ``` [{"pattern":"openai-api-key","file":"config/app.yaml","line":47,"match":"# debug key: sk-..."}] ``` **环境扫描** `--env` 会扫描当前环境中的每个变量——这在 CI 中非常有用,可用于捕获在 runtime 注入的密钥,而不是存储在文件中的密钥: ``` atheon --env ``` **Pre-commit / pre-push hook** 将 Atheon 放入 git hook 中,以便在不良提交离开你的机器之前阻止它们: ``` # .git/hooks/pre-push #!/bin/sh atheon ./ ``` 或者将其接入你已经在使用的任何 hook 运行器(pre-commit、Husky、Lefthook)。只要有任何发现,Atheon 就会返回退出代码 `1`,这正是 hook 中止操作所需的全部条件。 ## 版本发布 新版本在**每个月的 10 号和 21 号**发布。发布过程完全自动化——打上版本标签后会自动构建所有平台的二进制文件,并自动发布到 GitHub Releases、Homebrew 和 Scoop。 最新版本:[github.com/HoraDomu/Atheon/releases/latest](https://github.com/HoraDomu/Atheon/releases/latest) ## 联系方式 如有任何问题、模式请求或其他事宜: **邮箱:** [dommcpro@gmail.com](mailto:dommcpro@gmail.com) ## 许可证 MIT 及附加条款 版权所有 © 2026 Dominick Yanez 你可以自由地 fork、clone、学习、修改以供个人或内部使用,并鼓励将模式或错误修复贡献回馈给社区。 你不可以做的事情: - 以你自己的独立产品名义,在不同的名称或品牌下发布本软件或其任何衍生作品 - 在任何副本、fork 或衍生作品中删除或隐藏作者的姓名或版权声明 如需超出此范围的许可,请联系:[dommcpro@gmail.com](mailto:dommcpro@gmail.com) 请查看完整的 [LICENSE](./LICENSE) 文件以了解完整条款。
标签:EVTX分析, Go, Ruby工具, StruQ, 云计算, 动态分析, 对抗攻击, 敏感信息检测, 数据扫描, 文档结构分析, 日志审计, 模式匹配引擎, 规则引擎