公开记录
软件健康报告模式 0.26.0 · 指标 1.13.0 · 2026-07-22 09:25 UTC

0-AI-UG / cate

An infinite zoomable canvas for coding. Editor, terminal, and browser panels in a spatial workspace.

TypeScriptMIT★ 1,911 星标⑂ 124 复刻始于 2026年3月在 GitHub 上查看 ↗

0-AI-UG/cate 的健康指数为 100 分中的 65 分,处于「中等」区间。 其得分最高的类别是Engineering Quality(82/100),最低的是Security(36/100)。 最近一次更新在今天。 近期的大部分工作由 1 位贡献者完成。

65
总分 / 100
中等

软件健康指数

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

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

评分画像

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

所有权

0-AI UG组织
11 关注者6 个公开仓库始于 2026年1月

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

软件包生态系统

注册表软件包版本月下载量版本数最近发布标签
npmcate指向其他仓库——不计分0.1.03634289 天前xmljsonprettyprintcatcatedoge

按类别列示的指标

活力

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

81良好 · 占总体的 22%
评分方式
36/36推送新近度 — 最近一次推送于 0 天前
11.1/36提交节奏 — 52 周中有 16 周有提交
18/18提交量 — 最近一年 902 次提交
10/10OpenSSF Scorecard:Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
所用输入
commits_last_year902
human_commit_share1
days_since_last_push0
active_weeks_last_year16

发布纪律

90优秀
评分方式
27/27有发布版本 — 已发布 77 个发布版本
36/36发布时效 — 最近一次发布版本于 0 天前
27/27发布节奏 — 约每 1.6 天发布一次
0/10OpenSSF Scorecard:Signed-Releases — Project has not signed or included provenance with any releases.
所用输入
releases_count77
latest_release_tagv1.5.3
releases_from_tags
days_since_latest_release0
mean_days_between_releases1.6

社区与采用

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

72良好 · 占总体的 18%
评分方式
53.2/60星标 — 1,911 个星标
17.4/25复刻 — 124 个复刻
3.3/15关注者 — 5 位关注者
所用输入
forks124
stars1,911
watchers5
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonwindow_too_short

社区健康

70良好
评分方式
22.5/22.5README
22.5/22.5许可证 — 可识别的许可证(MIT)
18/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

可持续性与治理

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

52中等 · 占总体的 24%
评分方式
9/54巴士系数 — 1 位贡献者贡献了半数提交
10.2/22.5提交分布 — 头号贡献者编写了 55% 的提交
13.5/13.5贡献者广度 — 15 位贡献者
0/10OpenSSF Scorecard:Contributors — project has 0 contributing companies or organizations -- score normalized to 0
所用输入
bus_factor1
contributors_sampled15
top_contributor_share0.546
评分方式
45/46.8议题解决 — 96% 的议题已关闭
36.6/38.3PR 接受 — 已裁定的 PR 中 388/406 已合并
0/15OpenSSF Scorecard:Code-Review — Found 0/11 approved changesets -- score normalized to 0
所用输入
merged_prs388
open_issues3
closed_issues77
issue_closed_ratio0.963
closed_unmerged_prs18
评分方式
30/30所有权背书 — 组织持有
0/20已验证域名
7.8/25所有者影响力 — 0-AI-UG 有 11 位关注者
7.1/25既往记录 — 6 个公开仓库,账户约 0 年
所用输入
followers11
owner_typeOrganization
is_verified
owner_login0-AI-UG
public_repos6
account_age_days181

工程质量

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

82良好 · 占总体的 20%

工程实践

84良好
评分方式
24/24CI 工作流 — 3 个工作流
24/24存在测试
16/16Linter 配置 — eslint.config.mjs
0/9.6Pre-commit 钩子
0/6.4.editorconfig
20/20OpenSSF Scorecard:CI-Tests — 11 out of 11 merged PRs checked by a CI test -- score normalized to 10
所用输入
has_ci
has_tests
has_editorconfig
has_linter_config
has_precommit_config

文档

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

安全

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

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

安全态势

34存在风险
评分方式
7.5/7.5Binary-Artifacts — no binaries found in the repo
2.2/7.5Branch-Protection — branch protection is not maximal on development and all release branches
2.5/2.5CI-Tests — 11 out of 11 merged PRs checked by a CI test -- score normalized to 10
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
0/7.5Code-Review — Found 0/11 approved changesets -- score normalized to 0
0/2.5Contributors — project has 0 contributing companies or organizations -- score normalized to 0
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5许可证 — license file detected
7.5/7.5Maintained — 30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
0/5Packaging — 无数据
1.5/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 3
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
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 — 32 existing vulnerabilities detected
所用输入
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate3.4
已排除计分(无数据或不适用):packaging。 其余权重已重新归一化。

依赖安全公告

44存在风险
评分方式
17.9/35直接依赖不含已知公告 — 1 个受影响:request 2.88.2 (moderate 6.1)
6.1/25间接依赖不含已知公告 — 5 个受影响:form-data 2.3.3 (high 7.5), uuid 3.4.0 (high 7.5), highlight.js 8.9.1 (moderate 5.8),另有 2 个
20.3/40没有长期未处理的公告 — 6 个携带公告的软件包超过 90 天未处理;最早一条发布于 2,065 天前
所用输入
sourceosv
advisories7
affected_packages6
assessed_packages99
unassessed_packages0
affected_by_severityhigh 2, moderate 4
direct_affected_packages1
比对的是 npm:cate@0.1.0 的运行时依赖闭包——安装已发布的软件包时真正被拉取进来的内容——共 99 个软件包。 未对可达性进行分析。

AI 就绪度

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

69中等 · 占总体的 0%
评分方式
45/45代理指令 — AGENTS.md, CLAUDE.md
0/15机器可读文档(llms.txt)
40/40可读的提交历史 — 100 次人类提交中有 81 次说明了意图(结构化标题或解释性正文)
所用输入
has_llms_txt
legible_history_share0.81
agent_instruction_filesAGENTS.md, CLAUDE.md
agent_instruction_max_bytes5,879
评分方式
0/18一条命令的引导启动
22/22自动化测试
11/11Lint / 格式化配置 — eslint.config.mjs
11/11静态类型检查 — tsconfig.json
10/10可复现环境 — 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
lockfilespackage-lock.json
has_dockerfile
typed_language
bootstrap_files
has_devcontainer
has_linter_config
typecheck_configstsconfig.json
agent_commit_share0
toolchain_manifests
dependency_bot_commit_share0
评分方式
45/45可类型检查的代码 — TypeScript(静态类型)
54.9/55可控的文件大小 — 采样的 902 个源文件中有 2 个超过 60KB
所用输入
primary_languageTypeScript
largest_source_bytes94,796
source_files_sampled902
oversized_source_files2

机器可读接口

40存在风险
评分方式
0/40API 模式(OpenAPI/GraphQL/proto)
0/20MCP 服务器
40/40可运行示例 — examples
所用输入
example_dirsexamples
has_mcp_signal
api_schema_files

关键数据

1,911GitHub 星标
15贡献者
902最近 12 个月提交数
0距最近推送天数
77发布版本数
1巴士系数(bus factor)
3开放议题
npm软件包生态系统数

