公开记录
软件健康报告模式 0.27.0 · 指标 1.14.0 · 2026-08-02 04:24 UTC

SagerNet / sing-box

The universal proxy platform

Go自定义许可证★ 36,636 星标⑂ 4,382 复刻始于 2022年6月在 GitHub 上查看 ↗

SagerNet/sing-box 的健康指数为 100 分中的 73 分,处于「良好」区间。 其得分最高的类别是Vitality(95/100),最低的是Security(46/100)。 最近一次更新在 1 天前。 近期的大部分工作由 1 位贡献者完成。

73
总分 / 100
良好

软件健康指数

指标归入加权类别,统一采用 1–100 量表。总体分先取类别加权平均;当公开证据触发高风险司法辖区政策时,评级会按政策调整,并设置 49(有风险)的上限。AI 就绪度不计入总体分。

73
优秀85-100堪称典范;基本满足所有检验标准
良好70-84健康;仅有轻微不足
中等50-69可接受,但存在明显不足;建议进行审查
存在风险30-49存在重大薄弱环节;采用时应保持审慎
危急1-29问题严重(项目被弃置、仅有单一维护者、缺乏基本工程规范)
活力社区与采用可持续性与治理工程质量安全AI 就绪度

评分画像

每条轴代表一个类别。形状比平均值更重要——健康的对象会填满整个图形,而“一峰一谷”式画像意味着某一维度的优势正掩盖另一维度的风险。

所有权

Project S组织
2,399 关注者96 个公开仓库始于 2021年4月

该仓库由组织支持——共同承担、可问责的托管责任,可延续于任何单一维护者之后。

软件包生态系统

注册表软件包版本月下载量版本数最近发布
Gogithub.com/sagernet/sing-boxv1.13.15-5613 天前

按类别列示的指标

活力

项目是否仍有生命——是否仍在编写代码,是否仍在发布版本?

95优秀 · 占总体的 22%
评分方式
36/36推送新近度 — 最近一次推送于 1 天前
33.9/36提交节奏 — 52 周中有 49 周有提交
18/18提交量 — 最近一年 688 次提交
10/10OpenSSF Scorecard:Maintained — 30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
所用输入
commits_last_year688
human_commit_share1
days_since_last_push1
active_weeks_last_year49

发布纪律

90优秀
评分方式
27/27有发布版本 — 已发布 100 个发布版本
36/36发布时效 — 最近一次发布版本于 1 天前
27/27发布节奏 — 约每 1.7 天发布一次
0/10OpenSSF Scorecard:Signed-Releases — Project has not signed or included provenance with any releases.
所用输入
releases_count100
latest_release_tagv1.14.0-beta.4
releases_from_tags
days_since_latest_release1
mean_days_between_releases1.7

社区与采用

项目是否拥有用户、下载量与关注度,并具备欢迎贡献者参与的配置?

73良好 · 占总体的 18%
评分方式
60/60星标 — 36,636 个星标
25/25复刻 — 4,382 个复刻
12.7/15关注者 — 193 位关注者
所用输入
forks4,382
stars36,636
watchers193
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history

社区健康

44存在风险
评分方式
22.5/22.5README
16.9/22.5许可证 — 存在许可证文件,但不是可识别的许可证
0/18CONTRIBUTING 指南
0/13.5行为准则
0/7.2议题模板
0/6.3PR 模板
所用输入
has_readme
has_license
has_contributing
has_issue_template
has_code_of_conduct
has_pull_request_template

可持续性与治理

项目能否在其成员之外延续——巴士系数、响应能力、由谁支持,以及软件包的维护状况?

63中等 · 占总体的 24%
评分方式
9/54巴士系数 — 1 位贡献者贡献了半数提交
1.6/22.5提交分布 — 头号贡献者编写了 93% 的提交
13.5/13.5贡献者广度 — 97 位贡献者
10/10OpenSSF Scorecard:Contributors — project has 4 contributing companies or organizations
所用输入
bus_factor1
contributors_sampled97
top_contributor_share0.931
评分方式
43.2/46.8议题解决 — 92% 的议题已关闭
12/38.3PR 接受 — 已裁定的 PR 中 204/650 已合并
0/15OpenSSF Scorecard:Code-Review — Found 0/30 approved changesets -- score normalized to 0
所用输入
merged_prs204
open_issues242
closed_issues3,001
issue_closed_ratio0.925
closed_unmerged_prs446
评分方式
30/30所有权背书 — 组织持有
0/20已验证域名
24.3/25所有者影响力 — SagerNet 有 2,399 位关注者
23.5/25既往记录 — 96 个公开仓库,账户约 5 年
所用输入
followers2,399
owner_typeOrganization
is_verified
owner_loginSagerNet
public_repos96
account_age_days1,923
评分方式
25/25已发布且可解析 — go 上有 1 个软件包
35/35发布时效 — 最近一次发布于 3 天前
20/20版本历史 — 561 个已发布版本
20/20未被弃用 — 活跃,未被弃用或撤回
所用输入
packagesgithub.com/sagernet/sing-box
ecosystemsgo
any_deprecated
min_days_since_publish3

工程质量

基础的工程与文档实践是否到位?

80良好 · 占总体的 20%

工程实践

80良好
评分方式
24/24CI 工作流 — 6 个工作流
24/24存在测试
16/16Linter 配置 — .golangci.yml
0/9.6Pre-commit 钩子
0/6.4.editorconfig
0/20OpenSSF Scorecard:CI-Tests — 无数据
所用输入
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_config
已排除计分(无数据或不适用):OpenSSF Scorecard:CI-Tests。 其余权重已重新归一化。

文档

80良好
评分方式
30/30README
25/25文档目录
15/15文档 / 主页站点 — https://sing-box.sagernet.org/
10/10仓库描述
0/10主题标签
0/10Wiki
所用输入
topics
has_wiki
homepagehttps://sing-box.sagernet.org/
has_readme
has_docs_dir
has_description

安全

可见的安全与供应链实践是否稳固,且不存在未解决的高风险司法辖区暴露?

46存在风险 · 占总体的 16%

安全态势

46存在风险
评分方式
6/7.5Binary-Artifacts — binaries present in source code
0/7.5Branch-Protection — branch protection not enabled on development/release branches
0/2.5CI-Tests — 无数据
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/30 approved changesets -- score normalized to 0
2.5/2.5Contributors — project has 4 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
7.5/7.5Dependency-Update-Tool — update tool detected
5/5Fuzzing — project is fuzzed
2.2/2.5许可证 — license file detected
7.5/7.5Maintained — 30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
1.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 3
0/5SAST — no SAST tool detected
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — Project has not signed or included provenance with any releases.
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 41 existing vulnerabilities detected
所用输入
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate4.6
已排除计分(无数据或不适用):ci_tests。 其余权重已重新归一化。

依赖安全公告

44存在风险
评分方式
4.3/35直接依赖不含已知公告 — 6 个受影响:golang.org/x/crypto v0.48.0 (critical 10.0), google.golang.org/grpc v1.79.1 (critical 9.1), golang.org/x/net v0.50.0 (moderate 6.5),另有 3 个
0/25间接依赖不含已知公告 — 在此范围内,传递依赖集合无法与开发和测试依赖区分
28.8/40没有长期未处理的公告 — 2 个携带公告的软件包超过 90 天未处理;最早一条发布于 156 天前
所用输入
sourceosv
advisories66
affected_packages12
assessed_packages256
unassessed_packages0
affected_by_severitycritical 2, high 3, moderate 2, low 1, unknown 4
direct_affected_packages6
已排除计分(无数据或不适用):间接依赖不含已知公告。 其余权重已重新归一化。 已将 256 个已解析依赖与 OSV 比对。 该仓库未发布任何索引可解析的软件包,因此改为评估仓库依赖图。该图将开发与测试版本固定同交付的依赖混在一起,因此仅对声明的运行时依赖计分;传递性发现仅作为背景信息列出,不计入评分。 未对可达性进行分析。

AI 就绪度

该仓库在多大程度上具备与 AI 编码代理协同开发与维护的条件?这是一枚独立的实验性徽章——权重为 0.0,因此单独呈现,不影响总体健康评分。

57中等 · 占总体的 0%
评分方式
0/45代理指令 — 没有 CLAUDE.md / AGENTS.md / 编辑器规则
0/15机器可读文档(llms.txt)
20.3/40可读的提交历史 — 100 次人类提交中有 38 次说明了意图(结构化标题或解释性正文)
所用输入
has_llms_txt
legible_history_share0.38
agent_instruction_files
agent_instruction_max_bytes
评分方式
18/18一条命令的引导启动 — Makefile
22/22自动化测试
11/11Lint / 格式化配置 — .golangci.yml
11/11静态类型检查 — Go(静态类型)
10/10可复现环境 — Dockerfile, lockfile
0/10已体现的代理实践 — 最近 100 次提交中没有代理编写的提交
0/8自动化维护 — 未观察到自动依赖更新
3/10OpenSSF Scorecard:Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 3
所用输入
has_nix
has_tests
lockfilesgo.sum
has_dockerfile
typed_language
bootstrap_filesMakefile
has_devcontainer
has_linter_config
typecheck_configs
agent_commit_share0
toolchain_manifestsgo.mod, test/go.mod
dependency_bot_commit_share0
评分方式
45/45可类型检查的代码 — Go(静态类型)
54.6/55可控的文件大小 — 采样的 1,056 个源文件中有 7 个超过 60KB
所用输入
primary_languageGo
largest_source_bytes244,607
source_files_sampled1,056
oversized_source_files7

机器可读接口

40存在风险
评分方式
40/40API 模式(OpenAPI/GraphQL/proto) — daemon/managed_service.proto, daemon/started_service.proto, experimental/boxdd/desktop_service.proto, experimental/v2rayapi/stats.proto, transport/v2raygrpc/stream.proto
0/20MCP 服务器
0/40可运行示例
所用输入
example_dirs
has_mcp_signal
api_schema_filesdaemon/managed_service.proto, daemon/started_service.proto, experimental/boxdd/desktop_service.proto, experimental/v2rayapi/stats.proto, transport/v2raygrpc/stream.proto

关键数据

36,636GitHub 星标
97贡献者
688最近 12 个月提交数
1距最近推送天数
100发布版本数
1巴士系数(bus factor)
242开放议题
Go软件包生态系统数

数据采集警告

  • Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token

更多细节

Star 与 Fork 历史 0 ★ / 4,382 ⇿
0Star
4,382Fork
100发布

每颗 star 和每个 fork 的添加时间,来自 GitHub 并按天汇总。累计增长位于其构成来源——每日新增——的正上方,二者可相互对照:稳定的自然增长与短暂的突增形态截然不同。当这一差别可被衡量时,它会作为增长真实性予以报告。

仅显示最近的历史——该仓库超出采集窗口,因此未采集最早的历史记录。

3,2003,4003,6003,8004,0004,2004,4004,382192026-012026-042026-08
主版本 0次版本 1修订 26
OpenSSF Scorecard 4.6 / 10
4.6综合

来自开源项目 OpenSSF Scorecard 的独立、工具无关的安全评估。每项检查奖励的是安全实践本身,而非特定供应商的工具。Scorecard 无法判定的检查项标记为 不适用,并从安全评分中剔除(绝不按零分计)。Scorecard v5.5.0 · 2026-08-02 04:23 UTC

8Binary-Artifactsbinaries present in source code
0Branch-Protectionbranch protection not enabled on development/release branches
不适用CI-Testsno pull request found
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/30 approved changesets -- score normalized to 0
10Contributorsproject has 4 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
10Dependency-Update-Toolupdate tool detected
10Fuzzingproject is fuzzed
9Licenselicense file detected
10Maintained30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
3Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 3
0SASTno SAST tool detected
0Security-Policysecurity policy file not detected
0Signed-ReleasesProject has not signed or included provenance with any releases.
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities41 existing vulnerabilities detected
直接依赖 74
注册表软件包版本约束清单文件
Gofilippo.io/agev1.3.1go.mod
Gogithub.com/anthropics/anthropic-sdk-gov1.26.0go.mod
Gogithub.com/anytls/sing-anytlsv0.0.11go.mod
Gogithub.com/caddyserver/certmagicv0.25.3-0.20260421143802-60d9d8b415d6go.mod
Gogithub.com/caddyserver/zerosslv0.1.5go.mod
Gogithub.com/coder/websocketv1.8.14go.mod
Gogithub.com/creack/ptyv1.1.24go.mod
Gogithub.com/cretz/binev0.2.0go.mod
Gogithub.com/database64128/tfo-go/v2v2.3.2go.mod
Gogithub.com/go-chi/chi/v5v5.2.5go.mod
Gogithub.com/go-chi/renderv1.0.3go.mod
Gogithub.com/godbus/dbus/v5v5.2.2go.mod
Gogithub.com/gofrs/uuid/v5v5.4.0go.mod
Gogithub.com/insomniacslk/dhcpv0.0.0-20260220084031-5adc3eb26f91go.mod
Gogithub.com/jsimonetti/rtnetlinkv1.4.0go.mod
Gogithub.com/keybase/go-keychainv0.0.1go.mod
Gogithub.com/libdns/acmednsv0.5.0go.mod
Gogithub.com/libdns/alidnsv1.0.6go.mod
Gogithub.com/libdns/cloudflarev0.2.2go.mod
Gogithub.com/libdns/libdnsv1.1.1go.mod
Gogithub.com/logrusorgru/aurorav2.0.3+incompatiblego.mod
Gogithub.com/mdlayher/netlinkv1.9.0go.mod
Gogithub.com/metacubex/utlsv1.8.7go.mod
Gogithub.com/mholt/acmez/v3v3.1.6go.mod
Gogithub.com/miekg/dnsv1.1.72go.mod
Gogithub.com/openai/openai-go/v3v3.26.0go.mod
Gogithub.com/oschwald/maxminddb-golangv1.13.1go.mod
Gogithub.com/pkg/sftpv1.13.10go.mod
Gogithub.com/sagernet/asc-gov0.0.0-20241217030726-d563060fe4e1go.mod
Gogithub.com/sagernet/bboltv0.0.0-20231014093535-ea5cb2fe9f0ago.mod
Gogithub.com/sagernet/corsv1.2.1go.mod
Gogithub.com/sagernet/cronet-gov0.0.0-20260731162621-4185d471b2e4go.mod
Gogithub.com/sagernet/cronet-go/allv0.0.0-20260731162621-4185d471b2e4go.mod
Gogithub.com/sagernet/fswatchv0.1.2go.mod
Gogithub.com/sagernet/glidersshv0.3.4-0.20260531100337-2194faca5648go.mod
Gogithub.com/sagernet/gomobilev0.1.12go.mod
Gogithub.com/sagernet/gvisorv0.0.0-20250811.0-sing-box-mod.1go.mod
Gogithub.com/sagernet/netlinkv0.0.0-20240612041022-b9a21c07ac6ago.mod
Gogithub.com/sagernet/nftablesv0.3.0-mod.4go.mod
Gogithub.com/sagernet/quic-gov0.59.0-sing-box-mod.4go.mod
Gogithub.com/sagernet/singv0.8.12-0.20260731081310-cb3e09a281aago.mod
Gogithub.com/sagernet/sing-cloudflaredv0.1.3-0.20260706062323-d9787e794aa3go.mod
Gogithub.com/sagernet/sing-muxv0.3.5go.mod
Gogithub.com/sagernet/sing-openconnectv0.0.0-20260722140139-e0c977659ca2go.mod
Gogithub.com/sagernet/sing-openvpnv0.0.0-20260729104525-103eb5fe5eb6go.mod
Gogithub.com/sagernet/sing-quicv0.6.4-0.20260727030926-0b32a5074a40go.mod
Gogithub.com/sagernet/sing-shadowsocksv0.2.8go.mod
Gogithub.com/sagernet/sing-shadowsocks2v0.2.1go.mod
Gogithub.com/sagernet/sing-shadowtlsv0.2.1go.mod
Gogithub.com/sagernet/sing-snellv0.0.0-20260727093646-7cb813e07b73go.mod
Gogithub.com/sagernet/sing-tunv0.8.12-0.20260729054528-2d9b8aed5fe2go.mod
Gogithub.com/sagernet/sing-usbipv0.0.0-20260616101517-efb91521eddbgo.mod
Gogithub.com/sagernet/sing-vmessv0.2.8-0.20250909125414-3aed155119a1go.mod
Gogithub.com/sagernet/smuxv1.5.50-sing-box-mod.1go.mod
Gogithub.com/sagernet/tailscalev1.92.4-sing-box-1.13-mod.7.0.20260717155615-b353b93d194ago.mod
Gogithub.com/sagernet/wireguard-gov0.0.5-0.20260717024847-6f5e8b1947aego.mod
Gogithub.com/sagernet/wsv0.0.0-20231204124109-acfe8907c854go.mod
Gogithub.com/spf13/cobrav1.10.2go.mod
Gogithub.com/stretchr/testifyv1.11.1go.mod
Gogithub.com/tailscale/go-winiov0.0.0-20231025203758-c4f33415bf55go.mod
Gogithub.com/vishvananda/netnsv0.0.5go.mod
Gogo.uber.org/zapv1.27.1go.mod
Gogo4.org/netipxv0.0.0-20231129151722-fdeea329fbbago.mod
Gogolang.org/x/cryptov0.48.0go.mod
Gogolang.org/x/expv0.0.0-20251219203646-944ab1f22d93go.mod
Gogolang.org/x/modv0.33.0go.mod
Gogolang.org/x/netv0.50.0go.mod
Gogolang.org/x/syncv0.19.0go.mod
Gogolang.org/x/sysv0.41.0go.mod
Gogolang.org/x/textv0.34.0go.mod
Gogolang.zx2c4.com/wireguard/wgctrlv0.0.0-20241231184526-a9ab2273dd10go.mod
Gogoogle.golang.org/grpcv1.79.1go.mod
Gogoogle.golang.org/protobufv1.36.11go.mod
Gohowett.net/plistv1.0.1go.mod
全部依赖 256

