Raw JSON report machine-readable
{
"data": {
"repo": {
"topics": [
"ai-assistant",
"cli",
"context-management",
"feishu-bot",
"golang",
"llm",
"personal-assistant",
"qqbot",
"self-hosted",
"sqlite",
"telegram-bot",
"ai-agent",
"ai-partner",
"mcp",
"memory",
"multi-agent",
"multi-user",
"sandbox",
"scheduler",
"wechat-bot"
],
"is_fork": false,
"size_kb": 111020,
"has_wiki": true,
"homepage": "https://stella.cherryai.com",
"languages": {
"Go": 7353005,
"CSS": 40351,
"MDX": 168055,
"HTML": 339380,
"Shell": 15206,
"Python": 89650,
"Dockerfile": 8819,
"TypeScript": 1854285,
"Go Template": 12311
},
"pushed_at": "2026-07-23T11:08:03Z",
"created_at": "2026-03-05T11:22:39Z",
"owner_type": "Organization",
"updated_at": "2026-07-23T05:36:37Z",
"description": "AI partners for every person: multi-user, multi-agent memory, trusted tools, schedules, sandboxed workspaces, and chat.",
"is_archived": false,
"is_disabled": false,
"license_spdx": "AGPL-3.0",
"default_branch": "main",
"license_spdx_raw": "AGPL-3.0",
"primary_language": "Go",
"significant_languages": [
"Go",
"TypeScript"
]
},
"owner": {
"blog": "https://cherry-ai.com",
"name": "CherryHQ",
"type": "Organization",
"login": "CherryHQ",
"company": null,
"location": "China",
"followers": 1190,
"avatar_url": "https://avatars.githubusercontent.com/u/187777663?v=4",
"created_at": "2024-11-08T15:05:29Z",
"is_verified": null,
"public_repos": 27,
"account_age_days": 622
},
"license": {
"state": "standard",
"spdx_id": "AGPL-3.0",
"raw_spdx": "AGPL-3.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.60.1",
"kind": "patch",
"published_at": "2026-07-21T16:10:03Z"
},
{
"tag": "v0.60.0",
"kind": "minor",
"published_at": "2026-07-19T14:43:05Z"
},
{
"tag": "v0.50.7",
"kind": "patch",
"published_at": "2026-07-15T14:44:11Z"
},
{
"tag": "v0.50.6",
"kind": "patch",
"published_at": "2026-07-14T14:47:23Z"
},
{
"tag": "v0.50.5",
"kind": "patch",
"published_at": "2026-06-26T10:31:48Z"
},
{
"tag": "v0.50.4",
"kind": "patch",
"published_at": "2026-06-26T04:18:50Z"
},
{
"tag": "v0.50.3",
"kind": "patch",
"published_at": "2026-06-23T12:24:46Z"
},
{
"tag": "v0.50.2",
"kind": "patch",
"published_at": "2026-06-23T05:21:09Z"
},
{
"tag": "v0.50.1",
"kind": "patch",
"published_at": "2026-06-23T01:31:31Z"
},
{
"tag": "v0.50.0",
"kind": "minor",
"published_at": "2026-06-22T23:56:15Z"
},
{
"tag": "v0.49.4",
"kind": "patch",
"published_at": "2026-06-20T04:52:26Z"
},
{
"tag": "v0.49.3",
"kind": "patch",
"published_at": "2026-06-17T15:02:16Z"
},
{
"tag": "v0.49.2",
"kind": "patch",
"published_at": "2026-06-17T12:37:08Z"
},
{
"tag": "v0.49.1",
"kind": "patch",
"published_at": "2026-06-17T03:27:48Z"
},
{
"tag": "v0.49.0",
"kind": "minor",
"published_at": "2026-06-16T15:18:08Z"
},
{
"tag": "v0.48.0",
"kind": "minor",
"published_at": "2026-06-16T05:48:57Z"
},
{
"tag": "v0.47.0",
"kind": "minor",
"published_at": "2026-06-15T02:36:30Z"
},
{
"tag": "v0.46.0",
"kind": "minor",
"published_at": "2026-06-12T02:13:03Z"
},
{
"tag": "v0.45.1",
"kind": "patch",
"published_at": "2026-06-11T07:54:39Z"
},
{
"tag": "v0.45.0",
"kind": "minor",
"published_at": "2026-06-11T01:16:03Z"
},
{
"tag": "v0.44.3",
"kind": "patch",
"published_at": "2026-06-09T09:33:11Z"
},
{
"tag": "v0.44.2",
"kind": "patch",
"published_at": "2026-06-09T06:28:18Z"
},
{
"tag": "v0.44.1",
"kind": "patch",
"published_at": "2026-06-09T05:54:34Z"
},
{
"tag": "v0.44.0",
"kind": "minor",
"published_at": "2026-06-08T16:16:09Z"
},
{
"tag": "v0.43.2",
"kind": "patch",
"published_at": "2026-06-08T05:00:42Z"
},
{
"tag": "v0.43.1",
"kind": "patch",
"published_at": "2026-06-08T04:34:55Z"
},
{
"tag": "v0.43.0",
"kind": "minor",
"published_at": "2026-06-08T01:55:44Z"
},
{
"tag": "v0.42.1",
"kind": "patch",
"published_at": "2026-06-05T08:08:54Z"
},
{
"tag": "v0.42.0",
"kind": "minor",
"published_at": "2026-06-04T15:07:36Z"
},
{
"tag": "v0.41.4",
"kind": "patch",
"published_at": "2026-06-04T12:51:58Z"
},
{
"tag": "v0.41.3",
"kind": "patch",
"published_at": "2026-06-04T04:53:15Z"
},
{
"tag": "v0.41.2",
"kind": "patch",
"published_at": "2026-06-03T15:18:45Z"
},
{
"tag": "v0.41.1",
"kind": "patch",
"published_at": "2026-06-03T09:48:12Z"
},
{
"tag": "v0.40.0",
"kind": "minor",
"published_at": "2026-06-03T01:44:39Z"
},
{
"tag": "v0.39.2",
"kind": "patch",
"published_at": "2026-06-02T13:31:36Z"
},
{
"tag": "v0.39.1",
"kind": "patch",
"published_at": "2026-06-02T08:31:16Z"
},
{
"tag": "v0.39.0",
"kind": "minor",
"published_at": "2026-06-01T14:44:55Z"
},
{
"tag": "v0.38.3",
"kind": "patch",
"published_at": "2026-06-01T09:20:43Z"
},
{
"tag": "v0.38.2",
"kind": "patch",
"published_at": "2026-06-01T07:22:56Z"
},
{
"tag": "v0.38.1",
"kind": "patch",
"published_at": "2026-06-01T05:31:31Z"
},
{
"tag": "v0.38.0",
"kind": "minor",
"published_at": "2026-06-01T03:14:04Z"
},
{
"tag": "v0.37.0",
"kind": "minor",
"published_at": "2026-05-22T16:25:31Z"
},
{
"tag": "v0.36.1",
"kind": "patch",
"published_at": "2026-05-22T10:19:09Z"
},
{
"tag": "v0.36.0",
"kind": "minor",
"published_at": "2026-05-22T05:37:58Z"
},
{
"tag": "v0.35.3",
"kind": "patch",
"published_at": "2026-05-21T14:14:55Z"
},
{
"tag": "v0.35.2",
"kind": "patch",
"published_at": "2026-05-21T07:29:26Z"
},
{
"tag": "v0.35.1",
"kind": "patch",
"published_at": "2026-05-20T16:37:13Z"
},
{
"tag": "v0.35.0",
"kind": "minor",
"published_at": "2026-05-20T15:55:38Z"
},
{
"tag": "v0.34.0",
"kind": "minor",
"published_at": "2026-05-19T15:30:25Z"
},
{
"tag": "v0.33.0",
"kind": "minor",
"published_at": "2026-05-18T15:14:34Z"
},
{
"tag": "v0.32.0",
"kind": "minor",
"published_at": "2026-05-16T17:29:41Z"
},
{
"tag": "v0.31.0",
"kind": "minor",
"published_at": "2026-05-15T13:55:08Z"
},
{
"tag": "v0.30.1",
"kind": "patch",
"published_at": "2026-05-15T07:49:25Z"
},
{
"tag": "v0.30.0",
"kind": "minor",
"published_at": "2026-05-15T04:43:07Z"
},
{
"tag": "v0.29.0",
"kind": "minor",
"published_at": "2026-05-14T09:28:14Z"
},
{
"tag": "v0.28.2",
"kind": "patch",
"published_at": "2026-05-14T04:09:57Z"
},
{
"tag": "v0.28.1",
"kind": "patch",
"published_at": "2026-05-14T02:48:19Z"
},
{
"tag": "v0.28.0",
"kind": "minor",
"published_at": "2026-05-13T14:24:27Z"
},
{
"tag": "v0.27.1",
"kind": "patch",
"published_at": "2026-05-13T02:18:38Z"
},
{
"tag": "v0.27.0",
"kind": "minor",
"published_at": "2026-05-12T03:26:31Z"
},
{
"tag": "v0.26.1",
"kind": "patch",
"published_at": "2026-05-11T05:45:36Z"
},
{
"tag": "v0.26.0",
"kind": "minor",
"published_at": "2026-05-11T05:27:49Z"
},
{
"tag": "v0.25.5",
"kind": "patch",
"published_at": "2026-05-09T14:10:55Z"
},
{
"tag": "v0.25.4",
"kind": "patch",
"published_at": "2026-05-09T03:05:25Z"
},
{
"tag": "v0.25.3",
"kind": "patch",
"published_at": "2026-05-09T02:14:18Z"
},
{
"tag": "v0.25.2",
"kind": "patch",
"published_at": "2026-05-08T15:54:13Z"
},
{
"tag": "v0.24.0",
"kind": "minor",
"published_at": "2026-05-07T12:09:24Z"
},
{
"tag": "v0.23.0",
"kind": "minor",
"published_at": "2026-05-07T03:06:52Z"
},
{
"tag": "v0.22.0",
"kind": "minor",
"published_at": "2026-05-06T13:06:13Z"
},
{
"tag": "v0.21.1",
"kind": "patch",
"published_at": "2026-05-06T10:30:08Z"
},
{
"tag": "v0.21.0",
"kind": "minor",
"published_at": "2026-05-06T10:28:55Z"
},
{
"tag": "v0.20.0",
"kind": "minor",
"published_at": "2026-05-05T13:00:11Z"
},
{
"tag": "v0.19.1",
"kind": "patch",
"published_at": "2026-04-29T15:15:20Z"
},
{
"tag": "v0.19.0",
"kind": "minor",
"published_at": "2026-04-29T12:27:05Z"
},
{
"tag": "v0.18.0",
"kind": "minor",
"published_at": "2026-04-29T07:43:32Z"
},
{
"tag": "v0.17.0",
"kind": "minor",
"published_at": "2026-04-28T08:02:47Z"
},
{
"tag": "v0.16.7",
"kind": "patch",
"published_at": "2026-04-27T06:29:56Z"
},
{
"tag": "v0.16.6",
"kind": "patch",
"published_at": "2026-04-25T16:25:18Z"
},
{
"tag": "v0.16.5",
"kind": "patch",
"published_at": "2026-04-25T12:07:17Z"
},
{
"tag": "v0.16.4",
"kind": "patch",
"published_at": "2026-04-24T10:37:59Z"
},
{
"tag": "v0.16.3",
"kind": "patch",
"published_at": "2026-04-24T09:34:30Z"
},
{
"tag": "v0.16.2",
"kind": "patch",
"published_at": "2026-04-24T07:25:18Z"
},
{
"tag": "v0.16.1",
"kind": "patch",
"published_at": "2026-04-24T06:25:43Z"
},
{
"tag": "v0.16.0",
"kind": "minor",
"published_at": "2026-04-24T06:01:02Z"
},
{
"tag": "v0.15.0",
"kind": "minor",
"published_at": "2026-04-22T16:04:36Z"
},
{
"tag": "v0.14.0",
"kind": "minor",
"published_at": "2026-04-21T03:03:24Z"
},
{
"tag": "v0.13.0",
"kind": "minor",
"published_at": "2026-04-20T04:07:54Z"
},
{
"tag": "v0.12.0",
"kind": "minor",
"published_at": "2026-04-16T07:10:27Z"
},
{
"tag": "v0.11.1",
"kind": "patch",
"published_at": "2026-04-15T12:29:05Z"
},
{
"tag": "v0.11.0",
"kind": "minor",
"published_at": "2026-04-15T10:05:10Z"
},
{
"tag": "v0.10.2",
"kind": "patch",
"published_at": "2026-04-15T03:50:41Z"
},
{
"tag": "v0.10.1",
"kind": "patch",
"published_at": "2026-04-14T16:09:15Z"
},
{
"tag": "v0.10.0",
"kind": "minor",
"published_at": "2026-04-14T10:09:00Z"
},
{
"tag": "v0.9.1",
"kind": "patch",
"published_at": "2026-04-10T09:04:44Z"
},
{
"tag": "v0.8.0",
"kind": "minor",
"published_at": "2026-03-17T15:53:59Z"
},
{
"tag": "v0.7.1",
"kind": "patch",
"published_at": "2026-03-16T16:11:30Z"
},
{
"tag": "v0.7.0",
"kind": "minor",
"published_at": "2026-03-16T15:14:39Z"
},
{
"tag": "v0.6.2",
"kind": "patch",
"published_at": "2026-03-14T01:30:53Z"
},
{
"tag": "v0.6.1",
"kind": "patch",
"published_at": "2026-03-13T11:34:22Z"
},
{
"tag": "v0.6.0",
"kind": "minor",
"published_at": "2026-03-13T09:47:06Z"
}
],
"recent_commits": [
{
"oid": "8e454a0112d51e0cde7e81ffd3ba2df0fb69672d",
"body": "Co-authored-by: Stella Agent <stella-agent@users.noreply.github.com>",
"is_bot": false,
"headline": "📝 docs: strengthen production schema guidance (#776)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-23T05:36:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0af24b8d0a44f86214481edf46dff71fa3ff2ea4",
"body": null,
"is_bot": false,
"headline": "📝 docs: Update CHANGELOG for v0.60.1",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-21T15:55:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1bb331a6f1d6c46b8b48c1d19aaf781dc0f350c8",
"body": "redocly 2.40.0 tightened YAML parsing and rejects the committed\napi/spec/openapi.yaml flow mappings with \"deficient indentation\n(437:5)\", breaking `mise run generate:api` and the release gate.\nThe spec is byte-identical to v0.60.0 and oapi-codegen still parses\nit; only redocly >= 2.40.0 fails. Pin to 2.39.0 (verified to bundle\ncleanly) since generate:api uses an unpinned `pnpm dlx`.\n\nCloses #769",
"is_bot": false,
"headline": "🐛 fix: pin @redocly/cli to 2.39.0 in generate:api (#770)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-21T15:54:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "60435d5d84a093ef5647b720ce23193464fdc943",
"body": "* feat(reflect): retire legacy writer\n\n* docs(reflect): remove stale plugin references\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "feat(reflect): launch structured Reflect and retire legacy writer (#762)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-21T03:45:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "96455d582b7cfeefa5825fab3526ac3d337fd5da",
"body": "* 🐛 fix: make startup seed idempotent\n\nUse the reserved Stella primary key so concurrent startup converges without locks or extra seed metadata.\n\n* 🐛 fix: remove provider environment fallback\n\nUse explicit provider rows as the single runtime source for credentials and endpoints.",
"is_bot": false,
"headline": "🐛 fix: make startup configuration explicit and idempotent (#763)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-20T14:47:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a534639a0bc266ccf5de86c36577323edc523d0e",
"body": null,
"is_bot": false,
"headline": "🔧 chore: migrate Kreuzberg integration to Xberg (#754)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-20T09:40:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a7c4efdbd69dd285dd37a91bff1c5b330a3108e8",
"body": "…rs (#761)\n\n* ✨ feat: Support binary files in skill uploads and surface upload errors\n\nSkill archives can contain binary assets (images, fonts, data files), but\nskill_file.content was a PostgreSQL text column, so any file with NUL bytes\nor invalid UTF-8 failed at insert as a 500. The web UI then swa\n[…]\na successful load, and save()\n re-checks both conditions as a hard gate.\n- Migration: document that the Down intentionally fails loudly when\n binary rows exist rather than mangling or dropping them.",
"is_bot": false,
"headline": "✨ feat: Support binary files in skill uploads and surface upload erro…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-20T09:22:12Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8fe818744234f8dcdaaf1ad58cb5c4679880bd59",
"body": null,
"is_bot": false,
"headline": "🐛 fix: Accept root-level skill ZIP uploads (#756)",
"author_name": "StrayBird-excellent",
"author_login": "StrayBird-excellent",
"committed_at": "2026-07-20T08:32:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "464e0d4af53a0625c8c434c4ffa03a417e27321f",
"body": null,
"is_bot": false,
"headline": "📝 docs: Update CHANGELOG for v0.60.0",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-19T14:28:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "92f36b29ed20963a71af6f61de6df0e69cc9b7c2",
"body": null,
"is_bot": false,
"headline": "feat(reflect): complete structured Reflect rollout controls (#733)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-17T12:40:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d895290c905bfee7164db6b6ca8a20cc2e831ac4",
"body": null,
"is_bot": false,
"headline": "🐛 fix: harden application boundaries",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T12:08:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1c850637f1e480205015e25fe56e46663440d713",
"body": "…-boundaries\n\n♻️ refactor: finish application boundaries",
"is_bot": false,
"headline": "Merge pull request #748 from CherryHQ/refactor/703-finish-application…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T09:23:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "813c73fd99c8a9fff1e5223e62194005ac322823",
"body": null,
"is_bot": false,
"headline": "🔀 merge: integrate Knowledge and Skill web UI",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T09:12:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8c44d0c0c0430b4bf7bf411f18f300e7996fe0a8",
"body": null,
"is_bot": false,
"headline": "🔀 merge: integrate Knowledge and Skill APIs",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T09:12:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "024133640d229332685908b078e19463c2ef0e5c",
"body": "* feat: add memory and skill lifecycle APIs\n\n* feat(web): manage memory and skill lifecycle\n\n* refactor: physically delete skills\n\n* refactor(web): remove skill restore lifecycle\n\n* refactor: remove obsolete skill restore usage query\n\n* refactor: narrow skill lifecycle scope\n\n* refactor: finalize ac\n[…]\n(skills): close lifecycle consistency gaps\n\n* refactor(skills): make disk cache load-derived\n\n* 🐛 fix(web): preserve project skill context\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "feat(web): manage Knowledge and active Skills (#734)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-17T08:43:03Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9a69980beb47117d083054fccb8bc00ca98af5ad",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: finalize application boundary contracts",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T08:14:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d72f9ea502493be2017b8d3a64abb3e7848694bf",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: move group persistence behind channel boundary",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T07:40:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1bbcca0e9aeffd21d95f3322d52b37eb785748d9",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: return domain values from workflow application APIs",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T06:21:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "54ded80eccfff8da734012992eb2d7041963f564",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: return domain values from goal application APIs",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T05:51:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4deba13d9a34cd1b3b05f7ae306e83ca17d5b96e",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: move project and inbox persistence behind domain boundaries",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T05:18:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "275763f88604364093167a31567ef1c810e6bf28",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: move profile memory behind its domain boundary",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T04:47:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "df6dcf03c52cf3bdfcc33634982f33c631e77c1e",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: narrow control-plane and channel reads",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T04:17:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2184f6502619bf5739b125ec7f78cdc91858a038",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: move account operations behind their domain boundary",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T03:43:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fb0566e8816adafb843e72749e8ab06118e74ba8",
"body": "* feat: add memory and skill lifecycle APIs\n\n* refactor: physically delete skills\n\n* refactor: remove obsolete skill restore usage query\n\n* refactor: narrow skill lifecycle scope\n\n* refactor: finalize active skill lifecycle\n\n* refactor(skills): remove draft lifecycle\n\n* fix(skills): preserve legacy \n[…]\n(skills): make disk cache load-derived\n\n* 📝 docs(skills): clarify database cache ownership\n\n* 🐛 fix(skills): normalize snapshot file paths\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "feat: add Knowledge and active Skill management APIs (#732)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-17T03:30:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4c74089c17f2190e42c513964ec38f44ae31a546",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: move agent management behind its domain boundary",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T03:06:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2452528460d9a045e1b449e320e2d30d856afacf",
"body": null,
"is_bot": false,
"headline": "♻️ refactor: move infrastructure persistence behind domain boundaries",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-17T02:19:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5a6e4f42d45bcc1d08dd9dcb247ac983cf77c8c0",
"body": null,
"is_bot": false,
"headline": "🧪 test: make server persistence tripwire truthful",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-16T15:03:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ca2c73aa6a8b18790113de0215984d003d67925e",
"body": "…746)\n\n* 🔊 fix(logging): cap River noise, default INFO, add HTTP access log\n\nLocal dev logs were 85% River DEBUG/INFO heartbeats (the 2s goal tick),\nwhile real HTTP requests logged nothing at all.\n\n- Cap the shared River client's logger at WARN via a min-level slog\n handler; LOG_LEVEL_RIVER (routed\n[…]\nk LLM/tool/agent/memory lines and the access log now use the\n *Context variants, so stderr lines link to exported traces. The access\n log drops its hand-rolled trace_id attr in favor of the handler.",
"is_bot": false,
"headline": "🔊 fix(logging): cap River noise, default INFO, add HTTP access log (#…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-16T08:07:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "38e7599ba2c57bb881c137b8cd28015aded28ab5",
"body": "…HTTP work survives SIGTERM (#743)\n\n* 🐛 fix(gateway): join the graceful drain before teardown so in-flight HTTP work survives SIGTERM\n\nThe drain supervisor was a detached goroutine nobody joined, and the\nerrgroup runServer blocks on empties at the START of a drain, not the\nend: httpSrv.Shutdown clos\n[…]\never reaches zero) must be released by the shared budget\nexpiring, so the drain can never hang shutdown. Covers the failure mode\nthe second-signal abort test does not: no operator intervention at all.",
"is_bot": false,
"headline": "🐛 fix(gateway): join the graceful drain before teardown so in-flight …",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-16T06:40:41Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c551866025d3f682a741460168f030bdef28c912",
"body": "…(#741)\n\nThe two #687 reports were force-tracked under /dist/, which goreleaser\n--clean (release:snapshot, and now release:validate) wipes on every run —\neach release validation deleted tracked files from the working tree. Move\nthem to docs/test-reports/reflect/issue-531/, matching the issue-532\nconvention: committed reports live in docs/test-reports, raw artifacts stay\nunder the ignored dist/reflect-evals/ paths.\n\nCloses #740",
"is_bot": false,
"headline": "🚚 chore(docs): move reflect 531 eval reports out of gitignored dist/ …",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-16T05:25:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a21870ba6bc7bebc38369a94350f846401d36072",
"body": "* ✅ test(system): add subprocess system-test harness\n\nPhase 0 of #735: a build-tagged suite under test/system that boots the real\ndist/bin/stellad as a subprocess against an embedded PostgreSQL owned by the\ntest process, polls /readyz with early-exit detection, and proves teardown by\nchecking the se\n[…]\ncut\n mid-content despite sessions.go documenting the send stream as not\n drain-cancelled — a production question tracked separately.\n\nZero production-code changes; docs journey lists synced (en/zh).",
"is_bot": false,
"headline": "test: add subprocess system test suite for stellad (#739)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-16T05:25:08Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "358ac94c446620005191a33d99847b758a1c7c8c",
"body": null,
"is_bot": false,
"headline": "oauth: add Feishu permission-setting scopes (#738)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-15T14:29:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fd2f46c688cab6431ffbec53b3639ff17f7b4a12",
"body": null,
"is_bot": false,
"headline": "🐛 fix(oauth): refresh credentials in long-lived sessions (#731)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-14T15:23:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0acea62949ed131bf9c6006234ed79654616a9ab",
"body": "Keep sandbox cwd confined to backend wrapper arguments while launching the wrapper itself from the validated host cwd. This fixes Darwin Seatbelt execution under the production /workspace mount plan and covers both Exec and StartProcess.\\n\\nRefs #728",
"is_bot": false,
"headline": "🐛 fix(sandbox): resolve local command cwd on host (#729)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-14T13:56:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "60b17d42d0fff2b6fa420fc987cf3658827a648b",
"body": "* ♻️ refactor(authz): remove custom policy persistence\n\n* ♻️ refactor(authz): make agent access domain-owned\n\n* ♻️ refactor(authz): make session access domain-owned\n\nMove internal/agent/session/access off the generic authz.Authorizer /\nEvaluation / policy-request machinery. Session and Workspace dec\n[…]\nn domain-owned authorization\n\n* 🧪 test(workflow): use a valid frozen plan fixture\n\n* 🔒 fix(authz): keep bearer authorities non-admin\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "♻️ refactor: simplify authorization architecture (#727)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-14T11:32:28Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ce8f01ed0f2d5755b1ce55945d87cd6a185e43e7",
"body": "* 🐛 fix(memory): freeze version zero snapshots\n\n* 🐛 fix(agent): preserve version zero session snapshots\n\n* 🔒 fix(reflect): protect review evidence markers\n\n* 🐛 fix(reflect): enforce review unit token budget\n\n* fix(reflect): retain oversized skips on boundary overflow\n\n* fix(reflect): bound related s\n[…]\nidate singleton reconciliation quality\n\n* 🧠 fix(reflect): hard noop singleton paraphrases\n\n* 🐛 fix(reflect): harden bounded review packing\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "fix(reflect): harden structured memory review (#724)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-14T07:45:37Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d12f339caa9964c75e3f405948aef857c8e8b3db",
"body": "* 🔐 refactor(controlplane): enforce unified control-plane authorization\n\nCut the deployment control-plane HTTP handlers (providers, settings,\nplugins, channels) off the legacy requireAdmin gate and direct config.Store\n/credential-service persistence onto a new internal/controlplane domain\nservice. E\n[…]\n single-tenant positioning\n\n* ♻️ refactor: simplify channel ingress and bindings\n\n* ♻️ refactor: narrow control-plane policy surface\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "🏗️ refactor: complete platform and control-plane boundaries (#720)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-14T03:23:28Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9cbffedc67b4c07454acaa806c8755e2878cb2bc",
"body": "Close #711.",
"is_bot": false,
"headline": "🔐 refactor: establish user-capability boundaries (#718)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T17:15:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c4979d97667f7f954e6048da371ec7749f0e0924",
"body": "Close #710.",
"is_bot": false,
"headline": "🔐 refactor: enforce execution-domain authorization (#717)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T15:21:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c49895d9702b6dae21502737ce0535ee81276236",
"body": null,
"is_bot": false,
"headline": "Merge pull request #716 from CherryHQ/refactor/709-core-agent-vertical",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T11:53:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "aa3efb0b4006b2cb1f5edde67b36fc1e59cd03ea",
"body": "Serialize asset authority transitions, reject destructive moves, and confine workspace I/O with os.Root. Route channel compaction through Session execute policy, preserve authorization-aware pagination cursors, and remove the unused AgentAccess bind.",
"is_bot": false,
"headline": "🐛 fix(architecture): close access and asset review gaps",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T10:44:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d837054ba0e086f1ffe15ebd8eb65814849362c2",
"body": null,
"is_bot": false,
"headline": "♻️ refactor(architecture): align access and asset boundaries",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T08:06:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a16b17add9cbcc2721a8296635390500ff3da67a",
"body": null,
"is_bot": false,
"headline": "🧪 test(agent): align session cutover inventory",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T07:27:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "be70c6a2041a9e2a5f617de1cbf5f34b5d93fe49",
"body": null,
"is_bot": false,
"headline": "🔐 refactor(session): enforce unified session authorization",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T07:19:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "850a013db5721ec1f165e18b338def1be06c91b9",
"body": null,
"is_bot": false,
"headline": "🔐 refactor(agent): enforce unified agent authorization",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T07:18:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "694a4bb6feec26c5ed85b1e24a88dd90036ff995",
"body": null,
"is_bot": false,
"headline": "🗄️ refactor(asset): establish durable asset authority",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T07:18:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "209a6b9ed0e026a014bc98f9da235893386361d1",
"body": "🏗️ refactor: make runtime composition lifecycle-safe",
"is_bot": false,
"headline": "Merge pull request #715 from CherryHQ/refactor/708-runtime-composition",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T07:16:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "19e81c7eaeb189e5c43541c112daf8c112e06792",
"body": null,
"is_bot": false,
"headline": "🧪 test(agent): snapshot workspace root before hydration",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T06:25:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0ec57676d086b435279b5a1649c5074208374cd6",
"body": null,
"is_bot": false,
"headline": "🐛 fix(runtime): make graceful drain preserve accepted work",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T06:03:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "53ce62f8d82f0a7f9a1d5b82090d648dc1d7313b",
"body": null,
"is_bot": false,
"headline": "Merge branch 'main' into refactor/708-runtime-composition",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T03:58:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "eb5aac2fae03f3fb98ff567786d309c0a92e78d2",
"body": "…ion-core\n\n🔐 refactor: establish unified authorization core",
"is_bot": false,
"headline": "Merge pull request #714 from CherryHQ/refactor/707-unified-authorizat…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T03:56:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "98a223a177b5b99a6c92d69bdf5dd31663a1f76a",
"body": null,
"is_bot": false,
"headline": "Merge branch 'main' into refactor/707-unified-authorization-core",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T03:20:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ffb9ffcc5dbb3ebc8b0ff60df0975df717549e43",
"body": "…ation\n\n🏗️ refactor: establish architecture migration foundation",
"is_bot": false,
"headline": "Merge pull request #713 from CherryHQ/refactor/706-architecture-found…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T03:19:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "db240125d0243cf4897b6c9bc5fd217acf768745",
"body": null,
"is_bot": false,
"headline": "🐛 fix(reflect): exclude group sessions from private review",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-13T03:13:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cca0fb2053cef9a32f960820601eea3fde6655d1",
"body": null,
"is_bot": false,
"headline": "🏗️ refactor(runtime): orchestrate startup and shutdown",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T22:26:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b24672c47749033197adecc48329c03067c9356b",
"body": null,
"is_bot": false,
"headline": "🏗️ refactor(runtime): bind static capabilities before start",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T21:46:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1515834b69f3aac3b81023f0cc179759ea005ffd",
"body": null,
"is_bot": false,
"headline": "🏗️ refactor(server): construct immutable dependency graph",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T20:59:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "590ebb0362ce4b736c0ac8ee25007e54a4c484f1",
"body": null,
"is_bot": false,
"headline": "⚙️ refactor(config): load login config at startup boundary",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T20:09:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f7045c22594143e252f7e3601eaddf5fd9dabc85",
"body": null,
"is_bot": false,
"headline": "🔐 test(authz): shadow agent decisions safely",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T19:51:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "abef6bc5bf53895e74d6f5d7178ca3fda2695f90",
"body": null,
"is_bot": false,
"headline": "🔐 refactor(authz): add revision-bound policy evaluation",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T19:13:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d2d1c3a384603dd3ea91257b6409aa454c4ae02b",
"body": null,
"is_bot": false,
"headline": "🔐 refactor(authz): define immutable authority contract",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T18:03:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "532196aed04ab1f8dc8f0126d0041e81982b1d17",
"body": null,
"is_bot": false,
"headline": "🧪 test(architecture): freeze migration boundary debt",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T17:25:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a8eeb92577567a1f19c07a0e7af213c81175a252",
"body": null,
"is_bot": false,
"headline": "🐛 fix(session): make group scope durable and canonical",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T17:25:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "54c1bad8dde36039e855287533aee9d18aded15b",
"body": "* ✨ feat(deploy): production Helm chart for Kubernetes\n\nSingle-replica (Recreate) chart with external-Postgres + PVC-backed\nSTELLA_HOME, health probes, two-phase graceful drain, and hard render-time\ngates: replicaCount=1, required baseURL/existingSecret/sandbox.backend,\nsandbox=none confirmation, an\n[…]\nmatch the shipped\nrelease. Add a Release Flow step to set Chart.appVersion to the release tag and\nbump the chart's own version when it changed, and include Chart.yaml in the\nrelease commit.\n\nRefs #480",
"is_bot": false,
"headline": "✨ feat(deploy): production Helm chart for Kubernetes (#704)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T12:40:54Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b91ad500d63af7f75ad6c464c19d50771ac9c72a",
"body": "* ♻️ refactor(config): unified ServerConfig model + server startup boundary (#701)\n\nIntroduce github.com/caarlos0/env/v11 and a boot-time-static ServerConfig\nparsed once at the server startup boundary. PR1 of the env-config unification\n(issue #701); consumer packages migrate in PR2.\n\n- ServerConfig \n[…]\n\n sandbox_env.go, ModelTier consts folded into snapshot.go, and doc.go\n documents the two groups. Tests split to match.\n\nRefs #701\n\n---------\n\nCo-authored-by: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "♻️ refactor(config): unify env handling with caarlos0/env (#702)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T10:00:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9697fb5c8e792d22b061a7268c2ca6d16f2f8203",
"body": "* ✨ feat(deploy): strict deployment mode — require external PostgreSQL and public base URL\n\nSTELLA_STRICT_DEPLOYMENT=1 marks a managed deployment (k8s and similar)\nand turns local-only fallbacks into fast startup errors:\n\n- refuse the embedded PostgreSQL cluster; STELLA_DATABASE_URL becomes\n mandat\n[…]\nfrom endpoints when termination begins, and a preStop sleep delays\nSIGTERM until routing converges. Document that instead of carrying an\nenv var, a sleep step, and an abortable-wait path in the drain.",
"is_bot": false,
"headline": "✨ feat(deploy): k8s probes and two-phase graceful shutdown (#700)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T08:13:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a0647bcac428ee2474270ae998a6c9a9d6fa125f",
"body": "…t URL hardening (#699)\n\n* ✨ feat(deploy): strict deployment mode — require external PostgreSQL and public base URL\n\nSTELLA_STRICT_DEPLOYMENT=1 marks a managed deployment (k8s and similar)\nand turns local-only fallbacks into fast startup errors:\n\n- refuse the embedded PostgreSQL cluster; STELLA_DATA\n[…]\ny proposed — now\nbaked into the Docker image via ENV so every container (compose, k8s)\nfails fast with zero operator action; =0 deliberately opts back in for\na single container on a persistent volume.",
"is_bot": false,
"headline": "✨ feat(deploy): require external PostgreSQL in containers + deploymen…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T07:39:01Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "92f8cd22c56b28f9b886626ddece8c0886a2ed0d",
"body": "… (#691)\n\n* ✨ feat(channel): add user_id binding to channel model (#689)\n\nPhase 1 of the inbound webhook channel. Adds a nullable user_id FK on the\nchannel table so a webhook instance can pin the user its PAT caller must\nmatch; other channel types leave it NULL. Threads user_id through sqlc,\nconfig.\n[…]\necords.\n- Add webhook to the README channel tables (EN/ZH) and a webhook section\n to the stella skill's channels reference.\n\nReview CR-004, CR-005, CR-008, CR-012, CR-013, CR-018 (PR #691). Refs #689",
"is_bot": false,
"headline": "✨ feat(channel): inbound-only webhook channel for automation triggers…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-11T05:45:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fd2e8863da74376e7cb85f7c0b03af0ef29bcca2",
"body": "* test(reflect): follow up 531 532 e2e validation\n\n* docs(reflect): colocate e2e eval report with run output\n\n* fix(reflect): harden relation and coverage normalization\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "fix(reflect): harden 531/532 validation follow-up (#687)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-11T03:42:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cfd161799bec9796fce51356b2629b1ae42a2e6d",
"body": "* ✨ feat(reflect): add usage curator\n\n* fix(reflect): harden usage curator review fixes\n\n* fix(reflect): wire usage curator hardening\n\n* feat(reflect): add usage curator restore\n\n* fix(reflect): simplify forgotten restore payloads\n\n* fix(reflect): harden usage curator restore paths\n\n* fix(reflect): harden curator runtime and scheduling\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "feat(reflect): add usage curator (#683)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-10T07:46:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "70bbaa7e115f83cb53fc71e5fbe8e97839fa29f4",
"body": "…ient delivery (#694)\n\n* ✨ feat(vault): collapse secrets to one concept — scope, automatic ambient delivery (#693)\n\nVault secrets are now name + value + scope, nothing else. Delivery is fully\nautomatic: a user secret is ambient in the sandbox env of the sessions its scope\nmakes visible, keyed by nam\n[…]\nore bash output redaction tests (stdout/exit-code/exec-error paths,\n longest-first ordering, nil-safety) — redaction is now the only guard between\n ambient decrypted secrets and model-visible output",
"is_bot": false,
"headline": "✨ feat(vault): collapse secrets to one concept — scope, automatic amb…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-09T07:51:45Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "29ddbaaa31a6fab603d223ae0a8b244019db5b17",
"body": "* fix(reflect): backfill legacy reflect fact provenance\n\n* fix(reflect): tighten legacy provenance backfill\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "fix(reflect): backfill legacy Reflect fact provenance (#682)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-09T03:27:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79d87fd123d653078c4ecb2c6ec316c37c7e9303",
"body": "…ct agent secrets (#688)\n\nBring tool_override up to parity with the mcp/vault scope model and fix the\nvault dialog's two conflicting Agent selectors.\n\n- tool_override: PATCH /api/agents/{id}/tools/{tool} now takes a `scope`\n (user/user_agent/system/system_agent). Writes route through the shared,\n \n[…]\n cleared on save. Eliminates the\n scoped-to-A / injected-into-B contradiction. Global scopes keep the controls.\n- tools UI: one scope selector per Tools tab, system scopes gated to admins.\n\nRefs #686",
"is_bot": false,
"headline": "✨ feat(scopes): complete 4-scope model for tool overrides + auto-inje…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-09T02:03:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d741786aa50a1e61b14b6d30cd8af892dd408786",
"body": "* 📝 docs(rules): capture recurring review bug patterns, absorb CLAUDE.md details (#690)\n\n- new go-patterns.md: off-lock happens-before (#669), ungated redaction (#670),\n no-replace file install (#675); added to docs nav\n- schema-design.md: CASCADE-on-history + self-deleting parents wipes runs (#636\n[…]\nlisted in development/meta.json (grouped by domain), with YAML\nfrontmatter titles instead of duplicate H1s, matching the already-navigated\nrules. doc-style.md records the frontmatter-title convention.",
"is_bot": false,
"headline": "📝 docs: optimize CLAUDE.md and rules for agent efficiency (#692)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-08T11:55:01Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0769ca354ae1a2706c80ea24c329f11df17c67fb",
"body": "The session Inspector's tool rows expanded to only {source, enabled,\norigin} — never what a tool actually accepts. Add an optional input_schema\nto AgentTool, populated from Definition().InputSchema for core and builtin\ntools (goal/scheduler/workflow/vault/oauth/share/recally/email/memory);\nplugin tools are not built here and MCP schemas live remotely, so those\nstay unset and the row shows a \"no schema\" note. Render the schema as\npretty JSON in the expanded Inspector row.\n\nRefs #684",
"is_bot": false,
"headline": "✨ feat(inspector): show tool input schema for inspection (#685)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-08T09:35:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6ec6e577eb31dd4c593307e9b14cb3e6c3b715cc",
"body": "… skill read (#681)\n\n* 🐛 fix(anthropic): preserve oneOf and required in tool schema\n\nconvertTools rebuilt each tool's input schema from only top-level\nproperties, dropping the oneOf composition that carries per-action\nparameters. Multi-action tools (goal, scheduler, workflow, ...) thus\nreached Claud\n[…]\ngs in references/goals.md, which the model\nreads once triggered. Keep only the pre-load trigger phrases + the pointer\nto read goals.md, and the carve-out that creating a goal needs no read.\n\nRefs #680",
"is_bot": false,
"headline": "🐛 fix(anthropic): tool schema drops oneOf + required; over-eager goal…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-08T09:10:53Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fb0a1c291a2cfe77dd77e93febf2377cb4050561",
"body": "…lad (#658) (#659)\n\n* ✨ feat(recally): add feed entry agent actions\n\n* ✨ feat(goal): expose capability tools to workers\n\nGoal workers still exclude the control-plane tools (goal, scheduler, workflow) to avoid recursion and self-scheduling, but now keep capability tools available in native sessions.\\\n[…]\n* 🧹 chore: sweep retired CLI references\n\nFixes CR-003, CR-010, CR-011, and CR-015 from the PR #659 review.\n\n* 🧹 chore: refresh stale protocol comments\n\nFixes CR-004 and CR-014 from the PR #659 review.",
"is_bot": false,
"headline": "🔥 feat: retire the stella CLI — tools-only agents, single-binary stel…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-08T04:10:29Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9e65655ddc34f7a452af6e37fcd3891bf872746a",
"body": "* ✨ feat(config,recally): move fetched-models cache to PG; eager-backfill legacy article bodies\n\nTwo pod-local-disk holes from the #649 audit:\n\n- The fetched-models cache lived in $STELLA_HOME/cache/models.json, so an\n admin fetch on one replica was invisible to the rest and died with the\n pod. Ne\n[…]\n of recally.NewService (built from the stellaHome\nalready passed in), so the files parameter disappears from both\nrecally.NewService and share.NewService, and the constructor is\nunexported.\n\nRefs #649",
"is_bot": false,
"headline": "✨ feat: retire remaining pod-local durable state (#649 phase 4) (#675)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-08T01:53:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "702543be61c30938a92cf454fff9dd16a2794817",
"body": "…(#671)\n\n* ♻️ refactor: generalize sandbox mount plan\n\n* 🧹 chore(sandbox): drop dead STELLA_HOME mount helpers orphaned by mount-plan refactor",
"is_bot": false,
"headline": "♻️ refactor(sandbox): generic MountPlan + single shared PathResolver …",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-07T10:08:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7ca6c0ed7f97a9da95a89cb19af71471c5afde38",
"body": "…ets in bash output (#670)\n\n* 🔒 fix: harden sandbox secret isolation\n\n* 🔒 fix(sandbox): redact scoped/oauth tokens and order redaction longest-first\n\n* 🔒 fix(sandbox): redact scoped token for groups, on refresh, and after session recreation",
"is_bot": false,
"headline": "🔒 fix(sandbox): bwrap namespace isolation + redact session vault secr…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-07T09:54:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f2ca6dd84439625b9094c7e08c264fbdc93fc2ce",
"body": "…losed tool cache, startup singleflight, volume GC (#669)\n\n* 🐛 fix: harden docker sandbox lifecycle\n\n* 🔒 fix(sandbox): release docker session lock before Stop; detach start-failure cleanup ctx\n\n* 🐛 fix(sandbox): per-Client docker image memo; bound liveness poll; note GC race\n\n* 🔒 fix(sandbox): only close winner closes done\n\nInvalidate the per-client docker image-ready memo and retry container create once when Docker reports the memoized image is missing.",
"is_bot": false,
"headline": "🧹 fix(sandbox/docker): lifecycle & scalability — leak cleanup, fail-c…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-07T09:46:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "333269a9923615eb85d737b962c29b9d7a31b858",
"body": "* ✨ feat(blob): S3-backed durable mirror for user asset files\n\nUploads and channel attachments previously lived only on pod-local disk\nunder $STELLA_HOME, so a rescheduled k8s pod lost them. This adds\ninternal/blob: a minimal Store interface (Put/Open/Delete, keys are\nSTELLA_HOME-relative slash path\n[…]\ne, so MkdirAll now runs only after a successful read.\n- Partial-config detection covers all six STELLA_BLOB_S3_* vars:\n region- or use-ssl-only no longer boots with mirroring silently off.\n\nRefs #649",
"is_bot": false,
"headline": "✨ feat(blob): S3-backed durable mirror for user asset files (#673)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-07T09:11:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "23ea1358db1d343df85173704c51eb8b8e708a24",
"body": "* 🐛 fix(skills): refresh DB skill disk mirror on every load\n\nService.Resolve returns Dir:\"\" for DB rows, so every skills load enters\nthe lazy-materialize branch — but dbSkillDirReady treated \"SKILL.md\nexists\" as fresh, so a replica whose disk copy predates another\nreplica's DB write kept serving sta\n[…]\npkg/sandbox's bypass guard string-matches internal/skills/tool.go for\nstat helpers (comments included); the stale-mirror fallback now probes\nSKILL.md by opening it, as the removed readiness check did.",
"is_bot": false,
"headline": "🐛 fix(skills): refresh DB skill disk mirror on every load (#666)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-07T06:39:12Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ecaf08662d10e7da992e726c5d0fb18bef9077f9",
"body": "* ✨ feat(recally): store article bodies in PostgreSQL\n\nArticle bodies lived only as markdown under $STELLA_HOME/library while\nthe DB kept metadata plus a file_path pointer — on k8s the row survives\npod loss but the body does not, and another replica never sees the file.\nBodies now live in recally_ar\n[…]\n; and GET ?include=content returned 200 on genuine DB errors (now\n500, while a missing mirror file reads as no content rather than an\nerror). Metadata-only updates no longer create empty content rows.",
"is_bot": false,
"headline": "✨ feat(recally): store article bodies in PostgreSQL (#667)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-07T06:22:46Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "62e44cecbefe8ce9034f2c42bb744a7045210c89",
"body": "* refactor(reflect): rename review candidate to target\n\n* feat(reflect): add per-line review watermarks\n\n* feat(reflect): add bounded review units\n\n* feat(reflect): add candidate host gates\n\n* feat(reflect): validate capture tool output\n\n* feat(reflect): add fact candidate evaluation\n\n* feat(reflect\n[…]\n): add issue 532 eval report\n\n* feat(reflect): reconcile related memory candidates\n\n* fix(reflect): address reconciliation review feedback\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "feat(reflect): add related discovery and reconciliation (#661)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-07T06:21:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8f936f1d1ec6ce0911249e68970e55e3f0b72575",
"body": "…its (#668)\n\nThe read/write/edit file tools run in-process (os.ReadFile), not inside\nthe sandbox — so their only isolation boundary is the backend\nResolvePath/ResolveWritePath check. read skipped it whenever a projectRoot\nwas set (resolveToolPath returned ResolveProjectPath's output directly),\nletti\n[…]\ns don't orphan.\n\nDeferred hardening tracked in #663 (bwrap namespaces/seccomp, Seatbelt\nreads, env-secret redaction), #664 (Policy->MountPlan refactor),\n#665 (docker lifecycle/scalability).\n\nRefs #662",
"is_bot": false,
"headline": "🔒 fix(sandbox): close read-tool path bypass + harden docker/bwrap lim…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-07T05:52:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2765a92569fed600c6f03eb963805f5bf8654ab0",
"body": "* refactor(reflect): rename review candidate to target\n\n* feat(reflect): add per-line review watermarks\n\n* feat(reflect): add bounded review units\n\n* feat(reflect): add candidate host gates\n\n* feat(reflect): validate capture tool output\n\n* feat(reflect): add fact candidate evaluation\n\n* feat(reflect\n[…]\nt\n\n* docs(reflect): add issue 532 eval report\n\n* test(reflect): add eval harness retries\n\n* fix(reflect): tune candidate prompt boundaries\n\n---------\n\nCo-authored-by: Donmagelas <Donmagelas@gmail.com>",
"is_bot": false,
"headline": "feat(reflect): add structured candidate review pipeline (#618)",
"author_name": "Donmagelas",
"author_login": "Donmagelas",
"committed_at": "2026-07-07T01:58:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "06f8025cfe0ec25016d509e316dcdad095003992",
"body": "* ✨ feat(workflow): native workflow agent tool + stellad vault keygen (#655)\n\nClose the two preconditions for retiring the agent-facing stella CLI:\n\n- workflow was the last capability whose agent path was CLI-only. It now\n follows the seven-domain pattern: x-agent-tool annotations on the\n existing\n[…]\ntained gofmt file list in the generate task was the recurring\nmerge-conflict and sh-compat hotspot, and .golangci.yml already excludes\n*gen.go from formatters. Verified regeneration is byte-identical.",
"is_bot": false,
"headline": "feat(workflow): native workflow agent tool + stellad vault keygen (#657)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T14:59:36Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fa0cbb0039e29e19dd9b951416c84c15d250f9ef",
"body": "* ♻️ refactor(auth): rename credentials→connections, oauth→oidc (#654)\n\nThe auth cluster's real axis is inbound (who calls stella) vs outbound\n(stella connects out for the user), but two outbound/inbound packages\nwere distinguished only by grammatical number:\n\n- internal/credentials (outbound: the u\n[…]\nchanged;\ntoolgen mapping updated and regeneration is idempotent.\n\nPure rename; zero behavior change.\n\nCloses #654\n\n* 📝 docs(design): update oauth store path after credentials→connections rename (#654)",
"is_bot": false,
"headline": "refactor(auth): rename credentials→connections, oauth→oidc (#656)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T14:52:12Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0a0578e4c996d44600592140ec3444e0deb02ba1",
"body": "… for goal/scheduler/vault/oauth/share/recally/email (#630) (#632)\n\n* ✨ feat(toolctx): push goal/scheduler authorization into the service layer (#630 P1)\n\nPhase A of the Agent Capability Plane (#630): introduce internal/toolctx\n(runtime Identity + not-found/forbidden/unauthenticated sentinels), add\n\n[…]\n file ops via shell,\n contradicting the file-tools rule; now it owns the fd/rg preference\n and the secrets discipline\n\n129 -> 98 lines; Filesystem/Memories sections and all dynamic blocks\nunchanged.",
"is_bot": false,
"headline": "✨ feat(tools): Agent Capability Plane P1–P3 — native ctx-scoped tools…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T14:08:42Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "be4dedc5dba5ba7bcfb217ec246c79f1a85362b2",
"body": "auth.NewTokenService stopped depending on the vault in #651 Phase 1c,\nbut tokenSvc was still created inside the STELLA_VAULT_KEY success\nbranch, so deployments without a vault key silently lost scoped\nSTELLA_TOKEN injection. Wire it unconditionally.",
"is_bot": false,
"headline": "🐛 fix(gateway): issue scoped session tokens without the vault",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T09:09:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "079dd67c97ae306ce4524a605a9744598e4db3e2",
"body": "When a bash command exits non-zero and its text references a declarable\nvault secret that was not passed via the secrets parameter, append a\none-line hint naming the secret(s) and the retry syntax. Closes the\nself-correction loop promised in the #651 Phase 1b design: the agent\nrecovers in one round \n[…]\nnewExecSecretResolver now returns the interface type so a session\nwithout a vault loader yields a true nil instead of a typed nil that\nwould pass the caller's nil check and panic on the new hint path.",
"is_bot": false,
"headline": "✨ feat(tools): hint undeclared vault secrets on failed bash commands",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T09:09:00Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3ccfe8a5c6de19de798edeb0305eb8a7fb8a7c18",
"body": "…ative exec injection, legacy token retirement (#651) (#652)\n\n* 📝 docs(sandbox): secrets injection redesign design doc\n\nPhase 1 (default-off vault binding, declarative exec-time injection,\ncredential downscoping) + Phase 2 (egress allowlist) + Phase 3 outlook\n(credential-injecting proxy). Threat mod\n[…]\ned PR; one migration per PR keeps the\nschema change reviewable and the version history clean. Combines the\ninjection bindings, description + exec-secret audit, and the legacy\nSTELLA_TOKEN row cleanup.",
"is_bot": false,
"headline": "✨ feat(vault): sandbox secrets redesign — default-off binding, declar…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T08:44:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "438b5186252ba866874693bfbe2b393ab20c162a",
"body": "Six-dimension audit (filesystem state, in-memory singletons, duplicate\nbackground execution, channel ingress, lifecycle, sandbox affinity) of\nwhat breaks when stellad runs as multiple stateless replicas on k8s.\n\nVerdict: execution plane (River, migrations, eventlog) is already\ncluster-safe; blockers are channel ingress fan-out, in-process session\nstate, SSE hub, and STELLA_HOME persistence. Remediation tracked in\n#637 (milestone \"k8s deployment\", #638-#650).\n\nRefs: #637",
"is_bot": false,
"headline": "📝 docs: k8s stateless multi-replica readiness audit report",
"author_name": "Vaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T04:32:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "49d5490fb12df2756a867b20cd92b555eda3bef6",
"body": "…flows (#594) (#636)",
"is_bot": false,
"headline": "✨ feat(workflow): reuse accepted goals as versioned, schedulable work…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-04T04:25:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7b1b436d680150334072d056e023813461584888",
"body": "… same-sandbox acceptance, responsibility routing, timeline (#634)\n\n* ✨ feat: expose sandbox before session close\n\n* ✨ feat: mint goal attempt sessions\n\n* 🎨 style: apply formatter updates\n\n* ✨ feat: run goal checks in sandbox\n\n* ✨ feat(goal): persist decomposition repair rounds\n\n* ✨ feat(goal): expo\n[…]\ne click, so the auto-open (and its one-shot state)\ngoes. StatusPill gains shrink-0/whitespace-nowrap: squeezed next to a\nlong title in a flex row it shrank and wrapped its label outside the\n21px pill.",
"is_bot": false,
"headline": "✨ feat(goal): jobify the goal execution substrate — attempt sessions,…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-03T11:02:41Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "78bb962c67a80b4ee2f5e7979962566a84ac3de2",
"body": null,
"is_bot": false,
"headline": "🐛 fix(goal): wait for terminal turns before retry (#628)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-02T11:02:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "175edb33f27412cf65b8c08459c4f277049665e8",
"body": "…ft check (#626)\n\n* ✨ feat(goal): generate goal_control schemas from OpenAPI\n\n* 🐛 fix(goal): use generated goal_control schemas\n\n* ✅ test(goal): check generated schema drift",
"is_bot": false,
"headline": "✨ feat(goal): goal_control schema 单源化——OpenAPI components 生成 + CI dri…",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-02T10:26:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9168e518280385331964ea1b8dc3411ab0894710",
"body": "…(#624)\n\n* ✨ feat(goal): close decomposition contract loop\n\n* 📝 docs(goal): document planning repair blocks",
"is_bot": false,
"headline": "✨ feat(goal): 契约闭环——structural 修复同 session 回灌 + 独立预算 + failure_class …",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-02T09:39:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7aabc227cbc620148252b373ce8087e21c24fd0b",
"body": "* ✨ feat: MCP (HTTP/SSE) client with scoped servers (#612)\n\nAdd an MCP (Model Context Protocol) client so agents can connect to\nexternal MCP servers over HTTP-based transports only (streamable HTTP +\nSSE); stdio is rejected so the multi-tenant sandbox never spawns local\nprocesses.\n\n- mcp_server tabl\n[…]\nr registration changes\n\n* 🎨 style(mcp): align settings UI with plugins\n\n* ✨ feat(mcp): edit server registrations\n\n* 🎨 style(mcp): use enable switch on server cards\n\n* 🐛 fix(mcp): harden tool discovery",
"is_bot": false,
"headline": "✨ feat: MCP (HTTP/SSE) client with scoped servers (#612) (#615)",
"author_name": "LiuVaayne",
"author_login": "vaayne",
"committed_at": "2026-07-02T02:29:22Z",
"body_truncated": true,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 1584,
"latest_release_at": "2026-07-21T16:10:03Z",
"latest_release_tag": "v0.60.1",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 21,
"days_since_latest_release": 2,
"mean_days_between_releases": 3.2
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": false,
"health_percentage": 37,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "github.com/CherryHQ/stella",
"exists": true,
"license": null,
"keywords": [],
"ecosystem": "go",
"matches_repo": true,
"registry_url": "https://pkg.go.dev/github.com/CherryHQ/stella",
"is_deprecated": false,
"latest_version": "v0.60.1",
"repository_url": "https://github.com/CherryHQ/stella",
"versions_count": 112,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": null,
"first_published_at": null,
"latest_published_at": "2026-07-21T15:55:22Z",
"latest_version_yanked": null,
"days_since_latest_publish": 2
}
]
},
"popularity": {
"forks": 6,
"stars": 45,
"watchers": 0,
"fork_history": {
"days": [
{
"date": "2026-05-03",
"count": 1
},
{
"date": "2026-06-01",
"count": 1
},
{
"date": "2026-06-11",
"count": 1
},
{
"date": "2026-06-21",
"count": 1
},
{
"date": "2026-07-05",
"count": 1
},
{
"date": "2026-07-20",
"count": 1
}
],
"complete": true,
"collected": 6,
"total_forks": 6
},
"star_history": null,
"open_issues_and_prs": 111
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": true,
"bootstrap_files": [
"mise.toml"
],
"api_schema_files": [
"api/spec/openapi.yaml"
],
"has_devcontainer": false,
"typecheck_configs": [
"web/tsconfig.json"
],
"toolchain_manifests": [
"go.mod"
],
"largest_source_bytes": 177056,
"source_files_sampled": 1540,
"oversized_source_files": 4,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md",
"api/AGENTS.md",
"api/CLAUDE.md",
"internal/server/AGENTS.md",
"internal/server/CLAUDE.md",
"web/AGENTS.md",
"web/CLAUDE.md"
],
"agent_instruction_max_bytes": 6707
},
"dependencies": {
"manifests": [
"go.mod",
"web/package.json"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "golang.org/x/crypto",
"direct": true,
"version": "v0.50.0",
"severity": "critical",
"ecosystem": "go",
"cvss_score": 10,
"advisory_ids": [
"GHSA-45gg-vh54-h5m9",
"GHSA-5cgq-3rg8-m6cv",
"GHSA-78mq-xcr3-xm33",
"GHSA-89gr-r52h-f8rx",
"GHSA-9m57-25v3-79x9",
"GHSA-f5wc-c3c7-36mc",
"GHSA-jppx-rxg9-jmrx",
"GHSA-q4h4-gmj2-qvw2",
"GHSA-qpw4-5x99-6vjp",
"GHSA-rm3j-f69w-wqmq"
],
"fixed_version": "0.52.0",
"advisory_count": 27,
"oldest_advisory_days": 63
},
{
"name": "google.golang.org/grpc",
"direct": false,
"version": "v1.80.0",
"severity": "critical",
"ecosystem": "go",
"cvss_score": 9.1,
"advisory_ids": [
"GHSA-hrxh-6v49-42gf"
],
"fixed_version": "1.82.1",
"advisory_count": 1,
"oldest_advisory_days": 2
},
{
"name": "github.com/modelcontextprotocol/go-sdk",
"direct": true,
"version": "v1.3.1",
"severity": "high",
"ecosystem": "go",
"cvss_score": 8.1,
"advisory_ids": [
"GHSA-89xv-2j6f-qhc8",
"GHSA-q382-vc8q-7jhj",
"GHSA-xw59-hvm2-8pj6",
"GO-2026-4770",
"GO-2026-4773",
"GO-2026-5771"
],
"fixed_version": "1.4.1",
"advisory_count": 6,
"oldest_advisory_days": 126
},
{
"name": "js-yaml",
"direct": false,
"version": "4.2.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52cp-r559-cp3m"
],
"fixed_version": "4.3.0",
"advisory_count": 1,
"oldest_advisory_days": 3
},
{
"name": "next",
"direct": false,
"version": "16.2.6",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.2,
"advisory_ids": [
"GHSA-4633-3j49-mh5q",
"GHSA-4c39-4ccg-62r3",
"GHSA-68g3-v927-f742",
"GHSA-6gpp-xcg3-4w24",
"GHSA-89xv-2m56-2m9x",
"GHSA-955p-x3mx-jcvp",
"GHSA-m99w-x7hq-7vfj",
"GHSA-p9j2-gv94-2wf4",
"GHSA-q8wf-6r8g-63ch"
],
"fixed_version": "16.2.11",
"advisory_count": 9,
"oldest_advisory_days": 1
},
{
"name": "sharp",
"direct": false,
"version": "0.34.5",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.3,
"advisory_ids": [
"GHSA-f88m-g3jw-g9cj"
],
"fixed_version": "0.35.0",
"advisory_count": 1,
"oldest_advisory_days": 2
},
{
"name": "golang.org/x/net",
"direct": true,
"version": "v0.53.0",
"severity": "moderate",
"ecosystem": "go",
"cvss_score": 6.5,
"advisory_ids": [
"GHSA-5cv4-jp36-h3mw",
"GO-2026-5025",
"GO-2026-5026",
"GO-2026-5027",
"GO-2026-5028",
"GO-2026-5029",
"GO-2026-5030",
"GO-2026-5942"
],
"fixed_version": "0.56.0",
"advisory_count": 8,
"oldest_advisory_days": 63
},
{
"name": "dompurify",
"direct": false,
"version": "3.4.10",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 0,
"advisory_ids": [
"GHSA-c2j3-45gr-mqc4",
"GHSA-cmwh-pvxp-8882"
],
"fixed_version": "3.4.12",
"advisory_count": 2,
"oldest_advisory_days": 35
},
{
"name": "github.com/oapi-codegen/oapi-codegen/v2",
"direct": false,
"version": "v2.7.0",
"severity": "low",
"ecosystem": "go",
"cvss_score": 0,
"advisory_ids": [
"GHSA-rjwr-m7qx-3fjr",
"GO-2026-6016"
],
"fixed_version": "2.7.1",
"advisory_count": 2,
"oldest_advisory_days": 6
},
{
"name": "github.com/yuin/goldmark",
"direct": true,
"version": "v1.7.13",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5320"
],
"fixed_version": "1.7.17",
"advisory_count": 1,
"oldest_advisory_days": 16
},
{
"name": "golang.org/x/image",
"direct": true,
"version": "v0.41.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-4961",
"GO-2026-5061",
"GO-2026-5062",
"GO-2026-5066"
],
"fixed_version": "0.43.0",
"advisory_count": 4,
"oldest_advisory_days": 93
},
{
"name": "golang.org/x/sys",
"direct": true,
"version": "v0.43.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5024"
],
"fixed_version": "0.44.0",
"advisory_count": 1,
"oldest_advisory_days": 62
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.37.0",
"severity": "unknown",
"ecosystem": "go",
"cvss_score": null,
"advisory_ids": [
"GO-2026-5970"
],
"fixed_version": "0.39.0",
"advisory_count": 1,
"oldest_advisory_days": 9
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 2,
"high": 4,
"unknown": 4,
"critical": 2,
"moderate": 1
},
"advisory_count": 64,
"affected_count": 13,
"assessed_count": 859,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 6
},
"ecosystems": [
"go",
"npm"
],
"dependencies": [
{
"name": "filippo.io/age",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.3.1"
},
{
"name": "github.com/Mad-Pixels/goldmark-tgmd",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.0.10"
},
{
"name": "github.com/anthropics/anthropic-sdk-go",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.26.0"
},
{
"name": "github.com/caarlos0/env/v11",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v11.4.1"
},
{
"name": "github.com/containerd/errdefs",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.0.0"
},
{
"name": "github.com/coreos/go-oidc/v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.18.0"
},
{
"name": "github.com/emersion/go-imap/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.0.0-beta.8"
},
{
"name": "github.com/emersion/go-message",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.18.2"
},
{
"name": "github.com/fergusstrange/embedded-postgres",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.34.0"
},
{
"name": "github.com/go-git/go-git/v5",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v5.19.1"
},
{
"name": "github.com/go-resty/resty/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.17.2"
},
{
"name": "github.com/google/uuid",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.6.0"
},
{
"name": "github.com/jackc/pgx/v5",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v5.10.0"
},
{
"name": "github.com/klauspost/compress",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.18.5"
},
{
"name": "github.com/larksuite/oapi-sdk-go/v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.5.3"
},
{
"name": "github.com/minio/minio-go/v7",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v7.1.0"
},
{
"name": "github.com/mmcdole/gofeed",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.3.0"
},
{
"name": "github.com/moby/moby/api",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.54.2"
},
{
"name": "github.com/moby/moby/client",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.4.1"
},
{
"name": "github.com/modelcontextprotocol/go-sdk",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.3.1"
},
{
"name": "github.com/oapi-codegen/runtime",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.4.0"
},
{
"name": "github.com/oklog/ulid/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.1.1"
},
{
"name": "github.com/openai/openai-go",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.12.0"
},
{
"name": "github.com/pelletier/go-toml/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.3.0"
},
{
"name": "github.com/pgvector/pgvector-go",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.4.0"
},
{
"name": "github.com/pgvector/pgvector-go/pgx",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.4.0"
},
{
"name": "github.com/pressly/goose/v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.27.1"
},
{
"name": "github.com/riverqueue/river",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.39.0"
},
{
"name": "github.com/riverqueue/river/riverdriver/riverpgxv5",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.39.0"
},
{
"name": "github.com/riverqueue/river/rivertype",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.39.0"
},
{
"name": "github.com/robfig/cron/v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.0.1"
},
{
"name": "github.com/tencent-connect/botgo",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.2.1"
},
{
"name": "github.com/urfave/cli/v2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v2.27.7"
},
{
"name": "github.com/vaayne/go-defuddle",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.1.2"
},
{
"name": "github.com/vaayne/mcphub",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.2.4"
},
{
"name": "github.com/wneessen/go-mail",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.7.2"
},
{
"name": "github.com/yuin/goldmark",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.7.13"
},
{
"name": "github.com/zitadel/oidc/v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.47.5"
},
{
"name": "go.opentelemetry.io/contrib/bridges/otelslog",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.18.0"
},
{
"name": "go.opentelemetry.io/contrib/exporters/autoexport",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.67.0"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.68.0"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/runtime",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.68.0"
},
{
"name": "go.opentelemetry.io/otel",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.43.0"
},
{
"name": "go.opentelemetry.io/otel/log",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.19.0"
},
{
"name": "go.opentelemetry.io/otel/metric",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.43.0"
},
{
"name": "go.opentelemetry.io/otel/sdk",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.43.0"
},
{
"name": "go.opentelemetry.io/otel/sdk/log",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.19.0"
},
{
"name": "go.opentelemetry.io/otel/sdk/metric",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.43.0"
},
{
"name": "go.opentelemetry.io/otel/trace",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v1.43.0"
},
{
"name": "golang.org/x/crypto",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.50.0"
},
{
"name": "golang.org/x/image",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.41.0"
},
{
"name": "golang.org/x/net",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.53.0"
},
{
"name": "golang.org/x/oauth2",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.36.0"
},
{
"name": "golang.org/x/sync",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.20.0"
},
{
"name": "golang.org/x/sys",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.43.0"
},
{
"name": "golang.org/x/term",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v0.42.0"
},
{
"name": "gopkg.in/telebot.v4",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v4.0.0-beta.7"
},
{
"name": "gopkg.in/yaml.v3",
"manifest": "go.mod",
"ecosystem": "go",
"version_constraint": "v3.0.1"
},
{
"name": "@ai-sdk/react",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.186"
},
{
"name": "@base-ui/react",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^1.4.1"
},
{
"name": "@fontsource-variable/inter",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^5.2.8"
},
{
"name": "@mdx-js/react",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^3.1.1"
},
{
"name": "@mdx-js/rollup",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^3.1.1"
},
{
"name": "@pierre/trees",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "1.0.0-beta.3"
},
{
"name": "@tailwindcss/vite",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^4.2.4"
},
{
"name": "@tanstack/react-query",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "latest"
},
{
"name": "@tanstack/react-router",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "latest"
},
{
"name": "@types/qrcode",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^1.5.6"
},
{
"name": "ai",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^6.0.184"
},
{
"name": "class-variance-authority",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^0.7.1"
},
{
"name": "clsx",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^2.1.1"
},
{
"name": "geist",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^1.7.0"
},
{
"name": "i18next",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^26.0.10"
},
{
"name": "lucide-react",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^1.14.0"
},
{
"name": "mermaid",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^11.15.0"
},
{
"name": "qrcode",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^1.5.4"
},
{
"name": "react",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^19.2.5"
},
{
"name": "react-day-picker",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^9.14.0"
},
{
"name": "react-dom",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^19.2.5"
},
{
"name": "react-i18next",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^17.0.7"
},
{
"name": "remark-frontmatter",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^5.0.0"
},
{
"name": "remark-gfm",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.1"
},
{
"name": "remark-mdx-frontmatter",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^5.2.0"
},
{
"name": "shiki",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.2"
},
{
"name": "simple-icons",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^16.19.0"
},
{
"name": "streamdown",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^2.5.0"
},
{
"name": "tailwind-merge",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^3.5.0"
},
{
"name": "tailwindcss",
"manifest": "web/package.json",
"ecosystem": "npm",
"version_constraint": "^4.2.4"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "filippo.io/age",
"direct": true,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/anthropics/anthropic-sdk-go",
"direct": true,
"version": "v1.26.0",
"ecosystem": "go"
},
{
"name": "github.com/caarlos0/env/v11",
"direct": true,
"version": "v11.4.1",
"ecosystem": "go"
},
{
"name": "github.com/containerd/errdefs",
"direct": true,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/coreos/go-oidc/v3",
"direct": true,
"version": "v3.18.0",
"ecosystem": "go"
},
{
"name": "github.com/emersion/go-imap/v2",
"direct": true,
"version": "v2.0.0-beta.8",
"ecosystem": "go"
},
{
"name": "github.com/emersion/go-message",
"direct": true,
"version": "v0.18.2",
"ecosystem": "go"
},
{
"name": "github.com/fergusstrange/embedded-postgres",
"direct": true,
"version": "v1.34.0",
"ecosystem": "go"
},
{
"name": "github.com/go-git/go-git/v5",
"direct": true,
"version": "v5.19.1",
"ecosystem": "go"
},
{
"name": "github.com/go-resty/resty/v2",
"direct": true,
"version": "v2.17.2",
"ecosystem": "go"
},
{
"name": "github.com/google/uuid",
"direct": true,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/jackc/pgx/v5",
"direct": true,
"version": "v5.10.0",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/compress",
"direct": true,
"version": "v1.18.5",
"ecosystem": "go"
},
{
"name": "github.com/larksuite/oapi-sdk-go/v3",
"direct": true,
"version": "v3.5.3",
"ecosystem": "go"
},
{
"name": "github.com/mad-pixels/goldmark-tgmd",
"direct": true,
"version": "v0.0.10",
"ecosystem": "go"
},
{
"name": "github.com/minio/minio-go/v7",
"direct": true,
"version": "v7.1.0",
"ecosystem": "go"
},
{
"name": "github.com/mmcdole/gofeed",
"direct": true,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/moby/moby/api",
"direct": true,
"version": "v1.54.2",
"ecosystem": "go"
},
{
"name": "github.com/moby/moby/client",
"direct": true,
"version": "v0.4.1",
"ecosystem": "go"
},
{
"name": "github.com/modelcontextprotocol/go-sdk",
"direct": true,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/oapi-codegen/runtime",
"direct": true,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/oklog/ulid/v2",
"direct": true,
"version": "v2.1.1",
"ecosystem": "go"
},
{
"name": "github.com/openai/openai-go",
"direct": true,
"version": "v1.12.0",
"ecosystem": "go"
},
{
"name": "github.com/pelletier/go-toml/v2",
"direct": true,
"version": "v2.3.0",
"ecosystem": "go"
},
{
"name": "github.com/pgvector/pgvector-go",
"direct": true,
"version": "v0.4.0",
"ecosystem": "go"
},
{
"name": "github.com/pgvector/pgvector-go/pgx",
"direct": true,
"version": "v0.4.0",
"ecosystem": "go"
},
{
"name": "github.com/pressly/goose/v3",
"direct": true,
"version": "v3.27.1",
"ecosystem": "go"
},
{
"name": "github.com/riverqueue/river",
"direct": true,
"version": "v0.39.0",
"ecosystem": "go"
},
{
"name": "github.com/riverqueue/river/riverdriver/riverpgxv5",
"direct": true,
"version": "v0.39.0",
"ecosystem": "go"
},
{
"name": "github.com/riverqueue/river/rivertype",
"direct": true,
"version": "v0.39.0",
"ecosystem": "go"
},
{
"name": "github.com/robfig/cron/v3",
"direct": true,
"version": "v3.0.1",
"ecosystem": "go"
},
{
"name": "github.com/tencent-connect/botgo",
"direct": true,
"version": "v0.2.1",
"ecosystem": "go"
},
{
"name": "github.com/urfave/cli/v2",
"direct": true,
"version": "v2.27.7",
"ecosystem": "go"
},
{
"name": "github.com/vaayne/go-defuddle",
"direct": true,
"version": "v0.1.2",
"ecosystem": "go"
},
{
"name": "github.com/vaayne/mcphub",
"direct": true,
"version": "v0.2.4",
"ecosystem": "go"
},
{
"name": "github.com/wneessen/go-mail",
"direct": true,
"version": "v0.7.2",
"ecosystem": "go"
},
{
"name": "github.com/yuin/goldmark",
"direct": true,
"version": "v1.7.13",
"ecosystem": "go"
},
{
"name": "github.com/zitadel/oidc/v3",
"direct": true,
"version": "v3.47.5",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/bridges/otelslog",
"direct": true,
"version": "v0.18.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/exporters/autoexport",
"direct": true,
"version": "v0.67.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp",
"direct": true,
"version": "v0.68.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/instrumentation/runtime",
"direct": true,
"version": "v0.68.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel",
"direct": true,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/log",
"direct": true,
"version": "v0.19.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/metric",
"direct": true,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/sdk",
"direct": true,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/sdk/log",
"direct": true,
"version": "v0.19.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/sdk/metric",
"direct": true,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/trace",
"direct": true,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/crypto",
"direct": true,
"version": "v0.50.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/image",
"direct": true,
"version": "v0.41.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/net",
"direct": true,
"version": "v0.53.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/oauth2",
"direct": true,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sync",
"direct": true,
"version": "v0.20.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/sys",
"direct": true,
"version": "v0.43.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/term",
"direct": true,
"version": "v0.42.0",
"ecosystem": "go"
},
{
"name": "gopkg.in/telebot.v4",
"direct": true,
"version": "v4.0.0-beta.7",
"ecosystem": "go"
},
{
"name": "gopkg.in/yaml.v3",
"direct": true,
"version": "v3.0.1",
"ecosystem": "go"
},
{
"name": "@ai-sdk/react",
"direct": true,
"version": "3.0.193",
"ecosystem": "npm"
},
{
"name": "@base-ui/react",
"direct": true,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "@fontsource-variable/inter",
"direct": true,
"version": "5.2.8",
"ecosystem": "npm"
},
{
"name": "@mdx-js/react",
"direct": true,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "@mdx-js/rollup",
"direct": true,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "@pierre/trees",
"direct": true,
"version": "1.0.0-beta.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/vite",
"direct": true,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tanstack/react-query",
"direct": true,
"version": "5.100.14",
"ecosystem": "npm"
},
{
"name": "@tanstack/react-router",
"direct": true,
"version": "1.170.8",
"ecosystem": "npm"
},
{
"name": "@types/qrcode",
"direct": true,
"version": "1.5.6",
"ecosystem": "npm"
},
{
"name": "ai",
"direct": true,
"version": "6.0.191",
"ecosystem": "npm"
},
{
"name": "class-variance-authority",
"direct": true,
"version": "0.7.1",
"ecosystem": "npm"
},
{
"name": "clsx",
"direct": true,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "geist",
"direct": true,
"version": "1.7.1",
"ecosystem": "npm"
},
{
"name": "i18next",
"direct": true,
"version": "26.3.0",
"ecosystem": "npm"
},
{
"name": "lucide-react",
"direct": true,
"version": "1.16.0",
"ecosystem": "npm"
},
{
"name": "mermaid",
"direct": true,
"version": "11.15.0",
"ecosystem": "npm"
},
{
"name": "qrcode",
"direct": true,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "react",
"direct": true,
"version": "19.2.6",
"ecosystem": "npm"
},
{
"name": "react-day-picker",
"direct": true,
"version": "9.14.0",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": true,
"version": "19.2.6",
"ecosystem": "npm"
},
{
"name": "react-i18next",
"direct": true,
"version": "17.0.8",
"ecosystem": "npm"
},
{
"name": "remark-frontmatter",
"direct": true,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "remark-gfm",
"direct": true,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "remark-mdx-frontmatter",
"direct": true,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "shiki",
"direct": true,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "simple-icons",
"direct": true,
"version": "16.21.0",
"ecosystem": "npm"
},
{
"name": "streamdown",
"direct": true,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "tailwind-merge",
"direct": true,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "tailwindcss",
"direct": true,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "dario.cat/mergo",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "filippo.io/hpke",
"direct": false,
"version": "v0.4.0",
"ecosystem": "go"
},
{
"name": "github.com/andybalholm/cascadia",
"direct": false,
"version": "v1.3.3",
"ecosystem": "go"
},
{
"name": "github.com/apapsch/go-jsonmerge/v2",
"direct": false,
"version": "v2.0.0",
"ecosystem": "go"
},
{
"name": "github.com/beorn7/perks",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/cenkalti/backoff/v5",
"direct": false,
"version": "v5.0.3",
"ecosystem": "go"
},
{
"name": "github.com/cespare/xxhash/v2",
"direct": false,
"version": "v2.3.0",
"ecosystem": "go"
},
{
"name": "github.com/cloudflare/circl",
"direct": false,
"version": "v1.6.3",
"ecosystem": "go"
},
{
"name": "github.com/containerd/errdefs/pkg",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/cpuguy83/go-md2man/v2",
"direct": false,
"version": "v2.0.7",
"ecosystem": "go"
},
{
"name": "github.com/cyphar/filepath-securejoin",
"direct": false,
"version": "v0.6.1",
"ecosystem": "go"
},
{
"name": "github.com/davecgh/go-spew",
"direct": false,
"version": "v1.1.2-0.20180830191138-d8f796af33cc",
"ecosystem": "go"
},
{
"name": "github.com/distribution/reference",
"direct": false,
"version": "v0.6.0",
"ecosystem": "go"
},
{
"name": "github.com/docker/go-connections",
"direct": false,
"version": "v0.7.0",
"ecosystem": "go"
},
{
"name": "github.com/docker/go-units",
"direct": false,
"version": "v0.5.0",
"ecosystem": "go"
},
{
"name": "github.com/dprotaso/go-yit",
"direct": false,
"version": "v0.0.0-20220510233725-9ba8df137936",
"ecosystem": "go"
},
{
"name": "github.com/dustin/go-humanize",
"direct": false,
"version": "v1.0.1",
"ecosystem": "go"
},
{
"name": "github.com/emersion/go-sasl",
"direct": false,
"version": "v0.0.0-20241020182733-b788ff22d5a6",
"ecosystem": "go"
},
{
"name": "github.com/emirpasic/gods",
"direct": false,
"version": "v1.18.1",
"ecosystem": "go"
},
{
"name": "github.com/fastschema/qjs",
"direct": false,
"version": "v0.0.6",
"ecosystem": "go"
},
{
"name": "github.com/felixge/httpsnoop",
"direct": false,
"version": "v1.0.4",
"ecosystem": "go"
},
{
"name": "github.com/getkin/kin-openapi",
"direct": false,
"version": "v0.135.0",
"ecosystem": "go"
},
{
"name": "github.com/go-git/gcfg",
"direct": false,
"version": "v1.5.1-0.20230307220236-3a3c6141e376",
"ecosystem": "go"
},
{
"name": "github.com/go-git/go-billy/v5",
"direct": false,
"version": "v5.9.0",
"ecosystem": "go"
},
{
"name": "github.com/go-ini/ini",
"direct": false,
"version": "v1.67.0",
"ecosystem": "go"
},
{
"name": "github.com/go-jose/go-jose/v4",
"direct": false,
"version": "v4.1.4",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/logr",
"direct": false,
"version": "v1.4.3",
"ecosystem": "go"
},
{
"name": "github.com/go-logr/stdr",
"direct": false,
"version": "v1.2.2",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/jsonpointer",
"direct": false,
"version": "v0.22.4",
"ecosystem": "go"
},
{
"name": "github.com/go-openapi/swag/jsonname",
"direct": false,
"version": "v0.25.4",
"ecosystem": "go"
},
{
"name": "github.com/gogo/protobuf",
"direct": false,
"version": "v1.3.2",
"ecosystem": "go"
},
{
"name": "github.com/golang/groupcache",
"direct": false,
"version": "v0.0.0-20241129210726-2c02b8208cf8",
"ecosystem": "go"
},
{
"name": "github.com/google/jsonschema-go",
"direct": false,
"version": "v0.4.2",
"ecosystem": "go"
},
{
"name": "github.com/gorilla/websocket",
"direct": false,
"version": "v1.5.0",
"ecosystem": "go"
},
{
"name": "github.com/grpc-ecosystem/grpc-gateway/v2",
"direct": false,
"version": "v2.28.0",
"ecosystem": "go"
},
{
"name": "github.com/jackc/pgpassfile",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/jackc/pgservicefile",
"direct": false,
"version": "v0.0.0-20240606120523-5a60cdf6a761",
"ecosystem": "go"
},
{
"name": "github.com/jackc/puddle/v2",
"direct": false,
"version": "v2.2.2",
"ecosystem": "go"
},
{
"name": "github.com/jbenet/go-context",
"direct": false,
"version": "v0.0.0-20150711004518-d14ea06fba99",
"ecosystem": "go"
},
{
"name": "github.com/johanneskaufmann/dom",
"direct": false,
"version": "v0.2.0",
"ecosystem": "go"
},
{
"name": "github.com/johanneskaufmann/html-to-markdown/v2",
"direct": false,
"version": "v2.5.0",
"ecosystem": "go"
},
{
"name": "github.com/josharian/intern",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/json-iterator/go",
"direct": false,
"version": "v1.1.12",
"ecosystem": "go"
},
{
"name": "github.com/kevinburke/ssh_config",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/cpuid/v2",
"direct": false,
"version": "v2.3.0",
"ecosystem": "go"
},
{
"name": "github.com/klauspost/crc32",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "github.com/lib/pq",
"direct": false,
"version": "v1.12.3",
"ecosystem": "go"
},
{
"name": "github.com/mailru/easyjson",
"direct": false,
"version": "v0.9.1",
"ecosystem": "go"
},
{
"name": "github.com/mfridman/interpolate",
"direct": false,
"version": "v0.0.2",
"ecosystem": "go"
},
{
"name": "github.com/microsoft/go-winio",
"direct": false,
"version": "v0.6.2",
"ecosystem": "go"
},
{
"name": "github.com/minio/crc64nvme",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/minio/md5-simd",
"direct": false,
"version": "v1.1.2",
"ecosystem": "go"
},
{
"name": "github.com/mmcdole/goxpp",
"direct": false,
"version": "v1.1.1-0.20240225020742-a0c311522b23",
"ecosystem": "go"
},
{
"name": "github.com/moby/docker-image-spec",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/modern-go/concurrent",
"direct": false,
"version": "v0.0.0-20180306012644-bacd9c7ef1dd",
"ecosystem": "go"
},
{
"name": "github.com/modern-go/reflect2",
"direct": false,
"version": "v1.0.2",
"ecosystem": "go"
},
{
"name": "github.com/mohae/deepcopy",
"direct": false,
"version": "v0.0.0-20170929034955-c48cc78d4826",
"ecosystem": "go"
},
{
"name": "github.com/muhlemmer/gu",
"direct": false,
"version": "v0.3.1",
"ecosystem": "go"
},
{
"name": "github.com/munnerz/goautoneg",
"direct": false,
"version": "v0.0.0-20191010083416-a7dc8b61c822",
"ecosystem": "go"
},
{
"name": "github.com/oapi-codegen/oapi-codegen/v2",
"direct": false,
"version": "v2.7.0",
"ecosystem": "go"
},
{
"name": "github.com/oasdiff/yaml",
"direct": false,
"version": "v0.0.9",
"ecosystem": "go"
},
{
"name": "github.com/oasdiff/yaml3",
"direct": false,
"version": "v0.0.9",
"ecosystem": "go"
},
{
"name": "github.com/opencontainers/go-digest",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/opencontainers/image-spec",
"direct": false,
"version": "v1.1.1",
"ecosystem": "go"
},
{
"name": "github.com/perimeterx/marshmallow",
"direct": false,
"version": "v1.1.5",
"ecosystem": "go"
},
{
"name": "github.com/philhofer/fwd",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/pjbgf/sha1cd",
"direct": false,
"version": "v0.6.0",
"ecosystem": "go"
},
{
"name": "github.com/pmezard/go-difflib",
"direct": false,
"version": "v1.0.1-0.20181226105442-5d4384ee4fb2",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/client_golang",
"direct": false,
"version": "v1.23.2",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/client_model",
"direct": false,
"version": "v0.6.2",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/common",
"direct": false,
"version": "v0.67.5",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/otlptranslator",
"direct": false,
"version": "v1.0.0",
"ecosystem": "go"
},
{
"name": "github.com/prometheus/procfs",
"direct": false,
"version": "v0.20.1",
"ecosystem": "go"
},
{
"name": "github.com/protonmail/go-crypto",
"direct": false,
"version": "v1.1.6",
"ecosystem": "go"
},
{
"name": "github.com/puerkitobio/goquery",
"direct": false,
"version": "v1.9.2",
"ecosystem": "go"
},
{
"name": "github.com/riverqueue/river/riverdriver",
"direct": false,
"version": "v0.39.0",
"ecosystem": "go"
},
{
"name": "github.com/riverqueue/river/rivershared",
"direct": false,
"version": "v0.39.0",
"ecosystem": "go"
},
{
"name": "github.com/rs/xid",
"direct": false,
"version": "v1.6.0",
"ecosystem": "go"
},
{
"name": "github.com/russross/blackfriday/v2",
"direct": false,
"version": "v2.1.0",
"ecosystem": "go"
},
{
"name": "github.com/segmentio/asm",
"direct": false,
"version": "v1.2.1",
"ecosystem": "go"
},
{
"name": "github.com/segmentio/encoding",
"direct": false,
"version": "v0.5.3",
"ecosystem": "go"
},
{
"name": "github.com/sergi/go-diff",
"direct": false,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/sethvargo/go-retry",
"direct": false,
"version": "v0.3.0",
"ecosystem": "go"
},
{
"name": "github.com/skeema/knownhosts",
"direct": false,
"version": "v1.3.1",
"ecosystem": "go"
},
{
"name": "github.com/speakeasy-api/jsonpath",
"direct": false,
"version": "v0.6.3",
"ecosystem": "go"
},
{
"name": "github.com/speakeasy-api/openapi",
"direct": false,
"version": "v1.19.2",
"ecosystem": "go"
},
{
"name": "github.com/stretchr/testify",
"direct": false,
"version": "v1.11.1",
"ecosystem": "go"
},
{
"name": "github.com/tetratelabs/wazero",
"direct": false,
"version": "v1.9.0",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/gjson",
"direct": false,
"version": "v1.19.0",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/match",
"direct": false,
"version": "v1.2.0",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/pretty",
"direct": false,
"version": "v1.2.1",
"ecosystem": "go"
},
{
"name": "github.com/tidwall/sjson",
"direct": false,
"version": "v1.2.5",
"ecosystem": "go"
},
{
"name": "github.com/tinylib/msgp",
"direct": false,
"version": "v1.6.1",
"ecosystem": "go"
},
{
"name": "github.com/vmware-labs/yaml-jsonpath",
"direct": false,
"version": "v0.3.2",
"ecosystem": "go"
},
{
"name": "github.com/woodsbury/decimal128",
"direct": false,
"version": "v1.4.0",
"ecosystem": "go"
},
{
"name": "github.com/x448/float16",
"direct": false,
"version": "v0.8.4",
"ecosystem": "go"
},
{
"name": "github.com/xanzy/ssh-agent",
"direct": false,
"version": "v0.3.3",
"ecosystem": "go"
},
{
"name": "github.com/xi2/xz",
"direct": false,
"version": "v0.0.0-20171230120015-48954b6210f8",
"ecosystem": "go"
},
{
"name": "github.com/xrash/smetrics",
"direct": false,
"version": "v0.0.0-20240521201337-686a1a2994c1",
"ecosystem": "go"
},
{
"name": "github.com/yosida95/uritemplate/v3",
"direct": false,
"version": "v3.0.2",
"ecosystem": "go"
},
{
"name": "github.com/zeebo/xxh3",
"direct": false,
"version": "v1.1.0",
"ecosystem": "go"
},
{
"name": "github.com/zitadel/schema",
"direct": false,
"version": "v1.3.2",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/auto/sdk",
"direct": false,
"version": "v1.2.1",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/contrib/bridges/prometheus",
"direct": false,
"version": "v0.67.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc",
"direct": false,
"version": "v0.18.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp",
"direct": false,
"version": "v0.19.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc",
"direct": false,
"version": "v1.42.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp",
"direct": false,
"version": "v1.43.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/prometheus",
"direct": false,
"version": "v0.64.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/stdout/stdoutlog",
"direct": false,
"version": "v0.18.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/stdout/stdoutmetric",
"direct": false,
"version": "v1.42.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/otel/exporters/stdout/stdouttrace",
"direct": false,
"version": "v1.42.0",
"ecosystem": "go"
},
{
"name": "go.opentelemetry.io/proto/otlp",
"direct": false,
"version": "v1.10.0",
"ecosystem": "go"
},
{
"name": "go.uber.org/goleak",
"direct": false,
"version": "v1.3.0",
"ecosystem": "go"
},
{
"name": "go.uber.org/multierr",
"direct": false,
"version": "v1.11.0",
"ecosystem": "go"
},
{
"name": "go.yaml.in/yaml/v2",
"direct": false,
"version": "v2.4.3",
"ecosystem": "go"
},
{
"name": "go.yaml.in/yaml/v3",
"direct": false,
"version": "v3.0.4",
"ecosystem": "go"
},
{
"name": "golang.org/x/mod",
"direct": false,
"version": "v0.36.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/text",
"direct": false,
"version": "v0.37.0",
"ecosystem": "go"
},
{
"name": "golang.org/x/tools",
"direct": false,
"version": "v0.44.0",
"ecosystem": "go"
},
{
"name": "google.golang.org/genproto/googleapis/api",
"direct": false,
"version": "v0.0.0-20260401024825-9d38bb4040a9",
"ecosystem": "go"
},
{
"name": "google.golang.org/genproto/googleapis/rpc",
"direct": false,
"version": "v0.0.0-20260420184626-e10c466a9529",
"ecosystem": "go"
},
{
"name": "google.golang.org/grpc",
"direct": false,
"version": "v1.80.0",
"ecosystem": "go"
},
{
"name": "google.golang.org/protobuf",
"direct": false,
"version": "v1.36.11",
"ecosystem": "go"
},
{
"name": "gopkg.in/warnings.v0",
"direct": false,
"version": "v0.1.2",
"ecosystem": "go"
},
{
"name": "@ai-sdk/gateway",
"direct": false,
"version": "3.0.120",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/provider",
"direct": false,
"version": "3.0.10",
"ecosystem": "npm"
},
{
"name": "@ai-sdk/provider-utils",
"direct": false,
"version": "4.0.27",
"ecosystem": "npm"
},
{
"name": "@antfu/install-pkg",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@babel/code-frame",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/compat-data",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/core",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/generator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-compilation-targets",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-globals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-imports",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-transforms",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-plugin-utils",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-option",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helpers",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-jsx",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-typescript",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/template",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/traverse",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@base-ui/utils",
"direct": false,
"version": "0.2.9",
"ecosystem": "npm"
},
{
"name": "@braintree/sanitize-url",
"direct": false,
"version": "7.1.2",
"ecosystem": "npm"
},
{
"name": "@chevrotain/types",
"direct": false,
"version": "11.1.2",
"ecosystem": "npm"
},
{
"name": "@date-fns/tz",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@floating-ui/core",
"direct": false,
"version": "1.7.5",
"ecosystem": "npm"
},
{
"name": "@floating-ui/dom",
"direct": false,
"version": "1.7.6",
"ecosystem": "npm"
},
{
"name": "@floating-ui/react-dom",
"direct": false,
"version": "2.1.8",
"ecosystem": "npm"
},
{
"name": "@floating-ui/utils",
"direct": false,
"version": "0.2.11",
"ecosystem": "npm"
},
{
"name": "@hey-api/codegen-core",
"direct": false,
"version": "0.8.2",
"ecosystem": "npm"
},
{
"name": "@hey-api/json-schema-ref-parser",
"direct": false,
"version": "1.4.2",
"ecosystem": "npm"
},
{
"name": "@hey-api/openapi-ts",
"direct": false,
"version": "0.97.3",
"ecosystem": "npm"
},
{
"name": "@hey-api/shared",
"direct": false,
"version": "0.4.5",
"ecosystem": "npm"
},
{
"name": "@hey-api/spec-types",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "@hey-api/types",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "@iconify/types",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@iconify/utils",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "@img/colour",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@img/sharp-darwin-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-darwin-x64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-darwin-arm64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-darwin-x64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-arm",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-arm64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-ppc64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-riscv64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-s390x",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-x64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linuxmusl-arm64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linuxmusl-x64",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-arm",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-ppc64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-riscv64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-s390x",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-x64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linuxmusl-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linuxmusl-x64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-wasm32",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-arm64",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-ia32",
"direct": false,
"version": "0.34.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-x64",
"direct": false,
"version": "0.34.5",
"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": "@jsdevtools/ono",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "@lukeed/ms",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "@mdx-js/mdx",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "@mermaid-js/parser",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "@next/env",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-darwin-arm64",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-darwin-x64",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-linux-arm64-gnu",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-linux-arm64-musl",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-linux-x64-gnu",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-linux-x64-musl",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-win32-arm64-msvc",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@next/swc-win32-x64-msvc",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "@opentelemetry/api",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "@oxc-project/runtime",
"direct": false,
"version": "0.129.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/runtime",
"direct": false,
"version": "0.133.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.129.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.133.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-android-arm-eabi",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-android-arm64",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-darwin-arm64",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-darwin-x64",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-freebsd-x64",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm-gnueabihf",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm-musleabihf",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm64-gnu",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm64-musl",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-ppc64-gnu",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-riscv64-gnu",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-riscv64-musl",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-s390x-gnu",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-x64-gnu",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-x64-musl",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-openharmony-arm64",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-win32-arm64-msvc",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-win32-ia32-msvc",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-win32-x64-msvc",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "@oxlint-tsgolint/darwin-arm64",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@oxlint-tsgolint/darwin-x64",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@oxlint-tsgolint/linux-arm64",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@oxlint-tsgolint/linux-x64",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@oxlint-tsgolint/win32-arm64",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@oxlint-tsgolint/win32-x64",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-android-arm-eabi",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-android-arm64",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-darwin-arm64",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-darwin-x64",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-freebsd-x64",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm-musleabihf",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm64-gnu",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm64-musl",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-riscv64-gnu",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-riscv64-musl",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-s390x-gnu",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-x64-gnu",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-x64-musl",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-openharmony-arm64",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-win32-arm64-msvc",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-win32-ia32-msvc",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-win32-x64-msvc",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/plugins",
"direct": false,
"version": "1.61.0",
"ecosystem": "npm"
},
{
"name": "@polka/url",
"direct": false,
"version": "1.0.0-next.29",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rollup/pluginutils",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm-eabi",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm64",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-arm64",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-x64",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-arm64",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-x64",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-gnueabihf",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-musleabihf",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-gnu",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-musl",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-gnu",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-musl",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-gnu",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-musl",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-gnu",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-musl",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-s390x-gnu",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-gnu",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-musl",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openbsd-x64",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openharmony-arm64",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-arm64-msvc",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-ia32-msvc",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-gnu",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-msvc",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "@shikijs/core",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@shikijs/engine-javascript",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@shikijs/engine-oniguruma",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@shikijs/langs",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@shikijs/primitive",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@shikijs/themes",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@shikijs/types",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@shikijs/vscode-textmate",
"direct": false,
"version": "10.0.2",
"ecosystem": "npm"
},
{
"name": "@standard-schema/spec",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@swc/helpers",
"direct": false,
"version": "0.5.15",
"ecosystem": "npm"
},
{
"name": "@tabby_ai/hijri-converter",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/node",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-android-arm64",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-darwin-arm64",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-darwin-x64",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-freebsd-x64",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-arm-gnueabihf",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-arm64-gnu",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-arm64-musl",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-x64-gnu",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-x64-musl",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-wasm32-wasi",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-win32-arm64-msvc",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-win32-x64-msvc",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@tanstack/history",
"direct": false,
"version": "1.162.0",
"ecosystem": "npm"
},
{
"name": "@tanstack/query-core",
"direct": false,
"version": "5.100.14",
"ecosystem": "npm"
},
{
"name": "@tanstack/react-store",
"direct": false,
"version": "0.9.3",
"ecosystem": "npm"
},
{
"name": "@tanstack/router-core",
"direct": false,
"version": "1.171.6",
"ecosystem": "npm"
},
{
"name": "@tanstack/router-generator",
"direct": false,
"version": "1.167.10",
"ecosystem": "npm"
},
{
"name": "@tanstack/router-plugin",
"direct": false,
"version": "1.168.11",
"ecosystem": "npm"
},
{
"name": "@tanstack/router-utils",
"direct": false,
"version": "1.162.1",
"ecosystem": "npm"
},
{
"name": "@tanstack/store",
"direct": false,
"version": "0.9.3",
"ecosystem": "npm"
},
{
"name": "@tanstack/virtual-file-routes",
"direct": false,
"version": "1.162.0",
"ecosystem": "npm"
},
{
"name": "@types/chai",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "@types/d3",
"direct": false,
"version": "7.4.3",
"ecosystem": "npm"
},
{
"name": "@types/d3-array",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "@types/d3-axis",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "@types/d3-brush",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "@types/d3-chord",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "@types/d3-color",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "@types/d3-contour",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "@types/d3-delaunay",
"direct": false,
"version": "6.0.4",
"ecosystem": "npm"
},
{
"name": "@types/d3-dispatch",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "@types/d3-drag",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "@types/d3-dsv",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "@types/d3-ease",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@types/d3-fetch",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "@types/d3-force",
"direct": false,
"version": "3.0.10",
"ecosystem": "npm"
},
{
"name": "@types/d3-format",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/d3-geo",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@types/d3-hierarchy",
"direct": false,
"version": "3.1.7",
"ecosystem": "npm"
},
{
"name": "@types/d3-interpolate",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/d3-path",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "@types/d3-polygon",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@types/d3-quadtree",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "@types/d3-random",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "@types/d3-scale",
"direct": false,
"version": "4.0.9",
"ecosystem": "npm"
},
{
"name": "@types/d3-scale-chromatic",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@types/d3-selection",
"direct": false,
"version": "3.0.11",
"ecosystem": "npm"
},
{
"name": "@types/d3-shape",
"direct": false,
"version": "3.1.8",
"ecosystem": "npm"
},
{
"name": "@types/d3-time",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/d3-time-format",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "@types/d3-timer",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@types/d3-transition",
"direct": false,
"version": "3.0.9",
"ecosystem": "npm"
},
{
"name": "@types/d3-zoom",
"direct": false,
"version": "3.0.8",
"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",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "@types/estree-jsx",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "@types/geojson",
"direct": false,
"version": "7946.0.16",
"ecosystem": "npm"
},
{
"name": "@types/hast",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.15",
"ecosystem": "npm"
},
{
"name": "@types/mdast",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "@types/mdx",
"direct": false,
"version": "2.0.13",
"ecosystem": "npm"
},
{
"name": "@types/ms",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "25.9.1",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "19.2.15",
"ecosystem": "npm"
},
{
"name": "@types/react-dom",
"direct": false,
"version": "19.2.3",
"ecosystem": "npm"
},
{
"name": "@types/trusted-types",
"direct": false,
"version": "2.0.7",
"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": "@ungap/structured-clone",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "@upsetjs/venn.js",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@vercel/oidc",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-react",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-core",
"direct": false,
"version": "0.1.22",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-core",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-darwin-arm64",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-darwin-x64",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-linux-arm64-gnu",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-linux-arm64-musl",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-linux-x64-gnu",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-linux-x64-musl",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-test",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-win32-arm64-msvc",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "@voidzero-dev/vite-plus-win32-x64-msvc",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.16.0",
"ecosystem": "npm"
},
{
"name": "acorn-jsx",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "ansi-colors",
"direct": false,
"version": "4.1.3",
"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": "ansis",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "assertion-error",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "astring",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "babel-dead-code-elimination",
"direct": false,
"version": "1.0.12",
"ecosystem": "npm"
},
{
"name": "bail",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "baseline-browser-mapping",
"direct": false,
"version": "2.10.32",
"ecosystem": "npm"
},
{
"name": "baseline-browser-mapping",
"direct": false,
"version": "2.10.37",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.28.2",
"ecosystem": "npm"
},
{
"name": "bundle-name",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "c12",
"direct": false,
"version": "3.3.4",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "5.3.1",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001793",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001799",
"ecosystem": "npm"
},
{
"name": "ccount",
"direct": false,
"version": "2.0.1",
"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": "chokidar",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "client-only",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "collapse-white-space",
"direct": false,
"version": "2.1.0",
"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-support",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "comma-separated-tokens",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "14.0.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "8.3.0",
"ecosystem": "npm"
},
{
"name": "confbox",
"direct": false,
"version": "0.2.4",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "cookie-es",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "cose-base",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "cose-base",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "csstype",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "cytoscape",
"direct": false,
"version": "3.33.4",
"ecosystem": "npm"
},
{
"name": "cytoscape-cose-bilkent",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "cytoscape-fcose",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "d3",
"direct": false,
"version": "7.9.0",
"ecosystem": "npm"
},
{
"name": "d3-array",
"direct": false,
"version": "2.12.1",
"ecosystem": "npm"
},
{
"name": "d3-array",
"direct": false,
"version": "3.2.4",
"ecosystem": "npm"
},
{
"name": "d3-axis",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "d3-brush",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "d3-chord",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-color",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "d3-contour",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "d3-delaunay",
"direct": false,
"version": "6.0.4",
"ecosystem": "npm"
},
{
"name": "d3-dispatch",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-drag",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "d3-dsv",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-ease",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-fetch",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-force",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "d3-format",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "d3-geo",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "d3-hierarchy",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "d3-interpolate",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-path",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "d3-path",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "d3-polygon",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-quadtree",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-random",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-sankey",
"direct": false,
"version": "0.12.3",
"ecosystem": "npm"
},
{
"name": "d3-scale",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "d3-scale-chromatic",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "d3-selection",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "d3-shape",
"direct": false,
"version": "1.3.7",
"ecosystem": "npm"
},
{
"name": "d3-shape",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "d3-time",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "d3-time-format",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "d3-timer",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-transition",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-zoom",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "dagre-d3-es",
"direct": false,
"version": "7.0.14",
"ecosystem": "npm"
},
{
"name": "date-fns",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "date-fns-jalali",
"direct": false,
"version": "4.1.0-0",
"ecosystem": "npm"
},
{
"name": "dayjs",
"direct": false,
"version": "1.11.21",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decamelize",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "decode-named-character-reference",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "default-browser",
"direct": false,
"version": "5.5.0",
"ecosystem": "npm"
},
{
"name": "default-browser-id",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "define-lazy-prop",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "defu",
"direct": false,
"version": "6.1.7",
"ecosystem": "npm"
},
{
"name": "delaunator",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "dequal",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "destr",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "devlop",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "diff",
"direct": false,
"version": "8.0.4",
"ecosystem": "npm"
},
{
"name": "dijkstrajs",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "dompurify",
"direct": false,
"version": "3.4.10",
"ecosystem": "npm"
},
{
"name": "dotenv",
"direct": false,
"version": "17.4.2",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.363",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "enhanced-resolve",
"direct": false,
"version": "5.22.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "1.7.0",
"ecosystem": "npm"
},
{
"name": "es-toolkit",
"direct": false,
"version": "1.47.0",
"ecosystem": "npm"
},
{
"name": "esast-util-from-estree",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "esast-util-from-js",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-attach-comments",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-build-jsx",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "estree-util-is-identifier-name",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-scope",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-to-js",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-value-to-estree",
"direct": false,
"version": "3.5.0",
"ecosystem": "npm"
},
{
"name": "estree-util-visit",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "eventsource-parser",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "exsolve",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "extend",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "fault",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "format",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.3",
"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-tsconfig",
"direct": false,
"version": "4.14.0",
"ecosystem": "npm"
},
{
"name": "giget",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "hachure-fill",
"direct": false,
"version": "0.5.2",
"ecosystem": "npm"
},
{
"name": "hast-util-from-parse5",
"direct": false,
"version": "8.0.3",
"ecosystem": "npm"
},
{
"name": "hast-util-parse-selector",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "hast-util-raw",
"direct": false,
"version": "9.1.0",
"ecosystem": "npm"
},
{
"name": "hast-util-sanitize",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "hast-util-to-estree",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "hast-util-to-html",
"direct": false,
"version": "9.0.5",
"ecosystem": "npm"
},
{
"name": "hast-util-to-jsx-runtime",
"direct": false,
"version": "2.3.6",
"ecosystem": "npm"
},
{
"name": "hast-util-to-parse5",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "hast-util-whitespace",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hastscript",
"direct": false,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "html-parse-stringify",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "html-url-attributes",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "html-void-elements",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "import-meta-resolve",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "inline-style-parser",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "internmap",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "internmap",
"direct": false,
"version": "2.0.3",
"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-decimal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-docker",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-hexadecimal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-in-ssh",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-inside-container",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "is-wsl",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "isbot",
"direct": false,
"version": "5.1.40",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"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-yaml",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "jsesc",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "json-schema",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "katex",
"direct": false,
"version": "0.16.47",
"ecosystem": "npm"
},
{
"name": "khroma",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "layout-base",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "layout-base",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "lightningcss",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-android-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-freebsd-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm-gnueabihf",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-arm64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-x64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "lodash-es",
"direct": false,
"version": "4.18.1",
"ecosystem": "npm"
},
{
"name": "longest-streak",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.30.21",
"ecosystem": "npm"
},
{
"name": "markdown-extensions",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "markdown-table",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "marked",
"direct": false,
"version": "16.4.2",
"ecosystem": "npm"
},
{
"name": "marked",
"direct": false,
"version": "17.0.6",
"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-frontmatter",
"direct": false,
"version": "2.0.1",
"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",
"direct": false,
"version": "3.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": "micromark",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-core-commonmark",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "micromark-extension-frontmatter",
"direct": false,
"version": "2.0.0",
"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-extension-mdx-expression",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdx-jsx",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdx-md",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdxjs",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdxjs-esm",
"direct": false,
"version": "3.0.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-mdx-expression",
"direct": false,
"version": "2.0.3",
"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-events-to-acorn",
"direct": false,
"version": "2.0.3",
"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": "mrmime",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.12",
"ecosystem": "npm"
},
{
"name": "next",
"direct": false,
"version": "16.2.6",
"ecosystem": "npm"
},
{
"name": "node-releases",
"direct": false,
"version": "2.0.46",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "ohash",
"direct": false,
"version": "2.0.11",
"ecosystem": "npm"
},
{
"name": "oniguruma-parser",
"direct": false,
"version": "0.12.2",
"ecosystem": "npm"
},
{
"name": "oniguruma-to-es",
"direct": false,
"version": "4.3.6",
"ecosystem": "npm"
},
{
"name": "open",
"direct": false,
"version": "11.0.0",
"ecosystem": "npm"
},
{
"name": "oxfmt",
"direct": false,
"version": "0.52.0",
"ecosystem": "npm"
},
{
"name": "oxlint",
"direct": false,
"version": "1.67.0",
"ecosystem": "npm"
},
{
"name": "oxlint-tsgolint",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "p-try",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "package-manager-detector",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "parse-entities",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "path-data-parser",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "pathe",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "perfect-debounce",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "pixelmatch",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "pkg-types",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "pngjs",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "pngjs",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "points-on-curve",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "points-on-path",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.15",
"ecosystem": "npm"
},
{
"name": "powershell-utils",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "preact",
"direct": false,
"version": "11.0.0-beta.0",
"ecosystem": "npm"
},
{
"name": "preact-render-to-string",
"direct": false,
"version": "6.6.5",
"ecosystem": "npm"
},
{
"name": "prettier",
"direct": false,
"version": "3.8.3",
"ecosystem": "npm"
},
{
"name": "property-information",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "rc9",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "recma-build-jsx",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "recma-jsx",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "recma-parse",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "recma-stringify",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "regex",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "regex-recursion",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "regex-utilities",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "rehype-harden",
"direct": false,
"version": "1.1.8",
"ecosystem": "npm"
},
{
"name": "rehype-raw",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "rehype-recma",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "rehype-sanitize",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "remark-mdx",
"direct": false,
"version": "3.1.1",
"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": "remend",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "require-main-filename",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "reselect",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "resolve-pkg-maps",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "robust-predicates",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "rollup",
"direct": false,
"version": "4.60.4",
"ecosystem": "npm"
},
{
"name": "roughjs",
"direct": false,
"version": "4.6.6",
"ecosystem": "npm"
},
{
"name": "run-applescript",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "rw",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "scheduler",
"direct": false,
"version": "0.27.0",
"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.4",
"ecosystem": "npm"
},
{
"name": "seroval",
"direct": false,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "seroval-plugins",
"direct": false,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "set-blocking",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "sharp",
"direct": false,
"version": "0.34.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": "sirv",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.7.6",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "space-separated-tokens",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"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": "style-to-js",
"direct": false,
"version": "1.1.21",
"ecosystem": "npm"
},
{
"name": "style-to-object",
"direct": false,
"version": "1.0.14",
"ecosystem": "npm"
},
{
"name": "styled-jsx",
"direct": false,
"version": "5.1.6",
"ecosystem": "npm"
},
{
"name": "stylis",
"direct": false,
"version": "4.4.0",
"ecosystem": "npm"
},
{
"name": "swr",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "throttleit",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.16",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.17",
"ecosystem": "npm"
},
{
"name": "tinypool",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "toml",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "totalist",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "trim-lines",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "trough",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "ts-dedent",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "7.24.6",
"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-mdx-define",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "unist-util-position",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-position-from-estree",
"direct": false,
"version": "2.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": "unplugin",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "update-browserslist-db",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "use-sync-external-store",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "uuid",
"direct": false,
"version": "14.0.0",
"ecosystem": "npm"
},
{
"name": "vfile",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "vfile-location",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "vfile-message",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "vite-plus",
"direct": false,
"version": "0.1.24",
"ecosystem": "npm"
},
{
"name": "void-elements",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "web-namespaces",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "webpack-virtual-modules",
"direct": false,
"version": "0.6.2",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "which-module",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "6.2.0",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.21.0",
"ecosystem": "npm"
},
{
"name": "wsl-utils",
"direct": false,
"version": "0.3.1",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "yaml",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "15.4.1",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "18.1.3",
"ecosystem": "npm"
},
{
"name": "zod",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "zwitch",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 859,
"direct_count": 88,
"indirect_count": 771
}
},
"maintainership": {
"issues": {
"open_prs": 5,
"merged_prs": 405,
"open_issues": 106,
"closed_ratio": 0.673,
"closed_issues": 218,
"closed_unmerged_prs": 42
},
"bus_factor": 1,
"bot_contributors": 1,
"top_contributors": [
{
"type": "User",
"login": "vaayne",
"commits": 1555,
"avatar_url": "https://avatars.githubusercontent.com/u/10231735?v=4"
},
{
"type": "User",
"login": "Donmagelas",
"commits": 14,
"avatar_url": "https://avatars.githubusercontent.com/u/158449651?v=4"
},
{
"type": "User",
"login": "lianshuang-photo",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/188543100?v=4"
},
{
"type": "User",
"login": "kennyzheng-builds",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/177400633?v=4"
},
{
"type": "User",
"login": "StrayBird-excellent",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/225412697?v=4"
}
],
"contributors_sampled": 5,
"top_contributor_share": 0.987
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"docker.yml",
"lint-and-test.yml",
"release.yml",
"sandbox-docker.yml"
],
"has_docs_dir": true,
"linter_configs": [
".golangci.yml"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": true
},
"security_signals": {
"lockfiles": [
"go.sum",
"pnpm-lock.yaml"
],
"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": "14 out of 14 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": 2,
"reason": "Found 5/17 approved changesets -- score normalized to 2",
"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": 10,
"reason": "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 26 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": 10,
"reason": "packaging workflow detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 0,
"reason": "dependency not pinned by hash detected -- score normalized to 0",
"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": "46 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "8e454a0112d51e0cde7e81ffd3ba2df0fb69672d",
"ran_at": "2026-07-24T04:51:48Z",
"aggregate_score": 4.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-23T05:44:15Z",
"oldest_open_prs": [
{
"number": 753,
"created_at": "2026-07-19T15:08:51Z",
"last_comment_at": "2026-07-19T15:16:34Z",
"last_comment_author": "github-actions"
},
{
"number": 764,
"created_at": "2026-07-20T10:48:04Z",
"last_comment_at": "2026-07-20T10:54:21Z",
"last_comment_author": "github-actions"
},
{
"number": 765,
"created_at": "2026-07-20T11:22:29Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 774,
"created_at": "2026-07-22T12:45:08Z",
"last_comment_at": "2026-07-22T13:28:43Z",
"last_comment_author": "vaayne"
},
{
"number": 777,
"created_at": "2026-07-23T06:24:02Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-21T03:45:17Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 34,
"created_at": "2026-03-08T15:33:52Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 159,
"created_at": "2026-05-09T15:57:31Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 199,
"created_at": "2026-05-19T08:18:51Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 200,
"created_at": "2026-05-19T08:18:53Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 202,
"created_at": "2026-05-19T08:18:56Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 221,
"created_at": "2026-05-25T01:37:27Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 281,
"created_at": "2026-06-03T09:07:28Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 290,
"created_at": "2026-06-04T08:56:52Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 337,
"created_at": "2026-06-08T09:20:41Z",
"last_comment_at": "2026-06-09T05:44:31Z",
"last_comment_author": "vaayne"
},
{
"number": 346,
"created_at": "2026-06-10T05:27:10Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 357,
"created_at": "2026-06-10T09:21:44Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 365,
"created_at": "2026-06-10T13:18:40Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 367,
"created_at": "2026-06-11T02:04:53Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 368,
"created_at": "2026-06-11T02:51:10Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 369,
"created_at": "2026-06-11T03:34:12Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 370,
"created_at": "2026-06-11T04:07:46Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 400,
"created_at": "2026-06-11T17:02:03Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 401,
"created_at": "2026-06-11T17:02:05Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 402,
"created_at": "2026-06-11T17:02:07Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 403,
"created_at": "2026-06-11T17:02:09Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/CherryHQ/stella",
"host": "github.com",
"name": "stella",
"owner": "CherryHQ"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 66,
"inputs": {
"security": 45,
"vitality": 83,
"community": 40,
"governance": 59,
"engineering": 96
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 83,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 78,
"inputs": {
"commits_last_year": 1584,
"human_commit_share": 1,
"days_since_last_push": 0,
"active_weeks_last_year": 21
},
"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": "21/52 weeks with commits",
"points": 14.5,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 21
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "1584 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 1584
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 26 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"releases_count": 100,
"latest_release_tag": "v0.60.1",
"releases_from_tags": false,
"days_since_latest_release": 2,
"mean_days_between_releases": 3.2
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "100 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 100
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 2 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 2
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~3.2 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 3.2
}
}
],
"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": "at_risk",
"name": "Community & Adoption",
"value": 40,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "at_risk",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 32,
"inputs": {
"forks": 6,
"stars": 45,
"watchers": 0,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "45 stars",
"points": 26.7,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 45
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "6 forks",
"points": 5.8,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 6
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "0 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 0
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (AGPL-3.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "AGPL-3.0"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 59,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 16,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 5,
"top_contributor_share": 0.987
},
"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 99% of commits",
"points": 0.3,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 99
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "5 contributors",
"points": 6.8,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 5
}
}
],
"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": "moderate",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 69,
"inputs": {
"merged_prs": 405,
"open_issues": 106,
"closed_issues": 218,
"issue_closed_ratio": 0.673,
"closed_unmerged_prs": 42
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "67% of issues closed",
"points": 31.5,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 67
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "405/447 decided PRs merged",
"points": 34.7,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 405,
"decided": 447
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 5/17 approved changesets -- score normalized to 2",
"points": 3,
"status": "partial",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 66,
"inputs": {
"followers": 1190,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "CherryHQ",
"public_repos": 27,
"account_age_days": 622
},
"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": "1,190 followers of CherryHQ",
"points": 22.1,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 1190,
"login": "CherryHQ"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "27 public repos, account ~1 yr old",
"points": 13.9,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 27
}
},
{
"code": "account_age_years",
"params": {
"years": 1
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"github.com/CherryHQ/stella"
],
"ecosystems": "go",
"any_deprecated": false,
"min_days_since_publish": 2
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on go",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "go"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 2 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 2
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "112 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 112
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "excellent",
"name": "Engineering Quality",
"value": 96,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "excellent",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 94,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": true
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "4 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 4
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": ".golangci.yml",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yml"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 9.6,
"status": "met",
"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": "14 out of 14 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"topics": [
"ai-assistant",
"cli",
"context-management",
"feishu-bot",
"golang",
"llm",
"personal-assistant",
"qqbot",
"self-hosted",
"sqlite",
"telegram-bot",
"ai-agent",
"ai-partner",
"mcp",
"memory",
"multi-agent",
"multi-user",
"sandbox",
"scheduler",
"wechat-bot"
],
"has_wiki": true,
"homepage": "https://stella.cherryai.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://stella.cherryai.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": "20 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 20
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "at_risk",
"name": "Security",
"value": 45,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "at_risk",
"name": "Security posture",
"note": null,
"notes": [],
"value": 44,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 18,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 0,
"scorecard_aggregate": 4.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": "14 out of 14 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 5/17 approved changesets -- score normalized to 2",
"points": 1.5,
"status": "partial",
"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": "update tool detected",
"points": 7.5,
"status": "met",
"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 26 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"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": "46 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "at_risk",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 859 resolved dependencies against OSV. This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"indirect_dependencies_free_of_known_advisories"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 859
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 48,
"inputs": {
"source": "osv",
"advisories": 64,
"affected_packages": 13,
"assessed_packages": 859,
"unassessed_packages": 0,
"affected_by_severity": "critical 2, high 4, moderate 1, low 2, unknown 4",
"direct_affected_packages": 6
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "6 affected: golang.org/x/crypto v0.50.0 (critical 10.0), github.com/modelcontextprotocol/go-sdk v1.3.1 (high 8.1), golang.org/x/net v0.53.0 (moderate 6.5), +3 more",
"points": 4.4,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 6,
"packages": "golang.org/x/crypto v0.50.0 (critical 10.0), github.com/modelcontextprotocol/go-sdk v1.3.1 (high 8.1), golang.org/x/net v0.53.0 (moderate 6.5)"
}
},
{
"code": "advisories_affected_more",
"params": {
"count": 3
}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "transitive set not separable from development and test dependencies in this scope",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_scope_not_separable",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "2 advisory-carrying package(s) unaddressed past 90 days; oldest published 126 days ago",
"points": 31.3,
"status": "partial",
"details": [
{
"code": "advisories_stale",
"params": {
"days": 90,
"count": 2,
"oldest": 126
}
}
],
"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": 859,
"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": 3
},
"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": "good",
"name": "AI Readiness",
"value": 79,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "good",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 79,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.64,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md",
"api/AGENTS.md",
"api/CLAUDE.md",
"internal/server/AGENTS.md",
"internal/server/CLAUDE.md",
"web/AGENTS.md",
"web/CLAUDE.md"
],
"agent_instruction_max_bytes": 6707
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "AGENTS.md, CLAUDE.md, api/AGENTS.md, api/CLAUDE.md, internal/server/AGENTS.md, internal/server/CLAUDE.md, web/AGENTS.md, web/CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "AGENTS.md, CLAUDE.md, api/AGENTS.md, api/CLAUDE.md, internal/server/AGENTS.md, internal/server/CLAUDE.md, web/AGENTS.md, web/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": "64 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 34.1,
"status": "partial",
"details": [
{
"code": "legible_history",
"params": {
"legible": 64,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 78,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"go.sum",
"pnpm-lock.yaml"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [
"mise.toml"
],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"web/tsconfig.json"
],
"agent_commit_share": 0.03,
"toolchain_manifests": [
"go.mod"
],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "mise.toml",
"points": 18,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "mise.toml"
}
}
],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": ".golangci.yml",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".golangci.yml"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "web/tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "web/tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Dockerfile, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "3 of the last 100 commits agent-authored or agent-credited",
"points": 6,
"status": "partial",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 3,
"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 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "Go",
"largest_source_bytes": 177056,
"source_files_sampled": 1540,
"oversized_source_files": 4
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Go (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Go"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "4/1540 source files over 60KB",
"points": 54.9,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 1540,
"oversized": 4
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "moderate",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 60,
"inputs": {
"example_dirs": [],
"has_mcp_signal": true,
"api_schema_files": [
"api/spec/openapi.yaml"
]
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": "api/spec/openapi.yaml",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "api/spec/openapi.yaml"
}
}
],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 20,
"status": "met",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-07-24T04:52:10.134121Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/c/CherryHQ/stella.svg",
"full_name": "CherryHQ/stella",
"license_state": "standard",
"license_spdx": "AGPL-3.0"
}