数据采集警告

  • npm package 'cate' points at a different repository (https://github.com/boo1ean/cate); excluded from ecosystem scoring

更多细节

Star 与 Fork 历史 1,911 ★ / 124 ⇿
1,911Star
124Fork
55发布

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

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

04008001,2001,6002,0001,9111241272026-042026-062026-07
主版本 1次版本 6修订 34
OpenSSF Scorecard 3.4 / 10
3.4综合

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

10Binary-Artifactsno binaries found in the repo
3Branch-Protectionbranch protection is not maximal on development and all release branches
10CI-Tests11 out of 11 merged PRs checked by a CI test -- score normalized to 10
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
0Code-ReviewFound 0/11 approved changesets -- score normalized to 0
0Contributorsproject has 0 contributing companies or organizations -- score normalized to 0
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
不适用Packagingpackaging workflow not detected
3Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 3
0SASTSAST tool is not run on all commits -- score normalized to 0
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
0Vulnerabilities32 existing vulnerabilities detected
直接依赖 26
注册表软件包版本约束清单文件
npm@earendil-works/pi-agent-core^0.80.6package.json
npm@earendil-works/pi-ai^0.80.6package.json
npm@parcel/watcher^2.5.1package.json
npm@phosphor-icons/react^2.1.10package.json
npm@sentry/electron^5.11.0package.json
npm@types/ssh2^1.15.5package.json
npm@xterm/addon-fit^0.10.0package.json
npm@xterm/addon-search^0.16.0package.json
npm@xterm/addon-serialize^0.13.0package.json
npm@xterm/addon-web-links^0.11.0package.json
npm@xterm/addon-webgl^0.18.0package.json
npm@xterm/xterm^5.5.0package.json
npmchokidar^4.0.0package.json
npmelectron-log^5.4.3package.json
npmelectron-updater^6.8.3package.json
npmmammoth^1.12.0package.json
npmmonaco-editor^0.52.0package.json
npmpdfjs-dist^5.7.284package.json
npmreact^18.3.0package.json
npmreact-dom^18.3.0package.json
npmreact-markdown^10.1.0package.json
npmremark-gfm^4.0.1package.json
npmsimple-git^3.27.0package.json
npmssh2^1.17.0package.json
npmuse-sync-external-store^1.6.0package.json
npmzustand^5.0.0package.json
全部依赖 1,060

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

注册表软件包版本关系
npm@earendil-works/pi-agent-core0.80.6直接
npm@earendil-works/pi-ai0.80.6直接
npm@parcel/watcher2.5.6直接
npm@phosphor-icons/react2.1.10直接
npm@sentry/electron5.12.0直接
npm@types/ssh21.15.5直接
npm@xterm/addon-fit0.10.0直接
npm@xterm/addon-search0.16.0直接
npm@xterm/addon-serialize0.13.0直接
npm@xterm/addon-web-links0.11.0直接
npm@xterm/addon-webgl0.18.0直接
npm@xterm/xterm5.5.0直接
npmchokidar3.6.0直接
npmchokidar4.0.3直接
npmelectron-log5.4.3直接
npmelectron-updater6.8.3直接
npmmammoth1.12.0直接
npmmonaco-editor0.52.2直接
npmpdfjs-dist5.7.284直接
npmreact18.3.1直接
npmreact-dom18.3.1直接
npmreact-markdown10.1.0直接
npmremark-gfm4.0.1直接
npmsimple-git3.35.2直接
npmssh21.17.0直接
npmuse-sync-external-store1.6.0直接
npmzustand5.0.12直接
npm7zip-bin5.2.0间接
npm@alloc/quick-lru5.2.0间接
npm@anthropic-ai/sdk0.91.1间接
npm@asamuzakjp/css-color5.1.11间接
npm@asamuzakjp/dom-selector7.1.1间接
npm@asamuzakjp/generational-cache1.0.1间接
npm@asamuzakjp/nwsapi2.3.9间接
npm@aws-crypto/crc325.2.0间接
npm@aws-crypto/sha256-browser5.2.0间接
npm@aws-crypto/sha256-js5.2.0间接
npm@aws-crypto/supports-web-crypto5.2.0间接
npm@aws-crypto/util5.2.0间接
npm@aws-sdk/client-bedrock-runtime3.1048.0间接
npm@aws-sdk/core3.974.11间接
npm@aws-sdk/core3.975.1间接
npm@aws-sdk/credential-provider-env3.972.37间接
npm@aws-sdk/credential-provider-env3.972.57间接
npm@aws-sdk/credential-provider-http3.972.39间接
npm@aws-sdk/credential-provider-http3.972.59间接
npm@aws-sdk/credential-provider-ini3.972.41间接
npm@aws-sdk/credential-provider-ini3.973.1间接
npm@aws-sdk/credential-provider-login3.972.41间接
npm@aws-sdk/credential-provider-login3.972.63间接
npm@aws-sdk/credential-provider-node3.972.42间接
npm@aws-sdk/credential-provider-node3.972.66间接
npm@aws-sdk/credential-provider-process3.972.37间接
npm@aws-sdk/credential-provider-process3.972.57间接
npm@aws-sdk/credential-provider-sso3.972.41间接
npm@aws-sdk/credential-provider-sso3.973.1间接
npm@aws-sdk/credential-provider-web-identity3.972.41间接
npm@aws-sdk/credential-provider-web-identity3.972.63间接
npm@aws-sdk/eventstream-handler-node3.972.16间接
npm@aws-sdk/eventstream-handler-node3.972.26间接
npm@aws-sdk/middleware-eventstream3.972.12间接
npm@aws-sdk/middleware-eventstream3.972.22间接
npm@aws-sdk/middleware-websocket3.972.19间接
npm@aws-sdk/middleware-websocket3.972.39间接
npm@aws-sdk/nested-clients3.997.31间接
npm@aws-sdk/nested-clients3.997.9间接
npm@aws-sdk/signature-v4-multi-region3.996.27间接
npm@aws-sdk/signature-v4-multi-region3.996.39间接
npm@aws-sdk/token-providers3.1048.0间接
npm@aws-sdk/token-providers3.1083.0间接
npm@aws-sdk/types3.973.8间接
npm@aws-sdk/types3.974.0间接
npm@aws-sdk/util-locate-window3.965.5间接
npm@aws-sdk/util-locate-window3.965.8间接
npm@aws-sdk/xml-builder3.972.24间接
npm@aws-sdk/xml-builder3.972.34间接
npm@aws/lambda-invoke-store0.2.4间接
npm@aws/lambda-invoke-store0.3.0间接
npm@babel/code-frame7.29.0间接
npm@babel/compat-data7.29.0间接
npm@babel/core7.29.0间接
npm@babel/generator7.29.1间接
npm@babel/helper-compilation-targets7.28.6间接
npm@babel/helper-globals7.28.0间接
npm@babel/helper-module-imports7.28.6间接
npm@babel/helper-module-transforms7.28.6间接
npm@babel/helper-plugin-utils7.28.6间接
npm@babel/helper-string-parser7.27.1间接
npm@babel/helper-validator-identifier7.28.5间接
npm@babel/helper-validator-option7.27.1间接
npm@babel/helpers7.29.2间接
npm@babel/parser7.29.2间接
npm@babel/plugin-transform-arrow-functions7.27.1间接
npm@babel/plugin-transform-react-jsx-self7.27.1间接
npm@babel/plugin-transform-react-jsx-source7.27.1间接
npm@babel/runtime7.29.2间接
npm@babel/runtime7.29.7间接
npm@babel/template7.28.6间接
npm@babel/traverse7.29.0间接
npm@babel/types7.29.0间接
npm@bramus/specificity2.4.2间接
npm@csstools/color-helpers6.0.2间接
npm@csstools/css-calc3.2.1间接
npm@csstools/css-color-parser4.1.1间接
npm@csstools/css-parser-algorithms4.0.0间接
npm@csstools/css-syntax-patches-for-csstree1.1.4间接
npm@csstools/css-tokenizer4.0.0间接
npm@develar/schema-utils2.6.5间接
npm@earendil-works/pi-coding-agent0.80.6间接
npm@earendil-works/pi-tui0.80.6间接
npm@electron/asar3.4.1间接
npm@electron/fuses1.8.0间接
npm@electron/get2.0.3间接
npm@electron/get3.1.0间接
npm@electron/notarize2.5.0间接
npm@electron/osx-sign1.3.3间接
npm@electron/rebuild4.0.3间接
npm@electron/universal2.0.3间接
npm@emnapi/runtime1.9.2间接
npm@esbuild/aix-ppc640.25.12间接
npm@esbuild/aix-ppc640.27.7间接
npm@esbuild/android-arm0.25.12间接
npm@esbuild/android-arm0.27.7间接
npm@esbuild/android-arm640.25.12间接
npm@esbuild/android-arm640.27.7间接
npm@esbuild/android-x640.25.12间接
npm@esbuild/android-x640.27.7间接
npm@esbuild/darwin-arm640.25.12间接
npm@esbuild/darwin-arm640.27.7间接
npm@esbuild/darwin-x640.25.12间接
npm@esbuild/darwin-x640.27.7间接
npm@esbuild/freebsd-arm640.25.12间接
npm@esbuild/freebsd-arm640.27.7间接
npm@esbuild/freebsd-x640.25.12间接
npm@esbuild/freebsd-x640.27.7间接
npm@esbuild/linux-arm0.25.12间接
npm@esbuild/linux-arm0.27.7间接
npm@esbuild/linux-arm640.25.12间接
npm@esbuild/linux-arm640.27.7间接
npm@esbuild/linux-ia320.25.12间接
npm@esbuild/linux-ia320.27.7间接
npm@esbuild/linux-loong640.25.12间接
npm@esbuild/linux-loong640.27.7间接
npm@esbuild/linux-mips64el0.25.12间接
npm@esbuild/linux-mips64el0.27.7间接
npm@esbuild/linux-ppc640.25.12间接
npm@esbuild/linux-ppc640.27.7间接
npm@esbuild/linux-riscv640.25.12间接
npm@esbuild/linux-riscv640.27.7间接
npm@esbuild/linux-s390x0.25.12间接
npm@esbuild/linux-s390x0.27.7间接
npm@esbuild/linux-x640.25.12间接
npm@esbuild/linux-x640.27.7间接
npm@esbuild/netbsd-arm640.25.12间接
npm@esbuild/netbsd-arm640.27.7间接
npm@esbuild/netbsd-x640.25.12间接
npm@esbuild/netbsd-x640.27.7间接
npm@esbuild/openbsd-arm640.25.12间接
npm@esbuild/openbsd-arm640.27.7间接
npm@esbuild/openbsd-x640.25.12间接
npm@esbuild/openbsd-x640.27.7间接
npm@esbuild/openharmony-arm640.25.12间接
npm@esbuild/openharmony-arm640.27.7间接
npm@esbuild/sunos-x640.25.12间接
npm@esbuild/sunos-x640.27.7间接
npm@esbuild/win32-arm640.25.12间接
npm@esbuild/win32-arm640.27.7间接
npm@esbuild/win32-ia320.25.12间接
npm@esbuild/win32-ia320.27.7间接
npm@esbuild/win32-x640.25.12间接
npm@esbuild/win32-x640.27.7间接
npm@eslint-community/eslint-utils4.9.1间接
npm@eslint-community/regexpp4.12.2间接
npm@eslint/config-array0.21.2间接
npm@eslint/config-helpers0.4.2间接
npm@eslint/core0.17.0间接
npm@eslint/eslintrc3.3.5间接
npm@eslint/js9.39.4间接
npm@eslint/object-schema2.1.7间接
npm@eslint/plugin-kit0.4.1间接
npm@exodus/bytes1.15.0间接
npm@google/genai1.52.0间接
npm@humanfs/core0.19.2间接
npm@humanfs/node0.16.8间接
npm@humanfs/types0.15.0间接
npm@humanwhocodes/module-importer1.0.1间接
npm@humanwhocodes/retry0.4.3间接
npm@img/sharp-darwin-arm640.33.5间接
npm@img/sharp-darwin-x640.33.5间接
npm@img/sharp-libvips-darwin-arm641.0.4间接
npm@img/sharp-libvips-darwin-x641.0.4间接
npm@img/sharp-libvips-linux-arm1.0.5间接
npm@img/sharp-libvips-linux-arm641.0.4间接
npm@img/sharp-libvips-linux-s390x1.0.4间接
npm@img/sharp-libvips-linux-x641.0.4间接
npm@img/sharp-libvips-linuxmusl-arm641.0.4间接
npm@img/sharp-libvips-linuxmusl-x641.0.4间接
npm@img/sharp-linux-arm0.33.5间接
npm@img/sharp-linux-arm640.33.5间接
npm@img/sharp-linux-s390x0.33.5间接
npm@img/sharp-linux-x640.33.5间接
npm@img/sharp-linuxmusl-arm640.33.5间接
npm@img/sharp-linuxmusl-x640.33.5间接
npm@img/sharp-wasm320.33.5间接
npm@img/sharp-win32-ia320.33.5间接
npm@img/sharp-win32-x640.33.5间接
npm@isaacs/fs-minipass4.0.1间接
npm@jridgewell/gen-mapping0.3.13间接
npm@jridgewell/remapping2.3.5间接
npm@jridgewell/resolve-uri3.1.2间接
npm@jridgewell/sourcemap-codec1.5.5间接
npm@jridgewell/trace-mapping0.3.31间接
npm@kwsites/file-exists1.1.1间接
npm@kwsites/promise-deferred1.1.1间接
npm@malept/cross-spawn-promise2.0.0间接
npm@malept/flatpak-bundler0.4.0间接
npm@mariozechner/clipboard0.3.9间接
npm@mariozechner/clipboard-darwin-arm640.3.9间接
npm@mariozechner/clipboard-darwin-universal0.3.9间接
npm@mariozechner/clipboard-darwin-x640.3.9间接
npm@mariozechner/clipboard-linux-arm64-gnu0.3.9间接
npm@mariozechner/clipboard-linux-arm64-musl0.3.9间接
npm@mariozechner/clipboard-linux-riscv64-gnu0.3.9间接
npm@mariozechner/clipboard-linux-x64-gnu0.3.9间接
npm@mariozechner/clipboard-linux-x64-musl0.3.9间接
npm@mariozechner/clipboard-win32-arm64-msvc0.3.9间接
npm@mariozechner/clipboard-win32-x64-msvc0.3.9间接
npm@mistralai/mistralai2.2.6间接
npm@napi-rs/canvas0.1.100间接
npm@napi-rs/canvas-android-arm640.1.100间接
npm@napi-rs/canvas-darwin-arm640.1.100间接
npm@napi-rs/canvas-darwin-x640.1.100间接
npm@napi-rs/canvas-linux-arm-gnueabihf0.1.100间接
npm@napi-rs/canvas-linux-arm64-gnu0.1.100间接
npm@napi-rs/canvas-linux-arm64-musl0.1.100间接
npm@napi-rs/canvas-linux-riscv64-gnu0.1.100间接
npm@napi-rs/canvas-linux-x64-gnu0.1.100间接
npm@napi-rs/canvas-linux-x64-musl0.1.100间接
npm@napi-rs/canvas-win32-arm64-msvc0.1.100间接
npm@napi-rs/canvas-win32-x64-msvc0.1.100间接
npm@nodable/entities2.1.0间接
npm@nodelib/fs.scandir2.1.5间接
npm@nodelib/fs.stat2.0.5间接
npm@nodelib/fs.walk1.2.8间接
npm@opentelemetry/api1.9.0间接
npm@opentelemetry/api1.9.1间接
npm@opentelemetry/api-logs0.53.0间接
npm@opentelemetry/api-logs0.57.1间接
npm@opentelemetry/api-logs0.57.2间接
npm@opentelemetry/context-async-hooks1.30.1间接
npm@opentelemetry/core1.30.1间接
npm@opentelemetry/instrumentation0.53.0间接
npm@opentelemetry/instrumentation0.57.1间接
npm@opentelemetry/instrumentation0.57.2间接
npm@opentelemetry/instrumentation-amqplib0.46.1间接
npm@opentelemetry/instrumentation-connect0.43.0间接
npm@opentelemetry/instrumentation-dataloader0.16.0间接
npm@opentelemetry/instrumentation-express0.47.0间接
npm@opentelemetry/instrumentation-fastify0.44.1间接
npm@opentelemetry/instrumentation-fs0.19.0间接
npm@opentelemetry/instrumentation-generic-pool0.43.0间接
npm@opentelemetry/instrumentation-graphql0.47.0间接
npm@opentelemetry/instrumentation-hapi0.45.1间接
npm@opentelemetry/instrumentation-http0.57.1间接
npm@opentelemetry/instrumentation-ioredis0.47.0间接
npm@opentelemetry/instrumentation-kafkajs0.7.0间接
npm@opentelemetry/instrumentation-knex0.44.0间接
npm@opentelemetry/instrumentation-koa0.47.0间接
npm@opentelemetry/instrumentation-lru-memoizer0.44.0间接
npm@opentelemetry/instrumentation-mongodb0.51.0间接
npm@opentelemetry/instrumentation-mongoose0.46.0间接
npm@opentelemetry/instrumentation-mysql0.45.0间接
npm@opentelemetry/instrumentation-mysql20.45.0间接
npm@opentelemetry/instrumentation-nestjs-core0.44.0间接
npm@opentelemetry/instrumentation-pg0.50.0间接
npm@opentelemetry/instrumentation-redis-40.46.0间接
npm@opentelemetry/instrumentation-tedious0.18.0间接
npm@opentelemetry/instrumentation-undici0.10.0间接
npm@opentelemetry/redis-common0.36.2间接
npm@opentelemetry/resources1.30.1间接
npm@opentelemetry/sdk-trace-base1.30.1间接
npm@opentelemetry/semantic-conventions1.27.0间接
npm@opentelemetry/semantic-conventions1.28.0间接
npm@opentelemetry/semantic-conventions1.41.1间接
npm@opentelemetry/sql-common0.40.1间接
npm@parcel/watcher-android-arm642.5.6间接
npm@parcel/watcher-darwin-arm642.5.6间接
npm@parcel/watcher-darwin-x642.5.6间接
npm@parcel/watcher-freebsd-x642.5.6间接
npm@parcel/watcher-linux-arm-glibc2.5.6间接
npm@parcel/watcher-linux-arm-musl2.5.6间接
npm@parcel/watcher-linux-arm64-glibc2.5.6间接
npm@parcel/watcher-linux-arm64-musl2.5.6间接
npm@parcel/watcher-linux-x64-glibc2.5.6间接
npm@parcel/watcher-linux-x64-musl2.5.6间接
npm@parcel/watcher-win32-arm642.5.6间接
npm@parcel/watcher-win32-ia322.5.6间接
npm@parcel/watcher-win32-x642.5.6间接
npm@playwright/test1.60.0间接
npm@prisma/instrumentation5.22.0间接
npm@protobufjs/aspromise1.1.2间接
npm@protobufjs/base641.1.2间接
npm@protobufjs/codegen2.0.5间接
npm@protobufjs/eventemitter1.1.1间接
npm@protobufjs/fetch1.1.1间接
npm@protobufjs/float1.0.2间接
npm@protobufjs/path1.1.2间接
npm@protobufjs/pool1.1.0间接
npm@protobufjs/utf81.1.1间接
npm@protobufjs/utf81.1.2间接
npm@rolldown/pluginutils1.0.0-beta.27间接
npm@rollup/rollup-android-arm-eabi4.60.1间接
npm@rollup/rollup-android-arm644.60.1间接
npm@rollup/rollup-darwin-arm644.60.1间接
npm@rollup/rollup-darwin-x644.60.1间接
npm@rollup/rollup-freebsd-arm644.60.1间接
npm@rollup/rollup-freebsd-x644.60.1间接
npm@rollup/rollup-linux-arm-gnueabihf4.60.1间接
npm@rollup/rollup-linux-arm-musleabihf4.60.1间接
npm@rollup/rollup-linux-arm64-gnu4.60.1间接
npm@rollup/rollup-linux-arm64-musl4.60.1间接
npm@rollup/rollup-linux-loong64-gnu4.60.1间接
npm@rollup/rollup-linux-loong64-musl4.60.1间接
npm@rollup/rollup-linux-ppc64-gnu4.60.1间接
npm@rollup/rollup-linux-ppc64-musl4.60.1间接
npm@rollup/rollup-linux-riscv64-gnu4.60.1间接
npm@rollup/rollup-linux-riscv64-musl4.60.1间接
npm@rollup/rollup-linux-s390x-gnu4.60.1间接
npm@rollup/rollup-linux-x64-gnu4.60.1间接
npm@rollup/rollup-linux-x64-musl4.60.1间接
npm@rollup/rollup-openbsd-x644.60.1间接
npm@rollup/rollup-openharmony-arm644.60.1间接
npm@rollup/rollup-win32-arm64-msvc4.60.1间接
npm@rollup/rollup-win32-ia32-msvc4.60.1间接
npm@rollup/rollup-win32-x64-gnu4.60.1间接
npm@rollup/rollup-win32-x64-msvc4.60.1间接
npm@sentry-internal/browser-utils8.55.0间接
npm@sentry-internal/feedback8.55.0间接
npm@sentry-internal/replay8.55.0间接
npm@sentry-internal/replay-canvas8.55.0间接
npm@sentry/browser8.55.0间接
npm@sentry/core8.55.0间接
npm@sentry/node8.55.0间接
npm@sentry/opentelemetry8.55.0间接
npm@silvia-odwyer/photon-node0.3.4间接
npm@simple-git/args-pathspec1.0.2间接
npm@simple-git/argv-parser1.0.3间接
npm@sindresorhus/is4.6.0间接
npm@smithy/core3.24.3间接
npm@smithy/core3.29.3间接
npm@smithy/credential-provider-imds4.3.3间接
npm@smithy/credential-provider-imds4.4.8间接
npm@smithy/fetch-http-handler5.4.3间接
npm@smithy/fetch-http-handler5.6.5间接
npm@smithy/is-array-buffer2.2.0间接
npm@smithy/node-http-handler4.7.3间接
npm@smithy/node-http-handler4.9.5间接
npm@smithy/signature-v45.4.3间接
npm@smithy/signature-v45.6.4间接
npm@smithy/types4.14.2间接
npm@smithy/types4.16.1间接
npm@smithy/util-buffer-from2.2.0间接
npm@smithy/util-utf82.3.0间接
npm@szmarczak/http-timer4.0.6间接
npm@types/babel__core7.20.5间接
npm@types/babel__generator7.27.0间接
npm@types/babel__template7.4.4间接
npm@types/babel__traverse7.28.0间接
npm@types/cacheable-request6.0.3间接
npm@types/chai5.2.3间接
npm@types/connect3.4.36间接
npm@types/debug4.1.13间接
npm@types/deep-eql4.0.2间接
npm@types/estree1.0.8间接
npm@types/estree-jsx1.0.5间接
npm@types/fs-extra9.0.13间接
npm@types/hast3.0.4间接
npm@types/http-cache-semantics4.2.0间接
npm@types/json-schema7.0.15间接
npm@types/keyv3.1.4间接
npm@types/mdast4.0.4间接
npm@types/ms2.1.0间接
npm@types/mysql2.15.26间接
npm@types/node18.19.130间接
npm@types/node22.19.17间接
npm@types/node22.19.19间接
npm@types/node24.12.2间接
npm@types/pg8.6.1间接
npm@types/pg-pool2.0.6间接
npm@types/plist3.0.5间接
npm@types/prop-types15.7.15间接
npm@types/react18.3.28间接
npm@types/react-dom18.3.7间接
npm@types/responselike1.0.3间接
npm@types/retry0.12.0间接
npm@types/shimmer1.2.0间接
npm@types/tedious4.0.14间接
npm@types/unist2.0.11间接
npm@types/unist3.0.3间接
npm@types/verror1.10.11间接
npm@types/yauzl2.10.3间接
npm@typescript-eslint/eslint-plugin8.60.1间接
npm@typescript-eslint/parser8.60.1间接
npm@typescript-eslint/project-service8.60.1间接
npm@typescript-eslint/scope-manager8.60.1间接
npm@typescript-eslint/tsconfig-utils8.60.1间接
npm@typescript-eslint/type-utils8.60.1间接
npm@typescript-eslint/types8.60.1间接
npm@typescript-eslint/typescript-estree8.60.1间接
npm@typescript-eslint/utils8.60.1间接
npm@typescript-eslint/visitor-keys8.60.1间接
npm@ungap/structured-clone1.3.1间接
npm@vitejs/plugin-react4.7.0间接
npm@vitest/expect3.2.4间接
npm@vitest/mocker3.2.4间接
npm@vitest/pretty-format3.2.4间接
npm@vitest/runner3.2.4间接
npm@vitest/snapshot3.2.4间接
npm@vitest/spy3.2.4间接
npm@vitest/utils3.2.4间接
npm@vscode/ripgrep1.18.0间接
npm@vscode/ripgrep-darwin-arm641.18.0间接
npm@vscode/ripgrep-darwin-x641.18.0间接
npm@vscode/ripgrep-linux-arm1.18.0间接
npm@vscode/ripgrep-linux-arm641.18.0间接
npm@vscode/ripgrep-linux-ia321.18.0间接
npm@vscode/ripgrep-linux-ppc641.18.0间接
npm@vscode/ripgrep-linux-riscv641.18.0间接
npm@vscode/ripgrep-linux-s390x1.18.0间接
npm@vscode/ripgrep-linux-x641.18.0间接
npm@vscode/ripgrep-win32-arm641.18.0间接
npm@vscode/ripgrep-win32-ia321.18.0间接
npm@vscode/ripgrep-win32-x641.18.0间接
npm@xmldom/xmldom0.8.12间接
npmabbrev4.0.0间接
npmacorn8.16.0间接
npmacorn-import-attributes1.9.5间接
npmacorn-jsx5.3.2间接
npmagent-base7.1.4间接
npmajv6.14.0间接
npmajv-keywords3.5.2间接
npmansi-regex5.0.1间接
npmansi-styles4.3.0间接
npmany-promise1.3.0间接
npmanymatch3.1.3间接
npmapp-builder-bin5.0.0-alpha.12间接
npmapp-builder-lib26.8.1间接
npmarg5.0.2间接
npmargparse1.0.10间接
npmargparse2.0.1间接
npmasn10.2.6间接
npmassert-plus1.0.0间接
npmassertion-error2.0.1间接
npmastral-regex2.0.0间接
npmasync3.2.6间接
npmasync-exit-hook2.0.1间接
npmasynckit0.4.0间接
npmat-least-node1.0.0间接
npmautoprefixer10.4.27间接
npmbail2.0.2间接
npmbalanced-match1.0.2间接
npmbalanced-match4.0.4间接
npmbase64-js1.5.1间接
npmbaseline-browser-mapping2.10.16间接
npmbcrypt-pbkdf1.0.2间接
npmbidi-js1.0.3间接
npmbignumber.js9.3.1间接
npmbinary-extensions2.3.0间接
npmbl4.1.0间接
npmbluebird3.4.7间接
npmboolean3.2.0间接
npmbowser2.14.1间接
npmbrace-expansion1.1.13间接
npmbrace-expansion1.1.15间接
npmbrace-expansion2.0.3间接
npmbrace-expansion5.0.5间接
npmbrace-expansion5.0.6间接
npmbraces3.0.3间接
npmbrowserslist4.28.2间接
npmbuffer5.7.1间接
npmbuffer-crc320.2.13间接
npmbuffer-equal-constant-time1.0.1间接
npmbuffer-from1.1.2间接
npmbuildcheck0.0.7间接
npmbuilder-util26.8.1间接
npmbuilder-util-runtime9.5.1间接
npmcac6.7.14间接
npmcacheable-lookup5.0.4间接
npmcacheable-request7.0.4间接
npmcall-bind-apply-helpers1.0.2间接
npmcallsites3.1.0间接
npmcamelcase-css2.0.1间接
npmcaniuse-lite1.0.30001787间接
npmccount2.0.1间接
npmchai5.3.3间接
npmchalk4.1.2间接
npmchalk5.6.2间接
npmcharacter-entities2.0.2间接
npmcharacter-entities-html42.1.0间接
npmcharacter-entities-legacy3.0.0间接
npmcharacter-reference-invalid2.0.1间接
npmcheck-error2.1.3间接
npmchownr3.0.0间接
npmchromium-pickle-js0.2.0间接
npmci-info4.3.1间接
npmci-info4.4.0间接
npmcjs-module-lexer1.4.3间接
npmcli-cursor3.1.0间接
npmcli-spinners2.9.2间接
npmcli-truncate2.1.0间接
npmcliui8.0.1间接
npmclone1.0.4间接
npmclone-response1.0.3间接
npmcolor4.2.3间接
npmcolor-convert2.0.1间接
npmcolor-name1.1.4间接
npmcolor-string1.9.1间接
npmcombined-stream1.0.8间接
npmcomma-separated-tokens2.0.3间接
npmcommander4.1.1间接
npmcommander5.1.0间接
npmcompare-version0.1.2间接
npmconcat-map0.0.1间接
npmconvert-source-map2.0.0间接
npmcore-util-is1.0.2间接
npmcpu-features0.0.10间接
npmcrc3.8.0间接
npmcross-spawn7.0.6间接
npmcss-tree3.2.1间接
npmcssesc3.0.0间接
npmcsstype3.2.3间接
npmdata-uri-to-buffer4.0.1间接
npmdata-urls7.0.0间接
npmdebug4.4.3间接
npmdecimal.js10.6.0间接
npmdecode-named-character-reference1.3.0间接
npmdecompress-response6.0.0间接
npmdeep-eql5.0.2间接
npmdeep-is0.1.4间接
npmdeepmerge4.3.1间接
npmdefaults1.0.4间接
npmdefer-to-connect2.0.1间接
npmdefine-data-property1.1.4间接
npmdefine-properties1.2.1间接
npmdelayed-stream1.0.0间接
npmdequal2.0.3间接
npmdetect-libc2.1.2间接
npmdetect-node2.1.0间接
npmdevlop1.1.0间接
npmdidyoumean1.2.2间接
npmdiff8.0.4间接
npmdingbat-to-unicode1.0.1间接
npmdir-compare4.2.0间接
npmdlv1.1.3间接
npmdmg-builder26.8.1间接
npmdmg-license1.0.11间接
npmdotenv16.6.1间接
npmdotenv-expand11.0.7间接
npmduck0.1.12间接
npmdunder-proto1.0.1间接
npmecdsa-sig-formatter1.0.11间接
npmejs3.1.10间接
npmelectron41.2.0间接
npmelectron-builder26.8.1间接
npmelectron-builder-squirrel-windows26.8.1间接
npmelectron-publish26.8.1间接
npmelectron-to-chromium1.5.333间接
npmelectron-vite5.0.0间接
npmelectron-winstaller5.4.0间接
npmemoji-regex8.0.0间接
npmend-of-stream1.4.5间接
npmentities8.0.0间接
npmenv-paths2.2.1间接
npmerr-code2.0.3间接
npmes-define-property1.0.1间接
npmes-errors1.3.0间接
npmes-module-lexer1.7.0间接
npmes-object-atoms1.1.1间接
npmes-set-tostringtag2.1.0间接
npmes6-error4.1.1间接
npmesbuild0.25.12间接
npmesbuild0.27.7间接
npmescalade3.2.0间接
npmescape-string-regexp4.0.0间接
npmescape-string-regexp5.0.0间接
npmeslint9.39.4间接
npmeslint-plugin-react-hooks5.2.0间接
npmeslint-scope8.4.0间接
npmeslint-visitor-keys3.4.3间接
npmeslint-visitor-keys4.2.1间接
npmeslint-visitor-keys5.0.1间接
npmespree10.4.0间接
npmesquery1.7.0间接
npmesrecurse4.3.0间接
npmestraverse5.3.0间接
npmestree-util-is-identifier-name3.0.0间接
npmestree-walker3.0.3间接
npmesutils2.0.3间接
npmexpect-type1.3.0间接
npmexponential-backoff3.1.3间接
npmextend3.0.2间接
npmextract-zip2.0.1间接
npmextsprintf1.4.1间接
npmfast-deep-equal3.1.3间接
npmfast-glob3.3.3间接
npmfast-json-stable-stringify2.1.0间接
npmfast-levenshtein2.0.6间接
npmfast-xml-builder1.2.0间接
npmfast-xml-parser5.7.3间接
npmfastq1.20.1间接
npmfd-slicer1.1.0间接
npmfdir6.5.0间接
npmfetch-blob3.2.0间接
npmfile-entry-cache8.0.0间接
npmfilelist1.0.6间接
npmfill-range7.1.1间接
npmfind-up5.0.0间接
npmflat-cache4.0.1间接
npmflatted3.4.2间接
npmform-data4.0.5间接
npmformdata-polyfill4.0.10间接
npmforwarded-parse2.1.2间接
npmfraction.js5.3.4间接
npmfs-extra10.1.0间接
npmfs-extra11.3.4间接
npmfs-extra7.0.1间接
npmfs-extra8.1.0间接
npmfs-extra9.1.0间接
npmfs.realpath1.0.0间接
npmfsevents2.3.2间接
npmfsevents2.3.3间接
npmfunction-bind1.1.2间接
npmgaxios7.1.4间接
npmgaxios7.2.0间接
npmgcp-metadata8.1.2间接
npmgensync1.0.0-beta.2间接
npmget-caller-file2.0.5间接
npmget-east-asian-width1.6.0间接
npmget-intrinsic1.3.0间接
npmget-proto1.0.1间接
npmget-stream5.2.0间接
npmglob13.0.6间接
npmglob7.2.3间接
npmglob-parent5.1.2间接
npmglob-parent6.0.2间接
npmglobal-agent3.0.0间接
npmglobals14.0.0间接
npmglobals15.15.0间接
npmglobalthis1.0.4间接
npmgoogle-auth-library10.6.2间接
npmgoogle-auth-library10.9.0间接
npmgoogle-logging-utils1.1.3间接
npmgopd1.2.0间接
npmgot11.8.6间接
npmgraceful-fs4.2.11间接
npmhas-flag4.0.0间接
npmhas-property-descriptors1.0.2间接
npmhas-symbols1.1.0间接
npmhas-tostringtag1.0.2间接
npmhasown2.0.2间接
npmhast-util-to-jsx-runtime2.3.6间接
npmhast-util-whitespace3.0.0间接
npmhighlight.js10.7.3间接
npmhosted-git-info4.1.0间接
npmhosted-git-info9.0.3间接
npmhtml-encoding-sniffer6.0.0间接
npmhtml-url-attributes3.0.1间接
npmhttp-cache-semantics4.2.0间接
npmhttp-proxy-agent7.0.2间接
npmhttp2-wrapper1.0.3间接
npmhttps-proxy-agent7.0.6间接
npmiconv-corefoundation1.1.7间接
npmiconv-lite0.6.3间接
npmieee7541.2.1间接
npmignore5.3.2间接
npmignore7.0.5间接
npmimmediate3.0.6间接
npmimport-fresh3.3.1间接
npmimport-in-the-middle1.15.0间接
npmimurmurhash0.1.4间接
npminflight1.0.6间接
npminherits2.0.4间接
npminline-style-parser0.2.7间接
npmis-alphabetical2.0.1间接
npmis-alphanumerical2.0.1间接
npmis-arrayish0.3.4间接
npmis-binary-path2.1.0间接
npmis-core-module2.16.1间接
npmis-decimal2.0.1间接
npmis-extglob2.1.1间接
npmis-fullwidth-code-point3.0.0间接
npmis-glob4.0.3间接
npmis-hexadecimal2.0.1间接
npmis-interactive1.0.0间接
npmis-number7.0.0间接
npmis-plain-obj4.1.0间接
npmis-potential-custom-element-name1.0.1间接
npmis-unicode-supported0.1.0间接
npmisarray1.0.0间接
npmisbinaryfile4.0.10间接
npmisbinaryfile5.0.7间接
npmisexe2.0.0间接
npmisexe3.1.5间接
npmisexe4.0.0间接
npmjake10.9.4间接
npmjiti1.21.7间接
npmjiti2.6.1间接
npmjiti2.7.0间接
npmjs-tokens4.0.0间接
npmjs-tokens9.0.1间接
npmjs-yaml4.1.1间接
npmjsdom29.1.1间接
npmjsesc3.1.0间接
npmjson-bigint1.0.0间接
npmjson-buffer3.0.1间接
npmjson-schema-to-ts3.1.1间接
npmjson-schema-traverse0.4.1间接
npmjson-stable-stringify-without-jsonify1.0.1间接
npmjson-stringify-safe5.0.1间接
npmjson52.2.3间接
npmjsonfile4.0.0间接
npmjsonfile6.2.0间接
npmjszip3.10.1间接
npmjwa2.0.1间接
npmjws4.0.1间接
npmkeyv4.5.4间接
npmlazy-val1.0.5间接
npmlevn0.4.1间接
npmlie3.3.0间接
npmlilconfig3.1.3间接
npmlines-and-columns1.2.4间接
npmlocate-path6.0.0间接
npmlodash4.18.1间接
npmlodash.escaperegexp4.1.2间接
npmlodash.isequal4.5.0间接
npmlodash.merge4.6.2间接
npmlog-symbols4.1.0间接
npmlong5.3.2间接
npmlongest-streak3.1.0间接
npmloose-envify1.4.0间接
npmlop0.4.2间接
npmloupe3.2.1间接
npmlowercase-keys2.0.0间接
npmlru-cache11.4.0间接
npmlru-cache5.1.1间接
npmlru-cache6.0.0间接
npmmagic-string0.30.21间接
npmmarkdown-table3.0.4间接
npmmarked18.0.5间接
npmmatcher3.0.0间接
npmmath-intrinsics1.1.0间接
npmmdast-util-find-and-replace3.0.2间接
npmmdast-util-from-markdown2.0.3间接
npmmdast-util-gfm3.1.0间接
npmmdast-util-gfm-autolink-literal2.0.1间接
npmmdast-util-gfm-footnote2.1.0间接
npmmdast-util-gfm-strikethrough2.0.0间接
npmmdast-util-gfm-table2.0.0间接
npmmdast-util-gfm-task-list-item2.0.0间接
npmmdast-util-mdx-expression2.0.1间接
npmmdast-util-mdx-jsx3.2.0间接
npmmdast-util-mdxjs-esm2.0.1间接
npmmdast-util-phrasing4.1.0间接
npmmdast-util-to-hast13.2.1间接
npmmdast-util-to-markdown2.1.2间接
npmmdast-util-to-string4.0.0间接
npmmdn-data2.27.1间接
npmmerge21.4.1间接
npmmicromark4.0.2间接
npmmicromark-core-commonmark2.0.3间接
npmmicromark-extension-gfm3.0.0间接
npmmicromark-extension-gfm-autolink-literal2.1.0间接
npmmicromark-extension-gfm-footnote2.1.0间接
npmmicromark-extension-gfm-strikethrough2.1.0间接
npmmicromark-extension-gfm-table2.1.1间接
npmmicromark-extension-gfm-tagfilter2.0.0间接
npmmicromark-extension-gfm-task-list-item2.1.0间接
npmmicromark-factory-destination2.0.1间接
npmmicromark-factory-label2.0.1间接
npmmicromark-factory-space2.0.1间接
npmmicromark-factory-title2.0.1间接
npmmicromark-factory-whitespace2.0.1间接
npmmicromark-util-character2.1.1间接
npmmicromark-util-chunked2.0.1间接
npmmicromark-util-classify-character2.0.1间接
npmmicromark-util-combine-extensions2.0.1间接
npmmicromark-util-decode-numeric-character-reference2.0.2间接
npmmicromark-util-decode-string2.0.1间接
npmmicromark-util-encode2.0.1间接
npmmicromark-util-html-tag-name2.0.1间接
npmmicromark-util-normalize-identifier2.0.1间接
npmmicromark-util-resolve-all2.0.1间接
npmmicromark-util-sanitize-uri2.0.1间接
npmmicromark-util-subtokenize2.1.0间接
npmmicromark-util-symbol2.0.1间接
npmmicromark-util-types2.0.2间接
npmmicromatch4.0.8间接
npmmime2.6.0间接
npmmime-db1.52.0间接
npmmime-types2.1.35间接
npmmimic-fn2.1.0间接
npmmimic-response1.0.1间接
npmmimic-response3.1.0间接
npmminimatch10.2.5间接
npmminimatch3.1.5间接
npmminimatch5.1.9间接
npmminimatch9.0.9间接
npmminimist1.2.8间接
npmminipass7.1.3间接
npmminizlib3.1.0间接
npmmkdirp0.5.6间接
npmmodule-details-from-path1.0.4间接
npmms2.1.3间接
npmmz2.7.0间接
npmnan2.27.0间接
npmnanoid3.3.11间接
npmnatural-compare1.4.0间接
npmnode-abi4.28.0间接
npmnode-addon-api1.7.2间接
npmnode-addon-api7.1.1间接
npmnode-api-version0.2.1间接
npmnode-domexception1.0.0间接
npmnode-fetch3.3.2间接
npmnode-gyp12.4.0间接
npmnode-pty1.1.0间接
npmnode-releases2.0.37间接
npmnopt9.0.0间接
npmnormalize-path3.0.0间接
npmnormalize-url6.1.0间接
npmobject-assign4.1.1间接
npmobject-hash3.0.0间接
npmobject-keys1.1.1间接
npmonce1.4.0间接
npmonetime5.1.2间接
npmopenai6.26.0间接
npmoption0.2.4间接
npmoptionator0.9.4间接
npmora5.4.1间接
npmp-cancelable2.1.1间接
npmp-limit3.1.0间接
npmp-locate5.0.0间接
npmp-retry4.6.2间接
npmpako1.0.11间接
npmparent-module1.0.1间接
npmparse-entities4.0.2间接
npmparse58.0.1间接
npmpartial-json0.1.7间接
npmpath-exists4.0.0间接
npmpath-expression-matcher1.5.0间接
npmpath-is-absolute1.0.1间接
npmpath-key3.1.1间接
npmpath-parse1.0.7间接
npmpath-scurry2.0.2间接
npmpathe2.0.3间接
npmpathval2.0.1间接
npmpe-library0.4.1间接
npmpend1.2.0间接
npmpg-int81.0.1间接
npmpg-protocol1.14.0间接
npmpg-types2.2.0间接
npmpicocolors1.1.1间接
npmpicomatch2.3.2间接
npmpicomatch4.0.4间接
npmpify2.3.0间接
npmpirates4.0.7间接
npmplaywright1.60.0间接
npmplaywright-core1.60.0间接
npmplist3.1.0间接
npmpng-to-ico3.0.1间接
npmpngjs7.0.0间接
npmpostcss8.5.9间接
npmpostcss-import15.1.0间接
npmpostcss-js4.1.0间接
npmpostcss-load-config6.0.1间接
npmpostcss-nested6.2.0间接
npmpostcss-selector-parser6.1.2间接
npmpostcss-value-parser4.2.0间接
npmpostgres-array2.0.0间接
npmpostgres-bytea1.0.1间接
npmpostgres-date1.0.7间接
npmpostgres-interval1.2.0间接
npmprelude-ls1.2.1间接
npmproc-log6.1.0间接
npmprocess-nextick-args2.0.1间接
npmprogress2.0.3间接
npmpromise-retry2.0.1间接
npmproper-lockfile4.1.2间接
npmproperty-information7.1.0间接
npmprotobufjs7.6.4间接
npmprotobufjs7.6.5间接
npmpump3.0.4间接
npmpunycode2.3.1间接
npmqueue-microtask1.2.3间接
npmquick-lru5.1.1间接
npmreact-refresh0.17.0间接
npmread-binary-file-arch1.0.6间接
npmread-cache1.0.0间接
npmreadable-stream2.3.8间接
npmreadable-stream3.6.2间接
npmreaddirp3.6.0间接
npmreaddirp4.1.2间接
npmremark-parse11.0.0间接
npmremark-rehype11.1.2间接
npmremark-stringify11.0.0间接
npmrequire-directory2.1.1间接
npmrequire-from-string2.0.2间接
npmrequire-in-the-middle7.5.2间接
npmresedit1.7.2间接
npmresolve1.22.11间接
npmresolve-alpn1.2.1间接
npmresolve-from4.0.0间接
npmresponselike2.0.1间接
npmrestore-cursor3.1.0间接
npmretry0.12.0间接
npmretry0.13.1间接
npmreusify1.1.0间接
npmrimraf2.6.3间接
npmroarr2.15.4间接
npmrollup4.60.1间接
npmrun-parallel1.2.0间接
npmsafe-buffer5.1.2间接
npmsafe-buffer5.2.1间接
npmsafer-buffer2.1.2间接
npmsanitize-filename1.6.4间接
npmsax1.6.0间接
npmsaxes6.0.0间接
npmscheduler0.23.2间接
npmsemver5.7.2间接
npmsemver6.3.1间接
npmsemver7.7.4间接
npmsemver7.8.0间接
npmsemver-compare1.0.0间接
npmserialize-error7.0.1间接
npmsetimmediate1.0.5间接
npmsharp0.33.5间接
npmshebang-command2.0.0间接
npmshebang-regex3.0.0间接
npmshimmer1.2.1间接
npmsiginfo2.0.0间接
npmsignal-exit3.0.7间接
npmsimple-swizzle0.2.4间接
npmsimple-update-notifier2.0.0间接
npmslice-ansi3.0.0间接
npmsmart-buffer4.2.0间接
npmsource-map0.6.1间接
npmsource-map-js1.2.1间接
npmsource-map-support0.5.21间接
npmspace-separated-tokens2.0.2间接
npmsprintf-js1.0.3间接
npmsprintf-js1.1.3间接
npmstackback0.0.2间接
npmstat-mode1.0.0间接
npmstd-env3.10.0间接
npmstring-width4.2.3间接
npmstring_decoder1.1.1间接
npmstring_decoder1.3.0间接
npmstringify-entities4.0.4间接
npmstrip-ansi6.0.1间接
npmstrip-json-comments3.1.1间接
npmstrip-literal3.1.0间接
npmstrnum2.3.0间接
npmstyle-to-js1.1.21间接
npmstyle-to-object1.0.14间接
npmsucrase3.35.1间接
npmsumchecker3.0.1间接
npmsupports-color7.2.0间接
npmsupports-preserve-symlinks-flag1.0.0间接
npmsymbol-tree3.2.4间接
npmtailwindcss3.4.19间接
npmtar7.5.13间接
npmtemp0.9.4间接
npmtemp-file3.4.0间接
npmthenify3.3.1间接
npmthenify-all1.6.0间接
npmtiny-async-pool1.3.0间接
npmtiny-typed-emitter2.1.0间接
npmtinybench2.9.0间接
npmtinyexec0.3.2间接
npmtinyglobby0.2.16间接
npmtinypool1.1.1间接
npmtinyrainbow2.0.0间接
npmtinyspy4.0.4间接
npmtldts7.0.30间接
npmtldts-core7.0.30间接
npmtmp0.2.5间接
npmtmp-promise3.0.3间接
npmto-regex-range5.0.1间接
npmtough-cookie6.0.1间接
npmtr466.0.0间接
npmtrim-lines3.0.1间接
npmtrough2.2.0间接
npmtruncate-utf8-bytes1.0.2间接
npmts-algebra2.0.0间接
npmts-api-utils2.5.0间接
npmts-interface-checker0.1.13间接
npmtslib2.8.1间接
npmtweetnacl0.14.5间接
npmtype-check0.4.0间接
npmtype-fest0.13.1间接
npmtypebox1.1.38间接
npmtypescript5.9.3间接
npmtypescript-eslint8.60.1间接
npmunderscore1.13.8间接
npmundici6.27.0间接
npmundici7.25.0间接
npmundici8.5.0间接
npmundici-types5.26.5间接
npmundici-types6.21.0间接
npmundici-types7.16.0间接
npmunified11.0.5间接
npmunist-util-is6.0.1间接
npmunist-util-position5.0.0间接
npmunist-util-stringify-position4.0.0间接
npmunist-util-visit5.1.0间接
npmunist-util-visit-parents6.0.2间接
npmuniversalify0.1.2间接
npmuniversalify2.0.1间接
npmupdate-browserslist-db1.2.3间接
npmuri-js4.4.1间接
npmutf8-byte-length1.0.5间接
npmutil-deprecate1.0.2间接
npmverror1.10.1间接
npmvfile6.0.3间接
npmvfile-message4.0.3间接
npmvite7.3.2间接
npmvite-node3.2.4间接
npmvitest3.2.4间接
npmw3c-xmlserializer5.0.0间接
npmwcwidth1.0.1间接
npmweb-streams-polyfill3.3.3间接
npmwebidl-conversions8.0.1间接
npmwhatwg-mimetype5.0.0间接
npmwhatwg-url16.0.1间接
npmwhich2.0.2间接
npmwhich5.0.0间接
npmwhich6.0.1间接
npmwhy-is-node-running2.3.0间接
npmword-wrap1.2.5间接
npmwrap-ansi7.0.0间接
npmwrappy1.0.2间接
npmws8.21.0间接
npmxml-name-validator5.0.0间接
npmxml-naming0.1.0间接
npmxmlbuilder10.1.1间接
npmxmlbuilder15.1.1间接
npmxmlchars2.2.0间接
npmxtend4.0.2间接
npmy18n5.0.8间接
npmyallist3.1.1间接
npmyallist4.0.0间接
npmyallist5.0.0间接
npmyaml2.9.0间接
npmyargs17.7.2间接
npmyargs-parser21.1.1间接
npmyauzl2.10.0间接
npmyocto-queue0.1.0间接
npmzod3.25.76间接
npmzod4.4.3间接
npmzod-to-json-schema3.25.2间接
npmzwitch2.0.4间接
依赖安全公告 6

安装 npm:cate@0.1.0 会引入 99 个包(直接与传递):其中 6 个存在已知公告,1 个为直接依赖。

软件包版本关系严重程度公告数修复版本
form-data2.3.3间接24.0.6
uuid3.4.0间接113.0.1
request2.88.2直接13.0.0
highlight.js8.9.1间接110.1.2
qs6.5.5间接16.14.1
tough-cookie2.5.0间接14.1.3

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

原始 JSON 报告 机器可读
{
  "data": {
    "repo": {
      "topics": [],
      "is_fork": false,
      "size_kb": 67956,
      "has_wiki": false,
      "homepage": "https://cate.cero-ai.com",
      "languages": {
        "CSS": 19402,
        "HTML": 2306,
        "Shell": 7192,
        "Batchfile": 299,
        "JavaScript": 76499,
        "TypeScript": 6590942
      },
      "pushed_at": "2026-07-22T09:18:04Z",
      "created_at": "2026-03-29T14:49:51Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-22T08:57:51Z",
      "description": "An infinite zoomable canvas for coding. Editor, terminal, and browser panels in a spatial workspace.",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "MIT",
      "default_branch": "main",
      "license_spdx_raw": "MIT",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript"
      ]
    },
    "owner": {
      "blog": null,
      "name": "0-AI UG",
      "type": "Organization",
      "login": "0-AI-UG",
      "company": null,
      "location": "Germany",
      "followers": 11,
      "avatar_url": "https://avatars.githubusercontent.com/u/256433079?v=4",
      "created_at": "2026-01-21T20:49:19Z",
      "is_verified": null,
      "public_repos": 6,
      "account_age_days": 181
    },
    "license": {
      "state": "standard",
      "spdx_id": "MIT",
      "raw_spdx": "MIT",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v1.5.3",
          "kind": "patch",
          "published_at": "2026-07-21T20:50:48Z"
        },
        {
          "tag": "v1.5.2",
          "kind": "patch",
          "published_at": "2026-07-21T13:22:39Z"
        },
        {
          "tag": "v1.5.1",
          "kind": "patch",
          "published_at": "2026-07-15T14:36:47Z"
        },
        {
          "tag": "v1.5.0",
          "kind": "minor",
          "published_at": "2026-07-15T12:53:29Z"
        },
        {
          "tag": "v1.4.0-beta.6",
          "kind": "prerelease",
          "published_at": "2026-07-15T10:51:10Z"
        },
        {
          "tag": "v1.4.0-beta.5",
          "kind": "prerelease",
          "published_at": "2026-07-14T13:21:42Z"
        },
        {
          "tag": "v1.4.0-beta.4",
          "kind": "prerelease",
          "published_at": "2026-07-13T23:09:18Z"
        },
        {
          "tag": "v1.4.0-beta.3",
          "kind": "prerelease",
          "published_at": "2026-07-13T18:49:04Z"
        },
        {
          "tag": "v1.4.0-beta.2",
          "kind": "prerelease",
          "published_at": "2026-07-08T18:04:39Z"
        },
        {
          "tag": "v1.4.0-beta.1",
          "kind": "prerelease",
          "published_at": "2026-07-07T19:45:32Z"
        },
        {
          "tag": "v1.3.2",
          "kind": "patch",
          "published_at": "2026-06-24T13:28:42Z"
        },
        {
          "tag": "v1.3.2-beta.2",
          "kind": "prerelease",
          "published_at": "2026-06-21T13:43:01Z"
        },
        {
          "tag": "v1.3.2-beta.1",
          "kind": "prerelease",
          "published_at": "2026-06-21T10:57:11Z"
        },
        {
          "tag": "v1.3.1",
          "kind": "patch",
          "published_at": "2026-06-15T19:26:10Z"
        },
        {
          "tag": "v1.3.0",
          "kind": "minor",
          "published_at": "2026-06-09T17:29:41Z"
        },
        {
          "tag": "v1.2.7",
          "kind": "patch",
          "published_at": "2026-06-09T14:50:03Z"
        },
        {
          "tag": "v1.2.6",
          "kind": "patch",
          "published_at": "2026-06-09T13:04:48Z"
        },
        {
          "tag": "v1.2.5",
          "kind": "patch",
          "published_at": "2026-06-09T11:28:37Z"
        },
        {
          "tag": "v1.2.5-beta.4",
          "kind": "prerelease",
          "published_at": "2026-06-08T19:38:13Z"
        },
        {
          "tag": "v1.2.5-beta.3",
          "kind": "prerelease",
          "published_at": "2026-06-08T19:34:23Z"
        },
        {
          "tag": "v1.2.5-beta.2",
          "kind": "prerelease",
          "published_at": "2026-06-08T15:41:32Z"
        },
        {
          "tag": "v1.2.5-beta.1",
          "kind": "prerelease",
          "published_at": "2026-06-08T14:49:50Z"
        },
        {
          "tag": "v1.2.4",
          "kind": "patch",
          "published_at": "2026-06-08T08:51:59Z"
        },
        {
          "tag": "v1.2.3",
          "kind": "patch",
          "published_at": "2026-06-07T20:46:30Z"
        },
        {
          "tag": "v1.2.2",
          "kind": "patch",
          "published_at": "2026-06-07T18:30:15Z"
        },
        {
          "tag": "v1.2.1",
          "kind": "patch",
          "published_at": "2026-06-06T22:16:29Z"
        },
        {
          "tag": "v1.2.0",
          "kind": "minor",
          "published_at": "2026-06-06T20:27:55Z"
        },
        {
          "tag": "v1.2.0-beta.1",
          "kind": "prerelease",
          "published_at": "2026-06-06T15:38:30Z"
        },
        {
          "tag": "v1.1.1-beta.8",
          "kind": "prerelease",
          "published_at": "2026-06-05T13:54:59Z"
        },
        {
          "tag": "v1.1.1",
          "kind": "patch",
          "published_at": "2026-06-01T21:33:02Z"
        },
        {
          "tag": "v1.1.0",
          "kind": "minor",
          "published_at": "2026-05-29T21:56:10Z"
        },
        {
          "tag": "v1.0.4",
          "kind": "patch",
          "published_at": "2026-05-28T21:46:16Z"
        },
        {
          "tag": "v1.0.3",
          "kind": "patch",
          "published_at": "2026-05-26T19:16:34Z"
        },
        {
          "tag": "v1.0.2",
          "kind": "patch",
          "published_at": "2026-05-26T15:01:16Z"
        },
        {
          "tag": "v1.0.1",
          "kind": "patch",
          "published_at": "2026-05-25T19:49:34Z"
        },
        {
          "tag": "v1.0.0",
          "kind": "major",
          "published_at": "2026-05-24T14:28:40Z"
        },
        {
          "tag": "v0.4.13",
          "kind": "patch",
          "published_at": "2026-05-24T11:57:50Z"
        },
        {
          "tag": "v0.4.12",
          "kind": "patch",
          "published_at": "2026-05-24T11:36:20Z"
        },
        {
          "tag": "v0.4.11",
          "kind": "patch",
          "published_at": "2026-05-23T20:49:26Z"
        },
        {
          "tag": "v0.4.10",
          "kind": "patch",
          "published_at": "2026-05-23T20:33:52Z"
        },
        {
          "tag": "v0.4.9",
          "kind": "patch",
          "published_at": "2026-05-23T20:16:27Z"
        },
        {
          "tag": "v0.4.8",
          "kind": "patch",
          "published_at": "2026-05-23T19:24:03Z"
        },
        {
          "tag": "v0.4.7",
          "kind": "patch",
          "published_at": "2026-05-23T19:14:20Z"
        },
        {
          "tag": "v0.4.6",
          "kind": "patch",
          "published_at": "2026-05-23T18:36:14Z"
        },
        {
          "tag": "v0.4.5",
          "kind": "patch",
          "published_at": "2026-05-21T11:15:46Z"
        },
        {
          "tag": "v0.4.4",
          "kind": "patch",
          "published_at": "2026-05-19T11:09:54Z"
        },
        {
          "tag": "v0.4.3",
          "kind": "patch",
          "published_at": "2026-05-19T06:47:08Z"
        },
        {
          "tag": "v0.4.2",
          "kind": "patch",
          "published_at": "2026-05-19T06:21:23Z"
        },
        {
          "tag": "v0.4.1",
          "kind": "patch",
          "published_at": "2026-05-18T20:59:48Z"
        },
        {
          "tag": "v0.4.0",
          "kind": "minor",
          "published_at": "2026-05-18T17:41:21Z"
        },
        {
          "tag": "v0.3.3",
          "kind": "patch",
          "published_at": "2026-05-13T11:22:26Z"
        },
        {
          "tag": "v0.3.2",
          "kind": "patch",
          "published_at": "2026-05-13T11:01:01Z"
        },
        {
          "tag": "v0.3.1",
          "kind": "patch",
          "published_at": "2026-05-13T09:28:15Z"
        },
        {
          "tag": "v0.3.0",
          "kind": "minor",
          "published_at": "2026-04-21T19:15:50Z"
        },
        {
          "tag": "v0.2.18",
          "kind": "patch",
          "published_at": "2026-04-15T19:48:48Z"
        },
        {
          "tag": "v0.2.17",
          "kind": "patch",
          "published_at": "2026-04-14T08:19:45Z"
        },
        {
          "tag": "v0.2.16",
          "kind": "patch",
          "published_at": "2026-04-13T22:33:30Z"
        },
        {
          "tag": "v0.2.15",
          "kind": "patch",
          "published_at": "2026-04-13T09:04:12Z"
        },
        {
          "tag": "v0.2.14",
          "kind": "patch",
          "published_at": "2026-04-13T08:16:42Z"
        },
        {
          "tag": "v0.2.13",
          "kind": "patch",
          "published_at": "2026-04-12T15:47:58Z"
        },
        {
          "tag": "v0.2.12",
          "kind": "patch",
          "published_at": "2026-04-12T15:11:37Z"
        },
        {
          "tag": "v0.2.11",
          "kind": "patch",
          "published_at": "2026-04-08T20:05:52Z"
        },
        {
          "tag": "v0.2.10",
          "kind": "patch",
          "published_at": "2026-04-08T18:40:26Z"
        },
        {
          "tag": "v0.2.9",
          "kind": "patch",
          "published_at": "2026-04-08T13:01:14Z"
        },
        {
          "tag": "v0.2.8",
          "kind": "patch",
          "published_at": "2026-04-08T07:53:46Z"
        },
        {
          "tag": "v0.2.7",
          "kind": "patch",
          "published_at": "2026-04-08T07:48:41Z"
        },
        {
          "tag": "v0.2.5",
          "kind": "patch",
          "published_at": "2026-04-07T16:49:05Z"
        },
        {
          "tag": "v0.2.4",
          "kind": "patch",
          "published_at": "2026-04-05T18:08:44Z"
        },
        {
          "tag": "v0.2.3",
          "kind": "patch",
          "published_at": "2026-04-04T19:37:04Z"
        },
        {
          "tag": "v0.2.2",
          "kind": "patch",
          "published_at": "2026-04-03T18:31:55Z"
        },
        {
          "tag": "v0.2.1",
          "kind": "patch",
          "published_at": "2026-04-03T11:08:03Z"
        },
        {
          "tag": "v0.2.0",
          "kind": "minor",
          "published_at": "2026-04-02T17:08:18Z"
        },
        {
          "tag": "v0.1.5",
          "kind": "patch",
          "published_at": "2026-03-31T23:02:50Z"
        },
        {
          "tag": "v0.1.4",
          "kind": "patch",
          "published_at": "2026-03-31T16:38:49Z"
        },
        {
          "tag": "v0.1.3",
          "kind": "patch",
          "published_at": "2026-03-31T16:23:28Z"
        },
        {
          "tag": "v0.1.2",
          "kind": "patch",
          "published_at": "2026-03-31T09:13:38Z"
        },
        {
          "tag": "v0.1.0",
          "kind": "minor",
          "published_at": "2026-03-29T17:38:40Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "a0bff3a01711cfe253c15451ae71f23f917f4e68",
          "body": "docs: add Homebrew install instructions",
          "is_bot": false,
          "headline": "Merge pull request #492 from 0-AI-UG/docs/homebrew-install",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-22T08:57:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b86620a8981a71e31f2094498e94375880b08f45",
          "body": "The cask is now in homebrew/cask, so macOS users can brew install --cask cate.",
          "is_bot": false,
          "headline": "docs: add Homebrew install instructions",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-22T08:49:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d639a458b535a06d713b91cd8efd6c2762dfd45b",
          "body": "chore(release): bump version to 1.5.3",
          "is_bot": false,
          "headline": "Merge pull request #490 from 0-AI-UG/chore/release-1.5.3",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T20:05:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "916fc4a1b2a3f0e394e57e55227e31590cd5afc0",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into chore/release-1.5.3",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T20:05:27Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7688af8cef7a17338366cf689e871b28ea766566",
          "body": "Catalog: filter by category, search, pagination",
          "is_bot": false,
          "headline": "Merge pull request #491 from 0-AI-UG/feat/extension-categories",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T20:05:19Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5b36ac0a65fb75515f9e077f4fc4a770dc5573ca",
          "body": "…pages\n\nThe catalog is a flat wall of every extension, which does not scale past a\nhandful. Manifests can now declare a `category` (a small, fixed set of\nfunctional groups: ai, development, data, design, productivity,\ncommunication, sales, other) and Settings renders category chips with\ncounts, a se\n[…]\ned pager.\n\nCategories are functional on purpose: url vs frontend vs server is an\nimplementation detail users never see. An unknown or missing category\nresolves to \"Other\" rather than growing the list.",
          "is_bot": false,
          "headline": "feat(extensions): make the catalog browsable by category, search and …",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T19:53:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f245c943c76aa9dbdcfd8b7e2efddd0d13f766fb",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): bump version to 1.5.3",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T19:43:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "14c1f235aaaf00331affc229eafbbbb2b24ccd44",
          "body": "fix(cate-agent): reuse the shared model and worktree pickers in the composer",
          "is_bot": false,
          "headline": "Merge pull request #489 from 0-AI-UG/feat/cate-agent-shared-pickers",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T19:42:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "02e10a244a5cb4f052129ba6bdc69ae73e39a7a7",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into feat/cate-agent-shared-pickers",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T19:31:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d1e7ba98ac09970a73457d6256ecdf4e9e62b3e4",
          "body": "…omposer\n\nBoth composer pills were hand-rolled and drifted from the rest of the app.\n\nModel: render the shared ModelPickerDropdown, the same control as the agent\npanel header and Settings > Providers, with search, provider groups and a\n\"Manage providers\" footer. No none-row: the pill names the effec\n[…]\ne winner merges back into it. The per-chat target is stored as the\nworktree id instead of a branch name, so a rename can't strand it.\n\ncreateWorktree/checkoutPr now return the registered WorktreeMeta.",
          "is_bot": false,
          "headline": "fix(cate-agent): reuse the shared model and worktree pickers in the c…",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T19:29:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ef57ba8466cf24535c1fba4cb6312d6cba0b9638",
          "body": "Unblock the Windows runtime build on VS 2026",
          "is_bot": false,
          "headline": "Merge pull request #488 from 0-AI-UG/fix/release-node-gyp-vs2026",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T12:38:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "72ab00aea9d5d1a3edfd7eef609ddc1bb33a676d",
          "body": "The windows runner image now ships Visual Studio 2026 (18.x). node-gyp\n11.5.0 reads that install as version \"undefined\" and bails with \"could\nnot find any Visual Studio installation to use\", which killed the\nwin32-x64 runtime job in the v1.5.2 release and skipped the whole\nrelease/publish chain.\n\nno\n[…]\n the tree to ^12.4.0\n(the last line that still supports node 20, which the workflows use)\nvia an npm override. Verified locally: npm rebuild node-pty\n--build-from-source succeeds with node-gyp 12.4.0.",
          "is_bot": false,
          "headline": "fix(release): unblock the Windows runtime build on VS 2026",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T12:28:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "38ccc358aa2aeb6a0e9165f7bec804b581a6c9e0",
          "body": "Add Grok, move opencode hooks to a repo file, unify the agent registry",
          "is_bot": false,
          "headline": "Merge pull request #487 from 0-AI-UG/feat/grok-agent-and-registry",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T12:24:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "05fd7d518827e14fbd8ca86b21352214df2f28a3",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into feat/grok-agent-and-registry",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T12:09:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b2008d3158778a3e728ba1406927b029eebd613",
          "body": "… agent registry\n\nGrok (xAI Grok Build) joins the supported agents: process detection, logo,\nresume args, hooks via .grok/hooks/cate.json, and skills in .grok/skills. Its\nhook file keys events in CamelCase while the payload reports snake_case, and it\nalso reads .claude settings, so the bridge drops \n[…]\ntection, and skills.ts plus the install targets derive from\nit. agentRegistry.test.ts asserts the coverage the compiler cannot.\n\nAlso persists sidebar canvas and skills collapse state to localStorage.",
          "is_bot": false,
          "headline": "feat(agents): add Grok, move opencode hooks to a repo file, unify the…",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T12:05:23Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "26acccd5cda1426a7d16fb8f5d9ffadcb9c00d16",
          "body": "chore(release): bump version to 1.5.2",
          "is_bot": false,
          "headline": "Merge pull request #486 from 0-AI-UG/chore/release-1.5.2",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T09:57:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "641d58f5c715a8257d6c4b2d973ac7f36d141904",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): bump version to 1.5.2",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T09:55:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5d5bdf72fdc683e82d31049a07eed8e4f381d60c",
          "body": "Sync the translated READMEs with the English one",
          "is_bot": false,
          "headline": "Merge pull request #485 from 0-AI-UG/docs/readme-localized-2",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T09:14:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bebaf4b53574776f4eb3178879108911f6f3e6ee",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into docs/readme-localized-2",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T09:14:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6a6fbe9334c19a65b4e4f2748e96f0290ff0d48f",
          "body": "Add url mode for extensions",
          "is_bot": false,
          "headline": "Merge pull request #483 from 0-AI-UG/feat/extension-url-mode",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T09:13:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4e4dbbf0f820b665c9af1daba01e1607a7b192c3",
          "body": "Same change as #484 in fr, de and zh-CN: new tagline, and a rewritten\nfeature list that matches the hook-based agent status, session restore\nand CLI permission matrix.",
          "is_bot": false,
          "headline": "Sync the translated READMEs with the English one",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:47:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f069f1624224794d2cbf54723014c134f8b77383",
          "body": "CI clones cate-extensions at its default branch, so extensions added in a\ncatalog PR are missing until it merges.",
          "is_bot": false,
          "headline": "Skip url-extension manifest assertions when the catalog lacks them",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:47:05Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "68db12584508ff3cf4ca17d7abe4c5890ac07612",
          "body": "Same change as #484 in fr, de and zh-CN: new tagline, and a rewritten\nfeature list that matches the hook-based agent status, session restore\nand CLI permission matrix.",
          "is_bot": false,
          "headline": "Sync the translated READMEs with the English one",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:47:03Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "14425b586064e6322cbbdab0f0da1694f81a5cca",
          "body": null,
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into feat/extension-url-mode",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:46:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "17302a996b227af30e6d5aab8f9966f2c5125415",
          "body": "Retitle the README and rewrite What's inside",
          "is_bot": false,
          "headline": "Merge pull request #484 from 0-AI-UG/docs/readme-whats-inside",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:41:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "cee687a8b60036f925b8eccbd6fc9943a0c83432",
          "body": "Tagline is now \"An infinite canvas IDE for parallel coding agents\".\n\nThe feature list was stale: it described the old process-scan agent\ndetection, claimed a canvas-wide search that does not exist, and said\nnothing about hook-driven status or agent session restore. Rewrote it\nfrom the current code, shorter, seven bullets.",
          "is_bot": false,
          "headline": "Retitle the README and rewrite What's inside",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:31:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2ec51744fe07bbf5b747b7a22a160c168be13b9d",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into feat/extension-url-mode",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:27:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8366745a91a0fac6deeab299d451954fe428cd66",
          "body": "Local extensions keep their off-screen exemption: unmounting kills the\nwebview guest and its in-page state for good. URL-mode panels are remote\nSaaS pages whose login lives in the persistent session partition, so a\nremount just reloads. Nine of them staying resident forever was a lot of\nidle Chromium renderers.\n\nTab-hidden behaviour is unchanged.",
          "is_bot": false,
          "headline": "Let url-mode extension panels get culled off-screen",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:22:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4a0d626ee139fb0d9173fe1ffa5c6f520a2866e7",
          "body": "Extensions can now point a panel at a remote https url instead of shipping\na frontend or spawning a server. The panel is a top level webview rather\nthan an iframe, so SaaS apps that set X-Frame-Options still load.\n\nurl guests get no cate host API. Guest identity comes from the proxy origin\nplus rout\n[…]\nly ever return rejected calls. webSecurity already strips the\npreload for non proxy origins, so this is enforced in two places.\n\nMode precedence is server > url > frontend, and only https is accepted.",
          "is_bot": false,
          "headline": "Add url mode for extensions",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-21T08:04:43Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "24637b3fbb3e2325485ee372805c8b03f78c01db",
          "body": "Restore agent sessions across app restarts",
          "is_bot": false,
          "headline": "Merge pull request #479 from 0-AI-UG/worktree-agent-session-contracts",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T15:30:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "f84ed48984143108af26c7a410a3180d1172c0b1",
          "body": "OpenCode injects via an ambient env var, not repo files, so it had no\noff control. Thread the workspace's per-agent config into envForPty and\nwithhold an env-only agent's ambient vars when it is set to off.\n\nRedesign the settings list: drop per-row status sentences and the dot\nfor a segmented control (Auto/On/Off, or On/Off for env-only agents),\nsurfacing a note only for the one detectable dead state (Auto with no\nconfig folder present).",
          "is_bot": false,
          "headline": "Let env-only agents be turned off; simplify Agent Hooks settings UI",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T14:56:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e4cd7442b8cd7c132966549cce7af48241c5e308",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into worktree-agent-session-contracts",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T14:08:35Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5814b1856da1a2a1e103472dcf0249121acd6a23",
          "body": "The \"bridge path is stable across restarts\" test hard-coded the POSIX\nwrapper name (cate-hook-bridge-codex), so existsSync was false on win32\nwhere the wrapper is a .cmd. Pre-existing Windows-only failure; match the\nplatform-aware naming the sibling test already uses.",
          "is_bot": false,
          "headline": "Fix Windows agentHooks test: use platform bridge wrapper name",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T13:59:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ae6fcc97ca8f98131e00a5995d18c8a18b786998",
          "body": "…ides\n\nInjection of repo-local agent hook files is now folder-gated instead of\nkeyed on machine-global CLI presence. Each file-writing agent gets a\nper-workspace tri-state:\n\n  auto (default): inject only when the agent's own config folder\n    (.claude, .codex, .cursor, .pi) already exists in the rep\n[…]\nver host owns the workspace rather than doing filesystem\nwork in the main process.\n\nAdds a Settings > Agent Hooks section with a per-agent Auto/On/Off control\nand a live folder/injected state readout.",
          "is_bot": false,
          "headline": "Gate agent hook injection on folder presence with per-workspace overr…",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T13:44:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5ef5a829cdf6e44655f7d74e092a23a6787f7387",
          "body": "CLI permission matrix + detached-window chrome cleanup",
          "is_bot": false,
          "headline": "Merge pull request #482 from 0-AI-UG/cli-permission-matrix",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T13:32:47Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "dfd3fbe4b28f6ad67e92aea73d092c96b4125222",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into cli-permission-matrix",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T13:25:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "25861bb286fa72967a5c83cf22b9f30a372d8e7c",
          "body": "Collapsible agent rows in sidebar Skills tree",
          "is_bot": false,
          "headline": "Merge pull request #481 from 0-AI-UG/sidebar-collapsible-agent-skills",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T13:24:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "df5c7b2201a7d98fe4d1916c0290f90d670fe21e",
          "body": "Drop DockWindowTitlebar's separate header strip and integrate the window\nchrome into the top dock tab bar: macOS reserves 78px on the left for the\nnative traffic lights, Windows/Linux 132px on the right for the custom\nWindowControls overlay, and the tab bar itself is the drag region. This\nmakes a de\n[…]\ntab-bar indent and the controls overlay collapse in fullscreen\nwhere the OS hides the chrome. The controls overlay renders after the tab\nbar so its no-drag region wins Electron's DOM-order drag union.",
          "is_bot": false,
          "headline": "Fold detached-window chrome into the dock tab bar row",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T13:23:07Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f1bcb34764a131547bc72c12e154ea779ee160a3",
          "body": "Replace the ad-hoc per-feature CLI toggles with a single matrix in\nshared/cliPermissions.ts: surface (Browser, Terminal, Panels, Editor,\nNotifications) x access level (Read observes, Control acts). The main-\nprocess gate and the Settings UI both render from that one source, so\nthey cannot drift, and\n[…]\n(previously ungated by the\nCLI layer) and splits Browser into Read/Control. Terminal keeps its\noriginal setting keys so existing settings.json files still apply;\nTerminal Control stays off by default.",
          "is_bot": false,
          "headline": "Turn CLI feature toggles into a Read/Control permission matrix",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T13:22:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e0a2398c9494cb08daef8e0fe50e2dcbe732ab61",
          "body": null,
          "is_bot": false,
          "headline": "Make each agent's skills collapsible in the workspace sidebar",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T12:43:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b8f3715e3d1376f9409f3df8fa199ea89a40da75",
          "body": "…n-contracts\n\n# Conflicts:\n#\tsrc/renderer/settings/TerminalSettings.tsx",
          "is_bot": false,
          "headline": "Merge remote-tracking branch 'origin/main' into worktree-agent-sessio…",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T12:25:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6b59e7c4430d1034d6fd5c089e17b4ee73b483a9",
          "body": "Replace the child-process session scan with an agentPresence tracker:\neach hook post carries its poster's lineage pid, the tracker resolves it\nto the agent process, and scanActivity reports that pid's liveness as the\nsole presence authority. Drop the store-probe fallback (agentSessions) and\nits weekly-contract scripts. Add Cursor (cursor-agent) as a recognized agent.",
          "is_bot": false,
          "headline": "Anchor agent presence to hook posts and add Cursor",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-20T10:38:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a6d85404de9b2b5611af74f0d60184303953a3d1",
          "body": "- Remove cursor and antigravity agent support across the app\n- Delete the spinner screen reader; agent status is now a hook FSM plus\n  process presence\n- Move pi and codex hooks to repo-local files (.pi/extensions/cate-hook.ts,\n  .codex/hooks.json merged); codex trust rides its native one-time promp\n[…]\nand session preassign (no live consumers)\n- Fix idle-suspend clearing resume stamps, flag-shaped session ids in\n  resume argv, locale-dependent ps lstart parsing, and silent\n  contract-script failures",
          "is_bot": false,
          "headline": "Go hooks-only: drop cursor/agy, the TUI reader, and PATH shims",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-19T13:20:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "589d015336e0b989f86d8b485406e493537bdf8f",
          "body": "Claude never fired hook events in real terminals: the PATH shim that\ninjected --settings loses to the rc-file prepend of ~/.local/bin (uv/bun\nboilerplate, and claude's own install dir), so the typed claude resolved\nto the real binary and the hook-driven detector sat on waitingForInput\nthrough every \n[…]\ne, and its\n/opt/homebrew/bin install is not shadowed; its earlier in-app failure\ntraces to a stale provisioned daemon from another checkout, which the\ndetector fallback now degrades gracefully anyway.",
          "is_bot": false,
          "headline": "Make agent status survive bypassed hook injection",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-19T11:23:16Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c9bee350001e1178c2a1f8191db14b85d9e091b7",
          "body": "claude/codex/pi/opencode running/idle now comes from the pushed turn\nboundaries: turn-start flips to running, turn-end to waitingForInput\nwith the needs-input notification fired immediately (no settle timer),\nsession-end flips silently. permission-wait flips to waitingForInput\nmid-turn with a distin\n[…]\ncs survive only as the cursor/agy fallback -\nthose CLIs have no permission events and no print-mode turn events. The\nOpenCode scanner-cell branch and the old spinner-drives-everything\nwiring are gone.",
          "is_bot": false,
          "headline": "Drive agent status and needs-input notifications from hook events",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-19T09:38:27Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f4dd62f37fab0791ddadb2ee2e13add259a6dcd2",
          "body": "Session stamps now derive from the normalized hook stream in main\n(agentSessionStamps.ts) and re-emit on the existing\nSHELL_AGENT_SESSION_UPDATE channel, so the renderer/persistence/restore\nchain is unchanged. claude stamps only from the first turn event (a\ntranscript-less id is not resumable; /clea\n[…]\ne when hooks have not\nspoken, and in the quit flush for hook-less terminals. Antigravity\nsessions restore now too via agy --conversation=<id>. The 20s\npolling/throttle machinery is gone from shell.ts.",
          "is_bot": false,
          "headline": "Replace the 20s session-store probe with hook-pushed stamping",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T21:37:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b638fea84433022416bbc83945950a8f4191642c",
          "body": "Approval is pushed too: claude/codex PostToolUse fires once the approved\ntool ran (claude pinned in the same TUI flow as the permission wait,\ncodex via --full-auto exec), and opencode pushes permission.replied with\nrequestID = the asked id before the turn runs on to idle. claude's\nidle_prompt Notification variant is documented as distinct from\npermission_prompt.",
          "is_bot": false,
          "headline": "Pin permission-resolution hook contracts",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T21:36:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2a2c2ac3b679e4d71e3bf6c5e0e75e91f416bbf2",
          "body": "One normalized AgentHookEvent stream (session-start/end, turn-start/end,\npermission-wait) for all six agent CLIs, with per-CLI injection and\npayload normalization declared in src/shared/agentHooks.ts. Injection:\nPATH shims for claude/codex/pi (argv flags, exec keeps the process\nname), ambient OPENCO\n[…]\nmain as\nevt frames, and re-emitted to the owning window on SHELL_AGENT_HOOK_EVENT.\nShims support claude/pi session pre-assignment behind a per-PTY env var;\npolicy is left to the session-stamp feature.",
          "is_bot": false,
          "headline": "Add unified agent-CLI hook system",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T21:19:33Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e3c8cc238338ec28fb9c2fc9fa750dc41a36d50a",
          "body": "claude Notification(permission_prompt), codex PermissionRequest (fires in\nexec mode too, where the approval is auto-rejected), opencode\npermission.asked (driven offline via a fake OpenAI-compatible provider\nthat always answers with a bash tool call). Also pins that codex's TUI\ndefers every hook to the first prompt submit, and switches the TUI\ndriver to per-char typing (opencode's composer drops bulk-written\nlines). pi/cursor/agy have no permission surface - documented in the\nheader.",
          "is_bot": false,
          "headline": "Pin permission-wait hook contracts for claude/codex/opencode",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T20:53:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6183e8eaa70a513eef25aeac2cb3bcf320626855",
          "body": "The live suite now pins each CLI's hook/extension/plugin surface\ninstead of reverse-engineered session stores: push-based session\nidentity, turn status, and per-terminal correlation via a CATE_TERMINAL_ID\nenv echo. Injection is per-invocation for claude (--settings), codex\n(-c overrides plus a self-\n[…]\nlback probe's parsers covered, and resume-by-id is pinned per CLI.\n\nRuns in under a minute (vs ~10 for the old suite): pi drives a fake\noffline provider, and only cursor and agy still need a live TUI.",
          "is_bot": false,
          "headline": "Replace store-probe contract tests with hook-based ones",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T20:23:06Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6b17f448c624009566fd1ae373a56be8a79ed0c1",
          "body": "Terminals running an agent CLI now record which stored session the agent\nhas open, so session restore relaunches the agent with the right resume\nflag instead of a plain shell.\n\nThe runtime daemon probes the strongest signal each CLI offers: claude's\npid registry, codex's open rollout fd, and start-t\n[…]\nns\nfor pi, opencode and cursor. Store shapes are pinned by an opt-in live\ncontract suite (npm run test:agent-contracts) plus a weekly launchd\nschedule, so a CLI update breaks tests, not user sessions.",
          "is_bot": false,
          "headline": "Restore agent sessions across app restarts",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T16:22:17Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "6d91463b49141771cfa6449d4f630c4f5109a768",
          "body": "cate terminal group and a dedicated CLI settings section",
          "is_bot": false,
          "headline": "Merge pull request #478 from 0-AI-UG/agent/cli-terminal-group",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T14:35:08Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "715928bb397916b00dfcdf7c4511ae1d694fdda5",
          "body": "The kitchensink extension now composes agent open -> send -> dispose\n(cate-extensions#20); the test still stubbed and asserted the removed\nagent.run. dispose fires after the response is sent, so poll for it.",
          "is_bot": false,
          "headline": "Migrate kitchensink server test off cate.agent.run",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T14:20:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "db8f3e7a5c82359520d64d3c391ba4221fe3c189",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into agent/cli-terminal-group",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T14:10:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2bd7d96b9345ee367159e91298ef30b69caf0acb",
          "body": "Note that cate.terminal.* is first-party CLI only, screenshots land in\nthe OS temp dir, and editor.openFile requires an existing file. Add the\nmissing panel and browser scope rows and methods to the authoring skill\nand drop the cate.agent.run one-shot that never existed.",
          "is_bot": false,
          "headline": "Sync extension docs with the actual host API surface",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T12:55:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a27f38e5e27da6adbc207254741efa1b64bd3e83",
          "body": "Browser control and terminal read/input each get a toggle in the new\nSettings > CLI section, enforced main-side at dispatch for first-party\nCLI callers only. cate.terminal.* now rejects extension callers outright\n(terminal-first-party-only) until there is a consent story.",
          "is_bot": false,
          "headline": "Move cate CLI settings to their own section with per-feature toggles",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T12:55:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d5e32fcebb8f7d60c5011b59e263940dfce1829",
          "body": "- New CLI group: cate terminal read/type/press, targeting terminal\n  panels via --panel with short-id resolution against terminal rows.\n  read defaults to the focused panel when it is a terminal (else\n  no-terminal-focused); type/press require --panel so a keystroke can\n  never land in a misresolved\n[…]\n terminal\n  group, the type-then-press-enter two-step, and the input opt-in.\n- Human terminal read output keeps the tail, capped by --max\n  (default 200, 0 = all); --json returns {panelId, alt, text}.",
          "is_bot": false,
          "headline": "Add cate terminal group and move canvas create to panel create",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-18T11:00:37Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2683ae9d76ae064d4da98889443e1df52eb4f538",
          "body": null,
          "is_bot": false,
          "headline": "Update README demo GIF (#477)",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-16T21:39:31Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2dccd08baf131bae3dde3798273dfb327deb26c6",
          "body": "Reposition README around agent orchestration; make CI installs deterministic",
          "is_bot": false,
          "headline": "Merge pull request #476 from 0-AI-UG/agent/readme-agent-positioning",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-16T21:17:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5e268d768f51062f54e96c6d055e2c3591b49723",
          "body": "CI and release deleted package-lock.json before npm install, so every\nrun floated to the newest versions matching package.json ranges.\npi-ai 0.80.9 (published today) removed the runtime oauth exports and\nbroke every build; PR 475 hit the same root cause earlier through\npi-tui hoisting drift.\n\nDrop t\n[…]\nps and use npm ci everywhere. The\ncommitted lockfile pins pi at 0.80.6 and is in sync with package.json\n(verified with npm ci --dry-run). Upgrades now happen by regenerating\nthe lockfile deliberately.",
          "is_bot": false,
          "headline": "Make CI and release installs deterministic via npm ci",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-16T21:09:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4f1b3d405cf7b4abaf6ef29e11be0a8b174959cc",
          "body": "Lead with the differentiators: agent-aware terminals, parallel\nworktrees with canvas territories, and the agent-drivable browser.\nAdd the missing remote-workspaces bullet and fix the architecture\nsection (cli/ and runtime/ dirs, @parcel/watcher, on-demand pi\nruntime).\n\nRegenerate the fr/de/zh translations from the current English\nREADME. They were based on a much older layout: npm build steps\ninstead of bun, no extensions or shortcuts sections, and a broken\ndemo.gif reference.",
          "is_bot": false,
          "headline": "Reposition README around agent orchestration",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-16T20:55:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a21aa819ecf779c3690a1c955c3dc6fa0fe039b5",
          "body": "- canvas create browser takes an optional url, and browser open revives a\n  start-page panel through a registered navigator instead of failing\n  webview-not-ready forever\n- CLI screenshots land in a temp dir (cate-screenshots), not the Desktop\n- malformed refs report bad-ref (bare e12 is normalized)\n[…]\n- seeded cate-cli skill docs refresh when the bundled skill changes,\n  hash-guarded so user edits and uninstalls still stick\n- SKILL.md: document the new behaviors and the wait-after-navigation caveat",
          "is_bot": false,
          "headline": "Fix cate CLI issues from agent field test",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-16T20:13:32Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7902c26e848cdd728988237c0fa90381653bcf7f",
          "body": "Add regression coverage for core systems",
          "is_bot": false,
          "headline": "Merge pull request #475 from 0-AI-UG/agent/add-regression-coverage",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-16T11:27:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7e67b3fb9d10b766aaa0b16eac373049a1f0bd31",
          "body": null,
          "is_bot": false,
          "headline": "Fix subagent test dependency isolation",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-16T11:05:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6c675b525d2d0c563cc610d86bb0fdc9f252389f",
          "body": null,
          "is_bot": false,
          "headline": "Fix regression tests across CI platforms",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-15T20:54:02Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "095c6117848f92ee27a23e028d89735f416fb621",
          "body": null,
          "is_bot": false,
          "headline": "Add regression coverage for core systems",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-15T20:35:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8fb525cb6a253101092f3fa83d08c1c417c7f79f",
          "body": "Make Cate CLI and extension automation non-disruptive",
          "is_bot": false,
          "headline": "Merge pull request #474 from 0-AI-UG/agent/nondisruptive-cate-cli-api",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-15T19:49:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ad71a4e01fb563f9a3b1cdc8b9abd9ada484afbb",
          "body": null,
          "is_bot": false,
          "headline": "Make Cate API automation non-disruptive",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-15T15:44:36Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "6d58162b6c06a8b82e16885c416d63f4d017c397",
          "body": "…t-gestures-1-5-1\n\nHarden workspace roots and input gestures for 1.5.1",
          "is_bot": false,
          "headline": "Merge pull request #473 from 0-AI-UG/agent/harden-workspaces-and-inpu…",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-15T14:02:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5cc0e3ee670dc1f5fe510c5e1681a91d7232d04e",
          "body": null,
          "is_bot": false,
          "headline": "Harden workspaces and input gestures for 1.5.1",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-15T13:35:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4132ad97313d3828f1854a7009586ec2e1c6b502",
          "body": null,
          "is_bot": false,
          "headline": "Update star history chart links in README (#472)",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-15T13:11:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ff7797537cae4615cb35a26f540e18cb8beed404",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): bump version to 1.5.0 (#471)",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-15T12:02:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0fb0f3a35aaefae626d6c7461f9002e7e10d7e23",
          "body": "…reen (#470)\n\nThe left sidebar reserves MAC_CHROME_HEIGHT (36px) at its top so its\ncontent clears the native traffic lights. Every other consumer of that\nreservation already collapses it in native fullscreen (the floating\nisland, the dock tab bar's left indent, the detached-window titlebar all\ngate \n[…]\nrip would overlap its left 4px and make\nthat sliver unclickable. In fullscreen it has no lights to reserve and no\nwindow to drag. This drops the now-unused FULLSCREEN_LEFT_PAD and\nMAC_CHROME_WIDTH_FS.",
          "is_bot": false,
          "headline": "fix(macos): collapse the left sidebar's traffic-light inset in fullsc…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-15T11:26:48Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cb8543a41bb67a9b1853c06092dfc97eb8dac42d",
          "body": "Co-authored-by: Paul Horn <paul.p.w.horn@gmail.com>",
          "is_bot": false,
          "headline": "chore(release): bump version to 1.4.0-beta.6 (#469)",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-15T10:09:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "4f223cad057542d25519a5f6778f7a00bf09b876",
          "body": "Three focus fixes in the canvas interaction subsystem:\n\n- Restore focus to the previously-focused element when a Modal or\n  PaletteDialogShell closes, so shortcuts keep working after the command\n  palette / a dialog is dismissed instead of dying on <body>.\n- Focus the editor when its canvas node bec\n[…]\n\n  a declarative state flag, so a re-render mid-drag can no longer clobber\n  it back to blocking and break the drop.\n\nThe two-click focus model for unfocused panels is intentionally kept.\n\nCloses #448",
          "is_bot": false,
          "headline": "fix(focus): keep keyboard focus with panels and dialogs (#464)",
          "author_name": "Imre Boersma",
          "author_login": "ImreBoersma",
          "committed_at": "2026-07-15T09:45:34Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b2e9004900d7c0d75743340a0676f4bc103d4e40",
          "body": "… terminal search (#468)\n\n* feat(editor): float the markdown Source/Preview toggle over the content\n\nThe toggle had its own header row above the editor, costing every markdown\npanel a strip of vertical space to hold one button. Drop the row and put the\nbutton where the row used to be, floating over \n[…]\nases on unmount. Hidden keep-alive slots get a no-op api so a background\npanel can't suppress the visible tab's chip.\n\n---------\n\nCo-authored-by: Paul Horn <51511883+PaulHorn@users.noreply.github.com>",
          "is_bot": false,
          "headline": "Float the markdown toggle over the editor, keep the worktree chip off…",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-15T09:42:36Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fa213cfe557898ac3becdf1ff2d4394834103473",
          "body": "…w-close quit gates (#467)\n\n* fix(canvas,docking): resolve three 1.5 UI regressions\n\n- Canvas: skip the sidebar-push anchor compensation on a split's discrete\n  resize jump, which intermittently yanked the pane's viewport sideways\n  when splitting (only compensate incremental edge moves < 25% of wid\n[…]\ne and\nguard tests fail against the old code and pass against the new. Bugs 1 and 4\nwere also reproduced and re-checked live, bug 4 on both platforms via\nCATE_FAKE_PLATFORM=linux and real macOS chrome.",
          "is_bot": false,
          "headline": "fix: canvas split render, tab drop preview, sidebar chrome, and windo…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-15T09:23:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c55ff8e6dff01eaf94629fc5d7feeb2c7c205b30",
          "body": "feat(dev): preview Windows/Linux chrome from a Mac",
          "is_bot": false,
          "headline": "Merge pull request #466 from 0-AI-UG/dev-fake-platform",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-14T20:15:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d9bd08c548f1dac4c5fb57bff1526b7a845f75b2",
          "body": "pi-ai 0.80.7 widened the KnownProvider union past its generated model\ncatalog, so getBuiltinModels' generic rejects a plain KnownProvider arg\nand typecheck breaks. CI deletes the lockfile and npm-installs, so it\nfloats to 0.80.7 and goes red on every PR. Call getBuiltinModels through\na widened, catalog-independent signature; the impl already returns [] for\nids it doesn't recognise, so runtime behavior is unchanged.",
          "is_bot": false,
          "headline": "fix(agent): tolerate pi KnownProvider drift in listAvailableModels",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-14T20:07:33Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e165646c8491971991014a195f25965106694eb3",
          "body": "Launch with CATE_FAKE_PLATFORM=win32|linux|darwin to see the other\nplatforms' window chrome without a VM. The env var drives the native\nframe/traffic lights in windowFactory and is forwarded to the renderer\n(?platform=) so IS_MAC matches. Terminal keymap now routes through the\nsame IS_MAC so paste-chord behavior flips too.",
          "is_bot": false,
          "headline": "feat(dev): CATE_FAKE_PLATFORM to preview Windows/Linux chrome from a Mac",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-14T19:53:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "31f16033f65e434f29e733a07b876e3dae3581b3",
          "body": "Bump version to 1.4.0-beta.5.",
          "is_bot": false,
          "headline": "chore(release): bump version to 1.4.0-beta.5 (#463)",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-14T12:44:46Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e206914eb14cdf500e5d3daf5476c3ded992ce65",
          "body": "…#462)\n\nAdds two bindable actions — nextWorkspace (⌘⌥→) and previousWorkspace\n(⌘⌥←) — that cycle through the ordered workspace list with wrap-around.\nThe switch logic lives in the store (workspaceIdAtOffset +\nswitchWorkspaceByOffset) so it's unit-testable; runAction, the Cmd+K\ncommand palette, and the Go menu wire it up. Both are rebindable and\ndisable-able via the existing Settings shortcuts UI (data-driven from\nSHORTCUT_DEFINITIONS).\n\nCloses #456.",
          "is_bot": false,
          "headline": "feat(shortcuts): add customizable next/previous workspace shortcuts (…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-14T12:40:04Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "328c1b9598a6c614fa5f238065f934b72159f193",
          "body": "…n tab switch (#459) (#461)\n\nDockTabStack rendered only the active tab's panel, unmounting every\ninactive one. For a terminal that's fine (the PTY lives in main), but a\nbrowser/extension panel is backed by a live <webview> DOM element —\nunmounting destroys its guest process, so switching to another \n[…]\nt-hidden while\ntheir tab is inactive, each in a stable keyed slot so toggling active\nonly flips visibility. Ordinary panels still unmount when inactive, so\nthere's no extra xterm/WebGL or Monaco cost.",
          "is_bot": false,
          "headline": "fix(browser): keep webview-backed tabs mounted so they don't reload o…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-14T12:00:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b262bf416eabbdc107e188d065f01e691bfbe44b",
          "body": "… (#460)\n\nRework the floating canvas toolbar so it no longer overlaps the minimap on\nnarrow/split-view canvases.\n\n- Width breakpoint (640px canvas width) auto-switches between the original\n  horizontal bottom-center bar and a compact bottom-left button that reveals a\n  vertical bar on hover (pin on \n[…]\no the\n  right of the compact vertical bar.\n- Zoom controls appear only in the horizontal bar to keep the compact one slim;\n  the toolbar reads zoom straight from the canvas store instead of via props.",
          "is_bot": false,
          "headline": "feat(ui): responsive canvas toolbar that collapses to a corner button…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-14T11:27:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4cff3c6052655f2c0883da05de329507d73e6694",
          "body": "…D (#458)\n\nThe UI rework left the left sidebar content-only (open or collapsed to 0).\nGive it the right sidebar's full model: fully hidden → rail-only → opened,\ndriven by a new leftSidebarHidden flag mirroring rightSidebarHidden.\n\nRestore the native HTML5 view drag-and-drop (from history) onto both \n[…]\nops its toggle and becomes a drag strip; a floating\nreopen toggle in MainWindowShell handles the hidden state, offset past the\nlights. The center tab-bar reserve now scales with the left rail's width.",
          "is_bot": false,
          "headline": "feat(sidebar): restore left rail with 3 states + rail-to-rail view Dn…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-14T10:38:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "660b90aba7ad22cf54ef31ee71422b6dae235119",
          "body": "* feat(ui): restore header bar for detached windows on macOS\n\nThe window-chrome rework (#453) replaced the macOS main-window title strip\nwith the floating MacWindowChrome island, giving every window a\nheaderbarless look. Detached (dock) windows lost their header too — the\ndock tab bar became the dra\n[…]\nl back to the solid, in-flow tab strip that\npushes content down — the same chrome the docked side/bottom stacks use,\nand what the center used before the rework. Canvas panels keep the\nimmersive float.",
          "is_bot": false,
          "headline": "feat(ui): restore header bar for detached windows on macOS (#457)",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-14T10:19:45Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9d74c9d0960d1e99238779aaacb6a049a896ca7e",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): bump version to 1.4.0-beta.4 (#454)",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-13T22:35:14Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "113db9d0c13a3cce144fc407f718c2b963edb218",
          "body": "…453)\n\n* feat(ui): rework window chrome, browser tabs, sidebar, and theming\n\nBroad UI pass across the renderer:\n- Window shell: extract MacWindowChrome + useWindowFullscreen; restyle\n  TitlebarStrip / WindowControls and main/dock shells\n- Browser: replace BookmarksBar/BrowserTabSidebar with BrowserT\n[…]\n uiStore, and types\n- Rework Minimap and restore CanvasToolbar controls\n- Simplify CommandPalette and useMultiNodeSelection\n- Fix DockTabBar restyle test to assert the actual rounded-[10px] pill class",
          "is_bot": false,
          "headline": "feat(ui): rework window chrome, browser tabs, sidebar, and theming (#…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-13T22:12:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "1b7aa96d7cd35989c4de9ef1d74853a400be7ac7",
          "body": "fix(release): sign pi's darwin native addons for macOS notarization",
          "is_bot": false,
          "headline": "Merge pull request #452 from 0-AI-UG/fix/mac-notarize-pi-natives",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T18:07:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "78bf1963e85e515e934883ac07244f62cc849706",
          "body": "…sses\n\nThe cross-platform pi tarball carries @earendil-works/pi-tui's\ndarwin-modifiers.node (both arches), staged into runtime-host-*.tgz.\nsignMacNatives only signed a hard-coded host list, so notarytool recursed\ninto the tarball and rejected the unsigned addon. Discover and sign every\nMach-O .node under the staged pi tree instead; win32/linux prebuilds sharing\nthe tree are skipped via a Mach-O magic check.",
          "is_bot": false,
          "headline": "fix(release): sign pi's darwin native addons so macOS notarization pa…",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T17:59:01Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c4db2a3f544c09a8279752294a33ee33631156d8",
          "body": "chore(release): bump version to 1.4.0-beta.3",
          "is_bot": false,
          "headline": "Merge pull request #451 from 0-AI-UG/chore/release-1.4.0-beta.3",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T17:29:00Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bc0882aa82d6b4c4bfb20cf594ca9b3803ad3acd",
          "body": null,
          "is_bot": false,
          "headline": "chore(release): bump version to 1.4.0-beta.3",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T16:59:52Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3d3ab13647850db4ce67d787a7ae76ea5f4ee341",
          "body": "…ail, merge-target (#450)\n\n* feat(cate-agent): register cateAgent sidebar view\n\n* refactor(cate-agent): extract shared sendCateAgentMessage helper\n\n* refactor(cate-agent): extract host-agnostic CateAgentThread body\n\n* feat(cate-agent): add CateAgentSidebarView\n\n* feat(cate-agent): add Cate Agent sid\n[…]\nt wipes away left-to-right on the first message.\n- Softer user bubble; register cateAgent sidebar view with the Cate wordmark.\n- Remove the toolbar agent button/input/card and its now-dead components.",
          "is_bot": false,
          "headline": "feat(cate-agent): dedicated sidebar home — composer, chat tabs, nav r…",
          "author_name": "Paul Horn",
          "author_login": "PaulHorn",
          "committed_at": "2026-07-13T16:30:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ba5709a9a0222d7fcad859ccf53f3a79bf47aee2",
          "body": "…ifacts\n\nfix(terminal): stop WebGL glyph atlas desync and process-wide context overflow",
          "is_bot": false,
          "headline": "Merge pull request #449 from 0-AI-UG/fix/terminal-webgl-rendering-art…",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T14:57:29Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "12fb3635c1b6b2d0d7c0c1a5676ea42dcff42685",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into fix/terminal-webgl-rendering-artifacts",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T14:40:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "5f0084bd0770715cfe3e01952ce7f2c9c1880a1d",
          "body": "chore(skills): rebuild skills index",
          "is_bot": false,
          "headline": "Merge pull request #437 from 0-AI-UG/skills-index-update",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T14:29:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "311c904bd44b4eaf536ad368f65ddd7ae80cce7b",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into fix/terminal-webgl-rendering-artifacts",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T14:29:40Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "79463476c381e4b06e532935a3c418fab3f0b8d9",
          "body": "… overflow\n\nTwo distinct causes behind the garbled/blank terminal rendering artifacts.\n\nAtlas desync (scrambled glyphs): xterm shares one glyph atlas across every\nterminal with the same font/theme/DPR. Theme, font, and minimumContrastRatio\nall feed that atlas key, so changing any of them re-rasteriz\n[…]\nattach() now opens on\nthe DOM renderer and upgrades to WebGL only once granted, so a terminal is never\nleft holding a context it was not allotted. The old per-window cap remains as a\nfairness ceiling.",
          "is_bot": false,
          "headline": "fix(terminal): stop WebGL glyph atlas desync and process-wide context…",
          "author_name": "Anton",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T14:22:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a3441c8ee2d52857a689848a07fc9f9372fce509",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into skills-index-update",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T10:10:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "48d37ae3af9ba9b2384a87e470314ab01c586c2e",
          "body": "fix(terminal): lock the middle-click pan-jump guard behind a test",
          "is_bot": false,
          "headline": "Merge pull request #447 from 0-AI-UG/fix/terminal-middle-click-pan-jump",
          "author_name": "Anton Horn",
          "author_login": "Anton-Horn",
          "committed_at": "2026-07-13T10:10:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        }
      ],
      "releases_count": 77,
      "commits_last_year": 902,
      "latest_release_at": "2026-07-21T20:50:48Z",
      "latest_release_tag": "v1.5.3",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 16,
      "days_since_latest_release": 0,
      "mean_days_between_releases": 1.6
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 50,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": false
    },
    "ecosystem": {
      "packages": [
        {
          "name": "cate",
          "exists": true,
          "license": "MIT",
          "keywords": [
            "xml",
            "json",
            "pretty",
            "print",
            "cat",
            "cate",
            "doge"
          ],
          "ecosystem": "npm",
          "matches_repo": false,
          "registry_url": "https://www.npmjs.com/package/cate",
          "is_deprecated": false,
          "latest_version": "0.1.0",
          "repository_url": "https://github.com/boo1ean/cate",
          "versions_count": 3,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": 1,
          "monthly_downloads": 36,
          "first_published_at": "2014-06-29T09:39:55.699000Z",
          "latest_published_at": "2014-10-23T15:08:41.841000Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4289
        }
      ]
    },
    "popularity": {
      "forks": 124,
      "stars": 1911,
      "watchers": 5,
      "fork_history": {
        "days": [
          {
            "date": "2026-04-15",
            "count": 2
          },
          {
            "date": "2026-04-16",
            "count": 2
          },
          {
            "date": "2026-04-17",
            "count": 1
          },
          {
            "date": "2026-04-18",
            "count": 1
          },
          {
            "date": "2026-05-16",
            "count": 1
          },
          {
            "date": "2026-05-17",
            "count": 4
          },
          {
            "date": "2026-05-18",
            "count": 4
          },
          {
            "date": "2026-05-21",
            "count": 1
          },
          {
            "date": "2026-05-24",
            "count": 5
          },
          {
            "date": "2026-05-25",
            "count": 5
          },
          {
            "date": "2026-05-26",
            "count": 3
          },
          {
            "date": "2026-05-27",
            "count": 6
          },
          {
            "date": "2026-05-28",
            "count": 5
          },
          {
            "date": "2026-05-29",
            "count": 5
          },
          {
            "date": "2026-05-30",
            "count": 7
          },
          {
            "date": "2026-05-31",
            "count": 4
          },
          {
            "date": "2026-06-01",
            "count": 2
          },
          {
            "date": "2026-06-02",
            "count": 5
          },
          {
            "date": "2026-06-03",
            "count": 2
          },
          {
            "date": "2026-06-05",
            "count": 1
          },
          {
            "date": "2026-06-08",
            "count": 3
          },
          {
            "date": "2026-06-09",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 3
          },
          {
            "date": "2026-06-12",
            "count": 1
          },
          {
            "date": "2026-06-13",
            "count": 3
          },
          {
            "date": "2026-06-14",
            "count": 2
          },
          {
            "date": "2026-06-15",
            "count": 4
          },
          {
            "date": "2026-06-16",
            "count": 1
          },
          {
            "date": "2026-06-17",
            "count": 5
          },
          {
            "date": "2026-06-18",
            "count": 3
          },
          {
            "date": "2026-06-19",
            "count": 1
          },
          {
            "date": "2026-06-22",
            "count": 1
          },
          {
            "date": "2026-06-23",
            "count": 2
          },
          {
            "date": "2026-06-24",
            "count": 1
          },
          {
            "date": "2026-06-26",
            "count": 1
          },
          {
            "date": "2026-06-27",
            "count": 1
          },
          {
            "date": "2026-06-29",
            "count": 2
          },
          {
            "date": "2026-07-01",
            "count": 2
          },
          {
            "date": "2026-07-03",
            "count": 1
          },
          {
            "date": "2026-07-04",
            "count": 2
          },
          {
            "date": "2026-07-06",
            "count": 1
          },
          {
            "date": "2026-07-07",
            "count": 2
          },
          {
            "date": "2026-07-09",
            "count": 1
          },
          {
            "date": "2026-07-13",
            "count": 1
          },
          {
            "date": "2026-07-14",
            "count": 5
          },
          {
            "date": "2026-07-16",
            "count": 2
          },
          {
            "date": "2026-07-17",
            "count": 3
          },
          {
            "date": "2026-07-18",
            "count": 1
          },
          {
            "date": "2026-07-19",
            "count": 1
          },
          {
            "date": "2026-07-21",
            "count": 1
          }
        ],
        "complete": true,
        "collected": 124,
        "total_forks": 124
      },
      "star_history": {
        "days": [
          {
            "date": "2026-05-31",
            "count": 2
          },
          {
            "date": "2026-06-01",
            "count": 127
          },
          {
            "date": "2026-06-02",
            "count": 18
          },
          {
            "date": "2026-06-03",
            "count": 30
          },
          {
            "date": "2026-06-04",
            "count": 60
          },
          {
            "date": "2026-06-05",
            "count": 26
          },
          {
            "date": "2026-06-06",
            "count": 17
          },
          {
            "date": "2026-06-07",
            "count": 39
          },
          {
            "date": "2026-06-08",
            "count": 24
          },
          {
            "date": "2026-06-09",
            "count": 24
          },
          {
            "date": "2026-06-10",
            "count": 16
          },
          {
            "date": "2026-06-11",
            "count": 18
          },
          {
            "date": "2026-06-12",
            "count": 10
          },
          {
            "date": "2026-06-13",
            "count": 94
          },
          {
            "date": "2026-06-14",
            "count": 62
          },
          {
            "date": "2026-06-15",
            "count": 79
          },
          {
            "date": "2026-06-16",
            "count": 33
          },
          {
            "date": "2026-06-17",
            "count": 37
          },
          {
            "date": "2026-06-18",
            "count": 24
          },
          {
            "date": "2026-06-19",
            "count": 12
          },
          {
            "date": "2026-06-20",
            "count": 8
          },
          {
            "date": "2026-06-21",
            "count": 6
          },
          {
            "date": "2026-06-22",
            "count": 5
          },
          {
            "date": "2026-06-23",
            "count": 4
          },
          {
            "date": "2026-06-24",
            "count": 8
          },
          {
            "date": "2026-06-25",
            "count": 5
          },
          {
            "date": "2026-06-26",
            "count": 4
          },
          {
            "date": "2026-06-27",
            "count": 1
          },
          {
            "date": "2026-06-28",
            "count": 5
          },
          {
            "date": "2026-06-29",
            "count": 2
          },
          {
            "date": "2026-06-30",
            "count": 3
          },
          {
            "date": "2026-07-01",
            "count": 4
          },
          {
            "date": "2026-07-02",
            "count": 1
          },
          {
            "date": "2026-07-03",
            "count": 1
          },
          {
            "date": "2026-07-04",
            "count": 15
          },
          {
            "date": "2026-07-05",
            "count": 15
          },
          {
            "date": "2026-07-06",
            "count": 12
          },
          {
            "date": "2026-07-07",
            "count": 10
          },
          {
            "date": "2026-07-08",
            "count": 8
          },
          {
            "date": "2026-07-09",
            "count": 3
          },
          {
            "date": "2026-07-10",
            "count": 4
          },
          {
            "date": "2026-07-11",
            "count": 2
          },
          {
            "date": "2026-07-12",
            "count": 3
          },
          {
            "date": "2026-07-13",
            "count": 21
          },
          {
            "date": "2026-07-14",
            "count": 15
          },
          {
            "date": "2026-07-15",
            "count": 7
          },
          {
            "date": "2026-07-16",
            "count": 22
          },
          {
            "date": "2026-07-17",
            "count": 16
          },
          {
            "date": "2026-07-18",
            "count": 10
          },
          {
            "date": "2026-07-19",
            "count": 8
          },
          {
            "date": "2026-07-20",
            "count": 10
          },
          {
            "date": "2026-07-21",
            "count": 9
          },
          {
            "date": "2026-07-22",
            "count": 1
          }
        ],
        "complete": false,
        "collected": 1000,
        "total_stars": 1911
      },
      "open_issues_and_prs": 5
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": false,
      "has_mcp_signal": false,
      "bootstrap_files": [],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 94796,
      "source_files_sampled": 902,
      "oversized_source_files": 2,
      "agent_instruction_files": [
        "AGENTS.md",
        "CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 5879
    },
    "dependencies": {
      "manifests": [
        "package.json"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [
          {
            "name": "form-data",
            "direct": false,
            "version": "2.3.3",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-fjxv-7rqg-78g4",
              "GHSA-hmw2-7cc7-3qxx"
            ],
            "fixed_version": "4.0.6",
            "advisory_count": 2,
            "oldest_advisory_days": 365
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "3.4.0",
            "severity": "high",
            "ecosystem": "npm",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-w5hq-g745-h8pq"
            ],
            "fixed_version": "13.0.1",
            "advisory_count": 1,
            "oldest_advisory_days": 90
          },
          {
            "name": "request",
            "direct": true,
            "version": "2.88.2",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.1,
            "advisory_ids": [
              "GHSA-p8p7-x288-28g6"
            ],
            "fixed_version": "3.0.0",
            "advisory_count": 1,
            "oldest_advisory_days": 1223
          },
          {
            "name": "highlight.js",
            "direct": false,
            "version": "8.9.1",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.8,
            "advisory_ids": [
              "GHSA-vfrc-7r7c-w9mx"
            ],
            "fixed_version": "10.1.2",
            "advisory_count": 1,
            "oldest_advisory_days": 2065
          },
          {
            "name": "qs",
            "direct": false,
            "version": "6.5.5",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 5.3,
            "advisory_ids": [
              "GHSA-6rw7-vpxm-498p"
            ],
            "fixed_version": "6.14.1",
            "advisory_count": 1,
            "oldest_advisory_days": 203
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "2.5.0",
            "severity": "moderate",
            "ecosystem": "npm",
            "cvss_score": 6.5,
            "advisory_ids": [
              "GHSA-72xf-g2v4-qvf3"
            ],
            "fixed_version": "4.1.3",
            "advisory_count": 1,
            "oldest_advisory_days": 1117
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 2,
          "moderate": 4
        },
        "advisory_count": 7,
        "affected_count": 6,
        "assessed_count": 99,
        "malicious_count": 0,
        "assessed_package": "npm:cate@0.1.0",
        "unassessed_count": 0,
        "direct_affected_count": 1
      },
      "ecosystems": [
        "npm"
      ],
      "dependencies": [
        {
          "name": "@earendil-works/pi-agent-core",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.80.6"
        },
        {
          "name": "@earendil-works/pi-ai",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.80.6"
        },
        {
          "name": "@parcel/watcher",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.5.1"
        },
        {
          "name": "@phosphor-icons/react",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^2.1.10"
        },
        {
          "name": "@sentry/electron",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.11.0"
        },
        {
          "name": "@types/ssh2",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.15.5"
        },
        {
          "name": "@xterm/addon-fit",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.10.0"
        },
        {
          "name": "@xterm/addon-search",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.16.0"
        },
        {
          "name": "@xterm/addon-serialize",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.13.0"
        },
        {
          "name": "@xterm/addon-web-links",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.11.0"
        },
        {
          "name": "@xterm/addon-webgl",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.18.0"
        },
        {
          "name": "@xterm/xterm",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.5.0"
        },
        {
          "name": "chokidar",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.0.0"
        },
        {
          "name": "electron-log",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.4.3"
        },
        {
          "name": "electron-updater",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^6.8.3"
        },
        {
          "name": "mammoth",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.12.0"
        },
        {
          "name": "monaco-editor",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^0.52.0"
        },
        {
          "name": "pdfjs-dist",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.7.284"
        },
        {
          "name": "react",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^18.3.0"
        },
        {
          "name": "react-dom",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^18.3.0"
        },
        {
          "name": "react-markdown",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^10.1.0"
        },
        {
          "name": "remark-gfm",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^4.0.1"
        },
        {
          "name": "simple-git",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^3.27.0"
        },
        {
          "name": "ssh2",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.17.0"
        },
        {
          "name": "use-sync-external-store",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^1.6.0"
        },
        {
          "name": "zustand",
          "manifest": "package.json",
          "ecosystem": "npm",
          "version_constraint": "^5.0.0"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "@earendil-works/pi-agent-core",
            "direct": true,
            "version": "0.80.6",
            "ecosystem": "npm"
          },
          {
            "name": "@earendil-works/pi-ai",
            "direct": true,
            "version": "0.80.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher",
            "direct": true,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@phosphor-icons/react",
            "direct": true,
            "version": "2.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/electron",
            "direct": true,
            "version": "5.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ssh2",
            "direct": true,
            "version": "1.15.5",
            "ecosystem": "npm"
          },
          {
            "name": "@xterm/addon-fit",
            "direct": true,
            "version": "0.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xterm/addon-search",
            "direct": true,
            "version": "0.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xterm/addon-serialize",
            "direct": true,
            "version": "0.13.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xterm/addon-web-links",
            "direct": true,
            "version": "0.11.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xterm/addon-webgl",
            "direct": true,
            "version": "0.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xterm/xterm",
            "direct": true,
            "version": "5.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": true,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "chokidar",
            "direct": true,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "electron-log",
            "direct": true,
            "version": "5.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "electron-updater",
            "direct": true,
            "version": "6.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "mammoth",
            "direct": true,
            "version": "1.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "monaco-editor",
            "direct": true,
            "version": "0.52.2",
            "ecosystem": "npm"
          },
          {
            "name": "pdfjs-dist",
            "direct": true,
            "version": "5.7.284",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": true,
            "version": "18.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": true,
            "version": "18.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-markdown",
            "direct": true,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-gfm",
            "direct": true,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "simple-git",
            "direct": true,
            "version": "3.35.2",
            "ecosystem": "npm"
          },
          {
            "name": "ssh2",
            "direct": true,
            "version": "1.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "use-sync-external-store",
            "direct": true,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "zustand",
            "direct": true,
            "version": "5.0.12",
            "ecosystem": "npm"
          },
          {
            "name": "7zip-bin",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@alloc/quick-lru",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@anthropic-ai/sdk",
            "direct": false,
            "version": "0.91.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/css-color",
            "direct": false,
            "version": "5.1.11",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/dom-selector",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/generational-cache",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@asamuzakjp/nwsapi",
            "direct": false,
            "version": "2.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/crc32",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/sha256-browser",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/sha256-js",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/supports-web-crypto",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-crypto/util",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/client-bedrock-runtime",
            "direct": false,
            "version": "3.1048.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/core",
            "direct": false,
            "version": "3.974.11",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/core",
            "direct": false,
            "version": "3.975.1",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-env",
            "direct": false,
            "version": "3.972.37",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-env",
            "direct": false,
            "version": "3.972.57",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-http",
            "direct": false,
            "version": "3.972.39",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-http",
            "direct": false,
            "version": "3.972.59",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-ini",
            "direct": false,
            "version": "3.972.41",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-ini",
            "direct": false,
            "version": "3.973.1",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-login",
            "direct": false,
            "version": "3.972.41",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-login",
            "direct": false,
            "version": "3.972.63",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-node",
            "direct": false,
            "version": "3.972.42",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-node",
            "direct": false,
            "version": "3.972.66",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-process",
            "direct": false,
            "version": "3.972.37",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-process",
            "direct": false,
            "version": "3.972.57",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-sso",
            "direct": false,
            "version": "3.972.41",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-sso",
            "direct": false,
            "version": "3.973.1",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-web-identity",
            "direct": false,
            "version": "3.972.41",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-provider-web-identity",
            "direct": false,
            "version": "3.972.63",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/eventstream-handler-node",
            "direct": false,
            "version": "3.972.16",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/eventstream-handler-node",
            "direct": false,
            "version": "3.972.26",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/middleware-eventstream",
            "direct": false,
            "version": "3.972.12",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/middleware-eventstream",
            "direct": false,
            "version": "3.972.22",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/middleware-websocket",
            "direct": false,
            "version": "3.972.19",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/middleware-websocket",
            "direct": false,
            "version": "3.972.39",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/nested-clients",
            "direct": false,
            "version": "3.997.31",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/nested-clients",
            "direct": false,
            "version": "3.997.9",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/signature-v4-multi-region",
            "direct": false,
            "version": "3.996.27",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/signature-v4-multi-region",
            "direct": false,
            "version": "3.996.39",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/token-providers",
            "direct": false,
            "version": "3.1048.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/token-providers",
            "direct": false,
            "version": "3.1083.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/types",
            "direct": false,
            "version": "3.973.8",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/types",
            "direct": false,
            "version": "3.974.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/util-locate-window",
            "direct": false,
            "version": "3.965.5",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/util-locate-window",
            "direct": false,
            "version": "3.965.8",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/xml-builder",
            "direct": false,
            "version": "3.972.24",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/xml-builder",
            "direct": false,
            "version": "3.972.34",
            "ecosystem": "npm"
          },
          {
            "name": "@aws/lambda-invoke-store",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@aws/lambda-invoke-store",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-plugin-utils",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-arrow-functions",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-react-jsx-self",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-react-jsx-source",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/runtime",
            "direct": false,
            "version": "7.29.7",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@bramus/specificity",
            "direct": false,
            "version": "2.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/color-helpers",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-calc",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-color-parser",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-parser-algorithms",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-syntax-patches-for-csstree",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@csstools/css-tokenizer",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@develar/schema-utils",
            "direct": false,
            "version": "2.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "@earendil-works/pi-coding-agent",
            "direct": false,
            "version": "0.80.6",
            "ecosystem": "npm"
          },
          {
            "name": "@earendil-works/pi-tui",
            "direct": false,
            "version": "0.80.6",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/asar",
            "direct": false,
            "version": "3.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/fuses",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/get",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/get",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/notarize",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/osx-sign",
            "direct": false,
            "version": "1.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/rebuild",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/universal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/eslint-utils",
            "direct": false,
            "version": "4.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint-community/regexpp",
            "direct": false,
            "version": "4.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-array",
            "direct": false,
            "version": "0.21.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/config-helpers",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/core",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/eslintrc",
            "direct": false,
            "version": "3.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/js",
            "direct": false,
            "version": "9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/object-schema",
            "direct": false,
            "version": "2.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "@eslint/plugin-kit",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@exodus/bytes",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@google/genai",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/core",
            "direct": false,
            "version": "0.19.2",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/node",
            "direct": false,
            "version": "0.16.8",
            "ecosystem": "npm"
          },
          {
            "name": "@humanfs/types",
            "direct": false,
            "version": "0.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/module-importer",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@humanwhocodes/retry",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-arm64",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-x64",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-arm64",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-x64",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm64",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-s390x",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-x64",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-arm64",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-x64",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm64",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-s390x",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-x64",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-arm64",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-x64",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-wasm32",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-ia32",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-x64",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/fs-minipass",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@kwsites/file-exists",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@kwsites/promise-deferred",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@malept/cross-spawn-promise",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@malept/flatpak-bundler",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-darwin-arm64",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-darwin-universal",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-darwin-x64",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-linux-arm64-gnu",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-linux-arm64-musl",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-linux-riscv64-gnu",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-linux-x64-gnu",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-linux-x64-musl",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-win32-arm64-msvc",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mariozechner/clipboard-win32-x64-msvc",
            "direct": false,
            "version": "0.3.9",
            "ecosystem": "npm"
          },
          {
            "name": "@mistralai/mistralai",
            "direct": false,
            "version": "2.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-android-arm64",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-darwin-arm64",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-darwin-x64",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-arm-gnueabihf",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-arm64-gnu",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-arm64-musl",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-riscv64-gnu",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-x64-gnu",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-linux-x64-musl",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-win32-arm64-msvc",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@napi-rs/canvas-win32-x64-msvc",
            "direct": false,
            "version": "0.1.100",
            "ecosystem": "npm"
          },
          {
            "name": "@nodable/entities",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.scandir",
            "direct": false,
            "version": "2.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.stat",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@nodelib/fs.walk",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/api",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/api",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/api-logs",
            "direct": false,
            "version": "0.53.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/api-logs",
            "direct": false,
            "version": "0.57.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/api-logs",
            "direct": false,
            "version": "0.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/context-async-hooks",
            "direct": false,
            "version": "1.30.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/core",
            "direct": false,
            "version": "1.30.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation",
            "direct": false,
            "version": "0.53.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation",
            "direct": false,
            "version": "0.57.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation",
            "direct": false,
            "version": "0.57.2",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-amqplib",
            "direct": false,
            "version": "0.46.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-connect",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-dataloader",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-express",
            "direct": false,
            "version": "0.47.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-fastify",
            "direct": false,
            "version": "0.44.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-fs",
            "direct": false,
            "version": "0.19.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-generic-pool",
            "direct": false,
            "version": "0.43.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-graphql",
            "direct": false,
            "version": "0.47.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-hapi",
            "direct": false,
            "version": "0.45.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-http",
            "direct": false,
            "version": "0.57.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-ioredis",
            "direct": false,
            "version": "0.47.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-kafkajs",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-knex",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-koa",
            "direct": false,
            "version": "0.47.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-lru-memoizer",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-mongodb",
            "direct": false,
            "version": "0.51.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-mongoose",
            "direct": false,
            "version": "0.46.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-mysql",
            "direct": false,
            "version": "0.45.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-mysql2",
            "direct": false,
            "version": "0.45.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-nestjs-core",
            "direct": false,
            "version": "0.44.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-pg",
            "direct": false,
            "version": "0.50.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-redis-4",
            "direct": false,
            "version": "0.46.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-tedious",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/instrumentation-undici",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/redis-common",
            "direct": false,
            "version": "0.36.2",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/resources",
            "direct": false,
            "version": "1.30.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/sdk-trace-base",
            "direct": false,
            "version": "1.30.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/semantic-conventions",
            "direct": false,
            "version": "1.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/semantic-conventions",
            "direct": false,
            "version": "1.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/semantic-conventions",
            "direct": false,
            "version": "1.41.1",
            "ecosystem": "npm"
          },
          {
            "name": "@opentelemetry/sql-common",
            "direct": false,
            "version": "0.40.1",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-android-arm64",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-darwin-arm64",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-darwin-x64",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-freebsd-x64",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm-glibc",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm-musl",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm64-glibc",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-arm64-musl",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-x64-glibc",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-linux-x64-musl",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-win32-arm64",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-win32-ia32",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@parcel/watcher-win32-x64",
            "direct": false,
            "version": "2.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "@playwright/test",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "@prisma/instrumentation",
            "direct": false,
            "version": "5.22.0",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/aspromise",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/base64",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/codegen",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/eventemitter",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/fetch",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/float",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/path",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/pool",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/utf8",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/utf8",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rolldown/pluginutils",
            "direct": false,
            "version": "1.0.0-beta.27",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry-internal/browser-utils",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry-internal/feedback",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry-internal/replay",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry-internal/replay-canvas",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/browser",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/core",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/node",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@sentry/opentelemetry",
            "direct": false,
            "version": "8.55.0",
            "ecosystem": "npm"
          },
          {
            "name": "@silvia-odwyer/photon-node",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@simple-git/args-pathspec",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@simple-git/argv-parser",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@sindresorhus/is",
            "direct": false,
            "version": "4.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/core",
            "direct": false,
            "version": "3.24.3",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/core",
            "direct": false,
            "version": "3.29.3",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/credential-provider-imds",
            "direct": false,
            "version": "4.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/credential-provider-imds",
            "direct": false,
            "version": "4.4.8",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/fetch-http-handler",
            "direct": false,
            "version": "5.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/fetch-http-handler",
            "direct": false,
            "version": "5.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/is-array-buffer",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/node-http-handler",
            "direct": false,
            "version": "4.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/node-http-handler",
            "direct": false,
            "version": "4.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/signature-v4",
            "direct": false,
            "version": "5.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/signature-v4",
            "direct": false,
            "version": "5.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/types",
            "direct": false,
            "version": "4.14.2",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/types",
            "direct": false,
            "version": "4.16.1",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/util-buffer-from",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@smithy/util-utf8",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@szmarczak/http-timer",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__core",
            "direct": false,
            "version": "7.20.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__generator",
            "direct": false,
            "version": "7.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__template",
            "direct": false,
            "version": "7.4.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/babel__traverse",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/cacheable-request",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/chai",
            "direct": false,
            "version": "5.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/connect",
            "direct": false,
            "version": "3.4.36",
            "ecosystem": "npm"
          },
          {
            "name": "@types/debug",
            "direct": false,
            "version": "4.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/deep-eql",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree-jsx",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/fs-extra",
            "direct": false,
            "version": "9.0.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/hast",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/http-cache-semantics",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/json-schema",
            "direct": false,
            "version": "7.0.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/keyv",
            "direct": false,
            "version": "3.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mdast",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "@types/ms",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/mysql",
            "direct": false,
            "version": "2.15.26",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "18.19.130",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "22.19.17",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "22.19.19",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "24.12.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/pg",
            "direct": false,
            "version": "8.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/pg-pool",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "@types/plist",
            "direct": false,
            "version": "3.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "@types/prop-types",
            "direct": false,
            "version": "15.7.15",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "18.3.28",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "18.3.7",
            "ecosystem": "npm"
          },
          {
            "name": "@types/responselike",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/retry",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/shimmer",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/tedious",
            "direct": false,
            "version": "4.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "2.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/unist",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "@types/verror",
            "direct": false,
            "version": "1.10.11",
            "ecosystem": "npm"
          },
          {
            "name": "@types/yauzl",
            "direct": false,
            "version": "2.10.3",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/eslint-plugin",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/parser",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/project-service",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/scope-manager",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/tsconfig-utils",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/type-utils",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/types",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/typescript-estree",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/utils",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@typescript-eslint/visitor-keys",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@ungap/structured-clone",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-react",
            "direct": false,
            "version": "4.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-darwin-arm64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-darwin-x64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-linux-arm",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-linux-arm64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-linux-ia32",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-linux-ppc64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-linux-riscv64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-linux-s390x",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-linux-x64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-win32-arm64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-win32-ia32",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vscode/ripgrep-win32-x64",
            "direct": false,
            "version": "1.18.0",
            "ecosystem": "npm"
          },
          {
            "name": "@xmldom/xmldom",
            "direct": false,
            "version": "0.8.12",
            "ecosystem": "npm"
          },
          {
            "name": "abbrev",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn",
            "direct": false,
            "version": "8.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-import-attributes",
            "direct": false,
            "version": "1.9.5",
            "ecosystem": "npm"
          },
          {
            "name": "acorn-jsx",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "agent-base",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "ajv",
            "direct": false,
            "version": "6.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "ajv-keywords",
            "direct": false,
            "version": "3.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-regex",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ansi-styles",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "any-promise",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "anymatch",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "app-builder-bin",
            "direct": false,
            "version": "5.0.0-alpha.12",
            "ecosystem": "npm"
          },
          {
            "name": "app-builder-lib",
            "direct": false,
            "version": "26.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "arg",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "1.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "argparse",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "asn1",
            "direct": false,
            "version": "0.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "assert-plus",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "astral-regex",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "async",
            "direct": false,
            "version": "3.2.6",
            "ecosystem": "npm"
          },
          {
            "name": "async-exit-hook",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "asynckit",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "at-least-node",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": false,
            "version": "10.4.27",
            "ecosystem": "npm"
          },
          {
            "name": "bail",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "balanced-match",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.16",
            "ecosystem": "npm"
          },
          {
            "name": "bcrypt-pbkdf",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "bidi-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "bignumber.js",
            "direct": false,
            "version": "9.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "binary-extensions",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "bl",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "bluebird",
            "direct": false,
            "version": "3.4.7",
            "ecosystem": "npm"
          },
          {
            "name": "boolean",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "bowser",
            "direct": false,
            "version": "2.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "1.1.15",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "brace-expansion",
            "direct": false,
            "version": "5.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "braces",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.2",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-crc32",
            "direct": false,
            "version": "0.2.13",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-equal-constant-time",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "buffer-from",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "buildcheck",
            "direct": false,
            "version": "0.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "builder-util",
            "direct": false,
            "version": "26.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "builder-util-runtime",
            "direct": false,
            "version": "9.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": false,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "cacheable-lookup",
            "direct": false,
            "version": "5.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "cacheable-request",
            "direct": false,
            "version": "7.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "call-bind-apply-helpers",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "callsites",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "camelcase-css",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001787",
            "ecosystem": "npm"
          },
          {
            "name": "ccount",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "5.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "chalk",
            "direct": false,
            "version": "5.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-html4",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-entities-legacy",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "character-reference-invalid",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "check-error",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "chownr",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "chromium-pickle-js",
            "direct": false,
            "version": "0.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "ci-info",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "ci-info",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "cjs-module-lexer",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "cli-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cli-spinners",
            "direct": false,
            "version": "2.9.2",
            "ecosystem": "npm"
          },
          {
            "name": "cli-truncate",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "cliui",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "clone",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "clone-response",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "color",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "color-convert",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "color-name",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "color-string",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "npm"
          },
          {
            "name": "combined-stream",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "comma-separated-tokens",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "commander",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "compare-version",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "concat-map",
            "direct": false,
            "version": "0.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "core-util-is",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "cpu-features",
            "direct": false,
            "version": "0.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "crc",
            "direct": false,
            "version": "3.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "cross-spawn",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "css-tree",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "cssesc",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "csstype",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "data-uri-to-buffer",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "data-urls",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decimal.js",
            "direct": false,
            "version": "10.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "decode-named-character-reference",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "decompress-response",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-eql",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "deep-is",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "deepmerge",
            "direct": false,
            "version": "4.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "defaults",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "defer-to-connect",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "define-data-property",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "define-properties",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "delayed-stream",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "dequal",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "devlop",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "didyoumean",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "npm"
          },
          {
            "name": "diff",
            "direct": false,
            "version": "8.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "dingbat-to-unicode",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "dir-compare",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "dlv",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "dmg-builder",
            "direct": false,
            "version": "26.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "dmg-license",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "16.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "dotenv-expand",
            "direct": false,
            "version": "11.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "duck",
            "direct": false,
            "version": "0.1.12",
            "ecosystem": "npm"
          },
          {
            "name": "dunder-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "ecdsa-sig-formatter",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "ejs",
            "direct": false,
            "version": "3.1.10",
            "ecosystem": "npm"
          },
          {
            "name": "electron",
            "direct": false,
            "version": "41.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "electron-builder",
            "direct": false,
            "version": "26.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-builder-squirrel-windows",
            "direct": false,
            "version": "26.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-publish",
            "direct": false,
            "version": "26.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.333",
            "ecosystem": "npm"
          },
          {
            "name": "electron-vite",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "electron-winstaller",
            "direct": false,
            "version": "5.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "emoji-regex",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "env-paths",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "err-code",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "es-define-property",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-errors",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-module-lexer",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "es-object-atoms",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "es-set-tostringtag",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "es6-error",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.25.12",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint",
            "direct": false,
            "version": "9.39.4",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-plugin-react-hooks",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-scope",
            "direct": false,
            "version": "8.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "3.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "eslint-visitor-keys",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "espree",
            "direct": false,
            "version": "10.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "esquery",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "esrecurse",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estraverse",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-util-is-identifier-name",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "esutils",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "exponential-backoff",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "extend",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "extract-zip",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "extsprintf",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "fast-deep-equal",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-glob",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "fast-json-stable-stringify",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-levenshtein",
            "direct": false,
            "version": "2.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fast-xml-builder",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "fast-xml-parser",
            "direct": false,
            "version": "5.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "fastq",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "npm"
          },
          {
            "name": "fd-slicer",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fdir",
            "direct": false,
            "version": "6.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "fetch-blob",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-entry-cache",
            "direct": false,
            "version": "8.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "filelist",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "fill-range",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "find-up",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flat-cache",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "flatted",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "form-data",
            "direct": false,
            "version": "4.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "formdata-polyfill",
            "direct": false,
            "version": "4.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "forwarded-parse",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "fraction.js",
            "direct": false,
            "version": "5.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "10.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "11.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "8.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs-extra",
            "direct": false,
            "version": "9.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "fs.realpath",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "function-bind",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gaxios",
            "direct": false,
            "version": "7.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "gaxios",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "gcp-metadata",
            "direct": false,
            "version": "8.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-caller-file",
            "direct": false,
            "version": "2.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "get-east-asian-width",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-intrinsic",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "get-proto",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "get-stream",
            "direct": false,
            "version": "5.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "13.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "glob",
            "direct": false,
            "version": "7.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "glob-parent",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "global-agent",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "globals",
            "direct": false,
            "version": "15.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "globalthis",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "google-auth-library",
            "direct": false,
            "version": "10.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "google-auth-library",
            "direct": false,
            "version": "10.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "google-logging-utils",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "got",
            "direct": false,
            "version": "11.8.6",
            "ecosystem": "npm"
          },
          {
            "name": "graceful-fs",
            "direct": false,
            "version": "4.2.11",
            "ecosystem": "npm"
          },
          {
            "name": "has-flag",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-property-descriptors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "has-symbols",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-tostringtag",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hasown",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-to-jsx-runtime",
            "direct": false,
            "version": "2.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "hast-util-whitespace",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "highlight.js",
            "direct": false,
            "version": "10.7.3",
            "ecosystem": "npm"
          },
          {
            "name": "hosted-git-info",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "hosted-git-info",
            "direct": false,
            "version": "9.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "html-encoding-sniffer",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "html-url-attributes",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "http-cache-semantics",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "http-proxy-agent",
            "direct": false,
            "version": "7.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "http2-wrapper",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "https-proxy-agent",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-corefoundation",
            "direct": false,
            "version": "1.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "iconv-lite",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "ieee754",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "ignore",
            "direct": false,
            "version": "7.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "immediate",
            "direct": false,
            "version": "3.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "import-fresh",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "import-in-the-middle",
            "direct": false,
            "version": "1.15.0",
            "ecosystem": "npm"
          },
          {
            "name": "imurmurhash",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "inflight",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "inline-style-parser",
            "direct": false,
            "version": "0.2.7",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphabetical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-alphanumerical",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-arrayish",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "is-binary-path",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-core-module",
            "direct": false,
            "version": "2.16.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-decimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-extglob",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-fullwidth-code-point",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-glob",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "is-hexadecimal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-interactive",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-number",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-plain-obj",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "is-potential-custom-element-name",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "is-unicode-supported",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "isarray",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isbinaryfile",
            "direct": false,
            "version": "4.0.10",
            "ecosystem": "npm"
          },
          {
            "name": "isbinaryfile",
            "direct": false,
            "version": "5.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "isexe",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jake",
            "direct": false,
            "version": "10.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "1.21.7",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "jiti",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "js-yaml",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": false,
            "version": "29.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-bigint",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-buffer",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-to-ts",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-schema-traverse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stable-stringify-without-jsonify",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json-stringify-safe",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsonfile",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "jszip",
            "direct": false,
            "version": "3.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "jwa",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "jws",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "keyv",
            "direct": false,
            "version": "4.5.4",
            "ecosystem": "npm"
          },
          {
            "name": "lazy-val",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "levn",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "lie",
            "direct": false,
            "version": "3.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "lilconfig",
            "direct": false,
            "version": "3.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "lines-and-columns",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "locate-path",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash",
            "direct": false,
            "version": "4.18.1",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.escaperegexp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.isequal",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "lodash.merge",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "log-symbols",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "long",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "longest-streak",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "loose-envify",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "lop",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "npm"
          },
          {
            "name": "loupe",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "lowercase-keys",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "11.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "markdown-table",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "marked",
            "direct": false,
            "version": "18.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "matcher",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "math-intrinsics",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-find-and-replace",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-from-markdown",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-autolink-literal",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-strikethrough",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-table",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-gfm-task-list-item",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-expression",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdx-jsx",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-mdxjs-esm",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-phrasing",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-hast",
            "direct": false,
            "version": "13.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-markdown",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "mdast-util-to-string",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mdn-data",
            "direct": false,
            "version": "2.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "merge2",
            "direct": false,
            "version": "1.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-core-commonmark",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-autolink-literal",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-footnote",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-strikethrough",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-table",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-tagfilter",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-extension-gfm-task-list-item",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-destination",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-label",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-space",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-title",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-factory-whitespace",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-character",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-chunked",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-classify-character",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-combine-extensions",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-numeric-character-reference",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-decode-string",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-encode",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-html-tag-name",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-normalize-identifier",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-resolve-all",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-sanitize-uri",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-subtokenize",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-symbol",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "micromark-util-types",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "micromatch",
            "direct": false,
            "version": "4.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "mime",
            "direct": false,
            "version": "2.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-db",
            "direct": false,
            "version": "1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "mime-types",
            "direct": false,
            "version": "2.1.35",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-fn",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-response",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-response",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "10.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "5.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "minimatch",
            "direct": false,
            "version": "9.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "minizlib",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp",
            "direct": false,
            "version": "0.5.6",
            "ecosystem": "npm"
          },
          {
            "name": "module-details-from-path",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "mz",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "nan",
            "direct": false,
            "version": "2.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.11",
            "ecosystem": "npm"
          },
          {
            "name": "natural-compare",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-abi",
            "direct": false,
            "version": "4.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-addon-api",
            "direct": false,
            "version": "1.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-addon-api",
            "direct": false,
            "version": "7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-api-version",
            "direct": false,
            "version": "0.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "node-domexception",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-fetch",
            "direct": false,
            "version": "3.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "node-gyp",
            "direct": false,
            "version": "12.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-pty",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.37",
            "ecosystem": "npm"
          },
          {
            "name": "nopt",
            "direct": false,
            "version": "9.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-path",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "normalize-url",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-assign",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-hash",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "object-keys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onetime",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "openai",
            "direct": false,
            "version": "6.26.0",
            "ecosystem": "npm"
          },
          {
            "name": "option",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "optionator",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "ora",
            "direct": false,
            "version": "5.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "p-cancelable",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "p-limit",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-locate",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "p-retry",
            "direct": false,
            "version": "4.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "pako",
            "direct": false,
            "version": "1.0.11",
            "ecosystem": "npm"
          },
          {
            "name": "parent-module",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "parse-entities",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "parse5",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "partial-json",
            "direct": false,
            "version": "0.1.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-exists",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-expression-matcher",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "path-is-absolute",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-key",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "path-parse",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "path-scurry",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "pathval",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pe-library",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "pend",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "pg-int8",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pg-protocol",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "pg-types",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "pify",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "pirates",
            "direct": false,
            "version": "4.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "playwright",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "playwright-core",
            "direct": false,
            "version": "1.60.0",
            "ecosystem": "npm"
          },
          {
            "name": "plist",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "png-to-ico",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "pngjs",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.9",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-import",
            "direct": false,
            "version": "15.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-js",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-load-config",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-nested",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-selector-parser",
            "direct": false,
            "version": "6.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "postcss-value-parser",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-array",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-bytea",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-date",
            "direct": false,
            "version": "1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "postgres-interval",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "prelude-ls",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "proc-log",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "process-nextick-args",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "progress",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "promise-retry",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "proper-lockfile",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "property-information",
            "direct": false,
            "version": "7.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "protobufjs",
            "direct": false,
            "version": "7.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "protobufjs",
            "direct": false,
            "version": "7.6.5",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "punycode",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "queue-microtask",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "quick-lru",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-refresh",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "npm"
          },
          {
            "name": "read-binary-file-arch",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "read-cache",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "2.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "readdirp",
            "direct": false,
            "version": "4.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-parse",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "remark-rehype",
            "direct": false,
            "version": "11.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "remark-stringify",
            "direct": false,
            "version": "11.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "require-directory",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "require-from-string",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "require-in-the-middle",
            "direct": false,
            "version": "7.5.2",
            "ecosystem": "npm"
          },
          {
            "name": "resedit",
            "direct": false,
            "version": "1.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "resolve",
            "direct": false,
            "version": "1.22.11",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-alpn",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-from",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "responselike",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "restore-cursor",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "retry",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "npm"
          },
          {
            "name": "retry",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "reusify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "rimraf",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "roarr",
            "direct": false,
            "version": "2.15.4",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "run-parallel",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "safer-buffer",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "sanitize-filename",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "npm"
          },
          {
            "name": "sax",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "saxes",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "scheduler",
            "direct": false,
            "version": "0.23.2",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "5.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "semver-compare",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "serialize-error",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "setimmediate",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "sharp",
            "direct": false,
            "version": "0.33.5",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-command",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shebang-regex",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "shimmer",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "signal-exit",
            "direct": false,
            "version": "3.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "simple-swizzle",
            "direct": false,
            "version": "0.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "simple-update-notifier",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "slice-ansi",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "smart-buffer",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.6.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-support",
            "direct": false,
            "version": "0.5.21",
            "ecosystem": "npm"
          },
          {
            "name": "space-separated-tokens",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "stat-mode",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "3.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "string-width",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "stringify-entities",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "strip-ansi",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "strip-literal",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "strnum",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-js",
            "direct": false,
            "version": "1.1.21",
            "ecosystem": "npm"
          },
          {
            "name": "style-to-object",
            "direct": false,
            "version": "1.0.14",
            "ecosystem": "npm"
          },
          {
            "name": "sucrase",
            "direct": false,
            "version": "3.35.1",
            "ecosystem": "npm"
          },
          {
            "name": "sumchecker",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "supports-color",
            "direct": false,
            "version": "7.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "supports-preserve-symlinks-flag",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "symbol-tree",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": false,
            "version": "3.4.19",
            "ecosystem": "npm"
          },
          {
            "name": "tar",
            "direct": false,
            "version": "7.5.13",
            "ecosystem": "npm"
          },
          {
            "name": "temp",
            "direct": false,
            "version": "0.9.4",
            "ecosystem": "npm"
          },
          {
            "name": "temp-file",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "thenify",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "thenify-all",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-async-pool",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "tiny-typed-emitter",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinyglobby",
            "direct": false,
            "version": "0.2.16",
            "ecosystem": "npm"
          },
          {
            "name": "tinypool",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyspy",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "tldts",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "tldts-core",
            "direct": false,
            "version": "7.0.30",
            "ecosystem": "npm"
          },
          {
            "name": "tmp",
            "direct": false,
            "version": "0.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "tmp-promise",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "to-regex-range",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tough-cookie",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tr46",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "trim-lines",
            "direct": false,
            "version": "3.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "trough",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "truncate-utf8-bytes",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ts-algebra",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-api-utils",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "ts-interface-checker",
            "direct": false,
            "version": "0.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tweetnacl",
            "direct": false,
            "version": "0.14.5",
            "ecosystem": "npm"
          },
          {
            "name": "type-check",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "typebox",
            "direct": false,
            "version": "1.1.38",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript-eslint",
            "direct": false,
            "version": "8.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "underscore",
            "direct": false,
            "version": "1.13.8",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "6.27.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "7.25.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici",
            "direct": false,
            "version": "8.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "5.26.5",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "7.16.0",
            "ecosystem": "npm"
          },
          {
            "name": "unified",
            "direct": false,
            "version": "11.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-is",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-position",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-stringify-position",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit",
            "direct": false,
            "version": "5.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "unist-util-visit-parents",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "universalify",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "uri-js",
            "direct": false,
            "version": "4.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "utf8-byte-length",
            "direct": false,
            "version": "1.0.5",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "verror",
            "direct": false,
            "version": "1.10.1",
            "ecosystem": "npm"
          },
          {
            "name": "vfile",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vfile-message",
            "direct": false,
            "version": "4.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "7.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "vite-node",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "3.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "w3c-xmlserializer",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wcwidth",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "web-streams-polyfill",
            "direct": false,
            "version": "3.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "webidl-conversions",
            "direct": false,
            "version": "8.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-mimetype",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "whatwg-url",
            "direct": false,
            "version": "16.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "which",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "word-wrap",
            "direct": false,
            "version": "1.2.5",
            "ecosystem": "npm"
          },
          {
            "name": "wrap-ansi",
            "direct": false,
            "version": "7.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "ws",
            "direct": false,
            "version": "8.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "xml-name-validator",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "xml-naming",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "xmlbuilder",
            "direct": false,
            "version": "10.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "xmlbuilder",
            "direct": false,
            "version": "15.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "xmlchars",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "xtend",
            "direct": false,
            "version": "4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "y18n",
            "direct": false,
            "version": "5.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "yargs",
            "direct": false,
            "version": "17.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "yargs-parser",
            "direct": false,
            "version": "21.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yauzl",
            "direct": false,
            "version": "2.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "yocto-queue",
            "direct": false,
            "version": "0.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "3.25.76",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "zod-to-json-schema",
            "direct": false,
            "version": "3.25.2",
            "ecosystem": "npm"
          },
          {
            "name": "zwitch",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 1060,
        "direct_count": 27,
        "indirect_count": 1033
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 2,
        "merged_prs": 388,
        "open_issues": 3,
        "closed_ratio": 0.963,
        "closed_issues": 77,
        "closed_unmerged_prs": 18
      },
      "bus_factor": 1,
      "bot_contributors": 2,
      "top_contributors": [
        {
          "type": "User",
          "login": "Anton-Horn",
          "commits": 483,
          "avatar_url": "https://avatars.githubusercontent.com/u/73064193?v=4"
        },
        {
          "type": "User",
          "login": "PaulHorn",
          "commits": 352,
          "avatar_url": "https://avatars.githubusercontent.com/u/51511883?v=4"
        },
        {
          "type": "User",
          "login": "architawr",
          "commits": 17,
          "avatar_url": "https://avatars.githubusercontent.com/u/26203081?v=4"
        },
        {
          "type": "User",
          "login": "schroejahr2",
          "commits": 16,
          "avatar_url": "https://avatars.githubusercontent.com/u/20259211?v=4"
        },
        {
          "type": "User",
          "login": "NicolaasGrobler",
          "commits": 4,
          "avatar_url": "https://avatars.githubusercontent.com/u/40304726?v=4"
        },
        {
          "type": "User",
          "login": "cbergoon",
          "commits": 3,
          "avatar_url": "https://avatars.githubusercontent.com/u/6668160?v=4"
        },
        {
          "type": "User",
          "login": "EduardtAlbergII",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/33964769?v=4"
        },
        {
          "type": "User",
          "login": "FingerCaster",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/31885840?v=4"
        },
        {
          "type": "User",
          "login": "FlaminJoe",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/268704642?v=4"
        },
        {
          "type": "User",
          "login": "HarunOr",
          "commits": 1,
          "avatar_url": "https://avatars.githubusercontent.com/u/12257110?v=4"
        }
      ],
      "contributors_sampled": 15,
      "top_contributor_share": 0.546
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "ci.yml",
        "release.yml",
        "skills-index.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        "eslint.config.mjs"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": false
    },
    "security_signals": {
      "lockfiles": [
        "package-lock.json"
      ],
      "scorecard": {
        "checks": [
          {
            "name": "Binary-Artifacts",
            "score": 10,
            "reason": "no binaries found in the repo",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
          },
          {
            "name": "Branch-Protection",
            "score": 3,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 10,
            "reason": "11 out of 11 merged PRs checked by a CI test -- score normalized to 10",
            "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/11 approved changesets -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 0,
            "reason": "project has 0 contributing companies or organizations -- score normalized to 0",
            "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": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "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 0 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": null,
            "reason": "packaging workflow not 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": "SAST tool is not run on all commits -- score normalized to 0",
            "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": "32 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "a0bff3a01711cfe253c15451ae71f23f917f4e68",
        "ran_at": "2026-07-22T09:25:13Z",
        "aggregate_score": 3.4,
        "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-07-22T09:03:57Z",
      "oldest_open_prs": [
        {
          "number": 455,
          "created_at": "2026-07-14T08:30:18Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 493,
          "created_at": "2026-07-22T09:18:20Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-22T08:57:43Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 122,
          "created_at": "2026-05-27T11:26:53Z",
          "last_comment_at": "2026-07-14T09:43:50Z",
          "last_comment_author": "keyuchen21"
        },
        {
          "number": 239,
          "created_at": "2026-06-01T09:49:04Z",
          "last_comment_at": "2026-07-19T18:44:32Z",
          "last_comment_author": "Larrtroffen"
        },
        {
          "number": 335,
          "created_at": "2026-06-08T05:09:09Z",
          "last_comment_at": "2026-06-08T11:40:18Z",
          "last_comment_author": "leighstillard"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/0-AI-UG/cate",
    "host": "github.com",
    "name": "cate",
    "owner": "0-AI-UG"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "moderate",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 65,
      "inputs": {
        "security": 36,
        "vitality": 81,
        "community": 72,
        "governance": 52,
        "engineering": 82
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "good",
        "name": "Vitality",
        "value": 81,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "good",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 75,
            "inputs": {
              "commits_last_year": 902,
              "human_commit_share": 1,
              "days_since_last_push": 0,
              "active_weeks_last_year": 16
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "16/52 weeks with commits",
                "points": 11.1,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 16
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "902 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 902
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 0 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": 77,
              "latest_release_tag": "v1.5.3",
              "releases_from_tags": false,
              "days_since_latest_release": 0,
              "mean_days_between_releases": 1.6
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "77 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 77
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~1.6 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 1.6
                    }
                  }
                ],
                "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": "unverified",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": "repository_too_young",
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": null,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "maintenance record not established from the collected data",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_unverified",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "good",
        "name": "Community & Adoption",
        "value": 72,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "good",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 74,
            "inputs": {
              "forks": 124,
              "stars": 1911,
              "watchers": 5,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "window_too_short"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "1,911 stars",
                "points": 53.2,
                "status": "partial",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 1911
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "124 forks",
                "points": 17.4,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 124
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "5 watchers",
                "points": 3.3,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 5
                    }
                  }
                ],
                "max_points": 15
              }
            ]
          },
          {
            "key": "community_health",
            "band": "good",
            "name": "Community health",
            "note": null,
            "notes": [],
            "value": 70,
            "inputs": {
              "has_readme": true,
              "has_license": true,
              "has_contributing": true,
              "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": "recognized license (MIT)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "MIT"
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributing_guide",
                "name": "CONTRIBUTING guide",
                "detail": null,
                "points": 18,
                "status": "met",
                "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": 52,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "at_risk",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 33,
            "inputs": {
              "bus_factor": 1,
              "contributors_sampled": 15,
              "top_contributor_share": 0.546
            },
            "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 55% of commits",
                "points": 10.2,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 55
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "15 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 15
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 82,
            "inputs": {
              "merged_prs": 388,
              "open_issues": 3,
              "closed_issues": 77,
              "issue_closed_ratio": 0.963,
              "closed_unmerged_prs": 18
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "96% of issues closed",
                "points": 45,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 96
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "388/406 decided PRs merged",
                "points": 36.6,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 388,
                      "decided": 406
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 0/11 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "at_risk",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 45,
            "inputs": {
              "followers": 11,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "0-AI-UG",
              "public_repos": 6,
              "account_age_days": 181
            },
            "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": "11 followers of 0-AI-UG",
                "points": 7.8,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 11,
                      "login": "0-AI-UG"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "6 public repos, account ~0 yr old",
                "points": 7.1,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 6
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 0
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "good",
        "name": "Engineering Quality",
        "value": 82,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "good",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 84,
            "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": "3 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 3
                    }
                  }
                ],
                "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": "eslint.config.mjs",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.mjs"
                    }
                  }
                ],
                "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": "11 out of 11 merged PRs checked by a CI test -- score normalized to 10",
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "good",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "topics": [],
              "has_wiki": false,
              "homepage": "https://cate.cero-ai.com",
              "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://cate.cero-ai.com",
                "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": 36,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Packaging. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "packaging"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 34,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 17,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 1,
              "scorecard_aggregate": 3.4
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 2.2,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "11 out of 11 merged PRs checked by a CI test -- score normalized to 10",
                "points": 2.5,
                "status": "met",
                "details": [],
                "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/11 approved changesets -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 0 contributing companies or organizations -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "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": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 0 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 not detected",
                "points": 0,
                "status": "excluded",
                "details": [
                  {
                    "code": "no_data",
                    "params": {}
                  }
                ],
                "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": "SAST tool is not run on all commits -- score normalized to 0",
                "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": "32 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "at_risk",
            "name": "Dependency advisories",
            "note": "Matched the npm:cate@0.1.0 runtime dependency closure — what installing the published package pulls in — 99 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "npm:cate@0.1.0",
                  "assessed": 99
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 44,
            "inputs": {
              "source": "osv",
              "advisories": 7,
              "affected_packages": 6,
              "assessed_packages": 99,
              "unassessed_packages": 0,
              "affected_by_severity": "high 2, moderate 4",
              "direct_affected_packages": 1
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "1 affected: request 2.88.2 (moderate 6.1)",
                "points": 17.9,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 1,
                      "packages": "request 2.88.2 (moderate 6.1)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "5 affected: form-data 2.3.3 (high 7.5), uuid 3.4.0 (high 7.5), highlight.js 8.9.1 (moderate 5.8), +2 more",
                "points": 6.1,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 5,
                      "packages": "form-data 2.3.3 (high 7.5), uuid 3.4.0 (high 7.5), highlight.js 8.9.1 (moderate 5.8)"
                    }
                  },
                  {
                    "code": "advisories_affected_more",
                    "params": {
                      "count": 2
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "6 advisory-carrying package(s) unaddressed past 90 days; oldest published 2065 days ago",
                "points": 20.3,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_stale",
                    "params": {
                      "days": 90,
                      "count": 6,
                      "oldest": 2065
                    }
                  }
                ],
                "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": 99,
              "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"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 8
            },
            "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": 69,
        "weight": 0,
        "metrics": [
          {
            "key": "ai_agent_context",
            "band": "excellent",
            "name": "Agent context & guidance",
            "note": null,
            "notes": [],
            "value": 85,
            "inputs": {
              "has_llms_txt": false,
              "legible_history_share": 0.81,
              "agent_instruction_files": [
                "AGENTS.md",
                "CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 5879
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "AGENTS.md, CLAUDE.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "AGENTS.md, CLAUDE.md"
                    }
                  }
                ],
                "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": "81 of 100 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 81,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "moderate",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 57,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "package-lock.json"
              ],
              "has_dockerfile": false,
              "typed_language": true,
              "bootstrap_files": [],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "tsconfig.json"
              ],
              "agent_commit_share": 0,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": "eslint.config.mjs",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "eslint.config.mjs"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "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": "TypeScript",
              "largest_source_bytes": 94796,
              "source_files_sampled": 902,
              "oversized_source_files": 2
            },
            "components": [
              {
                "key": "type_checkable_code",
                "name": "Type-checkable code",
                "detail": "TypeScript (statically typed)",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "statically_typed_language",
                    "params": {
                      "language": "TypeScript"
                    }
                  }
                ],
                "max_points": 45
              },
              {
                "key": "manageable_file_sizes",
                "name": "Manageable file sizes",
                "detail": "2/902 source files over 60KB",
                "points": 54.9,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 902,
                      "oversized": 2
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "at_risk",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 40,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": false,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "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": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "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.13.0"
  },
  "warnings": [
    "npm package 'cate' points at a different repository (https://github.com/boo1ean/cate); excluded from ecosystem scoring"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-22T09:25:36.958771Z",
  "schema_version": "0.26.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/0/0-AI-UG/cate.svg",
  "full_name": "0-AI-UG/cate",
  "license_state": "standard",
  "license_spdx": "MIT"
}

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

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

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