来自 GitHub 依赖图的完整解析依赖集合:83 个直接依赖与 173 个间接(传递)软件包。仓库提交锁文件时,传递闭包才是完整的。

注册表软件包版本关系
Gofilippo.io/agev1.3.1直接
Gogithub.com/anthropics/anthropic-sdk-gov1.26.0直接
Gogithub.com/anytls/sing-anytlsv0.0.11直接
Gogithub.com/caddyserver/certmagicv0.25.3-0.20260421143802-60d9d8b415d6直接
Gogithub.com/caddyserver/zerosslv0.1.5直接
Gogithub.com/coder/websocketv1.8.14直接
Gogithub.com/creack/ptyv1.1.24直接
Gogithub.com/cretz/binev0.2.0直接
Gogithub.com/database64128/tfo-go/v2v2.3.2直接
Gogithub.com/go-chi/chi/v5v5.2.5直接
Gogithub.com/go-chi/renderv1.0.3直接
Gogithub.com/godbus/dbus/v5v5.2.2直接
Gogithub.com/gofrs/uuid/v5v5.4.0直接
Gogithub.com/insomniacslk/dhcpv0.0.0-20260220084031-5adc3eb26f91直接
Gogithub.com/jsimonetti/rtnetlinkv1.4.0直接
Gogithub.com/keybase/go-keychainv0.0.1直接
Gogithub.com/libdns/acmednsv0.5.0直接
Gogithub.com/libdns/alidnsv1.0.6直接
Gogithub.com/libdns/cloudflarev0.2.2直接
Gogithub.com/libdns/libdnsv1.1.1直接
Gogithub.com/logrusorgru/aurorav2.0.3+incompatible直接
Gogithub.com/mdlayher/netlinkv1.9.0直接
Gogithub.com/metacubex/utlsv1.8.7直接
Gogithub.com/mholt/acmez/v3v3.1.6直接
Gogithub.com/miekg/dnsv1.1.72直接
Gogithub.com/openai/openai-go/v3v3.26.0直接
Gogithub.com/oschwald/maxminddb-golangv1.13.1直接
Gogithub.com/pkg/sftpv1.13.10直接
Gogithub.com/sagernet/asc-gov0.0.0-20241217030726-d563060fe4e1直接
Gogithub.com/sagernet/bboltv0.0.0-20231014093535-ea5cb2fe9f0a直接
Gogithub.com/sagernet/corsv1.2.1直接
Gogithub.com/sagernet/cronet-gov0.0.0-20260712143338-d22f2ea3630e直接
Gogithub.com/sagernet/cronet-gov0.0.0-20260731162621-4185d471b2e4直接
Gogithub.com/sagernet/cronet-go/allv0.0.0-20260712143338-d22f2ea3630e直接
Gogithub.com/sagernet/cronet-go/allv0.0.0-20260731162621-4185d471b2e4直接
Gogithub.com/sagernet/fswatchv0.1.2直接
Gogithub.com/sagernet/glidersshv0.3.4-0.20260531100337-2194faca5648直接
Gogithub.com/sagernet/gomobilev0.1.12直接
Gogithub.com/sagernet/gvisorv0.0.0-20250811.0-sing-box-mod.1直接
Gogithub.com/sagernet/gvisorv0.0.0-20250822052253-5558536cf237直接
Gogithub.com/sagernet/netlinkv0.0.0-20240612041022-b9a21c07ac6a直接
Gogithub.com/sagernet/nftablesv0.3.0-mod.4直接
Gogithub.com/sagernet/quic-gov0.59.0-sing-box-mod.4直接
Gogithub.com/sagernet/singv0.8.12-0.20260717153536-4f1ed45a99a5直接
Gogithub.com/sagernet/singv0.8.12-0.20260731081310-cb3e09a281aa直接
Gogithub.com/sagernet/sing-cloudflaredv0.1.3-0.20260706062323-d9787e794aa3直接
Gogithub.com/sagernet/sing-muxv0.3.5直接
Gogithub.com/sagernet/sing-openconnectv0.0.0-20260720032640-bf28b6a6f10e直接
Gogithub.com/sagernet/sing-openconnectv0.0.0-20260722140139-e0c977659ca2直接
Gogithub.com/sagernet/sing-openvpnv0.0.0-20260720132803-a5e407d00242直接
Gogithub.com/sagernet/sing-openvpnv0.0.0-20260729104525-103eb5fe5eb6直接
Gogithub.com/sagernet/sing-quicv0.6.4-0.20260720125339-63fa6a7ebc31直接
Gogithub.com/sagernet/sing-quicv0.6.4-0.20260727030926-0b32a5074a40直接
Gogithub.com/sagernet/sing-shadowsocksv0.2.8直接
Gogithub.com/sagernet/sing-shadowsocks2v0.2.1直接
Gogithub.com/sagernet/sing-shadowtlsv0.2.1直接
Gogithub.com/sagernet/sing-snellv0.0.0-20260719094200-c43fbee0e839直接
Gogithub.com/sagernet/sing-snellv0.0.0-20260727093646-7cb813e07b73直接
Gogithub.com/sagernet/sing-tunv0.8.12-0.20260719094150-557ca930fccd直接
Gogithub.com/sagernet/sing-tunv0.8.12-0.20260729054528-2d9b8aed5fe2直接
Gogithub.com/sagernet/sing-usbipv0.0.0-20260616101517-efb91521eddb直接
Gogithub.com/sagernet/sing-vmessv0.2.8-0.20250909125414-3aed155119a1直接
Gogithub.com/sagernet/smuxv1.5.50-sing-box-mod.1直接
Gogithub.com/sagernet/tailscalev1.92.4-sing-box-1.13-mod.7.0.20260717155615-b353b93d194a直接
Gogithub.com/sagernet/wireguard-gov0.0.5-0.20260717024847-6f5e8b1947ae直接
Gogithub.com/sagernet/wsv0.0.0-20231204124109-acfe8907c854直接
Gogithub.com/spf13/cobrav1.10.2直接
Gogithub.com/stretchr/testifyv1.11.1直接
Gogithub.com/tailscale/go-winiov0.0.0-20231025203758-c4f33415bf55直接
Gogithub.com/vishvananda/netnsv0.0.5直接
Gogo.uber.org/zapv1.27.1直接
Gogo4.org/netipxv0.0.0-20231129151722-fdeea329fbba直接
Gogolang.org/x/cryptov0.48.0直接
Gogolang.org/x/expv0.0.0-20251219203646-944ab1f22d93直接
Gogolang.org/x/modv0.33.0直接
Gogolang.org/x/netv0.50.0直接
Gogolang.org/x/syncv0.19.0直接
Gogolang.org/x/sysv0.41.0直接
Gogolang.org/x/textv0.34.0直接
Gogolang.zx2c4.com/wireguard/wgctrlv0.0.0-20241231184526-a9ab2273dd10直接
Gogoogle.golang.org/grpcv1.79.1直接
Gogoogle.golang.org/protobufv1.36.11直接
Gohowett.net/plistv1.0.1直接
Gofilippo.io/edwards25519v1.1.0间接
Gofilippo.io/hpkev0.4.0间接
Gogithub.com/ajg/formv1.5.1间接
Gogithub.com/akutz/memconnv0.1.0间接
Gogithub.com/alexbrainman/sspiv0.0.0-20231016080023-1a75b4708caa间接
Gogithub.com/anchore/go-lzov0.1.0间接
Gogithub.com/andybalholm/brotliv1.1.0间接
Gogithub.com/anmitsu/go-shlexv0.0.0-20200514113438-38f4b401e2be间接
Gogithub.com/azure/go-ansitermv0.0.0-20210617225240-d185dfc1b5a1间接
Gogithub.com/cenkalti/backoff/v4v4.3.0间接
Gogithub.com/cespare/xxhash/v2v2.3.0间接
Gogithub.com/containerd/logv0.1.0间接
Gogithub.com/coreos/go-iptablesv0.7.1-0.20240112124308-65c67c9f46e6间接
Gogithub.com/coreos/go-oidc/v3v3.17.0间接
Gogithub.com/database64128/netx-gov0.1.1间接
Gogithub.com/davecgh/go-spewv1.1.2-0.20180830191138-d8f796af33cc间接
Gogithub.com/dblohm7/wingoesv0.0.0-20240119213807-a09d6be7affa间接
Gogithub.com/dgrijalva/jwt-go/v4v4.0.0-preview1间接
Gogithub.com/dgryski/go-camelliav0.0.0-20191119043421-69a8a13fb23d间接
Gogithub.com/distribution/referencev0.5.0间接
Gogithub.com/docker/dockerv27.3.1+incompatible间接
Gogithub.com/docker/go-connectionsv0.5.0间接
Gogithub.com/docker/go-unitsv0.5.0间接
Gogithub.com/ebitengine/puregov0.10.0间接
Gogithub.com/felixge/httpsnoopv1.0.4间接
Gogithub.com/florianl/go-nfqueue/v2v2.0.2间接
Gogithub.com/fsnotify/fsnotifyv1.9.0间接
Gogithub.com/fxamacker/cbor/v2v2.7.0间接
Gogithub.com/gaissmai/bartv0.18.0间接
Gogithub.com/go-jose/go-jose/v4v4.1.3间接
Gogithub.com/go-json-experiment/jsonv0.0.0-20250813024750-ebf49471dced间接
Gogithub.com/go-logr/logrv1.4.3间接
Gogithub.com/go-logr/stdrv1.2.2间接
Gogithub.com/go-ole/go-olev1.3.0间接
Gogithub.com/gobwas/httpheadv0.1.0间接
Gogithub.com/gobwas/poolv0.2.1间接
Gogithub.com/gogo/protobufv1.3.2间接
Gogithub.com/golang/groupcachev0.0.0-20241129210726-2c02b8208cf8间接
Gogithub.com/google/btreev1.1.3间接
Gogithub.com/google/certificate-transparency-gov1.3.2间接
Gogithub.com/google/go-cmpv0.7.0间接
Gogithub.com/google/go-querystringv1.1.0间接
Gogithub.com/google/gopacketv1.1.19间接
Gogithub.com/google/nftablesv0.2.1-0.20240414091927-5e242ec57806间接
Gogithub.com/google/uuidv1.6.0间接
Gogithub.com/hashicorp/yamuxv0.1.2间接
Gogithub.com/hdevalence/ed25519consensusv0.2.0间接
Gogithub.com/huin/goupnpv1.2.0间接
Gogithub.com/inconshreveable/mousetrapv1.1.0间接
Gogithub.com/jackpal/go-nat-pmpv1.0.2间接
Gogithub.com/klauspost/compressv1.18.0间接
Gogithub.com/klauspost/cpuid/v2v2.3.0间接
Gogithub.com/koron/go-ssdpv0.0.4间接
Gogithub.com/kr/fsv0.1.0间接
Gogithub.com/libp2p/go-natv1.0.1-0.20250821073202-01afc089f138间接
Gogithub.com/libp2p/go-netroutev0.2.1间接
Gogithub.com/mdlayher/socketv0.5.1间接
Gogithub.com/microsoft/go-winiov0.6.1间接
Gogithub.com/mitchellh/go-psv1.0.0间接
Gogithub.com/moby/docker-image-specv1.3.1间接
Gogithub.com/moby/termv0.5.0间接
Gogithub.com/morikuni/aecv1.0.0间接
Gogithub.com/opencontainers/go-digestv1.0.0间接
Gogithub.com/opencontainers/image-specv1.1.0间接
Gogithub.com/philhofer/fwdv1.2.0间接
Gogithub.com/pierrec/lz4/v4v4.1.21间接
Gogithub.com/pion/dtls/v3v3.1.5间接
Gogithub.com/pion/loggingv0.2.4间接
Gogithub.com/pion/transport/v4v4.0.2间接
Gogithub.com/pires/go-proxyprotov0.8.1间接
Gogithub.com/pkg/errorsv0.9.1间接
Gogithub.com/pmezard/go-difflibv1.0.1-0.20181226105442-5d4384ee4fb2间接
Gogithub.com/prometheus-community/pro-bingv0.4.0间接
Gogithub.com/quic-go/qpackv0.6.0间接
Gogithub.com/ryuanerin/go-kryptov1.3.0间接
Gogithub.com/safchain/ethtoolv0.3.0间接
Gogithub.com/sagernet/cronet-go/lib/android_386v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/android_386v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/android_amd64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/android_amd64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/android_armv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/android_armv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/android_arm64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/android_arm64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/darwin_amd64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/darwin_amd64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/darwin_arm64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/darwin_arm64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/ios_amd64_simulatorv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/ios_amd64_simulatorv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/ios_arm64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/ios_arm64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/ios_arm64_simulatorv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/ios_arm64_simulatorv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_386v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_386v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_386_muslv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_386_muslv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_amd64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_amd64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_amd64_muslv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_amd64_muslv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_armv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_armv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_arm64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_arm64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_arm64_muslv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_arm64_muslv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_arm_muslv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_arm_muslv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_loong64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_loong64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_loong64_muslv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_loong64_muslv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_mips64lev0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_mips64lev0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_mipslev0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_mipslev0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_mipsle_muslv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_mipsle_muslv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_riscv64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_riscv64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/linux_riscv64_muslv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/linux_riscv64_muslv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/tvos_amd64_simulatorv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/tvos_amd64_simulatorv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/tvos_arm64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/tvos_arm64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/tvos_arm64_simulatorv0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/tvos_arm64_simulatorv0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/windows_amd64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/windows_amd64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/sagernet/cronet-go/lib/windows_arm64v0.0.0-20260712142643-1e5048bd5587间接
Gogithub.com/sagernet/cronet-go/lib/windows_arm64v0.0.0-20260731161755-38229fb700f6间接
Gogithub.com/smallstep/pkcs7v0.1.1间接
Gogithub.com/spf13/pflagv1.0.9间接
Gogithub.com/spyzhov/ajsonv0.9.4间接
Gogithub.com/tailscale/certstorev0.1.1-0.20231202035212-d3fa0460f47e间接
Gogithub.com/tailscale/goupnpv1.0.1-0.20210804011211-c64d0f06ea05间接
Gogithub.com/tailscale/hujsonv0.0.0-20221223112325-20486734a56a间接
Gogithub.com/tailscale/netlinkv1.1.1-0.20240822203006-4d49adab4de7间接
Gogithub.com/tailscale/peercredv0.0.0-20250107143737-35a0c7bd7edc间接
Gogithub.com/tailscale/web-client-prebuiltv0.0.0-20250124233751-d4cd19a26976间接
Gogithub.com/tidwall/gjsonv1.18.0间接
Gogithub.com/tidwall/matchv1.1.1间接
Gogithub.com/tidwall/prettyv1.2.1间接
Gogithub.com/tidwall/sjsonv1.2.5间接
Gogithub.com/tjfoc/gmsmv1.4.1间接
Gogithub.com/u-root/uiov0.0.0-20240224005618-d2acac8f3701间接
Gogithub.com/x448/float16v0.8.4间接
Gogithub.com/youmark/pkcs8v0.0.0-20240726163527-a2c0da244d78间接
Gogithub.com/zeebo/blake3v0.2.4间接
Gogo.opentelemetry.io/auto/sdkv1.2.1间接
Gogo.opentelemetry.io/contrib/instrumentation/net/http/otelhttpv0.59.0间接
Gogo.opentelemetry.io/otelv1.39.0间接
Gogo.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttpv1.31.0间接
Gogo.opentelemetry.io/otel/metricv1.39.0间接
Gogo.opentelemetry.io/otel/tracev1.39.0间接
Gogo.uber.org/goleakv1.3.0间接
Gogo.uber.org/multierrv1.11.0间接
Gogo.uber.org/zap/expv0.3.0间接
Gogo4.org/memv0.0.0-20240501181205-ae6ca9944745间接
Gogolang.org/x/oauth2v0.34.0间接
Gogolang.org/x/termv0.40.0间接
Gogolang.org/x/timev0.14.0间接
Gogolang.org/x/toolsv0.42.0间接
Gogolang.zx2c4.com/wintunv0.0.0-20230126152724-0fa3db229ce2间接
Gogolang.zx2c4.com/wireguard/windowsv0.5.3间接
Gogoogle.golang.org/genproto/googleapis/rpcv0.0.0-20251202230838-ff82c1b0f217间接
Gogopkg.in/yaml.v3v3.0.1间接
Gogotest.tools/v3v3.5.1间接
Golukechampine.com/blake3v1.3.0间接
Gozombiezen.com/go/capnproto2v2.18.2+incompatible间接
依赖安全公告 12

