Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 18014,
"has_wiki": false,
"homepage": null,
"languages": {
"CSS": 12095,
"HTML": 322,
"Shell": 97250,
"Python": 3192,
"JavaScript": 180908,
"TypeScript": 18165667
},
"pushed_at": "2026-07-24T00:58:07Z",
"created_at": "2026-02-15T09:48:08Z",
"owner_type": "User",
"updated_at": "2026-07-24T00:57:05Z",
"description": null,
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "main",
"license_spdx_raw": "MIT",
"primary_language": "TypeScript",
"significant_languages": [
"TypeScript"
]
},
"owner": {
"blog": "http://www.isolation.se",
"name": "Markus Lassfolk",
"type": "User",
"login": "markus-lassfolk",
"company": "Truesec",
"location": "Sweden",
"followers": 14,
"avatar_url": "https://avatars.githubusercontent.com/u/3661143?v=4",
"created_at": "2013-02-21T16:16:44Z",
"is_verified": null,
"public_repos": 35,
"account_age_days": 4901
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v2026.7.222",
"kind": "patch",
"published_at": "2026-07-19T06:20:03Z"
},
{
"tag": "v2026.7.221",
"kind": "patch",
"published_at": "2026-07-17T06:42:54Z"
},
{
"tag": "v2026.7.220",
"kind": "patch",
"published_at": "2026-07-16T13:24:39Z"
},
{
"tag": "v2026.7.219",
"kind": "patch",
"published_at": "2026-07-15T10:14:11Z"
},
{
"tag": "v2026.7.218",
"kind": "patch",
"published_at": "2026-07-14T11:26:09Z"
},
{
"tag": "v2026.7.217",
"kind": "patch",
"published_at": "2026-07-14T09:14:52Z"
},
{
"tag": "v2026.7.216",
"kind": "patch",
"published_at": "2026-07-14T05:48:06Z"
},
{
"tag": "v2026.7.215",
"kind": "patch",
"published_at": "2026-07-13T18:53:56Z"
},
{
"tag": "v2026.7.214",
"kind": "patch",
"published_at": "2026-07-12T10:09:05Z"
},
{
"tag": "v2026.7.212",
"kind": "patch",
"published_at": "2026-07-11T21:15:15Z"
},
{
"tag": "v2026.7.211",
"kind": "patch",
"published_at": "2026-07-11T07:49:19Z"
},
{
"tag": "v2026.7.208",
"kind": "patch",
"published_at": "2026-07-10T21:53:55Z"
},
{
"tag": "v2026.7.197",
"kind": "patch",
"published_at": "2026-07-09T23:50:09Z"
},
{
"tag": "v2026.7.172",
"kind": "patch",
"published_at": "2026-07-09T11:53:16Z"
},
{
"tag": "v2026.7.171",
"kind": "patch",
"published_at": "2026-07-08T15:56:36Z"
},
{
"tag": "v2026.7.170",
"kind": "patch",
"published_at": "2026-07-08T12:44:05Z"
},
{
"tag": "v2026.7.61",
"kind": "patch",
"published_at": "2026-07-05T21:20:47Z"
},
{
"tag": "v2026.7.59",
"kind": "patch",
"published_at": "2026-07-05T19:18:13Z"
},
{
"tag": "v2026.7.58",
"kind": "patch",
"published_at": "2026-07-05T18:58:30Z"
},
{
"tag": "v2026.7.57",
"kind": "patch",
"published_at": "2026-07-05T17:23:31Z"
},
{
"tag": "v2026.7.56",
"kind": "patch",
"published_at": "2026-07-05T15:01:20Z"
},
{
"tag": "v2026.7.55",
"kind": "patch",
"published_at": "2026-07-05T14:36:11Z"
},
{
"tag": "v2026.7.54",
"kind": "patch",
"published_at": "2026-07-05T14:29:03Z"
},
{
"tag": "v2026.7.53",
"kind": "patch",
"published_at": "2026-07-05T13:45:42Z"
},
{
"tag": "v2026.7.52",
"kind": "patch",
"published_at": "2026-07-05T13:35:09Z"
},
{
"tag": "v2026.7.51",
"kind": "patch",
"published_at": "2026-07-05T13:20:12Z"
},
{
"tag": "v2026.7.50",
"kind": "patch",
"published_at": "2026-07-05T11:12:56Z"
},
{
"tag": "v2026.7.33",
"kind": "patch",
"published_at": "2026-07-03T16:43:38Z"
},
{
"tag": "v2026.7.32",
"kind": "patch",
"published_at": "2026-07-03T15:53:46Z"
},
{
"tag": "v2026.7.31",
"kind": "patch",
"published_at": "2026-07-03T10:09:21Z"
},
{
"tag": "v2026.7.30",
"kind": "patch",
"published_at": "2026-07-03T09:47:43Z"
},
{
"tag": "v2026.6.292",
"kind": "patch",
"published_at": "2026-06-29T17:07:49Z"
},
{
"tag": "v2026.6.291",
"kind": "patch",
"published_at": "2026-06-29T08:51:05Z"
},
{
"tag": "v2026.6.290",
"kind": "patch",
"published_at": "2026-06-29T05:34:03Z"
},
{
"tag": "v2026.6.276",
"kind": "patch",
"published_at": "2026-06-27T15:59:09Z"
},
{
"tag": "v2026.6.275",
"kind": "patch",
"published_at": "2026-06-27T15:43:34Z"
},
{
"tag": "v2026.6.273",
"kind": "patch",
"published_at": "2026-06-27T15:24:47Z"
},
{
"tag": "v2026.6.272",
"kind": "patch",
"published_at": "2026-06-27T14:39:33Z"
},
{
"tag": "v2026.6.270",
"kind": "patch",
"published_at": "2026-06-27T12:55:53Z"
},
{
"tag": "v2026.6.261",
"kind": "patch",
"published_at": "2026-06-26T19:41:07Z"
},
{
"tag": "v2026.6.260",
"kind": "patch",
"published_at": "2026-06-26T08:09:45Z"
},
{
"tag": "v2026.6.259",
"kind": "patch",
"published_at": "2026-06-25T20:33:03Z"
},
{
"tag": "v2026.6.258",
"kind": "patch",
"published_at": "2026-06-25T18:08:43Z"
},
{
"tag": "v2026.6.256",
"kind": "patch",
"published_at": "2026-06-25T15:28:35Z"
},
{
"tag": "v2026.6.250",
"kind": "patch",
"published_at": "2026-06-25T06:44:28Z"
},
{
"tag": "v2026.6.241",
"kind": "patch",
"published_at": "2026-06-24T14:26:45Z"
},
{
"tag": "v2026.6.240",
"kind": "patch",
"published_at": "2026-06-24T10:17:34Z"
},
{
"tag": "v2026.6.171",
"kind": "patch",
"published_at": "2026-06-24T09:08:50Z"
},
{
"tag": "v2026.6.170",
"kind": "patch",
"published_at": "2026-06-16T22:58:28Z"
},
{
"tag": "v2026.6.161",
"kind": "patch",
"published_at": "2026-06-16T21:14:15Z"
},
{
"tag": "v2026.6.160",
"kind": "patch",
"published_at": "2026-06-16T18:05:45Z"
},
{
"tag": "v2026.6.55",
"kind": "patch",
"published_at": "2026-06-05T21:52:27Z"
},
{
"tag": "v2026.6.52",
"kind": "patch",
"published_at": "2026-06-05T13:23:43Z"
},
{
"tag": "v2026.6.41",
"kind": "patch",
"published_at": "2026-06-04T22:12:33Z"
},
{
"tag": "v2026.6.40",
"kind": "patch",
"published_at": "2026-06-04T05:12:56Z"
},
{
"tag": "v2026.6.21",
"kind": "patch",
"published_at": "2026-06-02T21:24:34Z"
},
{
"tag": "v2026.6.20",
"kind": "patch",
"published_at": "2026-06-02T18:24:52Z"
},
{
"tag": "v2026.6.10",
"kind": "patch",
"published_at": "2026-06-01T21:29:17Z"
},
{
"tag": "v2026.5.311",
"kind": "patch",
"published_at": "2026-05-31T22:52:27Z"
},
{
"tag": "v2026.5.310",
"kind": "patch",
"published_at": "2026-05-31T20:47:48Z"
},
{
"tag": "v2026.5.280",
"kind": "patch",
"published_at": "2026-05-28T21:06:25Z"
},
{
"tag": "2026.5.280",
"kind": "patch",
"published_at": "2026-05-28T20:59:00Z"
},
{
"tag": "v2026.5.242",
"kind": "patch",
"published_at": "2026-05-24T16:58:23Z"
},
{
"tag": "v2026.5.241",
"kind": "patch",
"published_at": "2026-05-24T16:31:18Z"
},
{
"tag": "v2026.5.240",
"kind": "patch",
"published_at": "2026-05-24T09:29:57Z"
},
{
"tag": "v2026.5.190",
"kind": "patch",
"published_at": "2026-05-19T14:45:44Z"
},
{
"tag": "v2026.5.101",
"kind": "patch",
"published_at": "2026-05-10T20:46:16Z"
},
{
"tag": "v2026.5.100",
"kind": "patch",
"published_at": "2026-05-10T15:13:18Z"
},
{
"tag": "v2026.5.94",
"kind": "patch",
"published_at": "2026-05-09T14:03:34Z"
},
{
"tag": "v2026.5.92",
"kind": "patch",
"published_at": "2026-05-09T07:37:19Z"
},
{
"tag": "v2026.5.81",
"kind": "patch",
"published_at": "2026-05-08T22:15:47Z"
},
{
"tag": "v2026.5.80",
"kind": "patch",
"published_at": "2026-05-08T20:32:45Z"
},
{
"tag": "v2026.5.70",
"kind": "patch",
"published_at": "2026-05-07T22:43:28Z"
},
{
"tag": "v2026.5.64",
"kind": "patch",
"published_at": "2026-05-06T13:26:17Z"
},
{
"tag": "v2026.5.61",
"kind": "patch",
"published_at": "2026-05-06T11:46:28Z"
},
{
"tag": "v2026.5.60",
"kind": "patch",
"published_at": "2026-05-06T08:20:26Z"
},
{
"tag": "v2026.4.273",
"kind": "patch",
"published_at": "2026-04-27T20:06:09Z"
},
{
"tag": "v2026.4.272",
"kind": "patch",
"published_at": "2026-04-27T18:36:55Z"
},
{
"tag": "v2026.4.271",
"kind": "patch",
"published_at": "2026-04-27T06:41:41Z"
},
{
"tag": "v2026.4.270",
"kind": "patch",
"published_at": "2026-04-26T22:22:32Z"
},
{
"tag": "v2026.4.260",
"kind": "patch",
"published_at": "2026-04-26T20:34:41Z"
},
{
"tag": "v2026.4.141",
"kind": "patch",
"published_at": "2026-04-14T07:46:57Z"
},
{
"tag": "v2026.4.140",
"kind": "patch",
"published_at": "2026-04-14T06:18:05Z"
},
{
"tag": "v2026.4.61",
"kind": "patch",
"published_at": "2026-04-06T20:33:18Z"
},
{
"tag": "v2026.4.60",
"kind": "patch",
"published_at": "2026-04-06T09:05:31Z"
},
{
"tag": "v2026.4.52",
"kind": "patch",
"published_at": "2026-04-05T18:54:33Z"
},
{
"tag": "v2026.4.51",
"kind": "patch",
"published_at": "2026-04-05T09:58:28Z"
},
{
"tag": "v2026.4.40",
"kind": "patch",
"published_at": "2026-04-04T20:39:37Z"
},
{
"tag": "v2026.4.38",
"kind": "patch",
"published_at": "2026-04-03T22:23:12Z"
},
{
"tag": "v2026.4.36",
"kind": "patch",
"published_at": "2026-04-03T20:03:30Z"
},
{
"tag": "v2026.4.35",
"kind": "patch",
"published_at": "2026-04-03T19:49:40Z"
},
{
"tag": "v2026.4.33",
"kind": "patch",
"published_at": "2026-04-03T15:10:09Z"
},
{
"tag": "v2026.4.32",
"kind": "patch",
"published_at": "2026-04-03T13:48:47Z"
},
{
"tag": "v2026.4.31",
"kind": "patch",
"published_at": "2026-04-03T10:29:27Z"
},
{
"tag": "v2026.4.30",
"kind": "patch",
"published_at": "2026-04-03T09:35:53Z"
},
{
"tag": "v2026.4.21",
"kind": "patch",
"published_at": "2026-04-02T18:40:57Z"
},
{
"tag": "v2026.4.20",
"kind": "patch",
"published_at": "2026-04-02T12:55:33Z"
},
{
"tag": "v2026.4.12",
"kind": "patch",
"published_at": "2026-04-01T20:28:45Z"
},
{
"tag": "v2026.4.11",
"kind": "patch",
"published_at": "2026-04-01T11:52:27Z"
},
{
"tag": "v2026.4.10",
"kind": "patch",
"published_at": "2026-04-01T10:25:55Z"
}
],
"recent_commits": [
{
"oid": "4848eff563f0fea027a08a0d2589738303c5e8b6",
"body": "…2) (#2166)\n\n* chore(deps): bump the minor-and-patch group\n\n---\nupdated-dependencies:\n- dependency-name: \"@biomejs/biome\"\n dependency-version: 2.5.4\n dependency-type: direct:development\n update-type: version-update:semver-patch\n dependency-group: minor-and-patch\n- dependency-name: knip\n depende\n[…]\ned-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Ralph <ralph@openclaw.dev>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump knip, tsdown, and rolldown binding (hold biome 2.5.…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-24T00:57:00Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "58cb6490429f3bc8ded6a86ef15196b3b39a3b28",
"body": "---\nupdated-dependencies:\n- dependency-name: actions/setup-node\n dependency-version: '7'\n dependency-type: direct:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/setup-node from 6 to 7 (#2165)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-24T00:36:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c7973a2e51d077ba22a7ecc9d689c91694a1f6d2",
"body": "…81) (#2182)\n\n* feat: autonomous dreaming control plane + two-phase reload (#2169, #2181)\n\nAdd candidate/shadow dream runs with machine promote/rollback, unified Dream\ncompose facade, prevalence/permission/steering/ROI/outcome gates, OCC on\nfacts, and non-blocking two-phase plugin activation on relo\n[…]\n\n- runDream must not attempt promoted → failed on post-promote metrics throws.\n- evaluateDreamOutcome must fail-close on asymmetric signalSource.\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "feat: autonomous dreaming closed loop (#2169) + two-phase reload (#21…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-24T00:35:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5179d55e47bb0d7c6cffdecdc2ad09193e2afadb",
"body": "* feat: fill loom CLI command parity gaps\n\n* Fix Loom CLI parity checks\n\n---------\n\nCo-authored-by: Armor Build Steward <armor@truesec.com>",
"is_bot": false,
"headline": "feat: fill Loom CLI command parity gaps (#2164)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-24T00:17:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9902f34838e1f3f89fa64ad245b6f6cc4376f019",
"body": "… (#2163)\n\n* feat: implement The Loom — evidence, belief, open-loop & continuity layer (Epic #2150)\n\nAdds an agent-native continuity, belief, evidence, and open-loop operating\nlayer on top of hybrid-memory, disabled by default (loom.enabled: false).\nImplements all open Loom issues in one change set:\n[…]\n tests pass.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_016tGtKx5SL4Z3byK1HbrryG\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: implement The Loom (Epic #2150) — agent-native continuity layer…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-19T06:18:37Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5fe361fbf423ac489ac86b90cff1c872b276cfd6",
"body": "- #2141: maintenance-nightly could stall forever on a single hung step\n (e.g. enrich-entities) past its heartbeat, with no terminal exit\n ledger, because the orchestrator's per-run time budget was only\n checked between steps, not while one was in flight. Add a hard\n per-step watchdog (default 30\n[…]\ns docs/UPGRADE-PLUGIN.md, whose body had been\n accidentally repeated in full.\n\n\nClaude-Session: https://claude.ai/code/session_01YKDVPL6XRSXTKNPpwyQtzf\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: resolve open issues #2141-#2143, bump to 2026.7.221",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-17T06:41:35Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "6187a334b453c68fd14dc2fb84535b65064f4f46",
"body": "…20 (#2140)\n\n* fix: resolve 5 open production issues (#2135–#2139), bump to 2026.7.220\n\nFixes all five currently-open issues filed from live Maeve/Doris hosts, each\nat the root cause with regression tests, plus a full adversarial QA review of\nthis diff whose findings are closed in the same change.\n\n\n[…]\nmain green).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_014Aw9VhP1qZpcvdyAXTQzGD\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: resolve 5 open production issues (#2135–#2139), bump to 2026.7.2…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-16T13:22:51Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "491ca968c059124c8db535967ed2e7dcaa68edff",
"body": "### Motivation\n- The `serendipity_digest` agent tool previously accepted an `out` path and passed it straight to the writer, allowing an agent-invoked call to create/overwrite arbitrary files writable by the process.\n\n### Description\n- Removed the agent-facing `out` parameter from the `serendipity_d\n[…]\ngest` tool schema.\n- Reject incoming `out` arguments with `agent_digest_output_path_not_supported` before rendering/writing.\n- Preserve operator/CLI writer behavior elsewhere; add regression coverage.",
"is_bot": false,
"headline": "fix: block agent-facing serendipity_digest filesystem output",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-15T20:37:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3f37cfa4731bd235e54d4159e2ca930039f08ad4",
"body": "…7.219\n\nFixes all 9 currently-open issues filed from live Maeve/Doris production incidents, bumps the version to 2026.7.219, and closes 14 QA follow-up findings from a full review of the same diff (SQL-limit-before-filter edge starvation, dangling graph edges, hub-degree-cap default mismatch, missing expires_at filters, unguarded file writes, upgrade-script rollback/cleanup gaps, and more).\n\nCloses #2125, #2126, #2127, #2128, #2129, #2130, #2131, #2132, #2133.",
"is_bot": false,
"headline": "fix: resolve 9 open production issues from Maeve/Doris, bump to 2026.…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-15T10:12:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2845e91ccbfaf71f48e4d9c426ff6802579cbb59",
"body": "…119) (#2122)\n\nAdds a dedicated SerendipityStore, seven serendipity_* agent tools, a deterministic decision policy, a TTL-bounded deferred backlog with heartbeat resurfacing and an opt-in Level-4 cron sweep, promotion to goals/tasks/Skill Workshop proposals, a compact policy-summary injection, a hybrid-mem serendipity CLI, a pending-review digest section, config + manifest schema, docs, and tests. Disabled by default; the plugin surfaces findings and never edits code.\n\nCloses #2119",
"is_bot": false,
"headline": "feat: add Serendipity Protocol for bounded proactive improvements (#2…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T15:27:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1afa613d576f2e52d62b6ba759ac911cef670dfa",
"body": "…law peer (#2123)\n\nDeleted an unused pnpm-lock.yaml (this repo is npm-only) that Dependabot was scanning as if live, closing ~11 alerts tied to it. Refreshed the locally-resolved openclaw peer from 2026.6.9 to 2026.7.1 (still within the declared >=2026.5.0 <2027 range) to pick up upstream fixes for the remaining openclaw-authored advisories.",
"is_bot": false,
"headline": "fix(security): remove orphaned pnpm-lock.yaml, refresh resolved openc…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T15:23:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ac94823854f8d1a58a21e1cc83960319f616e374",
"body": "lint-staged@15.5.2 resolved yaml@2.8.2, vulnerable to a stack-overflow DoS via deeply nested YAML collections (GHSA-48c2-rrv3-qjmp, moderate). Fixed via an overrides pin to >=2.8.3, which already satisfies lint-staged's own declared range. Dev-tooling-only exposure - root package.json is never published.",
"is_bot": false,
"headline": "fix(security): pin transitive yaml >=2.8.3 at repo root (#2121)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T15:00:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2f53dfb03c9e5559a98906b795873d5d803bf538",
"body": "@sinclair/typebox, openai, tsdown within-range refreshes; knip 5->6.26.0; @types/node 25->26.1.1 (plugin + graph-app); commander 13->15.0.0; typescript 5.9->7.0.2 (plugin + graph-app, including the missing graph-app vite-env.d.ts ambient-types file). graphql 16->17 investigated and intentionally lef\n[…]\nraphql-sse peer ranges). Each bump verified in isolation: tsc --noEmit, typecheck:gate, lint, format:check, build, and full test suite (9727 plugin tests + 18 graph-app tests) all green before commit.",
"is_bot": false,
"headline": "chore(deps): verified dependency version bumps (#2120)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T13:49:29Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7797b0f7401e0fd0f4edb3f55cbf2928330b1dbe",
"body": "…e installs (#2115, #2116, #2117)\n\nRoot-cause fixes for three production-upgrade issues from the Maeve/Doris 2026.7.217 rollout, plus a CI-correctness fix and version/packaging gates.\n\n#2115 - published version metadata drift: package.json is now the single source of truth for the release version, s\n[…]\nero test regressions (full 9727-test suite verified locally and in CI).\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01HpBafZ4f4KqAj9b6V2v3w3",
"is_bot": false,
"headline": "fix: sync version metadata, declare apache-arrow, quarantine duplicat…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T11:24:52Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "665fa1677f7a7717dcedddaf5a73224d2a63acfb",
"body": "Fixes three reload/teardown-lifecycle regressions reported from production logs:\n\n- #2111: reload gate no longer throws \"reload teardown did not drain before opening\n new databases\" on the full-teardown path; it recovers to a fresh open (pure\n decideReloadTeardownGate() helper + teardownTimeoutRec\n[…]\nfline\n endpoint logs at info instead of warn, and ages out pending reports after 14 days.\n\nVersion bumped to 2026.7.217 with changelog + release notes. Dedicated regression tests\nfor all three fixes.",
"is_bot": false,
"headline": "fix: reload/teardown lifecycle regressions (#2111, #2112, #2113) (#2114)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T09:13:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6250971162cd26efe391246a622c35019a6c9375",
"body": "Bumps extensions/memory-hybrid/package.json (and lockfile) to 2026.7.216\nand adds the matching CHANGELOG.md section and release-notes file for\nthe #2088-#2108 issue sweep merged in PR #2109, which had landed without\na version bump.\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore(release): 2026.7.216 — changelog, release notes, version bump",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T05:46:50Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "800b8d3fa684b142dc08a50a114d5093fbd1abbc",
"body": "* fix: implement fixes for open issues #2088, #2091, #2093, #2095, #2098, #2099\n\n- #2093: add by-category vectorless-fact breakdown to storage stats/reembed\n- #2088: smoke e2e gains --no-cleanup and verifies the auto-link pipeline\n- #2099: scope the legacy-key vault warning to relevant subcommands/-\n[…]\nompares each job\n against its own MAINTENANCE_STEPS guard interval (3x tolerance),\n agreeing with the rest of the maintenance health model.\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: resolve 11 open memory-hybrid issues (#2088-#2108)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-14T00:35:23Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "21832e6ddcd4fe50ef42a80287de139aacb814d0",
"body": "…failure (#2096) (#2101)\n\n* test: harden cron-job-bash-harness fixture dirs against silent mkdir failure (#2096)\n\nReplace unchecked spawnSync(\"mkdir\", [\"-p\", ...]) with mkdirSync(..., {\nrecursive: true }) so setup failures throw immediately instead of being\nsilently swallowed, and so the fixture no \n[…]\nreal session JSONL\n transcript through LLM extraction, dedupe, and storage against real\n FactsDB/VectorDB, including a re-run dedupe check.\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "test: harden cron-job-bash-harness fixture dirs against silent mkdir …",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-13T18:52:33Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1b0938d06f642b33fd459f346d34746f91cb3107",
"body": null,
"is_bot": true,
"headline": "chore(deps): bump the minor-and-patch group (#2102)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-13T05:31:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "56eac06d70fc8c8dd1ffa32b6555e595b14ff9fe",
"body": "… fix install downgrade bug (#2078)\n\nInsight synthesis now also reads the user's active goals (goal registry) and the assistant's durable identity reflections on the relationship, alongside the existing friction signals (valence, frustration, routines, patterns) — G#/I# evidence refs, new \"growth\" t\n[…]\nar \"refusing to downgrade\" issue (verify's exit code reflects it) and gives direction-correct cleanup guidance.\n\n713 test files / 9371 tests green, tsc/lint/verify:gate clean throughout.\n\nFixes #2077.",
"is_bot": false,
"headline": "feat(proactive-research): ground insight synthesis in goals/identity;…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-12T10:07:43Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b15c95710eb8581ff0c6b18a0f3ea0e5734ebef2",
"body": "Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01BYc23oZSxJhHmN8rx7Bjiq",
"is_bot": false,
"headline": "docs: add CLAUDE.md with codebase guidance for AI assistants",
"author_name": "Claude",
"author_login": "claude",
"committed_at": "2026-07-11T22:35:32Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "1f062ca355821326d4f6fc7c5355fae95d7559b2",
"body": "…1 update (#2076)",
"is_bot": true,
"headline": "chore(deps-dev): bump the npm_and_yarn group across 1 directory with …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-11T21:29:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6451454c149a88eb4d438bd2af521b117fbc68ed",
"body": "…v2026.7.212)\n\n* feat(memory-graph): real-time event backbone for live graph overlay (Phase 1)\n\nAdd an in-process memory-event bus so the whole write surface — not just\nGraphQL mutations — feeds the live Memory Graph visualization.\n\n- services/memory-events.ts: deferred, per-listener-isolated EventE\n[…]\noverlaps it.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01FpsAzEwys2MsgtcwNFVkLj\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(memory-graph): real-time event backbone for live graph overlay (…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-11T21:14:04Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9f26ec317b5f6f36c88ca6ff39571aa71941a7a1",
"body": "…s (v2026.7.211)\n\nThree-round /code-review pass restarted from main after PR #2065 merged:\n\n- getConnectedFactIds() scope-filter fix (memory_recall stepping-stone leak)\n- per-folder-context.ts CONTEXT.md scope leak\n- 6 raw process.exit() calls bypassing the CLI's in-process guard\n- getByCategory() m\n[…]\nide pattern sweep)\n\nEach fix has a stash-verified regression test. tsc clean, biome clean, full test suite passing throughout (4 pre-existing unrelated failures confirmed present on a clean baseline).",
"is_bot": false,
"headline": "fix: QA follow-up sweep — scope leak + process.exit + falsy-zero fixe…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-11T07:48:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ef25a323a12dffcf2284b0f6b267af874e4a35f9",
"body": "…brid (v2026.7.208)\n\nTen-batch QA sweep covering effectively the entire memory-hybrid plugin: cli/, services/, backends/, routes/, tools/, utils/, config/, setup/, lifecycle/, scripts/, benchmark/. Highlights: scope-isolation and traversal fixes across the GraphQL/MCP surfaces (unscoped BFS stepping\n[…]\nss-reporting hardening across long-running maintenance steps. Every fix carries a stash-verified regression test. Full details in CHANGELOG.md.\n\nhttps://claude.ai/code/session_01ErV7TkYVNgQxhVgETVrSje",
"is_bot": false,
"headline": "fix: QA follow-up sweep — correctness/security fixes across memory-hy…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-10T21:52:44Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c726a41309827ad3caffd6f684c69a7a10748cc1",
"body": "… (loop iterations 108-131)\n\nFixes correctness and security regressions found via iterative review across the memory-hybrid extension:\n\nSecurity/scope isolation:\n- search --scope without --scope-target silently searched all tenants\n- cmd-store's duplicate pre-check ignored the target scope, wrongly \n[…]\nways reported occurrence_count=1 regardless of true history\n\nEach fix includes a regression test verified via git-stash to fail on the pre-fix code, plus tsc/biome verification with zero new findings.",
"is_bot": false,
"headline": "fix: resolve 24 correctness/security regressions across memory-hybrid…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-09T23:49:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "08c9d193148c802766c39d54ae1a8520c8a2cde7",
"body": null,
"is_bot": false,
"headline": "chore: release 2026.7.172",
"author_name": "Maeve",
"author_login": null,
"committed_at": "2026-07-09T11:41:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "63a048f8e4816f7bf3e0ffa467eaef4825166047",
"body": "Squash merge PR #2059.",
"is_bot": false,
"headline": "fix: reregister reuse of closed DB handles",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-09T11:40:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f9c0e0b23a26938bd4f64f1faeb09933dc9a8a71",
"body": "Track reload teardown drain by donor generation, avoid reusing handles while donor teardown is still in flight, and suppress stale service/workboard paths after generation supersession.",
"is_bot": false,
"headline": "fix: reload teardown drain before DB reuse",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-09T11:31:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f20966dbcb704547ae58d60c5183949975241ebb",
"body": "…ry (#2056) (#2057)\n\n* fix: never install hybrid-mem cron jobs with implicit announce delivery (#2056)\n\nPlugin-owned hybrid-mem:* cron jobs no longer ship in the unsafe\n'sessionTarget=isolated + payload.kind=agentTurn + delivery.mode=announce'\nshape with no explicit delivery.channel and no delivery.\n[…]\nram' + '12345' as a safe dummy destination, or\n'mode=none' fallback).\n\nCloses #2056.\n\n* chore: align release metadata for 2026.7.171\n\n---------\n\nCo-authored-by: Armor Build Steward <armor@truesec.com>",
"is_bot": false,
"headline": "fix: never install hybrid-mem cron jobs with implicit announce delive…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-08T15:55:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "53a5ecd5def410f826897994ad6bff40230040b1",
"body": null,
"is_bot": false,
"headline": "fix: catch false-OK cron runs when harness never starts (#2054)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-08T12:42:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b8a9221e8c676e6d21a6d39b850c7a65cbbed5b7",
"body": "Bumps the minor-and-patch group in /extensions/memory-hybrid with 3 updates: [@lancedb/lancedb](https://github.com/lancedb/lancedb), [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) and [@rolldown/binding-linux-x64-gnu](https://github.com/rolldown/rolldown/tree/HE\n[…]\nion-update:semver-patch\n dependency-group: minor-and-patch\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump the minor-and-patch group (#2053)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-06T05:16:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2cb0a72a7acb9b5e594837b08a9e98db29b9ccc5",
"body": "…, verify drift, cron-health, doctor hangs) (#2052)\n\nRoot-cause fixes for #2046-#2051 plus a code-review follow-up pass. See CHANGELOG.md (2026.7.60, 2026.7.61) for full detail per issue.",
"is_bot": false,
"headline": "fix: resolve open issues #2046-#2051 (distill deadline, model routing…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T21:19:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4a452530a6fbb29f1c19d0bfdd5b81327689b400",
"body": "…, bump to 2026.7.59 (#2045)",
"is_bot": false,
"headline": "fix: close distill deadline-monitoring gap found in #2044 code review…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T19:17:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "96068998f8b27066c525e8afc8f45167df953235",
"body": "…bump to 2026.7.58 (#2044)",
"is_bot": false,
"headline": "fix: resolve open issue #2043 maintenance partial-failure semantics, …",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T18:57:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3c7f250c429a90c376a6388aef492821177de9f5",
"body": "…to 2026.7.57 (#2042)\n\n* fix: maintenance step verification timeouts under 300s harness, bump to 2026.7.57 (#2041)\n\nFixes #2041\n\nRoot cause: `maintenance step <name> --force --verbose` (the exact invocation\na verification harness runs per step) was still bounded only by the\norchestrator's 15-minute \n[…]\n in\n implicit-feedback.test.ts (inert in that file, but drifted from the new\n 240 default).\n\nCo-authored-by: Claude <noreply@anthropic.com>\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: maintenance step verification timeouts under 300s harness, bump …",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T17:22:27Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "5ca83d99db5cb8289c045739f4b241a27bc36fd2",
"body": "…ump to 2026.7.56 (#2040)\n\nFixes #2038\n\nRoot-cause investigation for #2038 found:\n- distill's heartbeat \"batch N\" counter increments on every retry, including\n a shrink-and-retry of the SAME block range when both primary and fallback\n models fail -- so \"batch 1, batch 2, batch 3\" in the logs looke\n[…]\n API (dated after the release notes that motivated the hypothesis)\nthat -highspeed matches full M2.7's 262k/128k ceiling, so no catalog change\nwas made.\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: distill/enrich-entities/extract-implicit progress diagnostics, b…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T15:00:10Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "4ef54c8a8129d32fbaca8a7ba416ee0c2810f670",
"body": "…55 (#2039)\n\nRound 5 of the review loop found the per-session and per-chunk progress-log\nthrottle call sites (added across #2032 and its chunk-loop follow-up) each\nre-implemented the same throttle logic independently. Both now share a\nsingle logThrottledObserverProgress() closure. No behavior change.\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: dedupe passive-observer progress-log throttle, bump to 2026.7.…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T14:35:07Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "65751035727850e93eb1ae0d7c93c85dda093489",
"body": "…ump to 2026.7.54 (#2037)",
"is_bot": false,
"headline": "fix: re-check passive-observer progress throttle inside chunk loop, b…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T14:28:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a5af9fccb3fd520a72719b49ad5a7f5e06353306",
"body": "…7.53 (#2036)\n\n* chore: remove pre-existing dead import in register-maintenance-orchestrator.ts\n\nreadStepGuardTimestampMs was imported but never used (only stepGuardEligible\nis referenced) — flagged by a round-3 review pass while iterating on the\n#2031-#2033 maintenance-orchestrator work.\n\n* fix: ca\n[…]\nll through to\n the generic exit code instead of the specific diagnostic message.\n- Removed a pre-existing unused import found along the way.\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: catch partial --include skips and deferred status, bump to 2026.…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T13:44:31Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0d79fc255b2e98853e158f43218f571dc1cd9893",
"body": "…to 2026.7.52 (#2035)\n\nSecond review pass over the #2031-#2033 maintenance-orchestrator work found\nand fixed:\n- --include/--force skip-check missed a wrong-tier or misspelled step name\n (the orchestrator drops it before producing any result, so the check\n silently never fired).\n- --max-runtime-min\n[…]\nmaintenance status`'s lock listing can't drift\nout of sync, and corrected the --verbose option text (locks are always\nshown, not gated behind the flag).\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: close remaining maintenance-orchestrator gaps from review, bump …",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T13:34:07Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3375f50bf498c880ca88a5d9337daeb09951a0db",
"body": "…6.7.51 (#2034)\n\n- maintenance step <name> --force (and cycle/nightly/full --include --force)\n now exits non-zero when the selected step didn't actually execute\n (locked/gated/guarded), instead of silently reporting success (#2031).\n Lock files now carry pid/hostname owner metadata, and maintenan\n[…]\ny\" while\n analyze-maintenance-logs has strict findings in the same window; it now\n distinguishes scheduler freshness from log/semantic health (#2033).\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: resolve maintenance orchestrator issues #2031-#2033, bump to 202…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T13:19:06Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "333145086b001fc36ccd636fcf8251d833ab51f8",
"body": "Combined root-cause fixes and features for the maintenance-pipeline cluster:\n\n- #2024 distill partial failure now surfaces the concrete batch cause (persisted to\n the job-run semanticReason and the step-runner throw); buildJobRunId ids sanitized.\n- #2025 analyze-maintenance-logs validates each HM_R\n[…]\nep <name>` runs one step in isolation.\n- #2029 verbose distill emits start/heartbeat/summary progress (counts only).\n\nBumps hybrid memory to 2026.7.50. Closes #2024, #2025, #2026, #2027, #2028, #2029.",
"is_bot": false,
"headline": "fix: resolve open maintenance issues #2024–#2029 (#2030)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-05T11:11:41Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9fcb7a4f5bd5a92aefa6c0194a49d32ae14488a3",
"body": "Fixes the three problems in #2021 for extensions-canonical hosts:\n\n- hybrid-mem upgrade no longer 404s: standalone upgrade + manual-upgrade\n fallbacks now use the published openclaw-hybrid-memory-install package\n instead of the never-published openclaw-hybrid-mem-upgrade.\n- hybrid-mem upgrade and \n[…]\n`\n (which recreates the duplicate); points at verify --fix / upgrade + rm -rf.\n- Docs: blessed extensions-canonical upgrade section + troubleshooting row.\n- Version bumped to 2026.7.33.\n\nCloses #2021",
"is_bot": false,
"headline": "fix(upgrade): repair extensions-canonical upgrade path (#2021) (#2023)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-03T16:42:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bec9e1d48c37b66dfa9afc3ed1cbba30326677ea",
"body": "The durable-rule router already classified operational guidance (GitHub/PR/CI\nrules -> AGENTS.md, wrapper/host/local-path rules -> TOOLS.md), but\nresolvePipelineProposalTarget() only recorded the routing suggestion as\nadvisory. Every pipeline-generated rule (dream-cycle, self-correction,\nreinforceme\n[…]\nretargeting and the no-override\n behavior.\n- Bump hybrid memory to 2026.7.32.\n\n\nClaude-Session: https://claude.ai/code/session_011pqbBipSUCpvbhCsm7scJj\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix: route operational persona proposals to AGENTS.md/TOOLS.md (#2022)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-03T15:52:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "7a0aaba523af78520d0bcf71ec214a452852f3e4",
"body": "The v2026.7.30 npm publish never completed (failed on the index-version-cli.ts files-allowlist bug, fixed in #2019). Cuts a fresh same-day revision, 2026.7.31, carrying the fix, so main CI green -> tag -> release -> npm publish can complete end-to-end.",
"is_bot": false,
"headline": "chore(release): bump hybrid memory to 2026.7.31 (#2020)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-03T10:08:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fe117bdc33809fa1722a2a97f56eca08e5164de7",
"body": "…019)\n\nindex.ts re-exports isHybridMemVersionOnlyInvocation from ./index-version-cli.js (added with the hybrid-mem --version fast-path in #2013), but index-version-cli.ts was missing from package.json `files`, so `npm run verify:publish` failed and the v2026.7.30 npm publish was blocked. Add it to the files allowlist.",
"is_bot": false,
"headline": "fix(release): include index-version-cli.ts in npm files allowlist (#2…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-03T09:59:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "683a3f498334d5f615e126fa068111ae645d2b9f",
"body": "…xt-engine fixes (#2018)\n\nSquash-merge of #2018 (supersedes #2017). Resolves the #2017 merge conflicts while preserving main's #2016 QA fixes, layers on the PR-unique work, and ports the contacts extras.\n\n- Structured contact profiles (#2014): phone/role/board fields, profile enrichment, prefix NER \n[…]\ng fixes: mergeContacts fact FK repoint; storage-repair-pipeline arg refs; entity-enrichment option name; duplicate ContactsConfig imports; double registration/enrichment.\n- Release: bump to 2026.7.30.",
"is_bot": false,
"headline": "feat: storage repair pipeline, structured contact profiles, and conte…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-03T09:46:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a471c5450e3e6ca61a6eb7fce769eb0c75ca4bd9",
"body": "… goal stewardship, dashboard, and CLI (#2016)",
"is_bot": false,
"headline": "fix: extensive QA review fixes across credential vault, memory vault,…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-02T19:49:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "65a113551fabcf8c7ffd590770c1463c075f99e2",
"body": "* feat: structured contact profile enrichment (#2014)\n\nExtends the existing NER entity layer (organizations, contacts,\nfact_entity_mentions, org_fact_links) so contacts carry more than a bare\ndisplay_name:\n\n- Schema: contacts gains phone, mobile, role, board_status, source,\n source_date, updated_by\n[…]\negex needed.\n\nCo-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>\nClaude-Session: https://claude.ai/code/session_01SAoELRZi4gGGF8emqcSkQb\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat: structured contact profile enrichment (#2014) (#2015)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-02T06:14:00Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "8c5e31c1671c3b1af43a6d4ce2f4a47f3eb2aca1",
"body": "…(#2013)\n\n- ContextEngine registration: pass api.registerContextEngine during plugin registration, with fallback to openclaw/plugin-sdk. The previous lookup on openclaw/plugin-sdk/core silently skipped registration on OpenClaw 2026.6+.\n- Add hybrid-mem --version (and --version --json) (#2012), refac\n[…]\n like upgrade. --version is now handled by a dedicated argv fast path that skips config parsing and DB bootstrap entirely.\n- Fix two latent type errors introduced earlier in this branch.\n\nCloses #2012",
"is_bot": false,
"headline": "fix: ContextEngine registration and add hybrid-mem --version (#2012) …",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-07-02T03:06:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3e20ebaed1ca51a3e2ae5d80b6f5357a1cbd75fe",
"body": "## Summary\n\n- **#2008:** Reconcile stale legacy install-index sidecar entries after upgrade; sync npm-project pins; new `hybrid-mem install-index` CLI; wired into upgrade/install/verify --fix\n- **#2009:** Treat healthy enrich-entities bounded catch-up as success in maintenance, CLI, and cron guard validation\n\nRelease version: **2026.6.292**\n\nFixes #2008\nFixes #2009",
"is_bot": false,
"headline": "fix: resolve open issues #2008 and #2009 (#2011)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-29T17:06:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0eec1b87c9c2d7c73a39b2f788f66978e86c1734",
"body": "## Summary\n- Add `completeClassifyJsonArray` with MiniMax `thinkingMode: disabled`, higher output budget, thinking-block stripping, and parse/length retry for `classifyBatch` and category discovery\n- Harden `stripThinkingWrapperBlocks` for unclosed thinking tags and JSON tails after truncated reasoning\n- Reject classify batches when JSON array length mismatches fact count\n- Release **2026.6.291** with changelog and release notes\n\nFixes #2006",
"is_bot": false,
"headline": "fix(auto-classify): harden MiniMax thinking-only output (#2006)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-29T08:50:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "04e48e198dde89fc519c200b315cb8a89216490a",
"body": "Persona rule router (#2002) and aligned package manifest versions.",
"is_bot": false,
"headline": "chore(release): bump hybrid memory to 2026.6.290",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-29T05:32:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "11d944fbbfe808c783f9ed421e66d883f446db7b",
"body": "Closes #2002",
"is_bot": false,
"headline": "feat: add durable-rule router for persona proposals (#2002)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-29T05:31:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "201874b92ad7060d86a7c40736b86fd920176a83",
"body": "Bumps [actions/cache](https://github.com/actions/cache) from 5 to 6.\n- [Release notes](https://github.com/actions/cache/releases)\n- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)\n- [Commits](https://github.com/actions/cache/compare/v5...v6)\n\n---\nupdated-dependencies:\n- dependenc\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/cache from 5 to 6 (#2003)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-29T05:25:20Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c5435f73042aeda9f7954cbd7c55f2b7f2928ffc",
"body": "… updates (#2004)\n\nBumps the minor-and-patch group with 6 updates in the /extensions/memory-hybrid directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.9.3` | `25.9.4` |\n| [@biomejs/biome](https://githu\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump the minor-and-patch group across 1 directory with 7…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-29T05:24:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3121e7815fd988fcc01ff730458938b007348d02",
"body": "Refuse upgrades when target schema rejects config, validate required\nproperties, use openclaw-hybrid-mem-upgrade, and skip cron normalization\nin upgrade-only mode when config may be incomplete.",
"is_bot": false,
"headline": "fix: harden upgrade preflight and standalone upgrade path",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-29T05:09:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1a13417039394cd173c648774d8a6ba0e39d94a7",
"body": "…ap (#1999, #2000) (#2001)",
"is_bot": false,
"headline": "Fix goal index drift false positives and upgrade schema-drift bootstr…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-29T04:48:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5a5c6a71c63e3b811196e26760b6f121e26630b0",
"body": "…998)\n\nAdd missing coOccurrenceWeight, autoSupersede, and hubScorePenalty to\nopenclaw.plugin.json so Maeve-style configs pass gateway validation.\nWire plugin-graph-schema-parity tests into verify:gate to catch future drift.\n\nFixes #1997\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "Fix graph config schema drift (#1997) and add schema parity gate. (#1…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-27T15:58:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "aeb7dfcf810353f4d96e5014907fb930a89c6444",
"body": "Upgrade uses post-install pluginDir for npm→extensions layout; verify warns on dual copies; rollback cleans extensions install on failure.\n\nGraph: split autoLinkMinScore into strength + similarity threshold, embedding-gated semantic autolink, canonical RELATED_TO, autoSupersede contradictions, GraphRAG preset alignment, boot warnings.\n\nBump 2026.6.275.\n\nCloses #1989, #1993, #1994, #1995",
"is_bot": false,
"headline": "fix: upgrade pluginDir + graph autolink/recall config (#1989–#1995)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-27T15:42:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a17b0210ad0807acb169d08a45914b98096cd897",
"body": "* fix: Maeve production issues #1986–#1990 (atomic goals, index drift, error dedupe, upgrade path, wrapper scan)\n\n- Atomic writes for goal files and _index.json via atomicWriteFile\n- Persist corrupt-report ledger across gateway restarts; stable invalid_goal_registry_entry fingerprint\n- 24h dedupe wi\n[…]\nfy --fix warning removal, and scope 24h\nerror dedupe to invalid_goal_registry_entry only.\n\n---------\n\nCo-authored-by: Armor Build Steward <armor@truesec.com>\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix: Maeve production patches for #1986–#1990 (#1991)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-27T15:23:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0a8bddd848ef3fa357d22c7ad9ce5c7fc79ef69e",
"body": "…1–#1973)\n\nTighten Tool Search wrapper-args detection (sentinel-only, not bare {}), patch all memory/goal/active-task tools at registration, align tool-args-guard with entry guards, tighten maintenance-nightly legacy cron match, and add feature-gate cron tests.\n\nCloses #1971\nCloses #1972\nCloses #1973",
"is_bot": false,
"headline": "fix: wrapper-args QA, central tool patching, cron feature gates (#197…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-27T15:09:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "920bd30258c901013199cd8da271f71dcd82464a",
"body": "…atch (#1971–#1985)\n\nReliability batch for goals, active-tasks, memory store/recall, upgrade, and maintenance ops.\n\n- Active-task coherence repair, terminal status regression guard, memory_store projection order\n- Protected goal/active-task hook stages; npm upgrade pin rollback; verify/dashboard infra checks\n- Fixes for GitHub issues #1971–#1985\n\nVersion: 2026.6.272\n\nCloses #1971, #1972, #1973, #1976, #1977, #1978, #1979, #1980, #1981, #1982, #1983, #1985",
"is_bot": false,
"headline": "fix: active-task coherence, goals/tasks reliability, and open-issue b…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-27T14:38:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20c16fc7ee31507767e5db6bb7daceddd660d6bc",
"body": "…1975)\n\n* fix: verify --fix cron dedupe, optional job normalize, wrapper args (#1971–#1973)\n\nPrevent SQLite UNIQUE failures when maintenance-nightly exists by id only,\nnormalize standalone cron jobs under consolidated orchestrator mode, and\nsurface actionable errors when Tool Search drops memory_* t\n[…]\n_store handling.\n\n* chore(release): bump version to 2026.6.270\n\nDocument goals and active-tasks reliability fixes in CHANGELOG and release notes.\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "feat: harden goals and active-tasks recall, storage, and execution (#…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-27T12:54:49Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d8d84a1af3a7e524bff6f873942fec9477daf94a",
"body": "…#1969)\n\nFix Mission Control dashboard startup (`embeddingRegistry` destructuring), stop\n`hybrid-mem install` from writing OpenClaw-invalid `flushEveryCompaction`, strip\nlegacy keys on install, fix consolidation LLM client parameter, and bump to 2026.6.261.\n\nFixes #1968\nFixes #1969",
"is_bot": false,
"headline": "fix: dashboard startup, install config schema, consolidation (#1968, …",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-26T19:40:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "020050c7f55a09db2180e8c39141268966cd9fc0",
"body": "…m stash\n\nCherry-pick unmerged improvements: use source-scoped vectorless SLO when\n--source is set, require backlog cleared before stopReason completed, and\ntreat adaptive pressure from rate limits only (not batch failures).",
"is_bot": false,
"headline": "fix(enrichment): apply source-scoped SLO and completion semantics fro…",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-26T08:43:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8528fd77541b87e078c2cbdb69636e3954ade256",
"body": "Maintenance remediation and procedural memory fixes (#1955–#1967).",
"is_bot": false,
"headline": "chore(release): bump hybrid memory to 2026.6.260",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-26T08:08:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2ef1437aa60b1c7098cb8507587f686cbe42700a",
"body": "… (#1955–#1963) (#1964)\n\n* Fix maintenance observability, cron delivery, and provider fallbacks.\n\nAddresses open issues #1955–#1963: audit strict-errors mode, verification model resolution, extract-implicit ETA, contradiction backlog alerts, distill truncation handling, maintenance tick logging, cro\n[…]\n_found details, clarify\nfeedback-only tool contract in schema and SKILL, and add registerIfMissing\ngreenfield capture with taskPattern and steps.\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix: maintenance observability, cron delivery, and provider fallbacks…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-26T08:02:25Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0a24fbbb8c39a20456ef23e2a7b54e7a71aa7bf3",
"body": "… concurrency (#1953) (#1954)\n\n* fix(extract-implicit): cap trajectory LLM budget and run with bounded concurrency\n\nSequential trajectory analysis gave each call the full remaining wall-clock budget, so one slow or hung provider call could freeze the nightly run and starve the backlog. Use a 30s per\n[…]\nep LLM cooldown by remaining orchestrator time.\n\n* chore: bump version to 2026.6.259\n\n* chore: align openclaw-hybrid-memory-install to 2026.6.259\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix(extract-implicit): cap trajectory LLM budget and run with bounded…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-25T20:31:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f06c29d72cce043208e0322d58e64cb3e6b24b9f",
"body": "… #1950) (#1951)",
"is_bot": false,
"headline": "fix: maintenance nightly exit codes + memory_store empty args (#1949,…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-25T18:07:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1e5f8065d4dfd04cd368603fcf5981e76e33de4f",
"body": "…1947) (#1948)\n\n* fix(distill): wire vectorCandidates into storeWithResult (#1947)\n\nPre-compute LanceDB neighbours during distill and pass them to the SQL dedupe\npolicy instead of relying on a separate hasDuplicate gate. Allow vector-side\nskip for keyed project distillation facts that previously byp\n[…]\non Control token auth and GraphQL mutation safety, wire LanceDB indexing\non GraphQL writes, and land QA fixes from full-repo review (2026.6.256).\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix(maintenance): project-state LWW + distill vector dedupe (#1945, #…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-25T15:27:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "99b79c7da6dfaa2a0e3df2419b0f542b62b22eb0",
"body": "…944)\n\nReplace invalid semver 2026.250 with 2026.6.250, add release notes and changelog, and update docs after removing the failed v2026.250 GitHub release.\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix(release): correct version to 2026.6.250 for valid npm publish (#1…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-25T06:43:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e7d734ac1428e8dd9373ecad2a38c5687fd2e1a7",
"body": "…ightly cron (#1942) (#1943)\n\n* fix(maintenance): stop degraded contradiction backlog from aborting nightly cron (#1942)\n\nTreat ambiguous-backlog monitoring as a non-blocking semantic=monitoring signal so resolve-contradictions no longer throws through the orchestrator, subsequent nightly steps keep\n[…]\n consecutive degraded threshold is reached so early monitoring runs do not map to degraded cron validation before the configured threshold trips.\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix(maintenance): stop degraded contradiction backlog from aborting n…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-25T06:30:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a9721d4746c6223c5ea2ca858b8f9d2de035d422",
"body": "…tup (#1938–#1940)\n\nFixes #1938, #1939, #1940\n\n- Restore gateway registration when memory tools context includes wal alongside bound helpers\n- Declare memory_crystallize_restore in contracts.tools\n- Defer Workboard cold-start probe with retry/backoff and generation guard",
"is_bot": false,
"headline": "fix: 2026.6.241 hotfix for registration, contract, and Workboard star…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-24T14:25:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "716b1951970adcd38cba05384836f301cd6895a3",
"body": "…934)\n\n## Summary\n- Fix missing `writeFileSync` import in cron-guard that broke maintenance step guard persistence (#1934).\n- Add Maintenance Gate CI job and regression tests for guard round-trip / orchestrator skip behavior.\n- Clear full-tree `tsc --noEmit` errors so CI typecheck is enforceable aga\n[…]\n- Release **2026.6.240**.\n\n## Test plan\n- [x] Maintenance Gate CI (typecheck gate + guard/orchestrator tests)\n- [x] Full CI matrix (typecheck Node 22/24, lint, test)\n- [x] `tsc --noEmit` clean locally",
"is_bot": false,
"headline": "fix(maintenance): restore cron guard writes and enforce typecheck (#1…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-24T10:16:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f5935cdfbe5a555873caec11530996d59678be26",
"body": "Removes [tar](https://github.com/isaacs/node-tar). It's no longer used after updating ancestor dependency [openclaw](https://github.com/openclaw/openclaw). These dependencies need to be updated together.\n\n\nRemoves `tar`\n\nUpdates `openclaw` from 2026.6.6 to 2026.6.9\n- [Release notes](https://github.c\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump tar and openclaw in /extensions/memory-hybrid (#1932)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-24T09:17:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "84e7bc9009f94d1b18673ee13ea0a51af64b9888",
"body": "…1931)\n\nRemoves [undici](https://github.com/nodejs/undici). It's no longer used after updating ancestor dependency [openclaw](https://github.com/openclaw/openclaw). These dependencies need to be updated together.\n\n\nRemoves `undici`\n\nUpdates `openclaw` from 2026.6.6 to 2026.6.9\n- [Release notes](http\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump undici and openclaw in /extensions/memory-hybrid (#…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-24T09:14:27Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d76b9eb334e1f1d72740df286ef64c43937c957e",
"body": "Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/v6...v7)\n\n---\nupdated-dependenc\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump actions/checkout from 6 to 7 (#1930)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-24T09:11:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b3b3fe7f7bcce4b2edcddc7100207d9a9a72a649",
"body": "* fix(memory): repair recall timeline + episode search smoke\n\nFixes two failures observed in Maeve main session on 2026-06-21 while\ninvestigating gateway memory/RSS incidents:\n\n1. memory_search_episodes threw 'sanitizeFts5QueryForFacts is not defined'\n because backends/facts-db/episodes.ts referen\n[…]\ns passed, and describe cross-session empty timeline results without rendering \"session null\".\n\n---------\n\nCo-authored-by: OpenClaw Forge <forge@openclaw.dev>\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix(memory): repair recall timeline + episode search smoke (#1929)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-24T09:07:39Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cf1797a167d1146a0c3e9588d09a09e92466be77",
"body": "… (#1928)\n\n* fix(workboard): map OpenClaw 6.8 card API and unwrap create responses\n\nHybrid-memory sent column/description/tags/externalId to workboard.cards.*\nwhile OpenClaw 6.8 expects status/notes/labels/idempotencyKey. Successful\ncreates returned { card } but normalizeWorkboardCardResult did not \n[…]\nen card metadata typing for RPC cards.\n\n---------\n\nCo-authored-by: Markus Lassfolk <markus@lassfolk.se>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix(workboard): map OpenClaw 6.8 card API and unwrap create responses…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-24T09:02:44Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3d1886c15dd2c9683ec63073d85b6bc02a49fd3f",
"body": "… (#1925) (#1926)\n\n* fix(verify): resolve false positives for cron, workboard, and summary (#1925)\n\nExclude standalone plugin cron jobs from consolidated superseded detection\nso verify --fix no longer disables workshop-approval-reminder. Probe Workboard\nvia openclaw gateway call when HTTP /rpc/* is \n[…]\nacy endpoint to the notes\nfield when the url field cannot be updated, preventing data loss.\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>",
"is_bot": false,
"headline": "fix(verify): resolve false positives for cron, workboard, and summary…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T22:57:08Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "dd964994c325262634266e4976221d2739b411ea",
"body": "Promote #1923 cron-store fix from Unreleased and align plugin, manifest,\ninstaller, and docs to 2026.6.161.",
"is_bot": false,
"headline": "chore(release): bump version to 2026.6.161",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-16T21:12:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3e3734392f4398807c45f263ac2f240059f42af6",
"body": "* fix(cron): read/write OpenClaw SQLite cron store on 6.8+ hosts (#1923)\n\nVerify, install, and maintenance tooling targeted legacy jobs.json while OpenClaw\n2026.6.8+ persists cron in openclaw.sqlite, causing false negatives and fix loops.\nAdd a shared cron store helper with SQLite/JSON backend detec\n[…]\nncurrent gateway updates\nfrom being overwritten.\n\nBug: edcb017e-6c28-4a6f-a1ed-627254fcd5b1\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>",
"is_bot": false,
"headline": "fix(cron): verify/install use OpenClaw SQLite cron store (#1923) (#1924)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T19:35:50Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f71bd83bcacc53d26035540091becd97733e42c2",
"body": "Promote Epic #1918 changelog from Unreleased and align plugin, manifest, installer, and docs to 2026.6.160.",
"is_bot": false,
"headline": "chore(release): bump version to 2026.6.160",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-16T18:03:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "42a7e362345c0283979d09ec5f6041af314a2e0a",
"body": "… openclaw) (#1922)",
"is_bot": false,
"headline": "chore(ci): disable Security Scan workflow (transitive deps blocked on…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T17:46:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a49f9639c2fc3da7c52e4775d4eebe68cb0d9ca3",
"body": null,
"is_bot": false,
"headline": "feat: Epic #1918 ClawMem-inspired memory cycle (#1910–#1917) (#1920)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T16:50:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bc28bfdf2941eeefe7d92ca690801983e3554e92",
"body": "…ses (#1901–#1904) (#1919)\n\n* feat(memory): implement issues #1901–#1904 with risk mitigations and telemetry\n\nAdd hybrid/keyword recall modes, contradiction surfacing with nightly repair\nand store-time fallback, episode causal inference, and worker leases with\ntimezone-safe quiet windows. Preserve s\n[…]\nrts lease loss\n- Restore defaultRecallMode parser fallback to hybrid for multi-strategy RRF\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>",
"is_bot": false,
"headline": "feat(memory): hybrid recall, contradictions, causal links, worker lea…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T11:21:58Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "1b7cfcdfebc7e25c6395efe114461477605417db",
"body": "…(#1909)\n\n* fix: wire ?heapSnapshot=1 on /memory-diagnostics to v8.writeHeapSnapshot()\n\nRef #1897 — Phase 1 Option 1a.\n\nThe /memory-diagnostics route was always JSON-only. Operators had no way\nto capture a V8 heap snapshot without restarting the gateway with\n--inspect and racing the lifecycle. Issue\n[…]\nheapSnapshot=true are unaffected.\n\n---------\n\nCo-authored-by: Maeve (OpenClaw) <noreply@openclaw.local>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": true,
"headline": "fix: add throttling to auto heap snapshots to prevent repeated dumps …",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-06-16T08:54:37Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "997a8340354cd01a9287d6d31aaf4cb9a06c4af5",
"body": "Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.14 to 8.0.16.\n- [Release notes](https://github.com/vitejs/vite/releases)\n- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)\n- [Commits](https://github.com/vitejs/vite/commits/v8.0.16/package\n[…]\ned-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": true,
"headline": "chore(deps): bump vite in /extensions/memory-hybrid (#1900)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-16T07:58:44Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "24678772a83983d338f0ef336031249b78f6304f",
"body": "…id (#1908)\n\nRemoves [markdown-it](https://github.com/markdown-it/markdown-it). It's no longer used after updating ancestor dependency [openclaw](https://github.com/openclaw/openclaw). These dependencies need to be updated together.\n\n\nRemoves `markdown-it`\n\nUpdates `openclaw` from 2026.5.20 to 2026.\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump markdown-it and openclaw in /extensions/memory-hybr…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-16T07:57:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7e6f34e650653275dd4707980f5f2203e0fa34d5",
"body": "…y (#1907)\n\nBumps the npm_and_yarn group with 1 update in the / directory: [js-yaml](https://github.com/nodeca/js-yaml).\n\n\nUpdates `js-yaml` from 4.1.1 to 4.2.0\n- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/nodeca/js-yaml/commits)\n\n---\nupdat\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump js-yaml in the npm_and_yarn group across 1 director…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-16T07:53:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9c973ac519edd7c60f4acf5641e8b0fc1d3a268c",
"body": "…hot() (#1898)\n\n* fix: wire ?heapSnapshot=1 on /memory-diagnostics to v8.writeHeapSnapshot()\n\nRef #1897 — Phase 1 Option 1a.\n\nThe /memory-diagnostics route was always JSON-only. Operators had no way\nto capture a V8 heap snapshot without restarting the gateway with\n--inspect and racing the lifecycle.\n[…]\nr docs, and add regression tests.\n\n---------\n\nCo-authored-by: Maeve (OpenClaw) <noreply@openclaw.local>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix: wire ?heapSnapshot=1 on /memory-diagnostics to v8.writeHeapSnaps…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T07:50:47Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "fd251b4f0b88d1bf6e2b145b4c41c0e2ca132909",
"body": "…es (#1896) (#1906)\n\n* fix(memory_store): stop dropping facts on broad credential word matches (#1896)\n\nVault routing now uses narrow structured-credential detection only;\nbroad CAPTURE_FILTER_PATTERNS no longer block explicit memory_store.\nAdd audit outcomes for credential paths and regression test\n[…]\ncome but missed updating the CLI\ncommand formatter in register-corrections.ts to handle it.\n\n---------\n\nCo-authored-by: Ralph <ralph@openclaw.dev>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>",
"is_bot": false,
"headline": "fix(memory_store): stop dropping facts on broad credential word match…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T07:49:55Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "63e47da2bbb1b0a752c874d2c0bb0662450564a4",
"body": "…(#1905)\n\nAgent heartbeat turns deliver user text via before_agent_start event.prompt,\nnot messages — goal stewardship never matched and stayed dormant. Also add\nINFO skip-reason logs on heartbeat-matched paths and regression tests.\n\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix(goal-stewardship): read heartbeat text from event.prompt (#1895) …",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T07:49:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d406322e4e4573518906f46fb5c44a8d2a1f0f39",
"body": "… updates (#1899)\n\nBumps the minor-and-patch group with 8 updates in the /extensions/memory-hybrid directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.9.1` | `25.9.3` |\n| [graphql](https://github.com/g\n[…]\nendabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\nCo-authored-by: Markus Lassfolk <3661143+markus-lassfolk@users.noreply.github.com>",
"is_bot": true,
"headline": "chore(deps): bump the minor-and-patch group across 1 directory with 9…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-16T07:45:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fef19b32fa0547b67c57b4680cce8430c30013b5",
"body": "* fix: re-arm Workboard sync after plugin hot-reload (#1893)\n\nExtract Workboard sidecar startup into workboard-integration and invoke it\nfrom register-plugin on re-register, because OpenClaw does not re-run\nplugin-service.start() when the service id is already registered.\n\n* Fix: Add supersession gu\n[…]\nuse advanceTimersByTimeAsync in tests.\n\n---------\n\nCo-authored-by: Markus Lassfolk <markus@lassfolk.se>\nCo-authored-by: Cursor Agent <cursoragent@cursor.com>\nCo-authored-by: Ralph <ralph@openclaw.dev>",
"is_bot": false,
"headline": "fix: re-arm Workboard sync after plugin hot-reload (#1893) (#1894)",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-16T07:44:10Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "4af696aec2322d6592b39ea46e8efe21ffd53568",
"body": "…blish\n\nThe 2026.6.55 main package publish failed verify:publish because\nindex-credentials-cli.ts was missing from package.json files[] while the\ninstaller published in parallel. Gate install publish on main publish and\nskip npm publish when the version is already on the registry.\n\nCo-authored-by: Cursor <cursoragent@cursor.com>",
"is_bot": false,
"headline": "fix: include index-credentials-cli in npm files and harden release pu…",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-05T21:57:22Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "dc17c154b9a0c01fc750f4202db3054e96d99b67",
"body": "…lback (#1885)\n\n* chore(issue-stewardship): start issue #1879 implementation PR\n\n* fix(memory): canonicalize bare minimax cost labels\n\n* fix: consolidated cron verify output and proposal gateway cfgFull fallback\n\nVerify now reflects maintenance-nightly orchestrator mode and warns on legacy jobs; pro\n[…]\narkus@lassfolk.se>\nCo-authored-by: Ralph <ralph@openclaw.dev>\nCo-authored-by: Cursor <cursoragent@cursor.com>\nCo-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>",
"is_bot": false,
"headline": "fix: consolidated cron verify output and proposal gateway cfgFull fal…",
"author_name": "Markus Lassfolk",
"author_login": "markus-lassfolk",
"committed_at": "2026-06-05T21:51:18Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9634f03007e4d9e90cee7645ebbf4ef1483b592d",
"body": "The dist smoke test did not set OPENCLAW_WORKSPACE or requireApprovalForPromote,\nso drafts went to the real skills-pending tree or were deferred as duplicates.\n\nCo-authored-by: Cursor <cursoragent@cursor.com>",
"is_bot": false,
"headline": "Fix publish-dist procedure skill E2E test workspace isolation.",
"author_name": "Ralph",
"author_login": null,
"committed_at": "2026-06-05T13:34:01Z",
"body_truncated": false,
"is_coding_agent": true
}
],
"releases_count": 100,
"commits_last_year": 1524,
"latest_release_at": "2026-07-19T06:20:03Z",
"latest_release_tag": "v2026.7.222",
"releases_from_tags": false,
"days_since_last_push": 1,
"active_weeks_last_year": 22,
"days_since_latest_release": 5,
"mean_days_between_releases": 0.8
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": false,
"has_contributing": true,
"health_percentage": 71,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "openclaw-hybrid-memory",
"exists": true,
"license": null,
"keywords": [
"openclaw",
"plugin",
"memory",
"sqlite",
"lancedb",
"embeddings"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/openclaw-hybrid-memory",
"is_deprecated": false,
"latest_version": "2026.7.222",
"repository_url": "https://github.com/markus-lassfolk/openclaw-hybrid-memory",
"versions_count": 133,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 10375,
"first_published_at": "2026-02-16T23:17:27.674000Z",
"latest_published_at": "2026-07-19T06:21:19.306000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 5
},
{
"name": "openclaw-hybrid-memory-install",
"exists": true,
"license": "MIT",
"keywords": [
"openclaw",
"plugin",
"memory",
"install"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/openclaw-hybrid-memory-install",
"is_deprecated": false,
"latest_version": "2026.7.222",
"repository_url": "https://github.com/markus-lassfolk/openclaw-hybrid-memory",
"versions_count": 119,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 8480,
"first_published_at": "2026-02-18T09:13:40.427000Z",
"latest_published_at": "2026-07-19T06:21:49.776000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 5
}
]
},
"popularity": {
"forks": 0,
"stars": 4,
"watchers": 0,
"fork_history": {
"days": [],
"complete": true,
"collected": 0,
"total_forks": 0
},
"star_history": null,
"open_issues_and_prs": 17
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"extensions/memory-hybrid/graph-app/tsconfig.json",
"extensions/memory-hybrid/tsconfig.json"
],
"toolchain_manifests": [],
"largest_source_bytes": 148392,
"source_files_sampled": 1746,
"oversized_source_files": 35,
"agent_instruction_files": [
".github/copilot-instructions.md",
".github/instructions/*.instructions.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 7121
},
"dependencies": {
"manifests": [
"package.json"
],
"advisories": {
"error": null,
"scope": "published_package",
"source": "osv",
"findings": [
{
"name": "adm-zip",
"direct": false,
"version": "0.5.18",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-xcpc-8h2w-3j85"
],
"fixed_version": "0.6.0",
"advisory_count": 1,
"oldest_advisory_days": 14
},
{
"name": "sharp",
"direct": false,
"version": "0.33.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": 3
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"high": 2
},
"advisory_count": 2,
"affected_count": 2,
"assessed_count": 181,
"malicious_count": 0,
"assessed_package": "npm:openclaw-hybrid-memory@2026.7.222",
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"npm"
],
"dependencies": [
{
"name": "@lancedb/lancedb",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^0.27.1"
},
{
"name": "js-yaml",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^4.2.0"
},
{
"name": "openai",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^6.33.0"
},
{
"name": "@lancedb/lancedb",
"manifest": "extensions/memory-hybrid/package.json",
"ecosystem": "npm",
"version_constraint": "^0.31.0"
},
{
"name": "@types/node",
"manifest": "extensions/memory-hybrid/package.json",
"ecosystem": "npm",
"version_constraint": "^26.1.1"
},
{
"name": "apache-arrow",
"manifest": "extensions/memory-hybrid/package.json",
"ecosystem": "npm",
"version_constraint": "18.1.0"
},
{
"name": "commander",
"manifest": "extensions/memory-hybrid/package.json",
"ecosystem": "npm",
"version_constraint": "^15.0.0"
},
{
"name": "franc",
"manifest": "extensions/memory-hybrid/package.json",
"ecosystem": "npm",
"version_constraint": "^6.2.0"
},
{
"name": "graphql",
"manifest": "extensions/memory-hybrid/package.json",
"ecosystem": "npm",
"version_constraint": "^16.14.0"
},
{
"name": "graphql-yoga",
"manifest": "extensions/memory-hybrid/package.json",
"ecosystem": "npm",
"version_constraint": "^5.21.0"
},
{
"name": "graphql",
"manifest": "sdk/openclaw-memory-js/package.json",
"ecosystem": "npm",
"version_constraint": "^16.9.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "@lancedb/lancedb",
"direct": true,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb",
"direct": true,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": true,
"version": "18.19.130",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": true,
"version": "20.19.37",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": true,
"version": "20.19.41",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": true,
"version": "26.1.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": true,
"version": "26.1.1",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": true,
"version": "^22.0.0",
"ecosystem": "npm"
},
{
"name": "apache-arrow",
"direct": true,
"version": "18.1.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": true,
"version": "13.1.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": true,
"version": "15.0.0",
"ecosystem": "npm"
},
{
"name": "franc",
"direct": true,
"version": "6.2.0",
"ecosystem": "npm"
},
{
"name": "graphql",
"direct": true,
"version": "16.14.2",
"ecosystem": "npm"
},
{
"name": "graphql",
"direct": true,
"version": "^16.9.0",
"ecosystem": "npm"
},
{
"name": "graphql-yoga",
"direct": true,
"version": "5.21.2",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": true,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "openai",
"direct": true,
"version": "4.29.2",
"ecosystem": "npm"
},
{
"name": "openai",
"direct": true,
"version": "6.33.0",
"ecosystem": "npm"
},
{
"name": "openai",
"direct": true,
"version": "6.45.0",
"ecosystem": "npm"
},
{
"name": "openai",
"direct": true,
"version": "6.46.0",
"ecosystem": "npm"
},
{
"name": "@agentclientprotocol/sdk",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@anthropic-ai/sdk",
"direct": false,
"version": "0.109.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.28.5",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.29.3",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.29.0",
"ecosystem": "npm"
},
{
"name": "@bcoe/v8-coverage",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/biome",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/biome",
"direct": false,
"version": "^1.9.4",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-darwin-arm64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-darwin-x64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-arm64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-arm64-musl",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-x64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-linux-x64-musl",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-win32-arm64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@biomejs/cli-win32-x64",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "@borewit/text-codec",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "@clack/core",
"direct": false,
"version": "1.4.2",
"ecosystem": "npm"
},
{
"name": "@clack/prompts",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "@earendil-works/pi-tui",
"direct": false,
"version": "0.80.3",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.10.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.2",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.10.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.2",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "@envelop/core",
"direct": false,
"version": "5.5.1",
"ecosystem": "npm"
},
{
"name": "@envelop/instrumentation",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@envelop/types",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "@fastify/busboy",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@google/genai",
"direct": false,
"version": "2.10.0",
"ecosystem": "npm"
},
{
"name": "@grammyjs/runner",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "@grammyjs/transformer-throttler",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@grammyjs/types",
"direct": false,
"version": "3.28.0",
"ecosystem": "npm"
},
{
"name": "@graphql-tools/executor",
"direct": false,
"version": "1.5.3",
"ecosystem": "npm"
},
{
"name": "@graphql-tools/merge",
"direct": false,
"version": "9.1.9",
"ecosystem": "npm"
},
{
"name": "@graphql-tools/schema",
"direct": false,
"version": "10.0.33",
"ecosystem": "npm"
},
{
"name": "@graphql-tools/utils",
"direct": false,
"version": "10.11.0",
"ecosystem": "npm"
},
{
"name": "@graphql-tools/utils",
"direct": false,
"version": "11.1.0",
"ecosystem": "npm"
},
{
"name": "@graphql-typed-document-node/core",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@graphql-yoga/logger",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "@graphql-yoga/subscription",
"direct": false,
"version": "5.0.5",
"ecosystem": "npm"
},
{
"name": "@graphql-yoga/typed-event-target",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@homebridge/ciao",
"direct": false,
"version": "1.3.9",
"ecosystem": "npm"
},
{
"name": "@hono/node-server",
"direct": false,
"version": "1.19.14",
"ecosystem": "npm"
},
{
"name": "@huggingface/jinja",
"direct": false,
"version": "0.3.4",
"ecosystem": "npm"
},
{
"name": "@huggingface/transformers",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@img/sharp-darwin-arm64",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-darwin-x64",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-darwin-arm64",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-darwin-x64",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-arm",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-arm64",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-s390x",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linux-x64",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linuxmusl-arm64",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-libvips-linuxmusl-x64",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-arm",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-arm64",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-s390x",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linux-x64",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linuxmusl-arm64",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-linuxmusl-x64",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-wasm32",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-ia32",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@img/sharp-win32-x64",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "@isaacs/fs-minipass",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "@jridgewell/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": "@lancedb/lancedb-darwin-arm64",
"direct": false,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-darwin-arm64",
"direct": false,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-arm64-gnu",
"direct": false,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-arm64-gnu",
"direct": false,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-arm64-musl",
"direct": false,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-arm64-musl",
"direct": false,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-x64-gnu",
"direct": false,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-x64-gnu",
"direct": false,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-x64-musl",
"direct": false,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-linux-x64-musl",
"direct": false,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-win32-arm64-msvc",
"direct": false,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-win32-arm64-msvc",
"direct": false,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-win32-x64-msvc",
"direct": false,
"version": "0.27.1",
"ecosystem": "npm"
},
{
"name": "@lancedb/lancedb-win32-x64-msvc",
"direct": false,
"version": "0.31.0",
"ecosystem": "npm"
},
{
"name": "@lydell/node-pty",
"direct": false,
"version": "1.2.0-beta.12",
"ecosystem": "npm"
},
{
"name": "@lydell/node-pty-darwin-arm64",
"direct": false,
"version": "1.2.0-beta.12",
"ecosystem": "npm"
},
{
"name": "@lydell/node-pty-darwin-x64",
"direct": false,
"version": "1.2.0-beta.12",
"ecosystem": "npm"
},
{
"name": "@lydell/node-pty-linux-arm64",
"direct": false,
"version": "1.2.0-beta.12",
"ecosystem": "npm"
},
{
"name": "@lydell/node-pty-linux-x64",
"direct": false,
"version": "1.2.0-beta.12",
"ecosystem": "npm"
},
{
"name": "@lydell/node-pty-win32-arm64",
"direct": false,
"version": "1.2.0-beta.12",
"ecosystem": "npm"
},
{
"name": "@lydell/node-pty-win32-x64",
"direct": false,
"version": "1.2.0-beta.12",
"ecosystem": "npm"
},
{
"name": "@mistralai/mistralai",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "@modelcontextprotocol/sdk",
"direct": false,
"version": "1.29.0",
"ecosystem": "npm"
},
{
"name": "@mozilla/readability",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "@nolyfill/domexception",
"direct": false,
"version": "1.0.28",
"ecosystem": "npm"
},
{
"name": "@openclaw/ai",
"direct": false,
"version": "2026.7.1",
"ecosystem": "npm"
},
{
"name": "@openclaw/fs-safe",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "@openclaw/proxyline",
"direct": false,
"version": "0.3.3",
"ecosystem": "npm"
},
{
"name": "@opentelemetry/semantic-conventions",
"direct": false,
"version": "1.41.1",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-android-arm-eabi",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-android-arm64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-darwin-arm64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-darwin-x64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-freebsd-x64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm-gnueabihf",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm-musleabihf",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm64-musl",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-ppc64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-riscv64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-riscv64-musl",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-s390x-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-x64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-x64-musl",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-openharmony-arm64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-wasm32-wasi",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-win32-arm64-msvc",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-win32-ia32-msvc",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-win32-x64-msvc",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.129.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.139.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.140.0",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-android-arm-eabi",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-android-arm64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-darwin-arm64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-darwin-x64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-freebsd-x64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm-gnueabihf",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm-musleabihf",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm64-musl",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-ppc64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-riscv64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-riscv64-musl",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-s390x-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-x64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-x64-musl",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-openharmony-arm64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-wasm32-wasi",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-win32-arm64-msvc",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-win32-x64-msvc",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@protobufjs/aspromise",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@protobufjs/base64",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@protobufjs/codegen",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@protobufjs/eventemitter",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "@protobufjs/fetch",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "@protobufjs/float",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@protobufjs/inquire",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@protobufjs/path",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@protobufjs/pool",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@protobufjs/utf8",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "@protobufjs/utf8",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@quansync/fs",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@repeaterjs/repeater",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@silvia-odwyer/photon-node",
"direct": false,
"version": "0.3.4",
"ecosystem": "npm"
},
{
"name": "@sinclair/typebox",
"direct": false,
"version": "0.34.52",
"ecosystem": "npm"
},
{
"name": "@stablelib/base64",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@standard-schema/spec",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@swc/helpers",
"direct": false,
"version": "0.5.20",
"ecosystem": "npm"
},
{
"name": "@swc/helpers",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "@tokenizer/inflate",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "@tokenizer/token",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "@tweenjs/tween.js",
"direct": false,
"version": "25.0.0",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.3",
"ecosystem": "npm"
},
{
"name": "@types/chai",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "@types/command-line-args",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "@types/command-line-usage",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "@types/d3-force",
"direct": false,
"version": "3.0.10",
"ecosystem": "npm"
},
{
"name": "@types/deep-eql",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "@types/node-fetch",
"direct": false,
"version": "2.6.13",
"ecosystem": "npm"
},
{
"name": "@types/prop-types",
"direct": false,
"version": "15.7.15",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "18.3.31",
"ecosystem": "npm"
},
{
"name": "@types/react-dom",
"direct": false,
"version": "18.3.7",
"ecosystem": "npm"
},
{
"name": "@types/retry",
"direct": false,
"version": "0.12.5",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-aix-ppc64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-darwin-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-darwin-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-freebsd-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-freebsd-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-arm",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-loong64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-mips64el",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-ppc64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-riscv64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-s390x",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-linux-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-netbsd-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-netbsd-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-openbsd-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-openbsd-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-sunos-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-win32-arm64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@typescript/typescript-win32-x64",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-react",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "@vitest/coverage-v8",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/expect",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/mocker",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/pretty-format",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/runner",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/snapshot",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/spy",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/utils",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@whatwg-node/disposablestack",
"direct": false,
"version": "0.0.6",
"ecosystem": "npm"
},
{
"name": "@whatwg-node/events",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "@whatwg-node/fetch",
"direct": false,
"version": "0.10.13",
"ecosystem": "npm"
},
{
"name": "@whatwg-node/node-fetch",
"direct": false,
"version": "0.8.6",
"ecosystem": "npm"
},
{
"name": "@whatwg-node/promise-helpers",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "@whatwg-node/server",
"direct": false,
"version": "0.11.0",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-darwin-arm64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-darwin-x64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-freebsd-x64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-linux-arm-gnu",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-linux-arm-musl",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-linux-arm64-gnu",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-linux-arm64-musl",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-linux-x64-gnu",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-linux-x64-musl",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-win32-arm64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-codegen/binding-win32-x64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-darwin-arm64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-darwin-x64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-freebsd-x64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-linux-arm-gnu",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-linux-arm-musl",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-linux-arm64-gnu",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-linux-arm64-musl",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-linux-x64-gnu",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-linux-x64-musl",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-win32-arm64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-parser/binding-win32-x64",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@yuku-toolchain/types",
"direct": false,
"version": "0.5.43",
"ecosystem": "npm"
},
{
"name": "abort-controller",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "accepts",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "accessor-fn",
"direct": false,
"version": "1.5.3",
"ecosystem": "npm"
},
{
"name": "adm-zip",
"direct": false,
"version": "0.5.17",
"ecosystem": "npm"
},
{
"name": "agent-base",
"direct": false,
"version": "7.1.4",
"ecosystem": "npm"
},
{
"name": "agentkeepalive",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "8.20.0",
"ecosystem": "npm"
},
{
"name": "ajv-formats",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-escapes",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "ansis",
"direct": false,
"version": "4.3.1",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "array-back",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "array-back",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "asn1.js",
"direct": false,
"version": "5.4.1",
"ecosystem": "npm"
},
{
"name": "assertion-error",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ast-v8-to-istanbul",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "asynckit",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "base-64",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "base64-js",
"direct": false,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "bezier-js",
"direct": false,
"version": "6.1.4",
"ecosystem": "npm"
},
{
"name": "bignumber.js",
"direct": false,
"version": "9.3.1",
"ecosystem": "npm"
},
{
"name": "bn.js",
"direct": false,
"version": "4.12.4",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "boolbase",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "bottleneck",
"direct": false,
"version": "2.19.5",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "5.0.7",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "buffer-equal-constant-time",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "buffer-from",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "cac",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "call-bind-apply-helpers",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "call-bound",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "5.3.1",
"ecosystem": "npm"
},
{
"name": "canvas-color-tracker",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "chai",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "5.6.2",
"ecosystem": "npm"
},
{
"name": "chalk-template",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "charenc",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "chownr",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "clawpdf",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "cli-cursor",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "cli-truncate",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "collapse-white-space",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "color",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "color-string",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "colorette",
"direct": false,
"version": "2.0.20",
"ecosystem": "npm"
},
{
"name": "combined-stream",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "command-line-args",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "command-line-usage",
"direct": false,
"version": "7.0.4",
"ecosystem": "npm"
},
{
"name": "content-disposition",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "content-type",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "content-type",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "cookie-signature",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "core-util-is",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "cors",
"direct": false,
"version": "2.8.6",
"ecosystem": "npm"
},
{
"name": "croner",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "cross-inspect",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "crypt",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "css-select",
"direct": false,
"version": "5.2.2",
"ecosystem": "npm"
},
{
"name": "css-what",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "cssom",
"direct": false,
"version": "0.5.0",
"ecosystem": "npm"
},
{
"name": "csstype",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "d3-array",
"direct": false,
"version": "3.2.4",
"ecosystem": "npm"
},
{
"name": "d3-binarytree",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "d3-color",
"direct": false,
"version": "3.1.0",
"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-ease",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-force",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "d3-force-3d",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "d3-format",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "d3-interpolate",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "d3-octree",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "d3-quadtree",
"direct": false,
"version": "3.0.1",
"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-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": "data-uri-to-buffer",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decamelize",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "define-data-property",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "define-properties",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "defu",
"direct": false,
"version": "6.1.7",
"ecosystem": "npm"
},
{
"name": "delayed-stream",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "diff",
"direct": false,
"version": "9.0.0",
"ecosystem": "npm"
},
{
"name": "digest-fetch",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "dijkstrajs",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "dom-serializer",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "domelementtype",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "domhandler",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "domutils",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "dotenv",
"direct": false,
"version": "17.4.2",
"ecosystem": "npm"
},
{
"name": "dts-resolver",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "ecdsa-sig-formatter",
"direct": false,
"version": "1.0.11",
"ecosystem": "npm"
},
{
"name": "ee-first",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "10.6.0",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "empathic",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "encodeurl",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "environment",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "es-define-property",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "es-errors",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "es-object-atoms",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "es-set-tostringtag",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-html",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "etag",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "event-target-shim",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "eventemitter3",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "events",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "eventsource",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "eventsource-parser",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "execa",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "expect-type",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "expect-type",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "express",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "express-rate-limit",
"direct": false,
"version": "8.5.2",
"ecosystem": "npm"
},
{
"name": "extend",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "fast-deep-equal",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "fast-sha256",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "fast-string-truncated-width",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "fast-string-width",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "fast-uri",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "fast-wrap-ansi",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "fd-package-json",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "fetch-blob",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "file-type",
"direct": false,
"version": "22.0.1",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "find-replace",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "flatbuffers",
"direct": false,
"version": "1.12.0",
"ecosystem": "npm"
},
{
"name": "flatbuffers",
"direct": false,
"version": "24.12.23",
"ecosystem": "npm"
},
{
"name": "float-tooltip",
"direct": false,
"version": "1.7.5",
"ecosystem": "npm"
},
{
"name": "force-graph",
"direct": false,
"version": "1.51.4",
"ecosystem": "npm"
},
{
"name": "form-data",
"direct": false,
"version": "4.0.6",
"ecosystem": "npm"
},
{
"name": "form-data-encoder",
"direct": false,
"version": "1.7.2",
"ecosystem": "npm"
},
{
"name": "formatly",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "formdata-node",
"direct": false,
"version": "4.4.1",
"ecosystem": "npm"
},
{
"name": "formdata-polyfill",
"direct": false,
"version": "4.0.10",
"ecosystem": "npm"
},
{
"name": "forwarded",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "fresh",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "gaxios",
"direct": false,
"version": "7.1.5",
"ecosystem": "npm"
},
{
"name": "gcp-metadata",
"direct": false,
"version": "8.1.2",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "get-east-asian-width",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "get-east-asian-width",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "get-intrinsic",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "get-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "get-stream",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "get-tsconfig",
"direct": false,
"version": "4.14.0",
"ecosystem": "npm"
},
{
"name": "get-tsconfig",
"direct": false,
"version": "5.0.0-beta.5",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "13.0.6",
"ecosystem": "npm"
},
{
"name": "global-agent",
"direct": false,
"version": "4.1.3",
"ecosystem": "npm"
},
{
"name": "globalthis",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "google-auth-library",
"direct": false,
"version": "10.9.0",
"ecosystem": "npm"
},
{
"name": "google-logging-utils",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "grammy",
"direct": false,
"version": "1.44.0",
"ecosystem": "npm"
},
{
"name": "graphology",
"direct": false,
"version": "0.26.0",
"ecosystem": "npm"
},
{
"name": "graphology-communities-louvain",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "graphology-indices",
"direct": false,
"version": "0.17.0",
"ecosystem": "npm"
},
{
"name": "graphology-types",
"direct": false,
"version": "0.24.8",
"ecosystem": "npm"
},
{
"name": "graphology-utils",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "graphql-sse",
"direct": false,
"version": "2.6.0",
"ecosystem": "npm"
},
{
"name": "guid-typescript",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "has-property-descriptors",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "has-tostringtag",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "highlight.js",
"direct": false,
"version": "11.11.1",
"ecosystem": "npm"
},
{
"name": "hono",
"direct": false,
"version": "4.12.25",
"ecosystem": "npm"
},
{
"name": "hookable",
"direct": false,
"version": "6.1.1",
"ecosystem": "npm"
},
{
"name": "hosted-git-info",
"direct": false,
"version": "10.1.1",
"ecosystem": "npm"
},
{
"name": "html-escaper",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "html-escaper",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "htmlparser2",
"direct": false,
"version": "10.1.0",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "http_ece",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "https-proxy-agent",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "human-signals",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "humanize-ms",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "husky",
"direct": false,
"version": "9.1.7",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "ieee754",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "7.0.5",
"ecosystem": "npm"
},
{
"name": "immediate",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "import-without-cache",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "index-array-by",
"direct": false,
"version": "1.4.2",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "internmap",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "ip-address",
"direct": false,
"version": "10.2.0",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "is-arrayish",
"direct": false,
"version": "0.3.4",
"ecosystem": "npm"
},
{
"name": "is-buffer",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "is-number",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "is-promise",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "is-stream",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "isarray",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "istanbul-lib-coverage",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "istanbul-lib-report",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "istanbul-reports",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "jerrypick",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "jiti",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "jose",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "10.0.0",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "json-bigint",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "json-bignum",
"direct": false,
"version": "0.0.3",
"ecosystem": "npm"
},
{
"name": "json-schema-to-ts",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "json-schema-typed",
"direct": false,
"version": "8.0.2",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "jszip",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "jwa",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "jws",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "kapsule",
"direct": false,
"version": "1.16.3",
"ecosystem": "npm"
},
{
"name": "knip",
"direct": false,
"version": "6.27.0",
"ecosystem": "npm"
},
{
"name": "kysely",
"direct": false,
"version": "0.29.2",
"ecosystem": "npm"
},
{
"name": "lie",
"direct": false,
"version": "3.3.0",
"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": "lilconfig",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "linkedom",
"direct": false,
"version": "0.18.12",
"ecosystem": "npm"
},
{
"name": "lint-staged",
"direct": false,
"version": "15.5.2",
"ecosystem": "npm"
},
{
"name": "listr2",
"direct": false,
"version": "8.3.3",
"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": "lodash.camelcase",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "log-update",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "long",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "loose-envify",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "10.4.3",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "11.5.1",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.30.21",
"ecosystem": "npm"
},
{
"name": "magicast",
"direct": false,
"version": "0.5.2",
"ecosystem": "npm"
},
{
"name": "make-dir",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "marked",
"direct": false,
"version": "18.0.5",
"ecosystem": "npm"
},
{
"name": "matcher",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "md5",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "media-typer",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "merge-descriptors",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "merge-stream",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "micromatch",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.52.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.54.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.35",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "mimic-fn",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "mimic-function",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "minimalistic-assert",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "10.2.5",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "minipass",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "minizlib",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "mnemonist",
"direct": false,
"version": "0.39.8",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "n-gram",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.15",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.16",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "node-addon-api",
"direct": false,
"version": "8.9.0",
"ecosystem": "npm"
},
{
"name": "node-domexception",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "node-edge-tts",
"direct": false,
"version": "1.2.10",
"ecosystem": "npm"
},
{
"name": "node-fetch",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "node-fetch",
"direct": false,
"version": "3.3.2",
"ecosystem": "npm"
},
{
"name": "node-gyp-build",
"direct": false,
"version": "4.8.4",
"ecosystem": "npm"
},
{
"name": "npm-run-path",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "nth-check",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "object-assign",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "object-inspect",
"direct": false,
"version": "1.13.4",
"ecosystem": "npm"
},
{
"name": "object-keys",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "obliterator",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "onetime",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "onetime",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "onnxruntime-common",
"direct": false,
"version": "1.19.2",
"ecosystem": "npm"
},
{
"name": "onnxruntime-common",
"direct": false,
"version": "1.20.0-dev.20241016-2b8fc5529b",
"ecosystem": "npm"
},
{
"name": "onnxruntime-common",
"direct": false,
"version": "1.27.0",
"ecosystem": "npm"
},
{
"name": "onnxruntime-node",
"direct": false,
"version": "1.19.2",
"ecosystem": "npm"
},
{
"name": "onnxruntime-node",
"direct": false,
"version": "1.27.0",
"ecosystem": "npm"
},
{
"name": "onnxruntime-web",
"direct": false,
"version": "1.21.0-dev.20241024-d9ca84ef96",
"ecosystem": "npm"
},
{
"name": "openclaw",
"direct": false,
"version": "2026.7.1",
"ecosystem": "npm"
},
{
"name": "oxc-parser",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "oxc-resolver",
"direct": false,
"version": "11.21.3",
"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-retry",
"direct": false,
"version": "4.6.2",
"ecosystem": "npm"
},
{
"name": "p-try",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "pako",
"direct": false,
"version": "1.0.11",
"ecosystem": "npm"
},
{
"name": "pandemonium",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "parseurl",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "partial-json",
"direct": false,
"version": "0.1.7",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-scurry",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "8.4.0",
"ecosystem": "npm"
},
{
"name": "pathe",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.5",
"ecosystem": "npm"
},
{
"name": "pidtree",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "pkce-challenge",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "platform",
"direct": false,
"version": "1.3.6",
"ecosystem": "npm"
},
{
"name": "playwright-core",
"direct": false,
"version": "1.61.1",
"ecosystem": "npm"
},
{
"name": "pngjs",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.16",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.18",
"ecosystem": "npm"
},
{
"name": "preact",
"direct": false,
"version": "10.29.7",
"ecosystem": "npm"
},
{
"name": "process-nextick-args",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "prop-types",
"direct": false,
"version": "15.8.1",
"ecosystem": "npm"
},
{
"name": "proper-lockfile",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "protobufjs",
"direct": false,
"version": "7.6.3",
"ecosystem": "npm"
},
{
"name": "protobufjs",
"direct": false,
"version": "7.6.5",
"ecosystem": "npm"
},
{
"name": "proxy-addr",
"direct": false,
"version": "2.0.7",
"ecosystem": "npm"
},
{
"name": "qrcode",
"direct": false,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.15.2",
"ecosystem": "npm"
},
{
"name": "quansync",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "quickjs-wasi",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "rastermill",
"direct": false,
"version": "0.3.1",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "react",
"direct": false,
"version": "18.3.1",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": false,
"version": "18.3.1",
"ecosystem": "npm"
},
{
"name": "react-force-graph-2d",
"direct": false,
"version": "1.29.1",
"ecosystem": "npm"
},
{
"name": "react-is",
"direct": false,
"version": "16.13.1",
"ecosystem": "npm"
},
{
"name": "react-kapsule",
"direct": false,
"version": "2.6.0",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "2.3.8",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "reflect-metadata",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "require-from-string",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "require-main-filename",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-pkg-maps",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "restore-cursor",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "retry",
"direct": false,
"version": "0.12.0",
"ecosystem": "npm"
},
{
"name": "retry",
"direct": false,
"version": "0.13.1",
"ecosystem": "npm"
},
{
"name": "rfdc",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "rolldown-plugin-dts",
"direct": false,
"version": "0.27.9",
"ecosystem": "npm"
},
{
"name": "router",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "scheduler",
"direct": false,
"version": "0.23.2",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.8.5",
"ecosystem": "npm"
},
{
"name": "send",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "serialize-error",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "serve-static",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "set-blocking",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "setimmediate",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "setprototypeof",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "sharp",
"direct": false,
"version": "0.33.5",
"ecosystem": "npm"
},
{
"name": "shebang-command",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "shebang-regex",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "side-channel-list",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-map",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-weakmap",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "siginfo",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "simple-swizzle",
"direct": false,
"version": "0.2.4",
"ecosystem": "npm"
},
{
"name": "sisteransi",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "slice-ansi",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "slice-ansi",
"direct": false,
"version": "7.1.2",
"ecosystem": "npm"
},
{
"name": "smol-toml",
"direct": false,
"version": "1.6.1",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "source-map-support",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "sqlite-vec",
"direct": false,
"version": "0.1.9",
"ecosystem": "npm"
},
{
"name": "sqlite-vec-darwin-arm64",
"direct": false,
"version": "0.1.9",
"ecosystem": "npm"
},
{
"name": "sqlite-vec-darwin-x64",
"direct": false,
"version": "0.1.9",
"ecosystem": "npm"
},
{
"name": "sqlite-vec-linux-arm64",
"direct": false,
"version": "0.1.9",
"ecosystem": "npm"
},
{
"name": "sqlite-vec-linux-x64",
"direct": false,
"version": "0.1.9",
"ecosystem": "npm"
},
{
"name": "sqlite-vec-windows-x64",
"direct": false,
"version": "0.1.9",
"ecosystem": "npm"
},
{
"name": "stackback",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "standardwebhooks",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "string-argv",
"direct": false,
"version": "0.3.2",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "strip-final-newline",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "strtok3",
"direct": false,
"version": "10.3.5",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "table-layout",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "tar",
"direct": false,
"version": "7.5.19",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "tinycolor2",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.17",
"ecosystem": "npm"
},
{
"name": "tinyrainbow",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "toidentifier",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "token-types",
"direct": false,
"version": "6.1.2",
"ecosystem": "npm"
},
{
"name": "tr46",
"direct": false,
"version": "0.0.3",
"ecosystem": "npm"
},
{
"name": "tree-kill",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "tree-sitter-bash",
"direct": false,
"version": "0.25.1",
"ecosystem": "npm"
},
{
"name": "trigram-utils",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ts-algebra",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "tsdown",
"direct": false,
"version": "0.22.12",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tslog",
"direct": false,
"version": "4.10.2",
"ecosystem": "npm"
},
{
"name": "tsup",
"direct": false,
"version": "^8.3.5",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "0.20.2",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "typebox",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "^5.9.3",
"ecosystem": "npm"
},
{
"name": "typical",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "typical",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "uhyphen",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "uint8array-extras",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "unbash",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "unconfig-core",
"direct": false,
"version": "7.5.0",
"ecosystem": "npm"
},
{
"name": "undici",
"direct": false,
"version": "8.5.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "5.26.5",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "6.21.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "8.3.0",
"ecosystem": "npm"
},
{
"name": "unpipe",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "unrun",
"direct": false,
"version": "0.3.1",
"ecosystem": "npm"
},
{
"name": "urlpattern-polyfill",
"direct": false,
"version": "10.1.0",
"ecosystem": "npm"
},
{
"name": "util-deprecate",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "vary",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "verkit",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "8.1.4",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "^4.0.18",
"ecosystem": "npm"
},
{
"name": "walk-up-path",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "web-push",
"direct": false,
"version": "3.6.7",
"ecosystem": "npm"
},
{
"name": "web-streams-polyfill",
"direct": false,
"version": "3.3.3",
"ecosystem": "npm"
},
{
"name": "web-streams-polyfill",
"direct": false,
"version": "4.0.0-beta.3",
"ecosystem": "npm"
},
{
"name": "web-tree-sitter",
"direct": false,
"version": "0.26.10",
"ecosystem": "npm"
},
{
"name": "webidl-conversions",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "whatwg-url",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "which-module",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "why-is-node-running",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "wordwrapjs",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "6.2.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "9.0.2",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.21.0",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "yaml",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "15.4.1",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "17.7.3",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "18.1.3",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "21.1.1",
"ecosystem": "npm"
},
{
"name": "yuku-ast",
"direct": false,
"version": "0.1.7",
"ecosystem": "npm"
},
{
"name": "yuku-codegen",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "yuku-parser",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "zod",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "zod-to-json-schema",
"direct": false,
"version": "3.25.2",
"ecosystem": "npm"
},
{
"name": "zustand",
"direct": false,
"version": "5.0.14",
"ecosystem": "npm"
},
{
"name": "markitdown",
"direct": false,
"version": null,
"ecosystem": "pypi"
}
],
"collected": true,
"truncated": false,
"total_count": 829,
"direct_count": 20,
"indirect_count": 809
}
},
"maintainership": {
"issues": {
"open_prs": 1,
"merged_prs": 828,
"open_issues": 16,
"closed_ratio": 0.987,
"closed_issues": 1171,
"closed_unmerged_prs": 178
},
"bus_factor": 1,
"bot_contributors": 5,
"top_contributors": [
{
"type": "User",
"login": "markus-lassfolk",
"commits": 1028,
"avatar_url": "https://avatars.githubusercontent.com/u/3661143?v=4"
},
{
"type": "User",
"login": "cursoragent",
"commits": 206,
"avatar_url": "https://avatars.githubusercontent.com/u/199161495?v=4"
},
{
"type": "User",
"login": "claude",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/81847?v=4"
}
],
"contributors_sampled": 3,
"top_contributor_share": 0.832
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"auto-create-pr.yml",
"ci.yml",
"codeql.yml",
"copilot-automerge.yml",
"forge-feedback-loop.yml",
"label.yml",
"pr-checks.yml",
"release.yml",
"stale.yml",
"tag-release-after-ci.yml",
"workflow-sanity.yml"
],
"has_docs_dir": true,
"linter_configs": [
"biome.json"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"package-lock.json"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "28 out of 28 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 0,
"reason": "Found 1/26 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 3 contributing companies or organizations -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 0,
"reason": "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 30 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": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 10,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": null,
"reason": "no releases found",
"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": "13 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "4848eff563f0fea027a08a0d2589738303c5e8b6",
"ran_at": "2026-07-25T03:43:11Z",
"aggregate_score": 5,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": true,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-24T05:08:48Z",
"oldest_open_prs": [
{
"number": 2198,
"created_at": "2026-07-24T00:58:08Z",
"last_comment_at": "2026-07-24T00:58:22Z",
"last_comment_author": "github-actions"
}
],
"last_merged_pr_at": "2026-07-24T00:57:01Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 2167,
"created_at": "2026-07-22T05:14:07Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 2183,
"created_at": "2026-07-23T12:52:25Z",
"last_comment_at": "2026-07-23T14:19:30Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2184,
"created_at": "2026-07-23T12:52:26Z",
"last_comment_at": "2026-07-23T14:25:41Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2185,
"created_at": "2026-07-23T12:52:27Z",
"last_comment_at": "2026-07-23T14:30:38Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2186,
"created_at": "2026-07-23T12:52:59Z",
"last_comment_at": "2026-07-23T14:34:31Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2187,
"created_at": "2026-07-23T12:53:00Z",
"last_comment_at": "2026-07-23T14:39:46Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2188,
"created_at": "2026-07-23T12:53:01Z",
"last_comment_at": "2026-07-23T14:44:51Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2189,
"created_at": "2026-07-23T12:53:02Z",
"last_comment_at": "2026-07-23T14:49:16Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2190,
"created_at": "2026-07-23T12:53:03Z",
"last_comment_at": "2026-07-23T15:29:09Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2191,
"created_at": "2026-07-23T12:53:33Z",
"last_comment_at": "2026-07-23T15:34:23Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2192,
"created_at": "2026-07-23T12:53:35Z",
"last_comment_at": "2026-07-23T15:39:06Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2193,
"created_at": "2026-07-23T12:53:36Z",
"last_comment_at": "2026-07-23T15:09:15Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2194,
"created_at": "2026-07-23T12:53:37Z",
"last_comment_at": "2026-07-23T15:44:05Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2195,
"created_at": "2026-07-23T12:53:38Z",
"last_comment_at": "2026-07-23T15:49:20Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2196,
"created_at": "2026-07-23T12:53:39Z",
"last_comment_at": "2026-07-23T15:54:17Z",
"last_comment_author": "markus-lassfolk"
},
{
"number": 2197,
"created_at": "2026-07-23T12:53:40Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/markus-lassfolk/openclaw-hybrid-memory",
"host": "github.com",
"name": "openclaw-hybrid-memory",
"owner": "markus-lassfolk"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 66,
"inputs": {
"security": 57,
"vitality": 87,
"community": 48,
"governance": 61,
"engineering": 72
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 87,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 79,
"inputs": {
"commits_last_year": 1524,
"human_commit_share": 0.85,
"days_since_last_push": 1,
"active_weeks_last_year": 22
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 1 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 1
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "22/52 weeks with commits",
"points": 15.2,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 22
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "1524 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 1524
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 30 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": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 100,
"inputs": {
"releases_count": 100,
"latest_release_tag": "v2026.7.222",
"releases_from_tags": false,
"days_since_latest_release": 5,
"mean_days_between_releases": 0.8
},
"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 5 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 5
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~0.8 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 0.8
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"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": 48,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "critical",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 8,
"inputs": {
"forks": 0,
"stars": 4,
"watchers": 0,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "4 stars",
"points": 7.7,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 4
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "0 forks",
"points": 0,
"status": "missed",
"details": [
{
"code": "forks",
"params": {
"count": 0
}
}
],
"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": "good",
"name": "Community health",
"note": null,
"notes": [],
"value": 77,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "good",
"name": "Ecosystem adoption (downloads)",
"note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"registry_dependents"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 71,
"inputs": {
"packages": [
"openclaw-hybrid-memory",
"openclaw-hybrid-memory-install"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 18855
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "18,855 downloads/month across npm",
"points": 57,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 18855,
"ecosystems": "npm"
}
}
],
"max_points": 80
},
{
"key": "registry_dependents",
"name": "Registry dependents",
"detail": "not reported by this ecosystem",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_reported_by_this_ecosystem",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 61,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 27,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 3,
"top_contributor_share": 0.832
},
"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 83% of commits",
"points": 3.8,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 83
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "3 contributors",
"points": 4.1,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 3
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 3 contributing companies or organizations -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 78,
"inputs": {
"merged_prs": 828,
"open_issues": 16,
"closed_issues": 1171,
"issue_closed_ratio": 0.987,
"closed_unmerged_prs": 178
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "99% of issues closed",
"points": 46.1,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 99
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "828/1006 decided PRs merged",
"points": 31.5,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 828,
"decided": 1006
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 1/26 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"verified_domain"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 52,
"inputs": {
"followers": 14,
"owner_type": "User",
"is_verified": null,
"owner_login": "markus-lassfolk",
"public_repos": 35,
"account_age_days": 4901
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "personal (user) account",
"points": 10,
"status": "partial",
"details": [
{
"code": "owner_personal",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": "not applicable to user accounts",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_applicable_to_user_accounts",
"params": {}
}
],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "14 followers of markus-lassfolk",
"points": 8.5,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 14,
"login": "markus-lassfolk"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "35 public repos, account ~13 yr old",
"points": 23.3,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 35
}
},
{
"code": "account_age_years",
"params": {
"years": 13
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"openclaw-hybrid-memory",
"openclaw-hybrid-memory-install"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 5
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "2 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 2,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 5 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 5
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "133 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 133
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 72,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "11 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 11
}
}
],
"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": "biome.json",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "28 out of 28 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 55,
"inputs": {
"topics": [],
"has_wiki": false,
"homepage": null,
"has_readme": true,
"has_docs_dir": true,
"has_description": false
},
"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": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "moderate",
"name": "Security",
"value": 57,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 50,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 16,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 2,
"scorecard_aggregate": 5
},
"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": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "28 out of 28 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 1/26 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 3 contributing companies or organizations -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "dangerous workflow patterns detected",
"points": 0,
"status": "missed",
"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 30 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 run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"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": "13 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "good",
"name": "Dependency advisories",
"note": "Matched the npm:openclaw-hybrid-memory@2026.7.222 runtime dependency closure — what installing the published package pulls in — 181 packages. Reachability is not analyzed.",
"notes": [
{
"code": "advisories_scope_published",
"params": {
"package": "npm:openclaw-hybrid-memory@2026.7.222",
"assessed": 181
}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 84,
"inputs": {
"source": "osv",
"advisories": 2,
"affected_packages": 2,
"assessed_packages": 181,
"unassessed_packages": 0,
"affected_by_severity": "high 2",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "2 affected: adm-zip 0.5.18 (high 7.5), sharp 0.33.5 (high 7.3)",
"points": 8.5,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 2,
"packages": "adm-zip 0.5.18 (high 7.5), sharp 0.33.5 (high 7.3)"
}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory has been public longer than 90 days",
"points": 40,
"status": "met",
"details": [
{
"code": "advisories_none_stale",
"params": {
"days": 90
}
}
],
"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": 181,
"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": 2
},
"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": 81,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "excellent",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.988,
"agent_instruction_files": [
".github/copilot-instructions.md",
".github/instructions/*.instructions.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 7121
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": ".github/copilot-instructions.md, .github/instructions/*.instructions.md, CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".github/copilot-instructions.md, .github/instructions/*.instructions.md, CLAUDE.md"
}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "84 of 85 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 84,
"sampled": 85
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 72,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"package-lock.json"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"extensions/memory-hybrid/graph-app/tsconfig.json",
"extensions/memory-hybrid/tsconfig.json"
],
"agent_commit_share": 0.28,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0.14
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": "biome.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "extensions/memory-hybrid/graph-app/tsconfig.json, extensions/memory-hybrid/tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "extensions/memory-hybrid/graph-app/tsconfig.json, extensions/memory-hybrid/tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "28 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 28,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "14 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 14,
"sampled": 100
}
}
],
"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": 99,
"inputs": {
"primary_language": "TypeScript",
"largest_source_bytes": 148392,
"source_files_sampled": 1746,
"oversized_source_files": 35
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "TypeScript (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "TypeScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "35/1746 source files over 60KB",
"points": 53.9,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 1746,
"oversized": 35
}
}
],
"max_points": 55
}
]
}
],
"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",
"Could not fetch npm package '@openclaw/memory-client' from its registry"
],
"report_type": "repository",
"generated_at": "2026-07-25T03:43:33.638554Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/markus-lassfolk/openclaw-hybrid-memory.svg",
"full_name": "markus-lassfolk/openclaw-hybrid-memory",
"license_state": "standard",
"license_spdx": "MIT"
}