该仓库未发布可被索引解析的包,因此评估的是其自身的依赖图——共 256 个包,其中也包含从不交付的开发与测试版本固定:12 个存在已知公告,6 个为直接依赖。

软件包版本关系严重程度公告数修复版本
golang.org/x/cryptov0.48.0直接严重270.52.0
google.golang.org/grpcv1.79.1直接严重41.82.1
github.com/docker/dockerv27.3.1+incompatible间接1129.3.1
github.com/go-jose/go-jose/v4v4.1.3间接24.1.4
go.opentelemetry.io/otelv1.39.0间接21.41.0
golang.org/x/netv0.50.0直接101.26.3
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttpv1.31.0间接21.43.0
filippo.io/edwards25519v1.1.0间接21.1.1
github.com/go-chi/chi/v5v5.2.5直接未知35.3.0
golang.org/x/sysv0.41.0直接未知10.44.0
golang.org/x/textv0.34.0直接未知10.39.0
github.com/klauspost/compressv1.18.0间接未知11.18.7

公告表示依赖图中记录的版本落入某条公告的受影响范围。可达性未经分析,且依赖图包含开发与测试的版本固定——某项发现可能只涉及工具链而非交付的软件。

原始 JSON 报告 机器可读
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 23250,
      "has_wiki": false,
      "homepage": "https://sing-box.sagernet.org/",
      "languages": {
        "C": 8181,
        "Go": 4721602,
        "Shell": 64311,
        "Makefile": 10611,
        "Dockerfile": 1087,
        "Objective-C": 39856
      },
      "pushed_at": "2026-07-31T23:49:53Z",
      "created_at": "2022-06-30T13:27:22Z",
      "owner_type": "Organization",
      "updated_at": "2026-08-02T04:17:48Z",
      "description": "The universal proxy platform",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": null,
      "default_branch": "testing",
      "license_spdx_raw": "NOASSERTION",
      "primary_language": "Go",
      "significant_languages": [
        "Go"
      ]
    },
    "owner": {
      "blog": "https://sagernet.org",
      "name": "Project S",
      "type": "Organization",
      "login": "SagerNet",
      "company": null,
      "location": "Crazy Universe",
      "followers": 2399,
      "avatar_url": "https://avatars.githubusercontent.com/u/83217677?v=4",
      "created_at": "2021-04-26T10:51:57Z",
      "is_verified": null,
      "public_repos": 96,
      "account_age_days": 1923
    },
    "license": {
      "state": "custom",
      "spdx_id": null,
      "raw_spdx": "NOASSERTION",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v1.14.0-beta.4",
          "kind": "prerelease",
          "published_at": "2026-07-31T08:47:29Z"
        },
        {
          "tag": "v1.14.0-beta.3",
          "kind": "prerelease",
          "published_at": "2026-07-29T12:11:43Z"
        },
        {
          "tag": "v1.13.15",
          "kind": "patch",
          "published_at": "2026-07-29T12:11:41Z"
        },
        {
          "tag": "v1.14.0-beta.2",
          "kind": "prerelease",
          "published_at": "2026-07-25T05:58:53Z"
        },
        {
          "tag": "v1.14.0-beta.1",
          "kind": "prerelease",
          "published_at": "2026-07-23T14:10:20Z"
        },
        {
          "tag": "v1.14.0-alpha.50",
          "kind": "prerelease",
          "published_at": "2026-07-22T03:12:14Z"
        },
        {
          "tag": "v1.14.0-alpha.48",
          "kind": "prerelease",
          "published_at": "2026-07-19T15:33:35Z"
        },
        {
          "tag": "v1.14.0-alpha.47",
          "kind": "prerelease",
          "published_at": "2026-07-18T02:28:26Z"
        },
        {
          "tag": "v1.14.0-alpha.46",
          "kind": "prerelease",
          "published_at": "2026-07-17T04:50:20Z"
        },
        {
          "tag": "v1.14.0-alpha.45",
          "kind": "prerelease",
          "published_at": "2026-07-16T01:53:00Z"
        },
        {
          "tag": "v1.14.0-alpha.44",
          "kind": "prerelease",
          "published_at": "2026-07-14T09:14:36Z"
        },
        {
          "tag": "v1.14.0-alpha.43",
          "kind": "prerelease",
          "published_at": "2026-07-11T01:53:49Z"
        },
        {
          "tag": "v1.14.0-alpha.42",
          "kind": "prerelease",
          "published_at": "2026-07-10T06:42:42Z"
        },
        {
          "tag": "v1.14.0-alpha.41",
          "kind": "prerelease",
          "published_at": "2026-07-09T05:45:47Z"
        },
        {
          "tag": "v1.14.0-alpha.40",
          "kind": "prerelease",
          "published_at": "2026-07-07T17:45:11Z"
        },
        {
          "tag": "v1.14.0-alpha.39",
          "kind": "prerelease",
          "published_at": "2026-07-06T14:00:56Z"
        },
        {
          "tag": "v1.14.0-alpha.38",
          "kind": "prerelease",
          "published_at": "2026-07-05T05:47:21Z"
        },
        {
          "tag": "v1.14.0-alpha.37",
          "kind": "prerelease",
          "published_at": "2026-06-29T04:16:50Z"
        },
        {
          "tag": "v1.14.0-alpha.36",
          "kind": "prerelease",
          "published_at": "2026-06-27T15:47:16Z"
        },
        {
          "tag": "v1.14.0-alpha.35",
          "kind": "prerelease",
          "published_at": "2026-06-25T11:15:18Z"
        },
        {
          "tag": "v1.13.14",
          "kind": "patch",
          "published_at": "2026-06-25T09:11:52Z"
        },
        {
          "tag": "v1.14.0-alpha.34",
          "kind": "prerelease",
          "published_at": "2026-06-23T08:29:51Z"
        },
        {
          "tag": "v1.14.0-alpha.33",
          "kind": "prerelease",
          "published_at": "2026-06-21T05:08:41Z"
        },
        {
          "tag": "v1.14.0-alpha.32",
          "kind": "prerelease",
          "published_at": "2026-06-17T11:47:25Z"
        },
        {
          "tag": "v1.14.0-alpha.31",
          "kind": "prerelease",
          "published_at": "2026-06-13T09:26:00Z"
        },
        {
          "tag": "v1.14.0-alpha.30",
          "kind": "prerelease",
          "published_at": "2026-06-12T14:25:44Z"
        },
        {
          "tag": "v1.14.0-alpha.29",
          "kind": "prerelease",
          "published_at": "2026-06-09T02:42:47Z"
        },
        {
          "tag": "v1.13.13",
          "kind": "patch",
          "published_at": "2026-06-04T13:32:10Z"
        },
        {
          "tag": "v1.14.0-alpha.28",
          "kind": "prerelease",
          "published_at": "2026-06-02T15:36:20Z"
        },
        {
          "tag": "v1.14.0-alpha.27",
          "kind": "prerelease",
          "published_at": "2026-05-31T10:38:00Z"
        },
        {
          "tag": "v1.14.0-alpha.26",
          "kind": "prerelease",
          "published_at": "2026-05-26T10:14:16Z"
        },
        {
          "tag": "v1.14.0-alpha.25",
          "kind": "prerelease",
          "published_at": "2026-05-22T04:39:52Z"
        },
        {
          "tag": "v1.14.0-alpha.24",
          "kind": "prerelease",
          "published_at": "2026-05-15T11:06:19Z"
        },
        {
          "tag": "v1.13.12",
          "kind": "patch",
          "published_at": "2026-05-15T11:06:12Z"
        },
        {
          "tag": "v1.14.0-alpha.23",
          "kind": "prerelease",
          "published_at": "2026-05-12T15:06:51Z"
        },
        {
          "tag": "v1.14.0-alpha.22",
          "kind": "prerelease",
          "published_at": "2026-05-11T16:42:34Z"
        },
        {
          "tag": "v1.14.0-alpha.21",
          "kind": "prerelease",
          "published_at": "2026-05-03T01:58:06Z"
        },
        {
          "tag": "v1.14.0-alpha.20",
          "kind": "prerelease",
          "published_at": "2026-04-28T11:05:21Z"
        },
        {
          "tag": "v1.14.0-alpha.19",
          "kind": "prerelease",
          "published_at": "2026-04-28T08:12:05Z"
        },
        {
          "tag": "v1.14.0-alpha.18",
          "kind": "prerelease",
          "published_at": "2026-04-24T02:58:52Z"
        },
        {
          "tag": "v1.14.0-alpha.17",
          "kind": "prerelease",
          "published_at": "2026-04-23T00:44:11Z"
        },
        {
          "tag": "v1.13.11",
          "kind": "patch",
          "published_at": "2026-04-23T00:44:08Z"
        },
        {
          "tag": "v1.14.0-alpha.16",
          "kind": "prerelease",
          "published_at": "2026-04-22T07:17:14Z"
        },
        {
          "tag": "v1.13.10",
          "kind": "patch",
          "published_at": "2026-04-22T07:15:55Z"
        },
        {
          "tag": "v1.14.0-alpha.15",
          "kind": "prerelease",
          "published_at": "2026-04-20T09:22:48Z"
        },
        {
          "tag": "v1.13.9",
          "kind": "patch",
          "published_at": "2026-04-20T09:22:39Z"
        },
        {
          "tag": "v1.14.0-alpha.14",
          "kind": "prerelease",
          "published_at": "2026-04-18T06:17:10Z"
        },
        {
          "tag": "v1.14.0-alpha.13",
          "kind": "prerelease",
          "published_at": "2026-04-17T06:50:07Z"
        },
        {
          "tag": "v1.14.0-alpha.12",
          "kind": "prerelease",
          "published_at": "2026-04-14T07:41:55Z"
        },
        {
          "tag": "v1.13.8",
          "kind": "patch",
          "published_at": "2026-04-14T07:41:49Z"
        },
        {
          "tag": "v1.14.0-alpha.11",
          "kind": "prerelease",
          "published_at": "2026-04-11T05:03:46Z"
        },
        {
          "tag": "v1.14.0-alpha.10",
          "kind": "prerelease",
          "published_at": "2026-04-10T10:09:24Z"
        },
        {
          "tag": "v1.13.7",
          "kind": "patch",
          "published_at": "2026-04-10T10:09:20Z"
        },
        {
          "tag": "v1.14.0-alpha.9",
          "kind": "prerelease",
          "published_at": "2026-04-06T16:37:49Z"
        },
        {
          "tag": "v1.13.6",
          "kind": "patch",
          "published_at": "2026-04-06T16:37:44Z"
        },
        {
          "tag": "v1.14.0-alpha.8",
          "kind": "prerelease",
          "published_at": "2026-03-30T17:07:07Z"
        },
        {
          "tag": "v1.13.5",
          "kind": "patch",
          "published_at": "2026-03-30T17:06:42Z"
        },
        {
          "tag": "v1.14.0-alpha.7",
          "kind": "prerelease",
          "published_at": "2026-03-26T06:29:09Z"
        },
        {
          "tag": "v1.13.4",
          "kind": "patch",
          "published_at": "2026-03-26T06:29:02Z"
        },
        {
          "tag": "v1.14.0-alpha.6",
          "kind": "prerelease",
          "published_at": "2026-03-25T07:02:20Z"
        },
        {
          "tag": "v1.13.4-beta.3",
          "kind": "prerelease",
          "published_at": "2026-03-25T07:02:13Z"
        },
        {
          "tag": "v1.14.0-alpha.5",
          "kind": "prerelease",
          "published_at": "2026-03-24T08:19:56Z"
        },
        {
          "tag": "v1.13.4-beta.2",
          "kind": "prerelease",
          "published_at": "2026-03-24T08:17:02Z"
        },
        {
          "tag": "v1.14.0-alpha.4",
          "kind": "prerelease",
          "published_at": "2026-03-23T12:57:31Z"
        },
        {
          "tag": "v1.13.4-beta.1",
          "kind": "prerelease",
          "published_at": "2026-03-23T12:56:49Z"
        },
        {
          "tag": "v1.13.3",
          "kind": "patch",
          "published_at": "2026-03-15T10:42:07Z"
        },
        {
          "tag": "v1.12.25",
          "kind": "patch",
          "published_at": "2026-03-15T10:41:46Z"
        },
        {
          "tag": "v1.14.0-alpha.3",
          "kind": "prerelease",
          "published_at": "2026-03-15T10:42:18Z"
        },
        {
          "tag": "v1.14.0-alpha.2",
          "kind": "prerelease",
          "published_at": "2026-03-12T06:40:07Z"
        },
        {
          "tag": "v1.13.3-beta.1",
          "kind": "prerelease",
          "published_at": "2026-03-12T06:39:38Z"
        },
        {
          "tag": "v1.14.0-alpha.1",
          "kind": "prerelease",
          "published_at": "2026-03-07T09:33:41Z"
        },
        {
          "tag": "v1.13.2",
          "kind": "patch",
          "published_at": "2026-03-07T09:33:24Z"
        },
        {
          "tag": "v1.13.1",
          "kind": "patch",
          "published_at": "2026-03-05T14:20:54Z"
        },
        {
          "tag": "v1.12.24",
          "kind": "patch",
          "published_at": "2026-03-05T14:19:56Z"
        },
        {
          "tag": "v1.13.1-beta.2",
          "kind": "prerelease",
          "published_at": "2026-03-03T09:33:59Z"
        },
        {
          "tag": "v1.13.1-beta.1",
          "kind": "prerelease",
          "published_at": "2026-03-02T08:05:35Z"
        },
        {
          "tag": "v1.13.0",
          "kind": "minor",
          "published_at": "2026-02-28T07:24:05Z"
        },
        {
          "tag": "v1.13.0-rc.7",
          "kind": "prerelease",
          "published_at": "2026-02-27T12:40:13Z"
        },
        {
          "tag": "v1.12.23",
          "kind": "patch",
          "published_at": "2026-02-27T12:38:58Z"
        },
        {
          "tag": "v1.13.0-rc.6",
          "kind": "prerelease",
          "published_at": "2026-02-23T10:46:38Z"
        },
        {
          "tag": "v1.13.0-rc.5",
          "kind": "prerelease",
          "published_at": "2026-02-21T07:00:37Z"
        },
        {
          "tag": "v1.13.0-rc.4",
          "kind": "prerelease",
          "published_at": "2026-02-15T13:57:00Z"
        },
        {
          "tag": "v1.12.22",
          "kind": "patch",
          "published_at": "2026-02-15T13:49:13Z"
        },
        {
          "tag": "v1.13.0-rc.3",
          "kind": "prerelease",
          "published_at": "2026-02-09T08:19:20Z"
        },
        {
          "tag": "v1.12.21",
          "kind": "patch",
          "published_at": "2026-02-09T08:18:50Z"
        },
        {
          "tag": "v1.13.0-rc.2",
          "kind": "prerelease",
          "published_at": "2026-02-05T12:52:53Z"
        },
        {
          "tag": "v1.12.20",
          "kind": "patch",
          "published_at": "2026-02-05T12:52:18Z"
        },
        {
          "tag": "v1.13.0-rc.1",
          "kind": "prerelease",
          "published_at": "2026-02-01T04:54:16Z"
        },
        {
          "tag": "v1.12.19",
          "kind": "patch",
          "published_at": "2026-02-01T04:53:42Z"
        },
        {
          "tag": "v1.13.0-beta.8",
          "kind": "prerelease",
          "published_at": "2026-01-30T10:47:49Z"
        },
        {
          "tag": "v1.12.18",
          "kind": "patch",
          "published_at": "2026-01-30T10:47:18Z"
        },
        {
          "tag": "v1.13.0-beta.7",
          "kind": "prerelease",
          "published_at": "2026-01-17T12:30:01Z"
        },
        {
          "tag": "v1.13.0-beta.6",
          "kind": "prerelease",
          "published_at": "2026-01-16T22:50:19Z"
        },
        {
          "tag": "v1.12.17",
          "kind": "patch",
          "published_at": "2026-01-16T22:49:44Z"
        },
        {
          "tag": "v1.13.0-beta.5",
          "kind": "prerelease",
          "published_at": "2026-01-13T08:05:49Z"
        },
        {
          "tag": "v1.12.16",
          "kind": "patch",
          "published_at": "2026-01-13T08:05:10Z"
        },
        {
          "tag": "v1.13.0-beta.4",
          "kind": "prerelease",
          "published_at": "2026-01-12T03:00:57Z"
        },
        {
          "tag": "v1.13.0-beta.2",
          "kind": "prerelease",
          "published_at": "2026-01-09T22:23:41Z"
        },
        {
          "tag": "v1.13.0-beta.1",
          "kind": "prerelease",
          "published_at": "2026-01-07T12:15:26Z"
        },
        {
          "tag": "v1.12.15",
          "kind": "patch",
          "published_at": "2026-01-07T12:14:40Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "d2438c2867ab055a88e622a8f164b2091ae6601d",
          "body": null,
          "is_bot": false,
          "headline": "Update naiveproxy to v150.0.7871.63-1",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T23:49:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f1415537d813e56183885c4e16a93599e85592c6",
          "body": null,
          "is_bot": false,
          "headline": "Bump version",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T08:16:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4d53c2ba7682bd18a3c619a0760fff4dd4887f0f",
          "body": "Recent Windows 11 builds remove TCP estats, which made writeAndWaitAck\nreturn without waiting for acknowledgment. sing now queries\nSIO_TCP_INFO on the socket instead, and falls back to estats on\nsystems predating it (Windows 10 1703).",
          "is_bot": false,
          "headline": "Fix TLS fragment ACK wait on Windows without TCP estats",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T08:16:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d3016d9ef23c6dcc1955a9ac425283817b71283",
          "body": null,
          "is_bot": false,
          "headline": "wireguard: Fix system device configures DNS for interface",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T08:16:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e5e47a89e1532f6db293427a59b883e34e8672fa",
          "body": null,
          "is_bot": false,
          "headline": "dns: Fix completed race rule blocked by earlier armed rule",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T08:16:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a6afa74e8325dc885e3c4872dd8ead634a20fac",
          "body": null,
          "is_bot": false,
          "headline": "release: Fix rpm package format for desktop client",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T08:16:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "34b2299983b5dfa533e2c561d204129e638abade",
          "body": null,
          "is_bot": false,
          "headline": "Fix openvpn",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7559915e67abef35c2d1b2572012fb2b9e461599",
          "body": null,
          "is_bot": false,
          "headline": "Fix TUN dispatcher deadlock",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f4a824cad095e9e987b51908c1b44139213841b3",
          "body": null,
          "is_bot": false,
          "headline": "Fix string type",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ff5f5870b4a81e64a7f53ee23ffaeb8553f87ec1",
          "body": null,
          "is_bot": false,
          "headline": "Fix inconsistent URLTest results",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "606e82303969ab001617652ad20bc888cbaebb62",
          "body": null,
          "is_bot": false,
          "headline": "daemon: Improve URLTest",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6385d57d9feacfcba7362577dca681282a39f15b",
          "body": null,
          "is_bot": false,
          "headline": "Add initial_path option to remote rule-sets",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ad764863f93a398dea452ba49ec8d0bb7d6b352",
          "body": null,
          "is_bot": false,
          "headline": "release: Fix linux sign",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "18588e738dd7a093c7dedce367f78e00910e915a",
          "body": null,
          "is_bot": false,
          "headline": "Add JSON schema support",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0275e11ef47b7c3e61514df65693505b9ecab0e5",
          "body": null,
          "is_bot": false,
          "headline": "dns: Add namespace and parallel support for evaluate",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "762fa5d39df1f47a627dff1615e30f61b0c00018",
          "body": "Since b0c6762bc, every rule inside a referenced rule-set was evaluated\nas if merged into the outer rule, which required tracking per-branch\ngroup states and let outer rules and rule-set rules satisfy each\nother's grouped conditions in both directions.\n\nRestrict merging to the only designed case: a r\n[…]\n/geoip sets contain a\nsingle default rule, so their behavior is unchanged. The group-state\nset machinery is replaced by a single required/satisfied mask pair.\n\nAlso update the route and DNS rule docs.",
          "is_bot": false,
          "headline": "route: simplify rule_set matching semantics",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cd9431d35e5b1f8943b264cf7ce7ce80cf7d9c44",
          "body": null,
          "is_bot": false,
          "headline": "platform: Fix WIFI state on reload",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1478722c0d046d3ae9118e264a714f3ffdd4b33b",
          "body": null,
          "is_bot": false,
          "headline": "Fix Fortinet SSO again",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "77c2a82c7cc5e67b7834b1338add40cb809be976",
          "body": null,
          "is_bot": false,
          "headline": "dns: Probe connection reuse support for TCP transports",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b5159fee960abb9f7005e505542d0c55c2c0506b",
          "body": null,
          "is_bot": false,
          "headline": "dns: Cache responses with client subnet",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d505b704d564bbca5b38e2600973d047db4ac85f",
          "body": null,
          "is_bot": false,
          "headline": "Fix Tailscale 4via6 subnet routing",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ccc67f061d480e8029411868a25d3b9380773219",
          "body": null,
          "is_bot": false,
          "headline": "release: Improve release workflow",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4db82946c090687a89db119e5261856a5b9a2997",
          "body": null,
          "is_bot": false,
          "headline": "Add Fortinet hostcheck support",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1f7b00d86195d8e4f2931950eed071e4cf89c6a5",
          "body": null,
          "is_bot": false,
          "headline": "Update issue template for new clients",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e83609ef5caff097821365b38525c0b955b5f23d",
          "body": null,
          "is_bot": false,
          "headline": "Update uTLS to v1.8.7",
          "author_name": "flyzstu",
          "author_login": null,
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8ba299ec4892898f7fcaafc141beabb66d0e83c3",
          "body": null,
          "is_bot": false,
          "headline": "Fix TCP DNS retry",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "117952f613fdd7749d9c02d4e1bd4d714a106aed",
          "body": null,
          "is_bot": false,
          "headline": "boxdd: Fix windows update",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e31dc73d6cb360cf5d86bb9ebbc495b5a3d02bf",
          "body": null,
          "is_bot": false,
          "headline": "build: Refactor workflow",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "46df290a6da0aec51b02f7970456416fdf819bab",
          "body": null,
          "is_bot": false,
          "headline": "Improve OpenVPN & OpenConnect interoperability",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8d906c65db085e8c63d05381199072153c84c186",
          "body": null,
          "is_bot": false,
          "headline": "Fix security check message",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "144a4a1ae168da4960fc0b2beb90f37571f049db",
          "body": null,
          "is_bot": false,
          "headline": "openvpn: Fix certificate verification compatibility",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "215811a4bed49c92fb29c356b803f727417a36f4",
          "body": null,
          "is_bot": false,
          "headline": "boxdd: Fix unsafe permission check",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cfa35522587e4a5926c3a1cb40740306bd4a078b",
          "body": null,
          "is_bot": false,
          "headline": "Fix wg detour",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6b3973b3e844d96bcb22ea900135279e41347238",
          "body": null,
          "is_bot": false,
          "headline": "openconnect: Fix Fortinet SSO",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "05f2b00854db832f1ac24654889bd71e17bfc63d",
          "body": null,
          "is_bot": false,
          "headline": "Add linux desktop build",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "09517a124965a0b0c79f0dd99996737ac7b44bef",
          "body": null,
          "is_bot": false,
          "headline": "desktop: Pin dependencies",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bd023643e22d44d6268f550a6aead43262182c51",
          "body": null,
          "is_bot": false,
          "headline": "boxdd: Implement linux http proxy",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9d5fc27633cdf324199e64fb2a6caa37a52b3cc4",
          "body": null,
          "is_bot": false,
          "headline": "Improve network reset",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "16c85d10814cec29be4e8e2fc8a2ffcd831500f3",
          "body": null,
          "is_bot": false,
          "headline": "boxdd: Fix linux permission",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fcd215a2b95c9ba0e3e31ec4c74a390538119aee",
          "body": null,
          "is_bot": false,
          "headline": "Fix DNS route suffix matching",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "39a64655d47daf4fafb6aedc4de6add7462d85e1",
          "body": null,
          "is_bot": false,
          "headline": "refactor: Async DNS",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "47372d29b0033908023ed6ba003057011423d628",
          "body": null,
          "is_bot": false,
          "headline": "Refactor UDP DNS hijack",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "273b436c76aaf2b517c8d11bb7682e9e5d2441ae",
          "body": null,
          "is_bot": false,
          "headline": "Fix SSO support for anyconnect",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f54509191349a3a7f222b58995402fd77063fc7e",
          "body": null,
          "is_bot": false,
          "headline": "Refactor OpenVPN and OpenConnect endpoints",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a2669cb90bdc52297bec2fb525e651fa34cce0e1",
          "body": null,
          "is_bot": false,
          "headline": "Refactor endpoint in started interface",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca99870f0ce2a1f86a24e1997138fd1d15121683",
          "body": null,
          "is_bot": false,
          "headline": "Fix tailscale detour",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "05f9b4cfed3fe689ee28eebaf1a0e6ebec79e183",
          "body": null,
          "is_bot": false,
          "headline": "Fix bind control for auto redirect",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "479db2ac97208d7a519d1060227bada7a5af7ab8",
          "body": null,
          "is_bot": false,
          "headline": "Add openvpn and openconnect",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eae33fc2c1d19c8140ae826aaeb4c113f89ebe0f",
          "body": null,
          "is_bot": false,
          "headline": "Update Go to 1.25.12",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2dfaf975b46464cfa136b2d8634f653bebe95e37",
          "body": null,
          "is_bot": false,
          "headline": "Refactor endpoint listen",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0a8d2287344f981d82aee647575a711e86b09eeb",
          "body": null,
          "is_bot": false,
          "headline": "refactor: New tun udpnat",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8b9767567901e63fbb96ae98b1cbb6fc034aaca9",
          "body": null,
          "is_bot": false,
          "headline": "boxx: Fix unsafe installation",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "986e91c1196b69cbfc3a26d9e640e31f6cd6a74b",
          "body": null,
          "is_bot": false,
          "headline": "Add multiple tags support to rule-sets",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a9b3c6d74fcec3cefb1233f87397e50d9a23dc86",
          "body": null,
          "is_bot": false,
          "headline": "Fix iOS brdige",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b2ec8fd04dcbd341574d6055a70fc1d64cea1110",
          "body": null,
          "is_bot": false,
          "headline": "Fix oomkiller",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8157eda29f447cdcbdcb59620bf5157c50b6133c",
          "body": null,
          "is_bot": false,
          "headline": "platform: Fix version compare",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "176135e30315b70cc9f03daab2f2f34f751f8766",
          "body": null,
          "is_bot": false,
          "headline": "Fix start lifecycle",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11f37043fdef6b2ec8fc309557567fdadb1a1b18",
          "body": null,
          "is_bot": false,
          "headline": "boxdd: Add insecure mode",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cf3156cd0f4444c11a500f3114a542bd1c42df8c",
          "body": null,
          "is_bot": false,
          "headline": "Update windows build",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3c864f9fca468f704da303bbcf8833dded5e4ddd",
          "body": null,
          "is_bot": false,
          "headline": "tailscale: support Windows SSH user sessions",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1623948ec5b0967bfe00fae7937a8ef4d7353ad5",
          "body": null,
          "is_bot": false,
          "headline": "boxdd: Add custom working directory support",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "df91206feee6080ae3da1c4f67454784fb9ae5e7",
          "body": null,
          "is_bot": false,
          "headline": "boxxx: Add update API",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6b2711023253581a4cb97d92302bc5767b20c91b",
          "body": null,
          "is_bot": false,
          "headline": "boxdd: Fix log format",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8cd3b00df05530f5e784a5aa63f36f11f25ea1ac",
          "body": null,
          "is_bot": false,
          "headline": "Add windows build",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "68c3a5ee41d9ccda8145ace73d48d8c8b99bf98a",
          "body": null,
          "is_bot": false,
          "headline": "Fix windows bridge",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9c9d456322a32d4c9c355b8cf28edb9758b3495a",
          "body": null,
          "is_bot": false,
          "headline": "Fix nftables flush",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b37c6311cd906fa20c7529e2f12b8921b515a9cc",
          "body": null,
          "is_bot": false,
          "headline": "Fix tun gso check",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ddfe6143d2908efa0316b3efacc6815f3c817077",
          "body": null,
          "is_bot": false,
          "headline": "Fix SetGroupExpand race",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "12a0825d0f00ac84d3df9dcbd1c3af92b1c4616c",
          "body": null,
          "is_bot": false,
          "headline": "windivert: stabilize Windows driver lifecycle",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b424a538b90501c991f150d863a01c3d8474e05e",
          "body": null,
          "is_bot": false,
          "headline": "Fix nfqueue options",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a648be3247a23eae103791c7b42ed8e32ff5ed56",
          "body": null,
          "is_bot": false,
          "headline": "documentation: Update icon svg",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e4fd28384dab70742c474bc21fe67ad7019016c",
          "body": null,
          "is_bot": false,
          "headline": "platform: Add http proxy support for Windows",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6ce7d22a3c76a7555d925496e2252c9e20e5f7fd",
          "body": null,
          "is_bot": false,
          "headline": "platform: Fix daemon data",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a28941ab2dc5821c0dfd18504b7a59a7408aac6b",
          "body": null,
          "is_bot": false,
          "headline": "platform: Add boxdd",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e9ad8497dddeb7ce5663eb7c3325729efe6e3796",
          "body": null,
          "is_bot": false,
          "headline": "Fix daemon groups",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0e59ea76f525a370334f0a3a279fc91dbde2d9ef",
          "body": null,
          "is_bot": false,
          "headline": "bridge: Raise accept_ra to 2 when enabling IPv6 forwarding",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1157701d084eb6d1899c178e0ad2082fec69137f",
          "body": null,
          "is_bot": false,
          "headline": "Fix windivert open",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e075956ce3779d57a55e725ed593a48e3cd1e0c0",
          "body": null,
          "is_bot": false,
          "headline": "platform: Export tester and reporter",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "79ed7dee6f4b3bfa521fbedbdc76c49e9ba65c81",
          "body": null,
          "is_bot": false,
          "headline": "windivert: Verify cached driver against embedded asset before load",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "61270f58c4b60da05de3997497383b6a07d1d7d8",
          "body": null,
          "is_bot": false,
          "headline": "Fix netns manager",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "03cecb50eddf9d8ba49b6b7de4ce89f3ba9c4fbf",
          "body": null,
          "is_bot": false,
          "headline": "Add netns and unshare support",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9bba14bc60766aaa4ff9f56fd60670d05e236631",
          "body": null,
          "is_bot": false,
          "headline": "Fix tailscale route",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5242a90b707b7c75bf262a5960fff74780c9dde8",
          "body": null,
          "is_bot": false,
          "headline": "Fix tailscale version",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8acad8f450e444c2480e280a3bf9d70c070109ad",
          "body": null,
          "is_bot": false,
          "headline": "Add connections to OOM report",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4e30850dbf4530fcb701329181206df019750f66",
          "body": null,
          "is_bot": false,
          "headline": "Add hysteria2 realm ip_version and port_mapping options",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f330b92826c016d1a4018d97a1c4993e00514163",
          "body": null,
          "is_bot": false,
          "headline": "Fix process and neighbor rules not matched in pre-match",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "745042dae4609961f5f2dbd3dcebaea7428a2e22",
          "body": null,
          "is_bot": false,
          "headline": "Fix macOS bridge kernel panic",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cb350a865dede0cf132de588b45b92337a246a8c",
          "body": null,
          "is_bot": false,
          "headline": "Fix macOS bridge with includeAllNetworks",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "514619343505503f438461c27bbbf3065924c652",
          "body": null,
          "is_bot": false,
          "headline": "Fix windows bridge forwarding to connected subnets",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "1a555955e145736333841cbcdd816e3d46dc40fa",
          "body": null,
          "is_bot": false,
          "headline": "Improve windivert syscall",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2fa0feb82dd387781b907d88da6b9df148ddf1b3",
          "body": null,
          "is_bot": false,
          "headline": "Fix bridge MTU",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d8165f8a5422ef47728d8333b0476d63b399f2ca",
          "body": null,
          "is_bot": false,
          "headline": "Improve darwin bridge",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5bb79d9abb4a07ba13b43903464668d1b54fc5f2",
          "body": null,
          "is_bot": false,
          "headline": "Add windows bridge",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a37754af8332107b6f29b995f164a47dfbeb849f",
          "body": null,
          "is_bot": false,
          "headline": "Improve bridge",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "01d21fe5d192cad9f273ef0f16c0c45a39114e58",
          "body": null,
          "is_bot": false,
          "headline": "Add bridge outbound",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ace57ea88956418c671f82dfd82634035b3a65da",
          "body": null,
          "is_bot": false,
          "headline": "daemon: Release memory to OS on service reload",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d7ba671ce96329a9eb75de7635e738552b5d97ea",
          "body": null,
          "is_bot": false,
          "headline": "Imrpove flow tracking & sniff action",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "aff95d79548b59118131b89cbbfdea022a7ca65a",
          "body": null,
          "is_bot": false,
          "headline": "Fix local DNS transport on darwin",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "fc80e218f87fce53db431952517871c66142a063",
          "body": null,
          "is_bot": false,
          "headline": "Add L3 forwarding support",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "798e4204714e8edfecba629e739cc93bc198e992",
          "body": null,
          "is_bot": false,
          "headline": "Add snell protocol",
          "author_name": "世界",
          "author_login": "nekohasekai",
          "committed_at": "2026-07-31T03:04:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 100,
      "commits_last_year": 688,
      "latest_release_at": "2026-07-31T08:47:29Z",
      "latest_release_tag": "v1.14.0-beta.4",
      "releases_from_tags": false,
      "days_since_last_push": 1,
      "active_weeks_last_year": 49,
      "days_since_latest_release": 1,
      "mean_days_between_releases": 1.7
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": false,
      "health_percentage": 50,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "github.com/sagernet/sing-box",
          "exists": true,
          "license": null,
          "keywords": [],
          "ecosystem": "go",
          "matches_repo": true,
          "registry_url": "https://pkg.go.dev/github.com/sagernet/sing-box",
          "is_deprecated": false,
          "latest_version": "v1.13.15",
          "repository_url": "https://github.com/sagernet/sing-box",
          "versions_count": 561,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": null,
          "latest_published_at": "2026-07-29T11:17:31Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 3
        }
      ]
    },
    "popularity": {
      "forks": 4382,
      "stars": 36636,
      "watchers": 193,
      "fork_history": {
        "days": [
          {
            "date": "2026-01-04",
            "count": 6
          },
          {
            "date": "2026-01-05",
            "count": 5
          },
          {
            "date": "2026-01-06",
            "count": 2
          },
          {
            "date": "2026-01-07",
            "count": 7
          },
          {
            "date": "2026-01-08",
            "count": 3
          },
          {
            "date": "2026-01-09",
            "count": 5
          },
          {
            "date": "2026-01-10",
            "count": 3
          },
          {
            "date": "2026-01-11",
            "count": 6
          },
          {
            "date": "2026-01-12",
            "count": 2
          },
          {
            "date": "2026-01-13",
            "count": 4
          },
          {
            "date": "2026-01-14",
            "count": 7
          },
          {
            "date": "2026-01-15",
            "count": 2
          },
          {
            "date": "2026-01-16",
            "count": 5
          },
          {
            "date": "2026-01-17",
            "count": 1
          },
          {
            "date": "2026-01-18",
            "count": 3
          },
          {
            "date": "2026-01-19",
            "count": 2
          },
          {
            "date": "2026-01-20",
            "count": 6
          },
          {
            "date": "2026-01-21",
            "count": 2
          },
          {
            "date": "2026-01-22",
            "count": 3
          },
          {
            "date": "2026-01-23",
            "count": 3
          },
          {
            "date": "2026-01-24",
            "count": 3
          },
          {
            "date": "2026-01-25",
            "count": 2
          },
          {
            "date": "2026-01-26",
            "count": 5
          },
          {
            "date": "2026-01-27",
            "count": 1
          },
          {
            "date": "2026-01-28",
            "count": 2
          },
          {
            "date": "2026-01-29",
            "count": 4
          },
          {
            "date": "2026-01-30",
            "count": 2
          },
          {
            "date": "2026-01-31",
            "count": 5
          },
          {
            "date": "2026-02-02",
            "count": 1
          },
          {
            "date": "2026-02-03",
            "count": 6
          },
          {
            "date": "2026-02-04",
            "count": 3
          },
          {
            "date": "2026-02-05",
            "count": 3
          },
          {
            "date": "2026-02-06",
            "count": 3
          },
          {
            "date": "2026-02-07",
            "count": 5
          },
          {
            "date": "2026-02-08",
            "count": 3
          },
          {
            "date": "2026-02-09",
            "count": 3
          },
          {
            "date": "2026-02-10",
            "count": 2
          },
          {
            "date": "2026-02-11",
            "count": 2
          },
          {
            "date": "2026-02-12",
            "count": 2
          },
          {
            "date": "2026-02-13",
            "count": 6
          },
          {
            "date": "2026-02-14",
            "count": 2
          },
          {
            "date": "2026-02-15",
            "count": 1
          },
          {
            "date": "2026-02-16",
            "count": 1
          },
          {
            "date": "2026-02-17",
            "count": 2
          },
          {
            "date": "2026-02-18",
            "count": 1
          },
          {
            "date": "2026-02-20",
            "count": 4
          },
          {
            "date": "2026-02-22",
            "count": 3
          },
          {
            "date": "2026-02-23",
            "count": 4
          },
          {
            "date": "2026-02-24",
            "count": 2
          },
          {
            "date": "2026-02-25",
            "count": 4
          },
          {
            "date": "2026-02-26",
            "count": 4
          },
          {
            "date": "2026-02-27",
            "count": 4
          },
          {
            "date": "2026-02-28",
            "count": 10
          },
          {
            "date": "2026-03-01",
            "count": 4
          },
          {
            "date": "2026-03-02",
            "count": 2
          },
          {
            "date": "2026-03-03",
            "count": 4
          },
          {
            "date": "2026-03-04",
            "count": 3
          },
          {
            "date": "2026-03-05",
            "count": 2
          },
          {
            "date": "2026-03-06",
            "count": 5
          },
          {
            "date": "2026-03-07",
            "count": 5
          },
          {
            "date": "2026-03-08",
            "count": 4
          },
          {
            "date": "2026-03-09",
            "count": 3
          },
          {
            "date": "2026-03-10",
            "count": 3
          },
          {
            "date": "2026-03-11",
            "count": 5
          },
          {
            "date": "2026-03-12",
            "count": 3
          },
          {
            "date": "2026-03-13",
            "count": 7
          },
          {
            "date": "2026-03-14",
            "count": 6
          },
          {
            "date": "2026-03-15",
            "count": 5
          },
          {
            "date": "2026-03-16",
            "count": 3
          },
          {
            "date": "2026-03-17",
            "count": 4
          },
          {
            "date": "2026-03-18",
            "count": 3
          },
          {
            "date": "2026-03-19",
            "count": 4
          },
          {
            "date": "2026-03-20",
            "count": 7
          },
          {
            "date": "2026-03-21",
            "count": 2
          },
          {
            "date": "2026-03-22",
            "count": 4
          },
          {
            "date": "2026-03-23",
            "count": 3
          },
          {
            "date": "2026-03-24",
            "count": 2
          },
          {
            "date": "2026-03-25",
            "count": 3
          },
          {
            "date": "2026-03-26",
            "count": 7
          },
          {
            "date": "2026-03-27",
            "count": 6
          },
          {
            "date": "2026-03-28",
            "count": 5
          },
          {
            "date": "2026-03-29",
            "count": 3
          },
          {
            "date": "2026-03-30",
            "count": 7
          },
          {
            "date": "2026-03-31",
            "count": 7
          },
          {
            "date": "2026-04-01",
            "count": 6
          },
          {
            "date": "2026-04-02",
            "count": 6
          },
          {
            "date": "2026-04-03",
            "count": 5
          },
          {
            "date": "2026-04-04",
            "count": 8
          },
          {
            "date": "2026-04-05",
            "count": 4
          },
          {
            "date": "2026-04-06",
            "count": 5
          },
          {
            "date": "2026-04-07",
            "count": 11
          },
          {
            "date": "2026-04-08",
            "count": 9
          },
          {
            "date": "2026-04-09",
            "count": 6
          },
          {
            "date": "2026-04-10",
            "count": 10
          },
          {
            "date": "2026-04-11",
            "count": 4
          },
          {
            "date": "2026-04-12",
            "count": 7
          },
          {
            "date": "2026-04-13",
            "count": 7
          },
          {
            "date": "2026-04-14",
            "count": 9
          },
          {
            "date": "2026-04-15",
            "count": 4
          },
          {
            "date": "2026-04-16",
            "count": 8
          },
          {
            "date": "2026-04-17",
            "count": 6
          },
          {
            "date": "2026-04-18",
            "count": 5
          },
          {
            "date": "2026-04-19",
            "count": 3
          },
          {
            "date": "2026-04-20",
            "count": 7
          },
          {
            "date": "2026-04-21",
            "count": 7
          },
          {
            "date": "2026-04-22",
            "count": 5
          },
          {
            "date": "2026-04-23",
            "count": 6
          },
          {
            "date": "2026-04-24",
            "count": 4
          },
          {
            "date": "2026-04-25",
            "count": 2
          },
          {
            "date": "2026-04-26",
            "count": 8
          },
          {
            "date": "2026-04-27",
            "count": 1
          },
          {
            "date": "2026-04-28",
            "count": 6
          },
          {
            "date": "2026-04-29",
            "count": 8
          },
          {
            "date": "2026-04-30",
            "count": 7
          },
          {
            "date": "2026-05-01",
            "count": 2
          },
          {
            "date": "2026-05-02",
            "count": 3
          },
          {
            "date": "2026-05-03",
            "count": 5
          },
          {
            "date": "2026-05-04",
            "count": 7
          },
          {
            "date": "2026-05-05",
            "count": 5
          },
          {
            "date": "2026-05-06",
            "count": 6
          },
          {
            "date": "2026-05-07",
            "count": 3
          },
          {
            "date": "2026-05-08",
            "count": 2
          },
          {
            "date": "2026-05-09",
            "count": 5
          },
          {
            "date": "2026-05-10",
            "count": 11
          },
          {
            "date": "2026-05-11",
            "count": 8
          },
          {
            "date": "2026-05-12",
            "count": 7
          },
          {
            "date": "2026-05-13",
            "count": 7
          },
          {
            "date": "2026-05-14",
            "count": 5
          },
          {
            "date": "2026-05-15",
            "count": 3
          },
          {
            "date": "2026-05-16",
            "count": 5
          },
          {
            "date": "2026-05-17",
            "count": 1
          },
          {
            "date": "2026-05-18",
            "count": 7
          },
          {
            "date": "2026-05-19",
            "count": 3
          },
          {
            "date": "2026-05-20",
            "count": 4
          },
          {
            "date": "2026-05-21",
            "count": 5
          },
          {
            "date": "2026-05-22",
            "count": 8
          },
          {
            "date": "2026-05-23",
            "count": 9
          },
          {
            "date": "2026-05-24",
            "count": 3
          },
          {
            "date": "2026-05-25",
            "count": 1
          },
          {
            "date": "2026-05-26",
            "count": 6
          },
          {
            "date": "2026-05-27",
            "count": 4
          },
          {
            "date": "2026-05-28",
            "count": 3
          },
          {
            "date": "2026-05-29",
            "count": 7
          },
          {
            "date": "2026-05-30",
            "count": 7
          },
          {
            "date": "2026-05-31",
            "count": 6
          },
          {
            "date": "2026-06-01",
            "count": 8
          },
          {
            "date": "2026-06-02",
            "count": 10
          },
          {
            "date": "2026-06-03",
            "count": 3
          },
          {
            "date": "2026-06-04",
            "count": 8
          },
          {
            "date": "2026-06-05",
            "count": 7
          },
          {
            "date": "2026-06-06",
            "count": 9
          },
          {
            "date": "2026-06-07",
            "count": 8
          },
          {
            "date": "2026-06-08",
            "count": 5
          },
          {
            "date": "2026-06-09",
            "count": 7
          },
          {
            "date": "2026-06-10",
            "count": 4
          },
          {
            "date": "2026-06-11",
            "count": 3
          },
          {
            "date": "2026-06-12",
            "count": 3
          },
          {
            "date": "2026-06-13",
            "count": 6
          },
          {
            "date": "2026-06-14",
            "count": 6
          },
          {
            "date": "2026-06-15",
            "count": 4
          },
          {
            "date": "2026-06-16",
            "count": 3
          },
          {
            "date": "2026-06-17",
            "count": 1
          },
          {
            "date": "2026-06-18",
            "count": 2
          },
          {
            "date": "2026-06-19",
            "count": 3
          },
          {
            "date": "2026-06-20",
            "count": 8
          },
          {
            "date": "2026-06-21",
            "count": 7
          },
          {
            "date": "2026-06-22",
            "count": 5
          },
          {
            "date": "2026-06-23",
            "count": 5
          },
          {
            "date": "2026-06-24",
            "count": 19
          },
          {
            "date": "2026-06-25",
            "count": 7
          },
          {
            "date": "2026-06-26",
            "count": 8
          },
          {
            "date": "2026-06-27",
            "count": 4
          },
          {
            "date": "2026-06-28",
            "count": 6
          },
          {
            "date": "2026-06-29",
            "count": 4
          },
          {
            "date": "2026-06-30",
            "count": 5
          },
          {
            "date": "2026-07-01",
            "count": 2
          },
          {
            "date": "2026-07-02",
            "count": 4
          },
          {
            "date": "2026-07-03",
            "count": 4
          },
          {
            "date": "2026-07-04",
            "count": 1
          },
          {
            "date": "2026-07-05",
            "count": 5
          },
          {
            "date": "2026-07-06",
            "count": 9
          },
          {
            "date": "2026-07-07",
            "count": 7
          },
          {
            "date": "2026-07-08",
            "count": 5
          },
          {
            "date": "2026-07-09",
            "count": 4
          },
          {
            "date": "2026-07-10",
            "count": 5
          },
          {
            "date": "2026-07-11",
            "count": 4
          },
          {
            "date": "2026-07-12",
            "count": 4
          },
          {
            "date": "2026-07-13",
            "count": 2
          },
          {
            "date": "2026-07-14",
            "count": 5
          },
          {
            "date": "2026-07-15",
            "count": 10
          },
          {
            "date": "2026-07-16",
            "count": 7
          },
          {
            "date": "2026-07-17",
            "count": 6
          },
          {
            "date": "2026-07-18",
            "count": 4
          },
          {
            "date": "2026-07-19",
            "count": 6
          },
          {
            "date": "2026-07-20",
            "count": 8
          },
          {
            "date": "2026-07-21",
            "count": 7
          },
          {
            "date": "2026-07-22",
            "count": 8
          },
          {
            "date": "2026-07-23",
            "count": 3
          },
          {
            "date": "2026-07-24",
            "count": 8
          },
          {
            "date": "2026-07-25",
            "count": 7
          },
          {
            "date": "2026-07-26",
            "count": 5
          },
          {
            "date": "2026-07-27",
            "count": 7
          },
          {
            "date": "2026-07-28",
            "count": 3
          },
          {
            "date": "2026-07-29",
            "count": 5
          },
          {
            "date": "2026-07-30",
            "count": 4
          },
          {
            "date": "2026-07-31",
            "count": 4
          },
          {
            "date": "2026-08-01",
            "count": 3
          },
          {
            "date": "2026-08-02",
            "count": 1
          }
        ],
        "complete": false,
        "collected": 1000,
        "total_forks": 4382
      },
      "star_history": null,
      "open_issues_and_prs": 284
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": false,
      "bootstrap_files": [
        "Makefile"
      ],
      "api_schema_files": [
        "daemon/managed_service.proto",
        "daemon/started_service.proto",
        "experimental/boxdd/desktop_service.proto",
        "experimental/v2rayapi/stats.proto",
        "transport/v2raygrpc/stream.proto"
      ],
      "has_devcontainer": false,
      "typecheck_configs": [],
      "toolchain_manifests": [
        "go.mod",
        "test/go.mod"
      ],
      "largest_source_bytes": 244607,
      "source_files_sampled": 1056,
      "oversized_source_files": 7,
      "agent_instruction_files": [],
      "agent_instruction_max_bytes": null
    },
    "dependencies": {
      "manifests": [
        "go.mod",
        "test/go.mod"
      ],
      "advisories": {
        "error": null,
        "scope": "repository_graph",
        "source": "osv",
        "findings": [
          {
            "name": "golang.org/x/crypto",
            "direct": true,
            "version": "v0.48.0",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-45gg-vh54-h5m9",
              "GHSA-5cgq-3rg8-m6cv",
              "GHSA-78mq-xcr3-xm33",
              "GHSA-89gr-r52h-f8rx",
              "GHSA-9m57-25v3-79x9",
              "GHSA-f5wc-c3c7-36mc",
              "GHSA-jppx-rxg9-jmrx",
              "GHSA-q4h4-gmj2-qvw2",
              "GHSA-qpw4-5x99-6vjp",
              "GHSA-rm3j-f69w-wqmq"
            ],
            "fixed_version": "0.52.0",
            "advisory_count": 27,
            "oldest_advisory_days": 72
          },
          {
            "name": "google.golang.org/grpc",
            "direct": true,
            "version": "v1.79.1",
            "severity": "critical",
            "ecosystem": "go",
            "cvss_score": 9.1,
            "advisory_ids": [
              "GHSA-hrxh-6v49-42gf",
              "GHSA-p77j-4mvh-x3m3",
              "GO-2026-4762",
              "GO-2026-6061"
            ],
            "fixed_version": "1.82.1",
            "advisory_count": 4,
            "oldest_advisory_days": 136
          },
          {
            "name": "github.com/docker/docker",
            "direct": false,
            "version": "v27.3.1+incompatible",
            "severity": "high",
            "ecosystem": "go",
            "cvss_score": 8.8,
            "advisory_ids": [
              "GHSA-4vq8-7jfc-9cvp",
              "GHSA-pxq6-2prw-chj9",
              "GHSA-rg2x-37c3-w2rh",
              "GHSA-vp62-88p7-qqf5",
              "GHSA-x744-4wpc-v9h2",
              "GHSA-x86f-5xw2-fm2r",
              "GO-2026-4883",
              "GO-2026-4887",
              "GO-2026-5617",
              "GO-2026-5668"
            ],
            "fixed_version": "29.3.1",
            "advisory_count": 11,
            "oldest_advisory_days": 368
          },
          {
            "name": "github.com/go-jose/go-jose/v4",
            "direct": false,
            "version": "v4.1.3",
            "severity": "high",
            "ecosystem": "go",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-78h2-9frx-2jm8",
              "GO-2026-4945"
            ],
            "fixed_version": "4.1.4",
            "advisory_count": 2,
            "oldest_advisory_days": 121
          },
          {
            "name": "go.opentelemetry.io/otel",
            "direct": false,
            "version": "v1.39.0",
            "severity": "high",
            "ecosystem": "go",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-mh2q-q3fh-2475",
              "GO-2026-5506"
            ],
            "fixed_version": "1.41.0",
            "advisory_count": 2,
            "oldest_advisory_days": 116
          },
          {
            "name": "golang.org/x/net",
            "direct": true,
            "version": "v0.50.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-5cv4-jp36-h3mw",
              "GO-2026-4559",
              "GO-2026-4918",
              "GO-2026-5025",
              "GO-2026-5026",
              "GO-2026-5027",
              "GO-2026-5028",
              "GO-2026-5029",
              "GO-2026-5030",
              "GO-2026-5942"
            ],
            "fixed_version": "1.26.3",
            "advisory_count": 10,
            "oldest_advisory_days": 156
          },
          {
            "name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp",
            "direct": false,
            "version": "v1.31.0",
            "severity": "moderate",
            "ecosystem": "go",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-w8rr-5gcm-pp58",
              "GO-2026-4985"
            ],
            "fixed_version": "1.43.0",
            "advisory_count": 2,
            "oldest_advisory_days": 115
          },
          {
            "name": "filippo.io/edwards25519",
            "direct": false,
            "version": "v1.1.0",
            "severity": "low",
            "ecosystem": "go",
            "cvss_score": 3.7,
            "advisory_ids": [
              "GHSA-fw7p-63qq-7hpr",
              "GO-2026-4503"
            ],
            "fixed_version": "1.1.1",
            "advisory_count": 2,
            "oldest_advisory_days": 165
          },
          {
            "name": "github.com/go-chi/chi/v5",
            "direct": true,
            "version": "v5.2.5",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5774",
              "GO-2026-5775",
              "GO-2026-5777"
            ],
            "fixed_version": "5.3.0",
            "advisory_count": 3,
            "oldest_advisory_days": 8
          },
          {
            "name": "golang.org/x/sys",
            "direct": true,
            "version": "v0.41.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5024"
            ],
            "fixed_version": "0.44.0",
            "advisory_count": 1,
            "oldest_advisory_days": 71
          },
          {
            "name": "golang.org/x/text",
            "direct": true,
            "version": "v0.34.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5970"
            ],
            "fixed_version": "0.39.0",
            "advisory_count": 1,
            "oldest_advisory_days": 18
          },
          {
            "name": "github.com/klauspost/compress",
            "direct": false,
            "version": "v1.18.0",
            "severity": "unknown",
            "ecosystem": "go",
            "cvss_score": null,
            "advisory_ids": [
              "GO-2026-5841"
            ],
            "fixed_version": "1.18.7",
            "advisory_count": 1,
            "oldest_advisory_days": 5
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "low": 1,
          "high": 3,
          "unknown": 4,
          "critical": 2,
          "moderate": 2
        },
        "advisory_count": 66,
        "affected_count": 12,
        "assessed_count": 256,
        "malicious_count": 0,
        "assessed_package": null,
        "unassessed_count": 0,
        "direct_affected_count": 6
      },
      "ecosystems": [
        "go"
      ],
      "dependencies": [
        {
          "name": "filippo.io/age",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.3.1"
        },
        {
          "name": "github.com/anthropics/anthropic-sdk-go",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.26.0"
        },
        {
          "name": "github.com/anytls/sing-anytls",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.11"
        },
        {
          "name": "github.com/caddyserver/certmagic",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.25.3-0.20260421143802-60d9d8b415d6"
        },
        {
          "name": "github.com/caddyserver/zerossl",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.1.5"
        },
        {
          "name": "github.com/coder/websocket",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.8.14"
        },
        {
          "name": "github.com/creack/pty",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.1.24"
        },
        {
          "name": "github.com/cretz/bine",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.0"
        },
        {
          "name": "github.com/database64128/tfo-go/v2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.3.2"
        },
        {
          "name": "github.com/go-chi/chi/v5",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v5.2.5"
        },
        {
          "name": "github.com/go-chi/render",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.0.3"
        },
        {
          "name": "github.com/godbus/dbus/v5",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v5.2.2"
        },
        {
          "name": "github.com/gofrs/uuid/v5",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v5.4.0"
        },
        {
          "name": "github.com/insomniacslk/dhcp",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20260220084031-5adc3eb26f91"
        },
        {
          "name": "github.com/jsimonetti/rtnetlink",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.4.0"
        },
        {
          "name": "github.com/keybase/go-keychain",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.1"
        },
        {
          "name": "github.com/libdns/acmedns",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.5.0"
        },
        {
          "name": "github.com/libdns/alidns",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.0.6"
        },
        {
          "name": "github.com/libdns/cloudflare",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.2"
        },
        {
          "name": "github.com/libdns/libdns",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.1.1"
        },
        {
          "name": "github.com/logrusorgru/aurora",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v2.0.3+incompatible"
        },
        {
          "name": "github.com/mdlayher/netlink",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.9.0"
        },
        {
          "name": "github.com/metacubex/utls",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.8.7"
        },
        {
          "name": "github.com/mholt/acmez/v3",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.1.6"
        },
        {
          "name": "github.com/miekg/dns",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.1.72"
        },
        {
          "name": "github.com/openai/openai-go/v3",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v3.26.0"
        },
        {
          "name": "github.com/oschwald/maxminddb-golang",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.13.1"
        },
        {
          "name": "github.com/pkg/sftp",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.13.10"
        },
        {
          "name": "github.com/sagernet/asc-go",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20241217030726-d563060fe4e1"
        },
        {
          "name": "github.com/sagernet/bbolt",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20231014093535-ea5cb2fe9f0a"
        },
        {
          "name": "github.com/sagernet/cors",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.2.1"
        },
        {
          "name": "github.com/sagernet/cronet-go",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20260731162621-4185d471b2e4"
        },
        {
          "name": "github.com/sagernet/cronet-go/all",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20260731162621-4185d471b2e4"
        },
        {
          "name": "github.com/sagernet/fswatch",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.1.2"
        },
        {
          "name": "github.com/sagernet/gliderssh",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.3.4-0.20260531100337-2194faca5648"
        },
        {
          "name": "github.com/sagernet/gomobile",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.1.12"
        },
        {
          "name": "github.com/sagernet/gvisor",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20250811.0-sing-box-mod.1"
        },
        {
          "name": "github.com/sagernet/netlink",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20240612041022-b9a21c07ac6a"
        },
        {
          "name": "github.com/sagernet/nftables",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.3.0-mod.4"
        },
        {
          "name": "github.com/sagernet/quic-go",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.59.0-sing-box-mod.4"
        },
        {
          "name": "github.com/sagernet/sing",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.8.12-0.20260731081310-cb3e09a281aa"
        },
        {
          "name": "github.com/sagernet/sing-cloudflared",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.1.3-0.20260706062323-d9787e794aa3"
        },
        {
          "name": "github.com/sagernet/sing-mux",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.3.5"
        },
        {
          "name": "github.com/sagernet/sing-openconnect",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20260722140139-e0c977659ca2"
        },
        {
          "name": "github.com/sagernet/sing-openvpn",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20260729104525-103eb5fe5eb6"
        },
        {
          "name": "github.com/sagernet/sing-quic",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.6.4-0.20260727030926-0b32a5074a40"
        },
        {
          "name": "github.com/sagernet/sing-shadowsocks",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.8"
        },
        {
          "name": "github.com/sagernet/sing-shadowsocks2",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.1"
        },
        {
          "name": "github.com/sagernet/sing-shadowtls",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.1"
        },
        {
          "name": "github.com/sagernet/sing-snell",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20260727093646-7cb813e07b73"
        },
        {
          "name": "github.com/sagernet/sing-tun",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.8.12-0.20260729054528-2d9b8aed5fe2"
        },
        {
          "name": "github.com/sagernet/sing-usbip",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20260616101517-efb91521eddb"
        },
        {
          "name": "github.com/sagernet/sing-vmess",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.2.8-0.20250909125414-3aed155119a1"
        },
        {
          "name": "github.com/sagernet/smux",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.5.50-sing-box-mod.1"
        },
        {
          "name": "github.com/sagernet/tailscale",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.92.4-sing-box-1.13-mod.7.0.20260717155615-b353b93d194a"
        },
        {
          "name": "github.com/sagernet/wireguard-go",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.5-0.20260717024847-6f5e8b1947ae"
        },
        {
          "name": "github.com/sagernet/ws",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20231204124109-acfe8907c854"
        },
        {
          "name": "github.com/spf13/cobra",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.10.2"
        },
        {
          "name": "github.com/stretchr/testify",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.11.1"
        },
        {
          "name": "github.com/tailscale/go-winio",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20231025203758-c4f33415bf55"
        },
        {
          "name": "github.com/vishvananda/netns",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.5"
        },
        {
          "name": "go.uber.org/zap",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.27.1"
        },
        {
          "name": "go4.org/netipx",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20231129151722-fdeea329fbba"
        },
        {
          "name": "golang.org/x/crypto",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.48.0"
        },
        {
          "name": "golang.org/x/exp",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20251219203646-944ab1f22d93"
        },
        {
          "name": "golang.org/x/mod",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.33.0"
        },
        {
          "name": "golang.org/x/net",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.50.0"
        },
        {
          "name": "golang.org/x/sync",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.19.0"
        },
        {
          "name": "golang.org/x/sys",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.41.0"
        },
        {
          "name": "golang.org/x/text",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.34.0"
        },
        {
          "name": "golang.zx2c4.com/wireguard/wgctrl",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v0.0.0-20241231184526-a9ab2273dd10"
        },
        {
          "name": "google.golang.org/grpc",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.79.1"
        },
        {
          "name": "google.golang.org/protobuf",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.36.11"
        },
        {
          "name": "howett.net/plist",
          "manifest": "go.mod",
          "ecosystem": "go",
          "version_constraint": "v1.0.1"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "filippo.io/age",
            "direct": true,
            "version": "v1.3.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/anthropics/anthropic-sdk-go",
            "direct": true,
            "version": "v1.26.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/anytls/sing-anytls",
            "direct": true,
            "version": "v0.0.11",
            "ecosystem": "go"
          },
          {
            "name": "github.com/caddyserver/certmagic",
            "direct": true,
            "version": "v0.25.3-0.20260421143802-60d9d8b415d6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/caddyserver/zerossl",
            "direct": true,
            "version": "v0.1.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/coder/websocket",
            "direct": true,
            "version": "v1.8.14",
            "ecosystem": "go"
          },
          {
            "name": "github.com/creack/pty",
            "direct": true,
            "version": "v1.1.24",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cretz/bine",
            "direct": true,
            "version": "v0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/database64128/tfo-go/v2",
            "direct": true,
            "version": "v2.3.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-chi/chi/v5",
            "direct": true,
            "version": "v5.2.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-chi/render",
            "direct": true,
            "version": "v1.0.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/godbus/dbus/v5",
            "direct": true,
            "version": "v5.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gofrs/uuid/v5",
            "direct": true,
            "version": "v5.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/insomniacslk/dhcp",
            "direct": true,
            "version": "v0.0.0-20260220084031-5adc3eb26f91",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jsimonetti/rtnetlink",
            "direct": true,
            "version": "v1.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/keybase/go-keychain",
            "direct": true,
            "version": "v0.0.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/libdns/acmedns",
            "direct": true,
            "version": "v0.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/libdns/alidns",
            "direct": true,
            "version": "v1.0.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/libdns/cloudflare",
            "direct": true,
            "version": "v0.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/libdns/libdns",
            "direct": true,
            "version": "v1.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/logrusorgru/aurora",
            "direct": true,
            "version": "v2.0.3+incompatible",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mdlayher/netlink",
            "direct": true,
            "version": "v1.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/metacubex/utls",
            "direct": true,
            "version": "v1.8.7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mholt/acmez/v3",
            "direct": true,
            "version": "v3.1.6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/miekg/dns",
            "direct": true,
            "version": "v1.1.72",
            "ecosystem": "go"
          },
          {
            "name": "github.com/openai/openai-go/v3",
            "direct": true,
            "version": "v3.26.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/oschwald/maxminddb-golang",
            "direct": true,
            "version": "v1.13.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pkg/sftp",
            "direct": true,
            "version": "v1.13.10",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/asc-go",
            "direct": true,
            "version": "v0.0.0-20241217030726-d563060fe4e1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/bbolt",
            "direct": true,
            "version": "v0.0.0-20231014093535-ea5cb2fe9f0a",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cors",
            "direct": true,
            "version": "v1.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go",
            "direct": true,
            "version": "v0.0.0-20260712143338-d22f2ea3630e",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go",
            "direct": true,
            "version": "v0.0.0-20260731162621-4185d471b2e4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/all",
            "direct": true,
            "version": "v0.0.0-20260712143338-d22f2ea3630e",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/all",
            "direct": true,
            "version": "v0.0.0-20260731162621-4185d471b2e4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/fswatch",
            "direct": true,
            "version": "v0.1.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/gliderssh",
            "direct": true,
            "version": "v0.3.4-0.20260531100337-2194faca5648",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/gomobile",
            "direct": true,
            "version": "v0.1.12",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/gvisor",
            "direct": true,
            "version": "v0.0.0-20250811.0-sing-box-mod.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/gvisor",
            "direct": true,
            "version": "v0.0.0-20250822052253-5558536cf237",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/netlink",
            "direct": true,
            "version": "v0.0.0-20240612041022-b9a21c07ac6a",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/nftables",
            "direct": true,
            "version": "v0.3.0-mod.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/quic-go",
            "direct": true,
            "version": "v0.59.0-sing-box-mod.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing",
            "direct": true,
            "version": "v0.8.12-0.20260717153536-4f1ed45a99a5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing",
            "direct": true,
            "version": "v0.8.12-0.20260731081310-cb3e09a281aa",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-cloudflared",
            "direct": true,
            "version": "v0.1.3-0.20260706062323-d9787e794aa3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-mux",
            "direct": true,
            "version": "v0.3.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-openconnect",
            "direct": true,
            "version": "v0.0.0-20260720032640-bf28b6a6f10e",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-openconnect",
            "direct": true,
            "version": "v0.0.0-20260722140139-e0c977659ca2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-openvpn",
            "direct": true,
            "version": "v0.0.0-20260720132803-a5e407d00242",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-openvpn",
            "direct": true,
            "version": "v0.0.0-20260729104525-103eb5fe5eb6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-quic",
            "direct": true,
            "version": "v0.6.4-0.20260720125339-63fa6a7ebc31",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-quic",
            "direct": true,
            "version": "v0.6.4-0.20260727030926-0b32a5074a40",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-shadowsocks",
            "direct": true,
            "version": "v0.2.8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-shadowsocks2",
            "direct": true,
            "version": "v0.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-shadowtls",
            "direct": true,
            "version": "v0.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-snell",
            "direct": true,
            "version": "v0.0.0-20260719094200-c43fbee0e839",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-snell",
            "direct": true,
            "version": "v0.0.0-20260727093646-7cb813e07b73",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-tun",
            "direct": true,
            "version": "v0.8.12-0.20260719094150-557ca930fccd",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-tun",
            "direct": true,
            "version": "v0.8.12-0.20260729054528-2d9b8aed5fe2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-usbip",
            "direct": true,
            "version": "v0.0.0-20260616101517-efb91521eddb",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/sing-vmess",
            "direct": true,
            "version": "v0.2.8-0.20250909125414-3aed155119a1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/smux",
            "direct": true,
            "version": "v1.5.50-sing-box-mod.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/tailscale",
            "direct": true,
            "version": "v1.92.4-sing-box-1.13-mod.7.0.20260717155615-b353b93d194a",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/wireguard-go",
            "direct": true,
            "version": "v0.0.5-0.20260717024847-6f5e8b1947ae",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/ws",
            "direct": true,
            "version": "v0.0.0-20231204124109-acfe8907c854",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/cobra",
            "direct": true,
            "version": "v1.10.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/stretchr/testify",
            "direct": true,
            "version": "v1.11.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tailscale/go-winio",
            "direct": true,
            "version": "v0.0.0-20231025203758-c4f33415bf55",
            "ecosystem": "go"
          },
          {
            "name": "github.com/vishvananda/netns",
            "direct": true,
            "version": "v0.0.5",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/zap",
            "direct": true,
            "version": "v1.27.1",
            "ecosystem": "go"
          },
          {
            "name": "go4.org/netipx",
            "direct": true,
            "version": "v0.0.0-20231129151722-fdeea329fbba",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/crypto",
            "direct": true,
            "version": "v0.48.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/exp",
            "direct": true,
            "version": "v0.0.0-20251219203646-944ab1f22d93",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/mod",
            "direct": true,
            "version": "v0.33.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/net",
            "direct": true,
            "version": "v0.50.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sync",
            "direct": true,
            "version": "v0.19.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/sys",
            "direct": true,
            "version": "v0.41.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/text",
            "direct": true,
            "version": "v0.34.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.zx2c4.com/wireguard/wgctrl",
            "direct": true,
            "version": "v0.0.0-20241231184526-a9ab2273dd10",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/grpc",
            "direct": true,
            "version": "v1.79.1",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/protobuf",
            "direct": true,
            "version": "v1.36.11",
            "ecosystem": "go"
          },
          {
            "name": "howett.net/plist",
            "direct": true,
            "version": "v1.0.1",
            "ecosystem": "go"
          },
          {
            "name": "filippo.io/edwards25519",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "filippo.io/hpke",
            "direct": false,
            "version": "v0.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ajg/form",
            "direct": false,
            "version": "v1.5.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/akutz/memconn",
            "direct": false,
            "version": "v0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/alexbrainman/sspi",
            "direct": false,
            "version": "v0.0.0-20231016080023-1a75b4708caa",
            "ecosystem": "go"
          },
          {
            "name": "github.com/anchore/go-lzo",
            "direct": false,
            "version": "v0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/andybalholm/brotli",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/anmitsu/go-shlex",
            "direct": false,
            "version": "v0.0.0-20200514113438-38f4b401e2be",
            "ecosystem": "go"
          },
          {
            "name": "github.com/azure/go-ansiterm",
            "direct": false,
            "version": "v0.0.0-20210617225240-d185dfc1b5a1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cenkalti/backoff/v4",
            "direct": false,
            "version": "v4.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/cespare/xxhash/v2",
            "direct": false,
            "version": "v2.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/containerd/log",
            "direct": false,
            "version": "v0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/coreos/go-iptables",
            "direct": false,
            "version": "v0.7.1-0.20240112124308-65c67c9f46e6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/coreos/go-oidc/v3",
            "direct": false,
            "version": "v3.17.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/database64128/netx-go",
            "direct": false,
            "version": "v0.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/davecgh/go-spew",
            "direct": false,
            "version": "v1.1.2-0.20180830191138-d8f796af33cc",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dblohm7/wingoes",
            "direct": false,
            "version": "v0.0.0-20240119213807-a09d6be7affa",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dgrijalva/jwt-go/v4",
            "direct": false,
            "version": "v4.0.0-preview1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/dgryski/go-camellia",
            "direct": false,
            "version": "v0.0.0-20191119043421-69a8a13fb23d",
            "ecosystem": "go"
          },
          {
            "name": "github.com/distribution/reference",
            "direct": false,
            "version": "v0.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/docker/docker",
            "direct": false,
            "version": "v27.3.1+incompatible",
            "ecosystem": "go"
          },
          {
            "name": "github.com/docker/go-connections",
            "direct": false,
            "version": "v0.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/docker/go-units",
            "direct": false,
            "version": "v0.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ebitengine/purego",
            "direct": false,
            "version": "v0.10.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/felixge/httpsnoop",
            "direct": false,
            "version": "v1.0.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/florianl/go-nfqueue/v2",
            "direct": false,
            "version": "v2.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fsnotify/fsnotify",
            "direct": false,
            "version": "v1.9.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/fxamacker/cbor/v2",
            "direct": false,
            "version": "v2.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gaissmai/bart",
            "direct": false,
            "version": "v0.18.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-jose/go-jose/v4",
            "direct": false,
            "version": "v4.1.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-json-experiment/json",
            "direct": false,
            "version": "v0.0.0-20250813024750-ebf49471dced",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-logr/logr",
            "direct": false,
            "version": "v1.4.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-logr/stdr",
            "direct": false,
            "version": "v1.2.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/go-ole/go-ole",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gobwas/httphead",
            "direct": false,
            "version": "v0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gobwas/pool",
            "direct": false,
            "version": "v0.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/gogo/protobuf",
            "direct": false,
            "version": "v1.3.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/golang/groupcache",
            "direct": false,
            "version": "v0.0.0-20241129210726-2c02b8208cf8",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/btree",
            "direct": false,
            "version": "v1.1.3",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/certificate-transparency-go",
            "direct": false,
            "version": "v1.3.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-cmp",
            "direct": false,
            "version": "v0.7.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/go-querystring",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/gopacket",
            "direct": false,
            "version": "v1.1.19",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/nftables",
            "direct": false,
            "version": "v0.2.1-0.20240414091927-5e242ec57806",
            "ecosystem": "go"
          },
          {
            "name": "github.com/google/uuid",
            "direct": false,
            "version": "v1.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hashicorp/yamux",
            "direct": false,
            "version": "v0.1.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/hdevalence/ed25519consensus",
            "direct": false,
            "version": "v0.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/huin/goupnp",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/inconshreveable/mousetrap",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/jackpal/go-nat-pmp",
            "direct": false,
            "version": "v1.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/klauspost/compress",
            "direct": false,
            "version": "v1.18.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/klauspost/cpuid/v2",
            "direct": false,
            "version": "v2.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/koron/go-ssdp",
            "direct": false,
            "version": "v0.0.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/kr/fs",
            "direct": false,
            "version": "v0.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/libp2p/go-nat",
            "direct": false,
            "version": "v1.0.1-0.20250821073202-01afc089f138",
            "ecosystem": "go"
          },
          {
            "name": "github.com/libp2p/go-netroute",
            "direct": false,
            "version": "v0.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mdlayher/socket",
            "direct": false,
            "version": "v0.5.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/microsoft/go-winio",
            "direct": false,
            "version": "v0.6.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/mitchellh/go-ps",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/moby/docker-image-spec",
            "direct": false,
            "version": "v1.3.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/moby/term",
            "direct": false,
            "version": "v0.5.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/morikuni/aec",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/opencontainers/go-digest",
            "direct": false,
            "version": "v1.0.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/opencontainers/image-spec",
            "direct": false,
            "version": "v1.1.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/philhofer/fwd",
            "direct": false,
            "version": "v1.2.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pierrec/lz4/v4",
            "direct": false,
            "version": "v4.1.21",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pion/dtls/v3",
            "direct": false,
            "version": "v3.1.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pion/logging",
            "direct": false,
            "version": "v0.2.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pion/transport/v4",
            "direct": false,
            "version": "v4.0.2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pires/go-proxyproto",
            "direct": false,
            "version": "v0.8.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pkg/errors",
            "direct": false,
            "version": "v0.9.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/pmezard/go-difflib",
            "direct": false,
            "version": "v1.0.1-0.20181226105442-5d4384ee4fb2",
            "ecosystem": "go"
          },
          {
            "name": "github.com/prometheus-community/pro-bing",
            "direct": false,
            "version": "v0.4.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/quic-go/qpack",
            "direct": false,
            "version": "v0.6.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/ryuanerin/go-krypto",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/safchain/ethtool",
            "direct": false,
            "version": "v0.3.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_386",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_386",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_amd64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_amd64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_arm",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_arm",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_arm64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/android_arm64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/darwin_amd64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/darwin_amd64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/darwin_arm64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/darwin_arm64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/ios_amd64_simulator",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/ios_amd64_simulator",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/ios_arm64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/ios_arm64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/ios_arm64_simulator",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/ios_arm64_simulator",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_386",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_386",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_386_musl",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_386_musl",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_amd64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_amd64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_amd64_musl",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_amd64_musl",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm64_musl",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm64_musl",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm_musl",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_arm_musl",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_loong64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_loong64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_loong64_musl",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_loong64_musl",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_mips64le",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_mips64le",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_mipsle",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_mipsle",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_mipsle_musl",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_mipsle_musl",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_riscv64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_riscv64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_riscv64_musl",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/linux_riscv64_musl",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/tvos_amd64_simulator",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/tvos_amd64_simulator",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/tvos_arm64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/tvos_arm64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/tvos_arm64_simulator",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/tvos_arm64_simulator",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/windows_amd64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/windows_amd64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/windows_arm64",
            "direct": false,
            "version": "v0.0.0-20260712142643-1e5048bd5587",
            "ecosystem": "go"
          },
          {
            "name": "github.com/sagernet/cronet-go/lib/windows_arm64",
            "direct": false,
            "version": "v0.0.0-20260731161755-38229fb700f6",
            "ecosystem": "go"
          },
          {
            "name": "github.com/smallstep/pkcs7",
            "direct": false,
            "version": "v0.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spf13/pflag",
            "direct": false,
            "version": "v1.0.9",
            "ecosystem": "go"
          },
          {
            "name": "github.com/spyzhov/ajson",
            "direct": false,
            "version": "v0.9.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tailscale/certstore",
            "direct": false,
            "version": "v0.1.1-0.20231202035212-d3fa0460f47e",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tailscale/goupnp",
            "direct": false,
            "version": "v1.0.1-0.20210804011211-c64d0f06ea05",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tailscale/hujson",
            "direct": false,
            "version": "v0.0.0-20221223112325-20486734a56a",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tailscale/netlink",
            "direct": false,
            "version": "v1.1.1-0.20240822203006-4d49adab4de7",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tailscale/peercred",
            "direct": false,
            "version": "v0.0.0-20250107143737-35a0c7bd7edc",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tailscale/web-client-prebuilt",
            "direct": false,
            "version": "v0.0.0-20250124233751-d4cd19a26976",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tidwall/gjson",
            "direct": false,
            "version": "v1.18.0",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tidwall/match",
            "direct": false,
            "version": "v1.1.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tidwall/pretty",
            "direct": false,
            "version": "v1.2.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tidwall/sjson",
            "direct": false,
            "version": "v1.2.5",
            "ecosystem": "go"
          },
          {
            "name": "github.com/tjfoc/gmsm",
            "direct": false,
            "version": "v1.4.1",
            "ecosystem": "go"
          },
          {
            "name": "github.com/u-root/uio",
            "direct": false,
            "version": "v0.0.0-20240224005618-d2acac8f3701",
            "ecosystem": "go"
          },
          {
            "name": "github.com/x448/float16",
            "direct": false,
            "version": "v0.8.4",
            "ecosystem": "go"
          },
          {
            "name": "github.com/youmark/pkcs8",
            "direct": false,
            "version": "v0.0.0-20240726163527-a2c0da244d78",
            "ecosystem": "go"
          },
          {
            "name": "github.com/zeebo/blake3",
            "direct": false,
            "version": "v0.2.4",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/auto/sdk",
            "direct": false,
            "version": "v1.2.1",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",
            "direct": false,
            "version": "v0.59.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel",
            "direct": false,
            "version": "v1.39.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp",
            "direct": false,
            "version": "v1.31.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/metric",
            "direct": false,
            "version": "v1.39.0",
            "ecosystem": "go"
          },
          {
            "name": "go.opentelemetry.io/otel/trace",
            "direct": false,
            "version": "v1.39.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/goleak",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/multierr",
            "direct": false,
            "version": "v1.11.0",
            "ecosystem": "go"
          },
          {
            "name": "go.uber.org/zap/exp",
            "direct": false,
            "version": "v0.3.0",
            "ecosystem": "go"
          },
          {
            "name": "go4.org/mem",
            "direct": false,
            "version": "v0.0.0-20240501181205-ae6ca9944745",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/oauth2",
            "direct": false,
            "version": "v0.34.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/term",
            "direct": false,
            "version": "v0.40.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/time",
            "direct": false,
            "version": "v0.14.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.org/x/tools",
            "direct": false,
            "version": "v0.42.0",
            "ecosystem": "go"
          },
          {
            "name": "golang.zx2c4.com/wintun",
            "direct": false,
            "version": "v0.0.0-20230126152724-0fa3db229ce2",
            "ecosystem": "go"
          },
          {
            "name": "golang.zx2c4.com/wireguard/windows",
            "direct": false,
            "version": "v0.5.3",
            "ecosystem": "go"
          },
          {
            "name": "google.golang.org/genproto/googleapis/rpc",
            "direct": false,
            "version": "v0.0.0-20251202230838-ff82c1b0f217",
            "ecosystem": "go"
          },
          {
            "name": "gopkg.in/yaml.v3",
            "direct": false,
            "version": "v3.0.1",
            "ecosystem": "go"
          },
          {
            "name": "gotest.tools/v3",
            "direct": false,
            "version": "v3.5.1",
            "ecosystem": "go"
          },
          {
            "name": "lukechampine.com/blake3",
            "direct": false,
            "version": "v1.3.0",
            "ecosystem": "go"
          },
          {
            "name": "zombiezen.com/go/capnproto2",
            "direct": false,
            "version": "v2.18.2+incompatible",
            "ecosystem": "go"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 256,
        "direct_count": 83,
        "indirect_count": 173
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 42,
        "merged_prs": 204,
        "open_issues": 242,
        "closed_ratio": 0.925,
        "closed_issues": 3001,
        "closed_unmerged_prs": 446
      },
      "bus_factor": 1,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "nekohasekai",
          "commits": 2362,
          "avatar_url": "https://avatars.githubusercontent.com/u/56506714?v=4"
        },
        {
          "type": "User",
          "login": "dyhkwong",
          "commits": 19,
          "avatar_url": "https://avatars.githubusercontent.com/u/50692134?v=4"
        },
        {
          "type": "User",
          "login": "H1JK",
          "commits": 14,
          "avatar_url": "https://avatars.githubusercontent.com/u/106379370?v=4"
        },
        {
          "type": "User",
          "login": "anytls",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/198425817?v=4"
        },
        {
          "type": "User",
          "login": "xchacha20-poly1305",
          "commits": 7,
          "avatar_url": "https://avatars.githubusercontent.com/u/139959885?v=4"
        },
        {
          "type": "User",
          "login": "Mahdi-zarei",
          "commits": 6,
          "avatar_url": "https://avatars.githubusercontent.com/u/80265960?v=4"
        },
        {
          "type": "User",
          "login": "wwqgtxx",
          "commits": 5,
          "avatar_url": "https://avatars.githubusercontent.com/u/582584?v=4"
        },
        {
          "type": "User",
          "login": "arm64v8a",
          "commits": 4,
          "avatar_url": "https://avatars.githubusercontent.com/u/48624112?v=4"
        },
        {
          "type": "User",
          "login": "hiddify-com",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/114227601?v=4"
        },
        {
          "type": "User",
          "login": "Fei1Yang",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/48410544?v=4"
        }
      ],
      "contributors_sampled": 97,
      "top_contributor_share": 0.931
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "build.yml",
        "docker.yml",
        "lint.yml",
        "linux.yml",
        "stale.yml",
        "test.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        ".golangci.yml"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "go.sum"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 8,
            "reason": "binaries present in source code",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 0,
            "reason": "branch protection not enabled on development/release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": null,
            "reason": "no pull request found",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
          },
          {
            "name": "CII-Best-Practices",
            "score": 0,
            "reason": "no effort to earn an OpenSSF best practices badge detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
          },
          {
            "name": "Code-Review",
            "score": 0,
            "reason": "Found 0/30 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 4 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 10,
            "reason": "update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 10,
            "reason": "project is fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 9,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 3,
            "reason": "dependency not pinned by hash detected -- score normalized to 3",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "no SAST tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 0,
            "reason": "Project has not signed or included provenance with any releases.",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
          },
          {
            "name": "Token-Permissions",
            "score": 0,
            "reason": "detected GitHub workflow tokens with excessive permissions",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
          },
          {
            "name": "Vulnerabilities",
            "score": 0,
            "reason": "41 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "d2438c2867ab055a88e622a8f164b2091ae6601d",
        "ran_at": "2026-08-02T04:23:53Z",
        "aggregate_score": 4.6,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-08-02T02:15:04Z",
      "oldest_open_prs": [
        {
          "number": 3896,
          "created_at": "2026-03-11T10:42:51Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3897,
          "created_at": "2026-03-11T10:44:48Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3898,
          "created_at": "2026-03-11T12:14:11Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3900,
          "created_at": "2026-03-11T12:14:27Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3913,
          "created_at": "2026-03-14T08:23:34Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3936,
          "created_at": "2026-03-19T02:36:48Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3937,
          "created_at": "2026-03-19T02:48:21Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3979,
          "created_at": "2026-03-31T07:16:41Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 3985,
          "created_at": "2026-04-01T06:53:10Z",
          "last_comment_at": "2026-04-03T08:06:08Z",
          "last_comment_author": "kavore"
        },
        {
          "number": 4012,
          "created_at": "2026-04-08T16:18:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4014,
          "created_at": "2026-04-08T19:46:35Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4021,
          "created_at": "2026-04-10T06:56:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4040,
          "created_at": "2026-04-13T15:37:20Z",
          "last_comment_at": "2026-04-13T15:39:45Z",
          "last_comment_author": "major1201"
        },
        {
          "number": 4064,
          "created_at": "2026-04-21T06:05:48Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4077,
          "created_at": "2026-04-24T20:31:10Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4079,
          "created_at": "2026-04-26T04:47:01Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4081,
          "created_at": "2026-04-26T05:47:49Z",
          "last_comment_at": "2026-04-28T01:38:15Z",
          "last_comment_author": "nekohasekai"
        },
        {
          "number": 4102,
          "created_at": "2026-05-02T10:53:11Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4108,
          "created_at": "2026-05-04T04:58:16Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 4138,
          "created_at": "2026-05-14T11:39:05Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-22T07:24:20Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 353,
          "created_at": "2023-02-09T09:19:19Z",
          "last_comment_at": "2026-05-11T02:16:33Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1263,
          "created_at": "2023-12-20T10:08:26Z",
          "last_comment_at": "2025-04-19T10:22:59Z",
          "last_comment_author": "nokaka"
        },
        {
          "number": 1494,
          "created_at": "2024-02-24T12:07:20Z",
          "last_comment_at": "2025-02-15T05:01:54Z",
          "last_comment_author": "hellodword"
        },
        {
          "number": 1564,
          "created_at": "2024-03-12T15:20:09Z",
          "last_comment_at": "2024-08-20T23:20:42Z",
          "last_comment_author": "dKenGuru"
        },
        {
          "number": 1616,
          "created_at": "2024-03-24T08:02:01Z",
          "last_comment_at": "2026-01-30T16:50:38Z",
          "last_comment_author": "StarHzj"
        },
        {
          "number": 1681,
          "created_at": "2024-04-13T09:13:14Z",
          "last_comment_at": "2024-06-17T01:53:32Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1738,
          "created_at": "2024-05-05T09:42:52Z",
          "last_comment_at": "2025-04-16T09:04:48Z",
          "last_comment_author": "BK8000L"
        },
        {
          "number": 1825,
          "created_at": "2024-06-03T06:09:13Z",
          "last_comment_at": "2024-08-04T22:08:00Z",
          "last_comment_author": "Anderhar"
        },
        {
          "number": 1851,
          "created_at": "2024-06-10T15:39:38Z",
          "last_comment_at": "2024-06-13T23:51:23Z",
          "last_comment_author": "demarcush"
        },
        {
          "number": 1862,
          "created_at": "2024-06-13T05:07:22Z",
          "last_comment_at": "2024-08-16T02:03:53Z",
          "last_comment_author": "dowson521"
        },
        {
          "number": 1911,
          "created_at": "2024-07-04T02:20:08Z",
          "last_comment_at": "2025-05-09T11:45:09Z",
          "last_comment_author": null
        },
        {
          "number": 1988,
          "created_at": "2024-07-27T15:06:21Z",
          "last_comment_at": "2024-09-08T13:42:08Z",
          "last_comment_author": "molink36"
        },
        {
          "number": 1990,
          "created_at": "2024-07-28T10:58:40Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 2001,
          "created_at": "2024-08-04T03:20:57Z",
          "last_comment_at": "2024-08-06T08:27:20Z",
          "last_comment_author": "ericsyj"
        },
        {
          "number": 2031,
          "created_at": "2024-08-16T12:01:33Z",
          "last_comment_at": "2024-10-15T04:43:22Z",
          "last_comment_author": "stek29"
        },
        {
          "number": 2045,
          "created_at": "2024-08-19T08:43:29Z",
          "last_comment_at": "2025-12-15T03:21:54Z",
          "last_comment_author": "imoonkin"
        },
        {
          "number": 2093,
          "created_at": "2024-09-08T06:21:49Z",
          "last_comment_at": "2025-01-21T19:05:32Z",
          "last_comment_author": "swysgh"
        },
        {
          "number": 2107,
          "created_at": "2024-09-13T13:28:24Z",
          "last_comment_at": "2024-09-14T01:32:34Z",
          "last_comment_author": "nekohasekai"
        },
        {
          "number": 2130,
          "created_at": "2024-09-21T21:53:12Z",
          "last_comment_at": "2026-03-14T18:20:24Z",
          "last_comment_author": "this-cat"
        },
        {
          "number": 2133,
          "created_at": "2024-09-23T15:22:32Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/SagerNet/sing-box",
    "host": "github.com",
    "name": "sing-box",
    "owner": "SagerNet"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 73,
      "inputs": {
        "security": 46,
        "vitality": 95,
        "community": 73,
        "governance": 63,
        "engineering": 80
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 95,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "commits_last_year": 688,
              "human_commit_share": 1,
              "days_since_last_push": 1,
              "active_weeks_last_year": 49
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "49/52 weeks with commits",
                "points": 33.9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 49
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "688 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 688
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "releases_count": 100,
              "latest_release_tag": "v1.14.0-beta.4",
              "releases_from_tags": false,
              "days_since_latest_release": 1,
              "mean_days_between_releases": 1.7
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "100 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 100
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 1 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~1.7 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 1.7
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "openssf_scorecard_signed_releases",
                "name": "OpenSSF Scorecard: Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "abandonment",
            "band": "excellent",
            "name": "Abandonment",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "cap": null,
              "state": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 1,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 1 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 1
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 73,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "forks": 4382,
              "stars": 36636,
              "watchers": 193,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "36,636 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 36636
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "4,382 forks",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 4382
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "193 watchers",
                "points": 12.7,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 193
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "at_risk",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 44,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": false,
              "has_issue_template": false,
              "has_code_of_conduct": false,
              "has_pull_request_template": false
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 22.5,
                "status": "met",
                "details": [],
                "max_points": 22.5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file present, not a recognized license",
                "points": 16.9,
                "status": "partial",
                "details": [
                  {
                    "code": "license_custom",
                    "params": {}
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 18
              },
              {
                "key": "code_of_conduct",
                "name": "Code of conduct",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 13.5
              },
              {
                "key": "issue_template",
                "name": "Issue template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.2
              },
              {
                "key": "pr_template",
                "name": "PR template",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.3
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "moderate",
        "name": "Sustainability & Governance",
        "value": 63,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 34,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 97,
              "top_contributor_share": 0.931
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "1 contributor(s) cover half of all commits",
                "points": 9,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 1
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 93% of commits",
                "points": 1.6,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 93
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "97 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 97
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 4 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "moderate",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 55,
            "inputs": {
              "merged_prs": 204,
              "open_issues": 242,
              "closed_issues": 3001,
              "issue_closed_ratio": 0.925,
              "closed_unmerged_prs": 446
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "92% of issues closed",
                "points": 43.2,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 92
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "204/650 decided PRs merged",
                "points": 12,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 204,
                      "decided": 650
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "good",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 78,
            "inputs": {
              "followers": 2399,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "SagerNet",
              "public_repos": 96,
              "account_age_days": 1923
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "2,399 followers of SagerNet",
                "points": 24.3,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 2399,
                      "login": "SagerNet"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "96 public repos, account ~5 yr old",
                "points": 23.5,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 96
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 5
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "github.com/sagernet/sing-box"
              ],
              "ecosystems": "go",
              "any_deprecated": false,
              "min_days_since_publish": 3
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on go",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "go"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 3 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 3
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "561 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 561
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 80,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: CI-Tests. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "openssf_scorecard_ci_tests"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 80,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": false
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "6 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 6
                    }
                  }
                ],
                "max_points": 24
              },
              {
                "key": "tests_present",
                "name": "Tests present",
                "detail": null,
                "points": 24,
                "status": "met",
                "details": [],
                "max_points": 24
              },
              {
                "key": "linter_config",
                "name": "Linter config",
                "detail": ".golangci.yml",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "no pull request found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "topics": [],
              "has_wiki": false,
              "homepage": "https://sing-box.sagernet.org/",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://sing-box.sagernet.org/",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 46,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): CI-Tests. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "ci_tests"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 46,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 17,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 1,
              "scorecard_aggregate": 4.6
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "binaries present in source code",
                "points": 6,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection not enabled on development/release branches",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "no pull request found",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "max_points": 2.5
              },
              {
                "key": "cii_best_practices",
                "name": "CII-Best-Practices",
                "detail": "no effort to earn an OpenSSF best practices badge detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "code_review",
                "name": "Code-Review",
                "detail": "Found 0/30 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 4 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "update tool detected",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is fuzzed",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 3",
                "points": 1.5,
                "status": "partial",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "no SAST tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "Project has not signed or included provenance with any releases.",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "token_permissions",
                "name": "Token-Permissions",
                "detail": "detected GitHub workflow tokens with excessive permissions",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "vulnerabilities",
                "name": "Vulnerabilities",
                "detail": "41 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "at_risk",
            "name": "Dependency advisories",
            "note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 256 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "indirect_dependencies_free_of_known_advisories"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              },
              {
                "code": "advisories_scope_repository",
                "params": {
                  "assessed": 256
                }
              },
              {
                "code": "advisories_repo_graph_caveat",
                "params": {}
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 44,
            "inputs": {
              "source": "osv",
              "advisories": 66,
              "affected_packages": 12,
              "assessed_packages": 256,
              "unassessed_packages": 0,
              "affected_by_severity": "critical 2, high 3, moderate 2, low 1, unknown 4",
              "direct_affected_packages": 6
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "6 affected: golang.org/x/crypto v0.48.0 (critical 10.0), google.golang.org/grpc v1.79.1 (critical 9.1), golang.org/x/net v0.50.0 (moderate 6.5), +3 more",
                "points": 4.3,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 6,
                      "packages": "golang.org/x/crypto v0.48.0 (critical 10.0), google.golang.org/grpc v1.79.1 (critical 9.1), golang.org/x/net v0.50.0 (moderate 6.5)"
                    }
                  },
                  {
                    "code": "advisories_affected_more",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "transitive set not separable from development and test dependencies in this scope",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "advisories_scope_not_separable",
                    "params": {}
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "2 advisory-carrying package(s) unaddressed past 90 days; oldest published 156 days ago",
                "points": 28.8,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_stale",
                    "params": {
                      "days": 90,
                      "count": 2,
                      "oldest": 156
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "malicious_dependencies",
            "band": "excellent",
            "name": "Malicious dependencies",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "source": "osv",
              "meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
              "packages": [],
              "red_flag": false,
              "assessed_packages": 256,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "commit_weight_rule": {
                "min_commits": 50,
                "min_commit_share": 0.1
              },
              "review_only_matches": 0,
              "below_threshold_exposures": [],
              "assessed_self_published_locations": 4
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "moderate",
        "name": "AI Readiness",
        "value": 57,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "critical",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 20,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.38,
              "agent_instruction_files": [],
              "agent_instruction_max_bytes": null
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "no CLAUDE.md / AGENTS.md / editor rules",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_instructions",
                    "params": {}
                  }
                ],
                "max_points": 45
              },
              {
                "key": "machine_readable_docs_llms_txt",
                "name": "Machine-readable docs (llms.txt)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              },
              {
                "key": "legible_commit_history",
                "name": "Legible commit history",
                "detail": "38 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 20.3,
                "status": "partial",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 38,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "go.sum"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [],
              "agent_commit_share": 0,
              "toolchain_manifests": [
                "go.mod",
                "test/go.mod"
              ],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Makefile"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": ".golangci.yml",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".golangci.yml"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "Go (statically typed)",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "no agent-authored commits among the last 100",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_agent_authored_commits",
                    "params": {
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 3",
                "points": 3,
                "status": "partial",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "primary_language": "Go",
              "largest_source_bytes": 244607,
              "source_files_sampled": 1056,
              "oversized_source_files": 7
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "Go (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "Go"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "7/1056 source files over 60KB",
                "points": 54.6,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1056,
                      "oversized": 7
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [],
              "has_mcp_signal": false,
              "api_schema_files": [
                "daemon/managed_service.proto",
                "daemon/started_service.proto",
                "experimental/boxdd/desktop_service.proto",
                "experimental/v2rayapi/stats.proto",
                "transport/v2raygrpc/stream.proto"
              ]
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": "daemon/managed_service.proto, daemon/started_service.proto, experimental/boxdd/desktop_service.proto, experimental/v2rayapi/stats.proto, transport/v2raygrpc/stream.proto",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "daemon/managed_service.proto, daemon/started_service.proto, experimental/boxdd/desktop_service.proto, experimental/v2rayapi/stats.proto, transport/v2raygrpc/stream.proto"
                    }
                  }
                ],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.14.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-08-02T04:24:11.823710Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/s/SagerNet/sing-box.svg",
  "full_name": "SagerNet/sing-box",
  "license_state": "custom",
  "license_spdx": null
}

评分是信号,而非担保。 评分反映的是 GitHub 上公开可见的实践——不是代码审计,也不是安全保证。

缺失数据将被剔除并重新归一化权重,绝不按零分计。方法论已版本化并公开:指标 v1.14.0、模式 v0.27.0—— 完整方法论 · 指标知识库.

单项结果在整体记录中的位置: 汇总统计Go.