Öffentliches Register
Software-GesundheitsberichtSchema 0.27.0 · Metriken 1.13.0 · 2026-07-24 06:04 UTC

MemTensor / MemOS

Self-evolving memory OS for LLM & AI Agents: ultra-persistent memory, hybrid-retrieval, and cross-task skill reuse, with 35.24% token savings

TypeScript · PythonApache-2.0★ 10.355 Sterne⑂ 945 Forksseit Juli 2025Auf GitHub ansehen ↗

MemTensor/MemOS erreicht einen Gesundheitsindex von 81 von 100 und liegt damit im Bereich Gut. Am stärksten schneidet es bei Vitality (99/100) ab, am schwächsten bei Security (44/100). Zuletzt heute aktualisiert. 4 Mitwirkende tragen den Großteil der jüngsten Arbeit.

81
gesamt / 100
Gut

Software-Gesundheitsindex

Metriken werden auf einer Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr Mittel; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze 49 (Gefährdet). AI Readiness liegt außerhalb.

81
Exzellent85-100Vorbildlich; erfüllt im Wesentlichen alle geprüften Kriterien
Gut70-84Gesund; geringfügige Lücken
Mittel50-69Akzeptabel mit deutlichen Lücken; Überprüfung empfohlen
Gefährdet30-49Erhebliche Schwächen; eine Übernahme erfordert Vorsicht
Kritisch1-29Schwerwiegende Probleme (aufgegeben, nur ein Maintainer, keine Hygiene)
VitalitätCommunity &VerbreitungNachhaltigkeit &GovernanceEngineering-QualitätSicherheitAI Readiness

Bewertungsprofil

Jede Achse ist eine Kategorie. Die Form zählt mehr als der Durchschnitt — ein gesundes Projekt füllt die gesamte Fläche, während ein Profil aus Spitzen und Kratern bedeutet, dass Stärke in einer Dimension Risiken in einer anderen verdeckt.

Eigentümerschaft

OpenMemOrganisation
204 Follower24 öffentliche Reposseit Mai 2025

Dieses Repository wird von einer Organisation getragen — geteilte, rechenschaftspflichtige Trägerschaft, die jeden einzelnen Maintainer überdauern kann.

Paket-Ökosysteme

RegistryPaketVersionDownloads / MonatVersionenZuletzt veröffentlichtTags
PyPIMemoryOS2.0.24-34vor 4 Tagenmemoryllmlanguage-modelmemoryosagentkv-cachelora

Metriken nach Kategorie

Vitalität

Lebt das Projekt — wird Code geschrieben und werden Releases ausgeliefert?

99Exzellent · 22 % des Gesamtindex
Wie die Bewertung erfolgt
36/36Push-Aktualität — letzter Push vor 0 Tagen
33.9/36Commit-Rhythmus — 49/52 Wochen mit Commits
18/18Commit-Volumen — 1.870 Commits im letzten Jahr
10/10OpenSSF Scorecard: Maintained — 30 commit(s) and 26 issue activity found in the last 90 days -- score normalized to 10
Verwendete Eingangsdaten
commits_last_year1.870
human_commit_share0,99
days_since_last_push0
active_weeks_last_year49

Release-Disziplin

100Exzellent
Wie die Bewertung erfolgt
27/27Liefert Releases aus — 35 Releases veröffentlicht
36/36Release-Aktualität — letztes Release vor 4 Tagen
27/27Release-Rhythmus — ein Release etwa alle 9,7 Tage
0/10OpenSSF Scorecard: Signed-Releases — keine Daten
Verwendete Eingangsdaten
releases_count35
latest_release_tagv2.0.24
releases_from_tagsnein
days_since_latest_release4
mean_days_between_releases9,7
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): OpenSSF Scorecard: Signed-Releases. Die verbleibenden Gewichte wurden renormalisiert.

Community & Verbreitung

Hat das Projekt Nutzer, Downloads, Aufmerksamkeit und ein einladendes Umfeld für Beitragende?

86Exzellent · 18 % des Gesamtindex
Wie die Bewertung erfolgt
60/60Stars — 10.355 Stars
24.8/25Forks — 945 Forks
9.1/15Watcher — 44 Watcher
Verwendete Eingangsdaten
forks945
stars10.355
watchers44
growth_stateunverified
growth_factor_pct100
growth_unverified_reasonno_history
Wie die Bewertung erfolgt
22.5/22.5README
22.5/22.5Lizenz — anerkannte Lizenz (Apache-2.0)
18/18CONTRIBUTING-Leitfaden
0/13.5Verhaltenskodex
0/7.2Issue-Vorlage
6.3/6.3PR-Vorlage
Verwendete Eingangsdaten
has_readmeja
has_licenseja
has_contributingja
has_issue_templatenein
has_code_of_conductnein
has_pull_request_templateja

Nachhaltigkeit & Governance

Überdauert das Projekt die Menschen, die es tragen — Bus-Faktor, Reaktionsfähigkeit, Trägerschaft und Paketpflege?

81Gut · 24 % des Gesamtindex
Wie die Bewertung erfolgt
43.2/54Bus-Faktor — 4 Beitragende decken die Hälfte aller Commits ab
19.3/22.5Commit-Verteilung — wichtigste beitragende Person verfasste 14 % der Commits
13.5/13.5Breite der Beitragenden — 79 Beitragende
10/10OpenSSF Scorecard: Contributors — project has 12 contributing companies or organizations
Verwendete Eingangsdaten
bus_factor4
contributors_sampled79
top_contributor_share0,142
Wie die Bewertung erfolgt
41.5/46.8Issue-Lösungsquote — 89 % der Issues geschlossen
29.3/38.3PR-Annahme — 1.207/1.578 entschiedene PRs gemergt
9/15OpenSSF Scorecard: Code-Review — Found 14/21 approved changesets -- score normalized to 6
Verwendete Eingangsdaten
merged_prs1.207
open_issues50
closed_issues391
issue_closed_ratio0,887
closed_unmerged_prs371
Wie die Bewertung erfolgt
30/30Organisatorische Trägerschaft — im Besitz einer Organisation
0/20Verifizierte Domain
16.6/25Reichweite des Inhabers — 204 Follower von MemTensor
12.6/25Kontohistorie — 24 öffentliche Repos, Kontoalter ca. 1 Jahre
Verwendete Eingangsdaten
followers204
owner_typeOrganization
is_verified
owner_loginMemTensor
public_repos24
account_age_days446

Paketpflege

100Exzellent
Wie die Bewertung erfolgt
25/25Veröffentlicht & auflösbar — 1 Paket(e) auf pypi
35/35Veröffentlichungsaktualität — letzte Veröffentlichung vor 4 Tagen
20/20Versionshistorie — 34 veröffentlichte Versionen
20/20Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen
Verwendete Eingangsdaten
packagesMemoryOS
ecosystemspypi
any_deprecatednein
min_days_since_publish4

Engineering-Qualität

Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?

88Exzellent · 20 % des Gesamtindex
Wie die Bewertung erfolgt
24/24CI-Workflows — 5 Workflow(s)
24/24Tests vorhanden
16/16Linter-Konfiguration — .eslintrc.json
9.6/9.6Pre-Commit-Hooks
0/6.4.editorconfig
12/20OpenSSF Scorecard: CI-Tests — 12 out of 20 merged PRs checked by a CI test -- score normalized to 6
Verwendete Eingangsdaten
has_cija
has_testsja
has_editorconfignein
has_linter_configja
has_precommit_configja

Dokumentation

90Exzellent
Wie die Bewertung erfolgt
30/30README
25/25Dokumentationsverzeichnis
15/15Dokumentations-/Homepage-Site — https://memos.openmem.net
10/10Repository-Beschreibung
10/10Topics — 20 Topics
0/10Wiki
Verwendete Eingangsdaten
topicsagent, llm, memory, long-term-memory, memory-management, rag, skills, openclaw, agentic-ai, ai, ai-agents, chatgpt, claude, hermes, multi-agent, python, self-evolving, self-hosted, token-savings, mcp
has_wikinein
homepagehttps://memos.openmem.net
has_readmeja
has_docs_dirja
has_descriptionja

Sicherheit

Sind die sichtbaren Sicherheits- und Lieferkettenpraktiken belastbar, ohne ungeklärte Exposition gegenüber Hochrisikojurisdiktionen?

44Gefährdet · 16 % des Gesamtindex

Sicherheitslage

46Gefährdet
Wie die Bewertung erfolgt
7.5/7.5Binary-Artifacts — no binaries found in the repo
3.8/7.5Branch-Protection — branch protection is not maximal on development and all release branches
1.5/2.5CI-Tests — 12 out of 20 merged PRs checked by a CI test -- score normalized to 6
0/2.5CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected
4.5/7.5Code-Review — Found 14/21 approved changesets -- score normalized to 6
2.5/2.5Contributors — project has 12 contributing companies or organizations
10/10Dangerous-Workflow — no dangerous workflow patterns detected
0/7.5Dependency-Update-Tool — no update tool detected
0/5Fuzzing — project is not fuzzed
2.5/2.5Lizenz — license file detected
7.5/7.5Maintained — 30 commit(s) and 26 issue activity found in the last 90 days -- score normalized to 10
5/5Packaging — packaging workflow detected
0/5Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
0/5SAST — SAST tool is not run on all commits -- score normalized to 0
0/5Security-Policy — security policy file not detected
0/7.5Signed-Releases — keine Daten
0/7.5Token-Permissions — detected GitHub workflow tokens with excessive permissions
0/7.5Vulnerabilities — 172 existing vulnerabilities detected
Verwendete Eingangsdaten
sourceopenssf_scorecard
checks_evaluated17
scorecard_versionv5.5.0
checks_inconclusive1
scorecard_aggregate4,6
Von der Bewertung ausgeschlossen (keine Daten oder nicht anwendbar): signed_releases. Die verbleibenden Gewichte wurden renormalisiert.
Wie die Bewertung erfolgt
5.6/35Direkte Abhängigkeiten ohne bekannte Advisories — 2 betroffen: fastmcp 2.14.7 (critical 10.0), transformers 4.57.6 (critical 9.6)
8/25Indirekte Abhängigkeiten ohne bekannte Advisories — 3 betroffen: mcp 1.27.2 (high), starlette 0.46.2 (high 7.5), diskcache 5.6.3 (moderate)
22.8/40Keine offenen Advisories — 4 Paket(e) mit Advisory seit über 90 Tagen unbehandelt; ältestes vor 367 Tagen veröffentlicht
Verwendete Eingangsdaten
sourceosv
advisories31
affected_packages5
assessed_packages127
unassessed_packages0
affected_by_severitycritical 2, high 2, moderate 1
direct_affected_packages2
Abgeglichen wurde die Laufzeit-Abhängigkeitshülle von pypi:MemoryOS@2.0.24 — das, was die Installation des veröffentlichten Pakets nach sich zieht — mit 127 Paketen. Erreichbarkeit wird nicht analysiert.

AI Readiness

Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Ein unabhängiges, experimentelles Badge — Gewicht 0,0, es wird eigenständig ausgewiesen und verändert den Gesamt-Gesundheitswert nicht.

82Gut · 0 % des Gesamtindex
Wie die Bewertung erfolgt
45/45Agentenanweisungen — AGENTS.md, CLAUDE.md, apps/openwork-memos-integration/CLAUDE.md
0/15Maschinenlesbare Doku (llms.txt)
40/40Lesbare Commit-Historie — 93 von 99 menschlichen Commits benennen ihre Absicht (strukturierter Betreff oder erläuternder Text)
Verwendete Eingangsdaten
has_llms_txtnein
legible_history_share0,939
agent_instruction_filesAGENTS.md, CLAUDE.md, apps/openwork-memos-integration/CLAUDE.md
agent_instruction_max_bytes10.155
Wie die Bewertung erfolgt
18/18Bootstrap mit einem Befehl — Makefile
22/22Automatisierte Tests
11/11Lint-/Format-Konfiguration — .eslintrc.json
11/11Statische Typprüfung — apps/memos-local-openclaw/tsconfig.json, apps/memos-local-plugin/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/ask-user-question/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/dev-browser/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/file-permission/tsconfig.json, apps/openwork-memos-integration/apps/desktop/tsconfig.json, apps/openwork-memos-integration/packages/shared/tsconfig.json
10/10Reproduzierbare Umgebung — Dockerfile, lockfile
10/10Belegte Agentenpraxis — 8 der letzten 100 Commits von Agenten verfasst oder ihnen zugeschrieben
0/8Automatisierte Wartung — keine automatisierten Abhängigkeits-Updates beobachtet
0/10OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0
Verwendete Eingangsdaten
has_nixnein
has_testsja
lockfilespackage-lock.json, pnpm-lock.yaml, poetry.lock, uv.lock
has_dockerfileja
typed_languageja
bootstrap_filesMakefile
has_devcontainernein
has_linter_configja
typecheck_configsapps/memos-local-openclaw/tsconfig.json, apps/memos-local-plugin/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/ask-user-question/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/dev-browser/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/file-permission/tsconfig.json, apps/openwork-memos-integration/apps/desktop/tsconfig.json, apps/openwork-memos-integration/packages/shared/tsconfig.json
agent_commit_share0,08
toolchain_manifests
dependency_bot_commit_share0
Wie die Bewertung erfolgt
45/45Typprüfbarer Code — TypeScript (statisch typisiert)
54.2/55Handhabbare Dateigrößen — 21/1.404 Quelldateien über 60 KB
Verwendete Eingangsdaten
primary_languageTypeScript
largest_source_bytes658.395
source_files_sampled1.404
oversized_source_files21
Wie die Bewertung erfolgt
0/40API-Schema (OpenAPI/GraphQL/proto)
20/20MCP-Server
40/40Lauffähige Beispiele — examples
Verwendete Eingangsdaten
example_dirsexamples
has_mcp_signalja
api_schema_files

Eckdaten

10.355GitHub-Sterne
79Mitwirkende
1.870Commits, letzte 12 Monate
0Tage seit letztem Push
35Releases
4Bus-Faktor
50offene Issues
PyPIPaket-Ökosysteme

Warnungen zur Datenerhebung

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

Weitere Details

Stern- und Fork-Verlauf 0 ★ / 945 ⇿
0Sterne
945Forks
35Releases

Wann jeder Stern und Fork hinzugefügt wurde, von GitHub erfasst und nach Tagen gruppiert. Das kumulierte Wachstum steht direkt über den täglichen Zugängen, aus denen es besteht, sodass beide gegeneinander lesbar sind: stetiger organischer Zuwachs sieht ganz anders aus als ein abrupter, kurzlebiger Ausschlag. Wo dieser Unterschied messbar ist, wird er als Wachstumsauthentizität ausgewiesen.

02004006008001.000940302025-072026-012026-07
Major 2Minor 2Patch 30
OpenSSF Scorecard 4.6 / 10
4.6Gesamtwert

Unabhängige, werkzeugneutrale Sicherheitsbewertung durch das quelloffene OpenSSF Scorecard. Jede Prüfung honoriert eine Sicherheits-Praxis, nicht das Werkzeug eines bestimmten Anbieters. Prüfungen, die Scorecard nicht ermitteln konnte, sind mit k. A. markiert und vom Sicherheitswert ausgeschlossen (nie als null gezählt).Scorecard v5.5.0 · 2026-07-24 06:03 UTC

10Binary-Artifactsno binaries found in the repo
5Branch-Protectionbranch protection is not maximal on development and all release branches
6CI-Tests12 out of 20 merged PRs checked by a CI test -- score normalized to 6
0CII-Best-Practicesno effort to earn an OpenSSF best practices badge detected
6Code-ReviewFound 14/21 approved changesets -- score normalized to 6
10Contributorsproject has 12 contributing companies or organizations
10Dangerous-Workflowno dangerous workflow patterns detected
0Dependency-Update-Toolno update tool detected
0Fuzzingproject is not fuzzed
10Licenselicense file detected
10Maintained30 commit(s) and 26 issue activity found in the last 90 days -- score normalized to 10
10Packagingpackaging workflow detected
0Pinned-Dependenciesdependency not pinned by hash detected -- score normalized to 0
0SASTSAST tool is not run on all commits -- score normalized to 0
0Security-Policysecurity policy file not detected
k. A.Signed-Releasesno releases found
0Token-Permissionsdetected GitHub workflow tokens with excessive permissions
0Vulnerabilities172 existing vulnerabilities detected
Direkte Abhängigkeiten 12
RegistryPaketVersionsvorgabeManifest
PyPIopenai(>=1.77.0,<2.0.0)pyproject.toml
PyPIollama(>=0.5.0,<0.5.1)pyproject.toml
PyPItransformers(>=4.51.3,<5.0.0)pyproject.toml
PyPItenacity(>=9.1.2,<10.0.0)pyproject.toml
PyPIfastapi(>=0.115.12,<0.116.0)pyproject.toml
PyPIsqlalchemy(>=2.0.41,<3.0.0)pyproject.toml
PyPIpymysql(>=1.1.0,<2.0.0)pyproject.toml
PyPIscikit-learn(>=1.7.0,<2.0.0)pyproject.toml
PyPIfastmcp(>=2.10.5,<3.0.0)pyproject.toml
PyPIpython-dateutil(>=2.9.0.post0,<3.0.0)pyproject.toml
PyPIprometheus-client(>=0.23.1,<0.24.0)pyproject.toml
PyPIconcurrent-log-handler(>=0.9.28,<1.0.0)pyproject.toml
Alle Abhängigkeiten 869

Vollständig aufgelöster Abhängigkeitssatz aus dem GitHub-Abhängigkeitsgraphen: 23 direkte und 846 indirekte (transitive) Pakete. Die transitive Hülle ist vollständig, wenn das Repository eine Lockfile eincheckt.

RegistryPaketVersionBeziehung
PyPIconcurrent-log-handler0.9.28direkt
PyPIconcurrent-log-handler0.9.29direkt
PyPIfastapi0.115.14direkt
PyPIfastmcp2.10.5direkt
PyPIfastmcp2.13.0.2direkt
PyPIfastmcp2.14.7direkt
PyPIollama0.5.0direkt
PyPIopenai1.109.1direkt
PyPIopenai1.97.0direkt
PyPIprometheus-client0.23.1direkt
PyPIpymysql1.1.2direkt
PyPIpython-dateutil2.9.0.post0direkt
PyPIscikit-learn1.7.0direkt
PyPIscikit-learn1.7.2direkt
PyPIscikit-learn1.8.0direkt
PyPIsqlalchemy2.0.41direkt
PyPIsqlalchemy2.0.44direkt
PyPIsqlalchemy2.0.49direkt
PyPItenacity9.1.2direkt
PyPItenacity9.1.4direkt
PyPItransformers4.53.2direkt
PyPItransformers4.57.1direkt
PyPItransformers4.57.6direkt
npm@aws-sdk/client-bedrock^3.971.0indirekt
npm@aws-sdk/credential-providers^3.971.0indirekt
npm@babel/code-frame7.29.0indirekt
npm@babel/compat-data7.29.0indirekt
npm@babel/core7.29.0indirekt
npm@babel/generator7.29.1indirekt
npm@babel/helper-annotate-as-pure7.27.3indirekt
npm@babel/helper-compilation-targets7.28.6indirekt
npm@babel/helper-globals7.28.0indirekt
npm@babel/helper-module-imports7.28.6indirekt
npm@babel/helper-module-transforms7.28.6indirekt
npm@babel/helper-plugin-utils7.28.6indirekt
npm@babel/helper-string-parser7.27.1indirekt
npm@babel/helper-validator-identifier7.28.5indirekt
npm@babel/helper-validator-option7.27.1indirekt
npm@babel/helpers7.29.2indirekt
npm@babel/parser7.29.2indirekt
npm@babel/plugin-syntax-jsx7.28.6indirekt
npm@babel/plugin-transform-react-jsx7.28.6indirekt
npm@babel/plugin-transform-react-jsx-development7.27.1indirekt
npm@babel/template7.28.6indirekt
npm@babel/traverse7.29.0indirekt
npm@babel/types7.29.0indirekt
npm@electron/rebuild^4.0.2indirekt
npm@emnapi/runtime1.10.0indirekt
npm@esbuild/aix-ppc640.21.5indirekt
npm@esbuild/aix-ppc640.27.7indirekt
npm@esbuild/android-arm0.21.5indirekt
npm@esbuild/android-arm0.27.7indirekt
npm@esbuild/android-arm640.21.5indirekt
npm@esbuild/android-arm640.27.7indirekt
npm@esbuild/android-x640.21.5indirekt
npm@esbuild/android-x640.27.7indirekt
npm@esbuild/darwin-arm640.21.5indirekt
npm@esbuild/darwin-arm640.27.7indirekt
npm@esbuild/darwin-x640.21.5indirekt
npm@esbuild/darwin-x640.27.7indirekt
npm@esbuild/freebsd-arm640.21.5indirekt
npm@esbuild/freebsd-arm640.27.7indirekt
npm@esbuild/freebsd-x640.21.5indirekt
npm@esbuild/freebsd-x640.27.7indirekt
npm@esbuild/linux-arm0.21.5indirekt
npm@esbuild/linux-arm0.27.7indirekt
npm@esbuild/linux-arm640.21.5indirekt
npm@esbuild/linux-arm640.27.7indirekt
npm@esbuild/linux-ia320.21.5indirekt
npm@esbuild/linux-ia320.27.7indirekt
npm@esbuild/linux-loong640.21.5indirekt
npm@esbuild/linux-loong640.27.7indirekt
npm@esbuild/linux-mips64el0.21.5indirekt
npm@esbuild/linux-mips64el0.27.7indirekt
npm@esbuild/linux-ppc640.21.5indirekt
npm@esbuild/linux-ppc640.27.7indirekt
npm@esbuild/linux-riscv640.21.5indirekt
npm@esbuild/linux-riscv640.27.7indirekt
npm@esbuild/linux-s390x0.21.5indirekt
npm@esbuild/linux-s390x0.27.7indirekt
npm@esbuild/linux-x640.21.5indirekt
npm@esbuild/linux-x640.27.7indirekt
npm@esbuild/netbsd-arm640.27.7indirekt
npm@esbuild/netbsd-x640.21.5indirekt
npm@esbuild/netbsd-x640.27.7indirekt
npm@esbuild/openbsd-arm640.27.7indirekt
npm@esbuild/openbsd-x640.21.5indirekt
npm@esbuild/openbsd-x640.27.7indirekt
npm@esbuild/openharmony-arm640.27.7indirekt
npm@esbuild/sunos-x640.21.5indirekt
npm@esbuild/sunos-x640.27.7indirekt
npm@esbuild/win32-arm640.21.5indirekt
npm@esbuild/win32-arm640.27.7indirekt
npm@esbuild/win32-ia320.21.5indirekt
npm@esbuild/win32-ia320.27.7indirekt
npm@esbuild/win32-x640.21.5indirekt
npm@esbuild/win32-x640.27.7indirekt
npm@hono/node-server^1.19.7indirekt
npm@hono/node-ws^1.2.0indirekt
npm@huggingface/jinja0.5.7indirekt
npm@huggingface/transformers3.8.1indirekt
npm@huggingface/transformers^3.8.0indirekt
npm@img/colour1.1.0indirekt
npm@img/sharp-darwin-arm640.34.5indirekt
npm@img/sharp-darwin-x640.34.5indirekt
npm@img/sharp-libvips-darwin-arm641.2.4indirekt
npm@img/sharp-libvips-darwin-x641.2.4indirekt
npm@img/sharp-libvips-linux-arm1.2.4indirekt
npm@img/sharp-libvips-linux-arm641.2.4indirekt
npm@img/sharp-libvips-linux-ppc641.2.4indirekt
npm@img/sharp-libvips-linux-riscv641.2.4indirekt
npm@img/sharp-libvips-linux-s390x1.2.4indirekt
npm@img/sharp-libvips-linux-x641.2.4indirekt
npm@img/sharp-libvips-linuxmusl-arm641.2.4indirekt
npm@img/sharp-libvips-linuxmusl-x641.2.4indirekt
npm@img/sharp-linux-arm0.34.5indirekt
npm@img/sharp-linux-arm640.34.5indirekt
npm@img/sharp-linux-ppc640.34.5indirekt
npm@img/sharp-linux-riscv640.34.5indirekt
npm@img/sharp-linux-s390x0.34.5indirekt
npm@img/sharp-linux-x640.34.5indirekt
npm@img/sharp-linuxmusl-arm640.34.5indirekt
npm@img/sharp-linuxmusl-x640.34.5indirekt
npm@img/sharp-wasm320.34.5indirekt
npm@img/sharp-win32-arm640.34.5indirekt
npm@img/sharp-win32-ia320.34.5indirekt
npm@img/sharp-win32-x640.34.5indirekt
npm@isaacs/fs-minipass4.0.1indirekt
npm@jridgewell/gen-mapping0.3.13indirekt
npm@jridgewell/remapping2.3.5indirekt
npm@jridgewell/resolve-uri3.1.2indirekt
npm@jridgewell/sourcemap-codec1.5.5indirekt
npm@jridgewell/trace-mapping0.3.31indirekt
npm@modelcontextprotocol/sdk^1.0.0indirekt
npm@playwright/test^1.57.0indirekt
npm@preact/preset-vite2.10.5indirekt
npm@preact/signals2.9.0indirekt
npm@preact/signals-core1.14.1indirekt
npm@prefresh/babel-plugin0.5.3indirekt
npm@prefresh/core1.5.9indirekt
npm@prefresh/utils1.2.1indirekt
npm@prefresh/vite2.4.12indirekt
npm@protobufjs/aspromise1.1.2indirekt
npm@protobufjs/base641.1.2indirekt
npm@protobufjs/codegen2.0.4indirekt
npm@protobufjs/eventemitter1.1.0indirekt
npm@protobufjs/fetch1.1.0indirekt
npm@protobufjs/float1.0.2indirekt
npm@protobufjs/inquire1.1.0indirekt
npm@protobufjs/path1.1.2indirekt
npm@protobufjs/pool1.1.0indirekt
npm@protobufjs/utf81.1.0indirekt
npm@radix-ui/react-avatar^1.1.2indirekt
npm@radix-ui/react-dialog^1.1.4indirekt
npm@radix-ui/react-dropdown-menu^2.1.4indirekt
npm@radix-ui/react-label^2.1.1indirekt
npm@radix-ui/react-popover^1.1.4indirekt
npm@radix-ui/react-select^2.1.4indirekt
npm@radix-ui/react-separator^1.1.1indirekt
npm@radix-ui/react-slot^1.1.1indirekt
npm@radix-ui/react-tooltip^1.1.6indirekt
npm@rollup/pluginutils4.2.1indirekt
npm@rollup/pluginutils5.3.0indirekt
npm@rollup/rollup-android-arm-eabi4.60.1indirekt
npm@rollup/rollup-android-arm-eabi4.60.2indirekt
npm@rollup/rollup-android-arm644.60.1indirekt
npm@rollup/rollup-android-arm644.60.2indirekt
npm@rollup/rollup-darwin-arm644.60.1indirekt
npm@rollup/rollup-darwin-arm644.60.2indirekt
npm@rollup/rollup-darwin-x644.60.1indirekt
npm@rollup/rollup-darwin-x644.60.2indirekt
npm@rollup/rollup-freebsd-arm644.60.1indirekt
npm@rollup/rollup-freebsd-arm644.60.2indirekt
npm@rollup/rollup-freebsd-x644.60.1indirekt
npm@rollup/rollup-freebsd-x644.60.2indirekt
npm@rollup/rollup-linux-arm-gnueabihf4.60.1indirekt
npm@rollup/rollup-linux-arm-gnueabihf4.60.2indirekt
npm@rollup/rollup-linux-arm-musleabihf4.60.1indirekt
npm@rollup/rollup-linux-arm-musleabihf4.60.2indirekt
npm@rollup/rollup-linux-arm64-gnu4.60.1indirekt
npm@rollup/rollup-linux-arm64-gnu4.60.2indirekt
npm@rollup/rollup-linux-arm64-musl4.60.1indirekt
npm@rollup/rollup-linux-arm64-musl4.60.2indirekt
npm@rollup/rollup-linux-loong64-gnu4.60.1indirekt
npm@rollup/rollup-linux-loong64-gnu4.60.2indirekt
npm@rollup/rollup-linux-loong64-musl4.60.1indirekt
npm@rollup/rollup-linux-loong64-musl4.60.2indirekt
npm@rollup/rollup-linux-ppc64-gnu4.60.1indirekt
npm@rollup/rollup-linux-ppc64-gnu4.60.2indirekt
npm@rollup/rollup-linux-ppc64-musl4.60.1indirekt
npm@rollup/rollup-linux-ppc64-musl4.60.2indirekt
npm@rollup/rollup-linux-riscv64-gnu4.60.1indirekt
npm@rollup/rollup-linux-riscv64-gnu4.60.2indirekt
npm@rollup/rollup-linux-riscv64-musl4.60.1indirekt
npm@rollup/rollup-linux-riscv64-musl4.60.2indirekt
npm@rollup/rollup-linux-s390x-gnu4.60.1indirekt
npm@rollup/rollup-linux-s390x-gnu4.60.2indirekt
npm@rollup/rollup-linux-x64-gnu4.60.1indirekt
npm@rollup/rollup-linux-x64-gnu4.60.2indirekt
npm@rollup/rollup-linux-x64-gnu^4.0.0indirekt
npm@rollup/rollup-linux-x64-musl4.60.1indirekt
npm@rollup/rollup-linux-x64-musl4.60.2indirekt
npm@rollup/rollup-openbsd-x644.60.1indirekt
npm@rollup/rollup-openbsd-x644.60.2indirekt
npm@rollup/rollup-openharmony-arm644.60.1indirekt
npm@rollup/rollup-openharmony-arm644.60.2indirekt
npm@rollup/rollup-win32-arm64-msvc4.60.1indirekt
npm@rollup/rollup-win32-arm64-msvc4.60.2indirekt
npm@rollup/rollup-win32-ia32-msvc4.60.1indirekt
npm@rollup/rollup-win32-ia32-msvc4.60.2indirekt
npm@rollup/rollup-win32-x64-gnu4.60.1indirekt
npm@rollup/rollup-win32-x64-gnu4.60.2indirekt
npm@rollup/rollup-win32-x64-msvc4.60.1indirekt
npm@rollup/rollup-win32-x64-msvc4.60.2indirekt
npm@sinclair/typebox0.34.49indirekt
npm@sinclair/typebox^0.34.48indirekt
npm@tailwindcss/typography^0.5.15indirekt
npm@testing-library/dom^10.4.1indirekt
npm@testing-library/jest-dom6.6.3indirekt
npm@testing-library/react^16.3.1indirekt
npm@types/better-sqlite37.6.13indirekt
npm@types/better-sqlite3^7.6.12indirekt
npm@types/estree1.0.8indirekt
npm@types/express^5.0.0indirekt
npm@types/node22.19.17indirekt
npm@types/node^22.10.0indirekt
npm@types/node^22.10.2indirekt
npm@types/react^19.0.2indirekt
npm@types/react-dom^19.0.2indirekt
npm@types/semver^7.7.1indirekt
npm@types/uuid10.0.0indirekt
npm@types/uuid^10.0.0indirekt
npm@vitejs/plugin-react^4.3.4indirekt
npm@vitest/coverage-v8^4.0.17indirekt
npm@vitest/expect2.1.9indirekt
npm@vitest/mocker2.1.9indirekt
npm@vitest/pretty-format2.1.9indirekt
npm@vitest/runner2.1.9indirekt
npm@vitest/snapshot2.1.9indirekt
npm@vitest/spy2.1.9indirekt
npm@vitest/utils2.1.9indirekt
npmassertion-error2.0.1indirekt
npmautoprefixer^10.4.20indirekt
npmbabel-plugin-transform-hook-names1.0.2indirekt
npmbase64-js1.5.1indirekt
npmbaseline-browser-mapping2.10.19indirekt
npmbaseline-browser-mapping2.10.20indirekt
npmbetter-sqlite312.10.0indirekt
npmbetter-sqlite312.9.0indirekt
npmbetter-sqlite3^12.10.0indirekt
npmbindings1.5.0indirekt
npmbl4.1.0indirekt
npmboolbase1.0.0indirekt
npmboolean3.2.0indirekt
npmbrowserslist4.28.2indirekt
npmbuffer5.7.1indirekt
npmcac6.7.14indirekt
npmcaniuse-lite1.0.30001788indirekt
npmchai5.3.3indirekt
npmcheck-error2.1.3indirekt
npmchownr1.1.4indirekt
npmchownr3.0.0indirekt
npmclass-variance-authority^0.7.1indirekt
npmclsx^2.1.1indirekt
npmconvert-source-map2.0.0indirekt
npmcss-select5.2.2indirekt
npmcss-what6.2.2indirekt
npmdebug4.4.3indirekt
npmdecompress-response6.0.0indirekt
npmdeep-eql5.0.2indirekt
npmdeep-extend0.6.0indirekt
npmdefine-data-property1.1.4indirekt
npmdefine-properties1.2.1indirekt
npmdetect-libc2.1.2indirekt
npmdetect-node2.1.0indirekt
npmdom-serializer2.0.0indirekt
npmdomelementtype2.3.0indirekt
npmdomhandler5.0.3indirekt
npmdomutils3.2.2indirekt
npmdotenv^17.2.3indirekt
npmelectron^35.2.1indirekt
npmelectron-builder^25.1.8indirekt
npmelectron-store^8.2.0indirekt
npmelectron-to-chromium1.5.340indirekt
npmelectron-to-chromium1.5.343indirekt
npmend-of-stream1.4.5indirekt
npmentities4.5.0indirekt
npmes-define-property1.0.1indirekt
npmes-errors1.3.0indirekt
npmes-module-lexer1.7.0indirekt
npmes6-error4.1.1indirekt
npmesbuild0.21.5indirekt
npmesbuild0.27.7indirekt
npmescalade3.2.0indirekt
npmescape-string-regexp4.0.0indirekt
npmestree-walker2.0.2indirekt
npmestree-walker3.0.3indirekt
npmexpand-template2.0.3indirekt
npmexpect-type1.3.0indirekt
npmexpress^4.21.0indirekt
npmfile-uri-to-path1.0.0indirekt
npmflatbuffers25.9.23indirekt
npmframer-motion^12.26.2indirekt
npmfs-constants1.0.0indirekt
npmfsevents2.3.3indirekt
npmgensync1.0.0-beta.2indirekt
npmget-tsconfig4.14.0indirekt
npmgithub-from-package0.0.0indirekt
npmglobal-agent3.0.0indirekt
npmglobalthis1.0.4indirekt
npmgopd1.2.0indirekt
npmguid-typescript1.0.9indirekt
npmhappy-dom^20.1.0indirekt
npmhas-property-descriptors1.0.2indirekt
npmhe1.2.0indirekt
npmhono^4.11.1indirekt
npmieee7541.2.1indirekt
npminherits2.0.4indirekt
npmini1.3.8indirekt
npmjs-tokens4.0.0indirekt
npmjsdom^27.4.0indirekt
npmjsesc3.1.0indirekt
npmjson-stringify-safe5.0.1indirekt
npmjson52.2.3indirekt
npmkolorist1.8.0indirekt
npmlong5.3.2indirekt
npmloupe3.2.1indirekt
npmlru-cache5.1.1indirekt
npmlucide-react^0.454.0indirekt
npmmagic-string0.30.21indirekt
npmmatcher3.0.0indirekt
npmmimic-response3.1.0indirekt
npmminimist1.2.8indirekt
npmminipass7.1.3indirekt
npmminizlib3.1.0indirekt
npmmkdirp-classic0.5.3indirekt
npmms2.1.3indirekt
npmnanoid3.3.11indirekt
npmnapi-build-utils2.0.0indirekt
npmnext^15.1.3indirekt
npmnode-abi3.89.0indirekt
npmnode-html-parser6.1.13indirekt
npmnode-pty^1.1.0indirekt
npmnode-releases2.0.37indirekt
npmnode-releases2.0.38indirekt
npmnth-check2.1.1indirekt
npmobject-keys1.1.1indirekt
npmonce1.4.0indirekt
npmonnxruntime-common1.21.0indirekt
npmonnxruntime-common1.22.0-dev.20250409-89f8206ba4indirekt
npmonnxruntime-node1.21.0indirekt
npmonnxruntime-web1.22.0-dev.20250409-89f8206ba4indirekt
npmopencode-ai1.1.16indirekt
npmpathe1.1.2indirekt
npmpathval2.0.1indirekt
npmpicocolors1.1.1indirekt
npmpicomatch2.3.2indirekt
npmpicomatch4.0.4indirekt
npmplatform1.3.6indirekt
npmpostcss8.5.10indirekt
npmpostcss^8.4.49indirekt
npmposthog-node^5.28.0indirekt
npmpreact10.29.1indirekt
npmprebuild-install7.1.3indirekt
npmprotobufjs7.5.5indirekt
npmpump3.0.4indirekt
npmpuppeteer^24.38.0indirekt
npmrc1.2.8indirekt
npmreact^19.0.0indirekt
npmreact-dom^19.0.0indirekt
npmreact-markdown^9.0.1indirekt
npmreact-router-dom^7.1.1indirekt
npmreadable-stream3.6.2indirekt
npmrebrowser-playwright^1.52.0indirekt
npmresolve-pkg-maps1.0.0indirekt
npmroarr2.15.4indirekt
npmrollup4.60.1indirekt
npmrollup4.60.2indirekt
npmsafe-buffer5.2.1indirekt
npmsemver6.3.1indirekt
npmsemver7.7.4indirekt
npmsemver^7.7.4indirekt
npmsemver-compare1.0.0indirekt
npmserialize-error7.0.1indirekt
npmsharp0.34.5indirekt
npmsiginfo2.0.0indirekt
npmsimple-code-frame1.3.0indirekt
npmsimple-concat1.0.1indirekt
npmsimple-get4.0.1indirekt
npmsource-map0.7.6indirekt
npmsource-map-js1.2.1indirekt
npmsprintf-js1.1.3indirekt
npmstack-trace1.0.0-pre2indirekt
npmstackback0.0.2indirekt
npmstd-env3.10.0indirekt
npmstring_decoder1.3.0indirekt
npmstrip-json-comments2.0.1indirekt
npmtailwind-merge^3.3.1indirekt
npmtailwindcss^3.4.17indirekt
npmtailwindcss-animate^1.0.7indirekt
npmtar7.5.13indirekt
npmtar-fs2.1.4indirekt
npmtar-stream2.2.0indirekt
npmtinybench2.9.0indirekt
npmtinyexec0.3.2indirekt
npmtinypool1.1.1indirekt
npmtinyrainbow1.2.0indirekt
npmtinyspy3.0.2indirekt
npmtslib2.8.1indirekt
npmtsx4.21.0indirekt
npmtsx^4.21.0indirekt
npmtunnel-agent0.6.0indirekt
npmtype-fest0.13.1indirekt
npmtypescript5.9.3indirekt
npmtypescript^5.0.0indirekt
npmtypescript^5.7.0indirekt
npmtypescript^5.7.2indirekt
npmundici-types6.21.0indirekt
npmupdate-browserslist-db1.2.3indirekt
npmutil-deprecate1.0.2indirekt
npmuuid10.0.0indirekt
npmuuid^10.0.0indirekt
npmvite5.4.21indirekt
npmvite^6.0.6indirekt
npmvite-node2.1.9indirekt
npmvite-plugin-electron^0.28.8indirekt
npmvite-prerender-plugin0.5.13indirekt
npmvitest2.1.9indirekt
npmvitest^2.1.0indirekt
npmvitest^4.0.17indirekt
npmwhy-is-node-running2.3.0indirekt
npmwrappy1.0.2indirekt
npmyallist3.1.1indirekt
npmyallist5.0.0indirekt
npmyaml2.8.3indirekt
npmzimmerframe1.1.4indirekt
npmzod^3.24.1indirekt
npmzustand^5.0.2indirekt
PyPIabsl-py2.3.1indirekt
PyPIalibabacloud-oss-v21.2.2indirekt
PyPIannotated-doc0.0.4indirekt
PyPIannotated-types0.7.0indirekt
PyPIanyio4.11.0indirekt
PyPIanyio4.13.0indirekt
PyPIanyio4.9.0indirekt
PyPIasync-timeout5.0.1indirekt
PyPIattrs25.3.0indirekt
PyPIattrs25.4.0indirekt
PyPIattrs26.1.0indirekt
PyPIauthlib1.6.0indirekt
PyPIauthlib1.6.5indirekt
PyPIauthlib1.7.0indirekt
PyPIbackoff2.2.1indirekt
PyPIbackports-tarfile1.2.0indirekt
PyPIbeartype0.22.5indirekt
PyPIbeartype0.22.9indirekt
PyPIbeautifulsoup44.13.4indirekt
PyPIbeautifulsoup44.14.3indirekt
PyPIbert-score0.3.13indirekt
PyPIcachetools6.2.1indirekt
PyPIcachetools6.2.2indirekt
PyPIcachetools7.0.6indirekt
PyPIcertifi2025.11.12indirekt
PyPIcertifi2025.7.14indirekt
PyPIcertifi2026.2.25indirekt
PyPIcffi1.17.1indirekt
PyPIcffi2.0.0indirekt
PyPIcfgv3.4.0indirekt
PyPIcharset-normalizer3.4.2indirekt
PyPIcharset-normalizer3.4.4indirekt
PyPIcharset-normalizer3.4.7indirekt
PyPIchonkie1.1.0indirekt
PyPIchonkie1.1.1indirekt
PyPIchonkie1.6.4indirekt
PyPIchonkie-core0.10.1indirekt
PyPIclick8.2.1indirekt
PyPIclick8.3.0indirekt
PyPIclick8.3.2indirekt
PyPIcloudpickle3.1.2indirekt
PyPIcobble0.1.4indirekt
PyPIcolorama0.4.6indirekt
PyPIcoloredlogs15.0.1indirekt
PyPIcontourpy1.3.2indirekt
PyPIcoverage7.13.5indirekt
PyPIcrcmod-plus2.3.1indirekt
PyPIcronsim2.7indirekt
PyPIcryptography45.0.5indirekt
PyPIcryptography46.0.3indirekt
PyPIcryptography46.0.7indirekt
PyPIcuda-bindings13.2.0indirekt
PyPIcuda-pathfinder1.5.3indirekt
PyPIcuda-toolkit13.0.2indirekt
PyPIcycler0.12.1indirekt
PyPIcyclopts3.22.2indirekt
PyPIcyclopts4.10.2indirekt
PyPIcyclopts4.2.3indirekt
PyPIdatasketch1.10.0indirekt
PyPIdatasketch1.6.5indirekt
PyPIdefusedxml0.7.1indirekt
PyPIdiskcache5.6.3indirekt
PyPIdistlib0.4.0indirekt
PyPIdistro1.9.0indirekt
PyPIdnspython2.7.0indirekt
PyPIdnspython2.8.0indirekt
PyPIdocstring-parser0.16indirekt
PyPIdocstring-parser0.17.0indirekt
PyPIdocstring-parser0.18.0indirekt
PyPIdocutils0.21.2indirekt
PyPIdocutils0.22.3indirekt
PyPIdocutils0.22.4indirekt
PyPIdotenv0.9.9indirekt
PyPIemail-validator2.2.0indirekt
PyPIemail-validator2.3.0indirekt
PyPIet-xmlfile2.0.0indirekt
PyPIexceptiongroup1.3.0indirekt
PyPIexceptiongroup1.3.1indirekt
PyPIfakeredis2.34.1indirekt
PyPIfastapi-cli0.0.16indirekt
PyPIfastapi-cli0.0.24indirekt
PyPIfastapi-cli0.0.8indirekt
PyPIfastapi-cloud-cli0.1.4indirekt
PyPIfastapi-cloud-cli0.17.0indirekt
PyPIfastapi-cloud-cli0.3.1indirekt
PyPIfastar0.11.0indirekt
PyPIfilelock3.18.0indirekt
PyPIfilelock3.20.0indirekt
PyPIfilelock3.29.0indirekt
PyPIflatbuffers25.12.19indirekt
PyPIflatbuffers25.2.10indirekt
PyPIfonttools4.59.0indirekt
PyPIfsspec2025.10.0indirekt
PyPIfsspec2025.7.0indirekt
PyPIfsspec2026.3.0indirekt
PyPIgreenlet3.2.3indirekt
PyPIgreenlet3.4.0indirekt
PyPIgrpcio1.73.1indirekt
PyPIgrpcio1.76.0indirekt
PyPIgrpcio1.80.0indirekt
PyPIh110.16.0indirekt
PyPIh24.2.0indirekt
PyPIh24.3.0indirekt
PyPIhf-xet1.1.5indirekt
PyPIhf-xet1.2.0indirekt
PyPIhf-xet1.4.3indirekt
PyPIhpack4.1.0indirekt
PyPIhttpcore1.0.9indirekt
PyPIhttptools0.6.4indirekt
PyPIhttptools0.7.1indirekt
PyPIhttpx0.28.1indirekt
PyPIhttpx-sse0.4.1indirekt
PyPIhttpx-sse0.4.3indirekt
PyPIhuggingface-hub0.33.4indirekt
PyPIhuggingface-hub0.36.0indirekt
PyPIhuggingface-hub0.36.2indirekt
PyPIhumanfriendly10.0indirekt
PyPIhyperframe6.1.0indirekt
PyPIidentify2.6.12indirekt
PyPIidna3.10indirekt
PyPIidna3.11indirekt
PyPIidna3.12indirekt
PyPIimportlib-metadata8.7.1indirekt
PyPIiniconfig2.1.0indirekt
PyPIiniconfig2.3.0indirekt
PyPIitsdangerous2.2.0indirekt
PyPIjaraco-classes3.4.0indirekt
PyPIjaraco-context6.0.1indirekt
PyPIjaraco-context6.1.2indirekt
PyPIjaraco-functools4.3.0indirekt
PyPIjaraco-functools4.4.0indirekt
PyPIjeepney0.9.0indirekt
PyPIjieba0.42indirekt
PyPIjinja23.1.6indirekt
PyPIjiter0.10.0indirekt
PyPIjiter0.12.0indirekt
PyPIjiter0.14.0indirekt
PyPIjoblib1.5.1indirekt
PyPIjoblib1.5.2indirekt
PyPIjoblib1.5.3indirekt
PyPIjoserfc1.6.4indirekt
PyPIjsonpatch1.33indirekt
PyPIjsonpointer3.0.0indirekt
PyPIjsonpointer3.1.1indirekt
PyPIjsonref1.1.0indirekt
PyPIjsonschema4.24.1indirekt
PyPIjsonschema4.25.1indirekt
PyPIjsonschema4.26.0indirekt
PyPIjsonschema-path0.3.4indirekt
PyPIjsonschema-path0.4.5indirekt
PyPIjsonschema-specifications2025.4.1indirekt
PyPIjsonschema-specifications2025.9.1indirekt
PyPIkeyring25.6.0indirekt
PyPIkeyring25.7.0indirekt
PyPIkiwisolver1.4.8indirekt
PyPIlangchain-core1.1.0indirekt
PyPIlangchain-core1.3.0indirekt
PyPIlangchain-text-splitters1.0.0indirekt
PyPIlangchain-text-splitters1.1.2indirekt
PyPIlanggraph0.5.3indirekt
PyPIlanggraph-checkpoint2.1.1indirekt
PyPIlanggraph-prebuilt0.5.2indirekt
PyPIlanggraph-sdk0.1.73indirekt
PyPIlangsmith0.4.7indirekt
PyPIlangsmith0.7.33indirekt
PyPIlupa2.8indirekt
PyPIlxml6.0.0indirekt
PyPIlxml6.1.0indirekt
PyPImagika0.6.2indirekt
PyPImagika0.6.3indirekt
PyPImammoth1.11.0indirekt
PyPImammoth1.9.1indirekt
PyPImarkdown-it-py3.0.0indirekt
PyPImarkdown-it-py4.0.0indirekt
PyPImarkdownify1.1.0indirekt
PyPImarkdownify1.2.2indirekt
PyPImarkitdown0.1.2indirekt
PyPImarkitdown0.1.5indirekt
PyPImarkupsafe3.0.2indirekt
PyPImarkupsafe3.0.3indirekt
PyPImatplotlib3.10.3indirekt
PyPImcp1.12.0indirekt
PyPImcp1.21.1indirekt
PyPImcp1.27.0indirekt
PyPImdurl0.1.2indirekt
PyPImem0ai0.1.114indirekt
PyPImemoryos2.0.14indirekt
PyPImore-itertools10.8.0indirekt
PyPImore-itertools11.0.2indirekt
PyPImpmath1.3.0indirekt
PyPIneo4j5.28.1indirekt
PyPIneo4j5.28.3indirekt
PyPInetworkx3.4.2indirekt
PyPInetworkx3.5indirekt
PyPInetworkx3.6.1indirekt
PyPInltk3.9.1indirekt
PyPInltk3.9.4indirekt
PyPInodeenv1.9.1indirekt
PyPInumpy2.2.6indirekt
PyPInumpy2.3.1indirekt
PyPInumpy2.3.4indirekt
PyPInumpy2.4.4indirekt
PyPInvidia-cublas13.1.0.3indirekt
PyPInvidia-cublas-cu1212.6.4.1indirekt
PyPInvidia-cuda-cupti13.0.85indirekt
PyPInvidia-cuda-cupti-cu1212.6.80indirekt
PyPInvidia-cuda-nvrtc13.0.88indirekt
PyPInvidia-cuda-nvrtc-cu1212.6.77indirekt
PyPInvidia-cuda-runtime13.0.96indirekt
PyPInvidia-cuda-runtime-cu1212.6.77indirekt
PyPInvidia-cudnn-cu129.5.1.17indirekt
PyPInvidia-cudnn-cu139.19.0.56indirekt
PyPInvidia-cufft12.0.0.61indirekt
PyPInvidia-cufft-cu1211.3.0.4indirekt
PyPInvidia-cufile1.15.1.6indirekt
PyPInvidia-cufile-cu121.11.1.6indirekt
PyPInvidia-curand10.4.0.35indirekt
PyPInvidia-curand-cu1210.3.7.77indirekt
PyPInvidia-cusolver12.0.4.66indirekt
PyPInvidia-cusolver-cu1211.7.1.2indirekt
PyPInvidia-cusparse12.6.3.3indirekt
PyPInvidia-cusparse-cu1212.5.4.2indirekt
PyPInvidia-cusparselt-cu120.6.3indirekt
PyPInvidia-cusparselt-cu130.8.0indirekt
PyPInvidia-nccl-cu122.26.2indirekt
PyPInvidia-nccl-cu132.28.9indirekt
PyPInvidia-nvjitlink13.0.88indirekt
PyPInvidia-nvjitlink-cu1212.6.85indirekt
PyPInvidia-nvshmem-cu133.4.5indirekt
PyPInvidia-nvtx13.0.85indirekt
PyPInvidia-nvtx-cu1212.6.77indirekt
PyPIonnxruntime1.20.1indirekt
PyPIonnxruntime1.22.1indirekt
PyPIopenapi-pydantic0.5.1indirekt
PyPIopenpyxl3.1.5indirekt
PyPIopentelemetry-api1.41.0indirekt
PyPIorjson3.11.0indirekt
PyPIorjson3.11.4indirekt
PyPIorjson3.11.8indirekt
PyPIormsgpack1.10.0indirekt
PyPIpackaging25.0indirekt
PyPIpackaging26.1indirekt
PyPIpandas2.3.1indirekt
PyPIpandas2.3.3indirekt
PyPIpandas3.0.2indirekt
PyPIpathable0.4.4indirekt
PyPIpathable0.5.0indirekt
PyPIpathvalidate3.3.1indirekt
PyPIpdfminer-six20250506indirekt
PyPIpdfminer-six20251230indirekt
PyPIpdfplumber0.11.9indirekt
PyPIpika1.3.2indirekt
PyPIpillow11.3.0indirekt
PyPIpillow12.2.0indirekt
PyPIplatformdirs4.3.8indirekt
PyPIplatformdirs4.5.0indirekt
PyPIplatformdirs4.9.6indirekt
PyPIpluggy1.6.0indirekt
PyPIportalocker2.10.1indirekt
PyPIportalocker2.8.0indirekt
PyPIportalocker3.2.0indirekt
PyPIposthog6.1.1indirekt
PyPIpre-commit4.2.0indirekt
PyPIprotobuf6.31.1indirekt
PyPIprotobuf6.33.1indirekt
PyPIprotobuf7.34.1indirekt
PyPIpsycopg2-binary2.9.11indirekt
PyPIpy-key-value-aio0.2.8indirekt
PyPIpy-key-value-aio0.3.0indirekt
PyPIpy-key-value-shared0.2.8indirekt
PyPIpy-key-value-shared0.3.0indirekt
PyPIpycparser2.22indirekt
PyPIpycparser2.23indirekt
PyPIpycparser3.0indirekt
PyPIpycryptodome3.23.0indirekt
PyPIpydantic2.11.7indirekt
PyPIpydantic2.12.4indirekt
PyPIpydantic2.13.3indirekt
PyPIpydantic-core2.33.2indirekt
PyPIpydantic-core2.41.5indirekt
PyPIpydantic-core2.46.3indirekt
PyPIpydantic-extra-types2.10.5indirekt
PyPIpydantic-extra-types2.10.6indirekt
PyPIpydantic-extra-types2.11.1indirekt
PyPIpydantic-settings2.10.1indirekt
PyPIpydantic-settings2.12.0indirekt
PyPIpydantic-settings2.14.0indirekt
PyPIpydocket0.18.2indirekt
PyPIpygments2.19.2indirekt
PyPIpygments2.20.0indirekt
PyPIpyjwt2.10.1indirekt
PyPIpyjwt2.12.1indirekt
PyPIpymilvus2.6.12indirekt
PyPIpymilvus2.6.2indirekt
PyPIpymilvus2.6.5indirekt
PyPIpyparsing3.2.3indirekt
PyPIpypdfium25.7.1indirekt
PyPIpyperclip1.11.0indirekt
PyPIpyperclip1.9.0indirekt
PyPIpyreadline33.5.4indirekt
PyPIpytest8.4.1indirekt
PyPIpytest9.0.2indirekt
PyPIpytest-asyncio0.23.8indirekt
PyPIpytest-cov6.3.0indirekt
PyPIpytest-html4.2.0indirekt
PyPIpytest-metadata3.1.1indirekt
PyPIpython-dotenv1.1.1indirekt
PyPIpython-dotenv1.2.1indirekt
PyPIpython-dotenv1.2.2indirekt
PyPIpython-json-logger4.1.0indirekt
PyPIpython-multipart0.0.20indirekt
PyPIpython-multipart0.0.26indirekt
PyPIpython-pptx1.0.2indirekt
PyPIpytz2025.2indirekt
PyPIpytz2026.1.post1indirekt
PyPIpywin32311indirekt
PyPIpywin32-ctypes0.2.3indirekt
PyPIpyyaml6.0.2indirekt
PyPIpyyaml6.0.3indirekt
PyPIqdrant-client1.14.3indirekt
PyPIqdrant-client1.16.2indirekt
PyPIqdrant-client1.17.1indirekt
PyPIrake-nltk1.0.6indirekt
PyPIrank-bm250.2.2indirekt
PyPIredis6.2.0indirekt
PyPIredis6.4.0indirekt
PyPIreferencing0.36.2indirekt
PyPIreferencing0.37.0indirekt
PyPIregex2024.11.6indirekt
PyPIregex2025.11.3indirekt
PyPIregex2026.4.4indirekt
PyPIrequests2.32.4indirekt
PyPIrequests2.32.5indirekt
PyPIrequests2.33.1indirekt
PyPIrequests-toolbelt1.0.0indirekt
PyPIrich14.0.0indirekt
PyPIrich14.2.0indirekt
PyPIrich15.0.0indirekt
PyPIrich-rst1.3.1indirekt
PyPIrich-rst1.3.2indirekt
PyPIrich-toolkit0.14.8indirekt
PyPIrich-toolkit0.15.1indirekt
PyPIrich-toolkit0.19.7indirekt
PyPIrignore0.6.2indirekt
PyPIrignore0.7.6indirekt
PyPIrouge-score0.1.2indirekt
PyPIrpds-py0.26.0indirekt
PyPIrpds-py0.28.0indirekt
PyPIrpds-py0.30.0indirekt
PyPIruff0.11.13indirekt
PyPIsafetensors0.5.3indirekt
PyPIsafetensors0.6.2indirekt
PyPIsafetensors0.7.0indirekt
PyPIschedule1.2.2indirekt
PyPIscipy1.15.3indirekt
PyPIscipy1.16.0indirekt
PyPIscipy1.16.3indirekt
PyPIscipy1.17.1indirekt
PyPIsecretstorage3.5.0indirekt
PyPIsentence-transformers4.1.0indirekt
PyPIsentry-sdk2.33.0indirekt
PyPIsentry-sdk2.44.0indirekt
PyPIsentry-sdk2.58.0indirekt
PyPIsetuptools80.9.0indirekt
PyPIsetuptools81.0.0indirekt
PyPIshellingham1.5.4indirekt
PyPIsix1.17.0indirekt
PyPIsniffio1.3.1indirekt
PyPIsortedcontainers2.4.0indirekt
PyPIsoupsieve2.7indirekt
PyPIsoupsieve2.8.3indirekt
PyPIsse-starlette2.4.1indirekt
PyPIsse-starlette3.0.3indirekt
PyPIstarlette0.46.2indirekt
PyPIsympy1.14.0indirekt
PyPItaskgroup0.2.2indirekt
PyPItavily-python0.5.0indirekt
PyPItavily-python0.7.23indirekt
PyPIthreadpoolctl3.6.0indirekt
PyPItiktoken0.12.0indirekt
PyPItokenizers0.21.2indirekt
PyPItokenizers0.22.1indirekt
PyPItokenizers0.22.2indirekt
PyPItomli2.2.1indirekt
PyPItomli2.4.1indirekt
PyPItorchindirekt
PyPItorch2.11.0indirekt
PyPItorch2.7.1indirekt
PyPItqdm4.67.1indirekt
PyPItqdm4.67.3indirekt
PyPItriton3.3.1indirekt
PyPItriton3.5.0indirekt
PyPItriton3.6.0indirekt
PyPItyper0.16.0indirekt
PyPItyper0.20.0indirekt
PyPItyper0.24.1indirekt
PyPItyping-extensionsindirekt
PyPItyping-extensions4.14.1indirekt
PyPItyping-extensions4.15.0indirekt
PyPItyping-inspection0.4.1indirekt
PyPItyping-inspection0.4.2indirekt
PyPItzdata2025.2indirekt
PyPItzdata2026.1indirekt
PyPIujson5.10.0indirekt
PyPIujson5.11.0indirekt
PyPIujson5.12.0indirekt
PyPIuncalled-for0.3.1indirekt
PyPIurllib32.5.0indirekt
PyPIurllib32.6.3indirekt
PyPIuuid-utils0.14.1indirekt
PyPIuvicorn0.35.0indirekt
PyPIuvicorn0.38.0indirekt
PyPIuvicorn0.45.0indirekt
PyPIuvloop0.21.0indirekt
PyPIuvloop0.22.1indirekt
PyPIvirtualenv20.31.2indirekt
PyPIvolcengine-python-sdk4.0.45indirekt
PyPIvolcengine-python-sdk4.0.6indirekt
PyPIwatchfiles1.1.0indirekt
PyPIwatchfiles1.1.1indirekt
PyPIwebsockets15.0.1indirekt
PyPIwebsockets16.0indirekt
PyPIxlrd2.0.2indirekt
PyPIxlsxwriter3.2.5indirekt
PyPIxlsxwriter3.2.9indirekt
PyPIxxhash3.5.0indirekt
PyPIxxhash3.6.0indirekt
PyPIzep-cloud2.19.0indirekt
PyPIzipp3.23.1indirekt
PyPIzstandard0.23.0indirekt
PyPIzstandard0.25.0indirekt
Abhängigkeits-Advisories 5

Die Installation von pypi:MemoryOS@2.0.24 zieht 127 Pakete nach sich, direkt und transitiv: 5 tragen bekannte Advisories, davon 2 direkte Abhängigkeiten.

PaketVersionBeziehungSchweregradAdvisoriesBehoben in
fastmcp2.14.7direktkritisch63.2.0
transformers4.57.6direktkritisch75.5.0
mcp1.27.2indirekthoch21.28.1
starlette0.46.2indirekthoch141.3.1
diskcache5.6.3indirektmittel2

Ein Advisory bedeutet, dass die im Abhängigkeitsgraphen erfasste Version in den betroffenen Bereich eines Advisories fällt. Erreichbarkeit wird nicht analysiert, und der Graph enthält Entwicklungs- und Test-Pins — ein Fund kann das Werkzeug betreffen und nicht die ausgelieferte Software.

JSON-Rohbericht maschinenlesbar
{
  "data": {
    "repo": {
      "topics": [
        "agent",
        "llm",
        "memory",
        "long-term-memory",
        "memory-management",
        "rag",
        "skills",
        "openclaw",
        "agentic-ai",
        "ai",
        "ai-agents",
        "chatgpt",
        "claude",
        "hermes",
        "multi-agent",
        "python",
        "self-evolving",
        "self-hosted",
        "token-savings",
        "mcp"
      ],
      "is_fork": false,
      "size_kb": 58230,
      "has_wiki": false,
      "homepage": "https://memos.openmem.net",
      "languages": {
        "CSS": 91646,
        "HTML": 617187,
        "Shell": 87427,
        "Python": 5275022,
        "Makefile": 832,
        "Dockerfile": 3200,
        "JavaScript": 222614,
        "PowerShell": 33146,
        "TypeScript": 8790694,
        "Go Template": 762
      },
      "pushed_at": "2026-07-24T03:49:41Z",
      "created_at": "2025-07-06T09:51:27Z",
      "owner_type": "Organization",
      "updated_at": "2026-07-24T05:11:45Z",
      "description": "Self-evolving memory OS for LLM & AI Agents: ultra-persistent memory, hybrid-retrieval, and cross-task skill reuse, with 35.24% token savings",
      "is_archived": false,
      "is_disabled": false,
      "license_spdx": "Apache-2.0",
      "default_branch": "main",
      "license_spdx_raw": "Apache-2.0",
      "primary_language": "TypeScript",
      "significant_languages": [
        "TypeScript",
        "Python"
      ]
    },
    "owner": {
      "blog": null,
      "name": "OpenMem",
      "type": "Organization",
      "login": "MemTensor",
      "company": null,
      "location": null,
      "followers": 204,
      "avatar_url": "https://avatars.githubusercontent.com/u/210160027?v=4",
      "created_at": "2025-05-03T14:46:45Z",
      "is_verified": null,
      "public_repos": 24,
      "account_age_days": 446
    },
    "license": {
      "state": "standard",
      "spdx_id": "Apache-2.0",
      "raw_spdx": "Apache-2.0",
      "file_present": true,
      "scorecard_found": true,
      "profile_has_license": true
    },
    "activity": {
      "releases": [
        {
          "tag": "v2.0.24",
          "kind": "patch",
          "published_at": "2026-07-19T14:49:33Z"
        },
        {
          "tag": "memos-local-plugin-v2.0.10",
          "kind": "other",
          "published_at": "2026-07-15T10:48:24Z"
        },
        {
          "tag": "v2.0.23",
          "kind": "patch",
          "published_at": "2026-07-09T09:22:50Z"
        },
        {
          "tag": "v2.0.22",
          "kind": "patch",
          "published_at": "2026-07-03T08:30:43Z"
        },
        {
          "tag": "v2.0.20",
          "kind": "patch",
          "published_at": "2026-06-18T07:29:24Z"
        },
        {
          "tag": "v2.0.19",
          "kind": "patch",
          "published_at": "2026-06-12T07:55:01Z"
        },
        {
          "tag": "v2.0.17",
          "kind": "patch",
          "published_at": "2026-05-26T06:13:42Z"
        },
        {
          "tag": "v2.0.16",
          "kind": "patch",
          "published_at": "2026-05-19T02:45:17Z"
        },
        {
          "tag": "v2.0.15",
          "kind": "patch",
          "published_at": "2026-05-11T03:20:17Z"
        },
        {
          "tag": "v2.0.14",
          "kind": "patch",
          "published_at": "2026-04-23T11:54:16Z"
        },
        {
          "tag": "v2.0.13",
          "kind": "patch",
          "published_at": "2026-04-10T07:50:50Z"
        },
        {
          "tag": "v2.0.12",
          "kind": "patch",
          "published_at": "2026-04-07T03:28:30Z"
        },
        {
          "tag": "v2.0.11",
          "kind": "patch",
          "published_at": "2026-03-27T09:31:57Z"
        },
        {
          "tag": "v2.0.10",
          "kind": "patch",
          "published_at": "2026-03-20T09:48:31Z"
        },
        {
          "tag": "v2.0.9",
          "kind": "patch",
          "published_at": "2026-03-16T07:33:42Z"
        },
        {
          "tag": "v2.0.8",
          "kind": "patch",
          "published_at": "2026-03-09T10:01:54Z"
        },
        {
          "tag": "v2.0.7",
          "kind": "patch",
          "published_at": "2026-02-28T09:31:47Z"
        },
        {
          "tag": "v2.0.6",
          "kind": "patch",
          "published_at": "2026-02-12T11:52:32Z"
        },
        {
          "tag": "v2.0.5",
          "kind": "patch",
          "published_at": "2026-02-10T02:51:17Z"
        },
        {
          "tag": "v2.0.4",
          "kind": "patch",
          "published_at": "2026-01-30T09:09:21Z"
        },
        {
          "tag": "v2.0.3",
          "kind": "patch",
          "published_at": "2026-01-23T06:38:06Z"
        },
        {
          "tag": "v2.0.2",
          "kind": "patch",
          "published_at": "2026-01-16T08:56:28Z"
        },
        {
          "tag": "v2.0.1",
          "kind": "patch",
          "published_at": "2026-01-09T11:20:32Z"
        },
        {
          "tag": "v2.0.0",
          "kind": "major",
          "published_at": "2025-12-24T13:19:44Z"
        },
        {
          "tag": "v1.1.3",
          "kind": "patch",
          "published_at": "2025-11-07T03:24:45Z"
        },
        {
          "tag": "v1.1.2",
          "kind": "patch",
          "published_at": "2025-10-11T09:24:03Z"
        },
        {
          "tag": "v1.1.1",
          "kind": "patch",
          "published_at": "2025-09-24T17:15:36Z"
        },
        {
          "tag": "v1.1.0",
          "kind": "minor",
          "published_at": "2025-09-24T15:23:07Z"
        },
        {
          "tag": "v1.0.1",
          "kind": "patch",
          "published_at": "2025-09-10T08:31:49Z"
        },
        {
          "tag": "v1.0.0",
          "kind": "major",
          "published_at": "2025-08-07T13:32:25Z"
        },
        {
          "tag": "v0.2.2",
          "kind": "patch",
          "published_at": "2025-07-29T15:04:23Z"
        },
        {
          "tag": "v0.2.1",
          "kind": "patch",
          "published_at": "2025-07-21T15:05:31Z"
        },
        {
          "tag": "v0.2.0",
          "kind": "minor",
          "published_at": "2025-07-11T12:35:26Z"
        },
        {
          "tag": "v0.1.13",
          "kind": "patch",
          "published_at": "2025-07-09T13:20:23Z"
        },
        {
          "tag": "v0.1.12",
          "kind": "patch",
          "published_at": "2025-07-08T15:22:51Z"
        }
      ],
      "recent_commits": [
        {
          "oid": "6734a0ea8d01293b4dae3611fae0ab3834366e1b",
          "body": "This reverts commit 21a27ed19dcbbfcf830a3ce1253aed5b2ee66898.\n\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Revert \"feat: chunk batch reflection scoring (#1957)\" (#2145)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-23T09:50:48Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "21a27ed19dcbbfcf830a3ce1253aed5b2ee66898",
          "body": "* Fix #1540: fix: (#1824)\n\ndocs(memos-local-plugin): clarify install path and stale dir names (#1540)\n\nThe README's 'Quick start' section told users to use install.sh instead\nof npm install, but the warning was buried and users still tried\n'npm install -g @memtensor/memos-local-plugin' first. The re\n[…]\n-by: Jiang <33757498+hijzy@users.noreply.github.com>\nCo-authored-by: GU TIANCHUN <96930846+TianchunGu@users.noreply.github.com>\nCo-authored-by: Dubberman <48425266+whipser030@users.noreply.github.com>",
          "is_bot": false,
          "headline": "feat: chunk batch reflection scoring (#1957)",
          "author_name": "Erick Wipprecht",
          "author_login": "chiefmojo",
          "committed_at": "2026-07-23T09:32:13Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "554bb98ee7c28307dbaeac569a0dea49ff0062fd",
          "body": null,
          "is_bot": false,
          "headline": "chore: update version to v2.0.24",
          "author_name": "harvey_xiang",
          "author_login": null,
          "committed_at": "2026-07-19T03:39:07Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bedc1875cc9d685868f43488a61211c495d3c238",
          "body": "* feat(api): align OpenMem v1 SDK with cloud API\n\n* feat(api): align OpenMem v1 SDK with cloud API\n\n* fix(memos-local): include json hint in user messages (#1756)\n\nCo-authored-by: shinetata <149466187+shinetata@users.noreply.github.com>\n\n* docs: fix scheduler API examples to match server endpoints (\n[…]\nshinetata <149466187+shinetata@users.noreply.github.com>\nCo-authored-by: sunqi <sunqi@memtensor.com>\nCo-authored-by: Cursor <cursoragent@cursor.com>\nCo-authored-by: Memtensor-AI <project@memtensor.cn>",
          "is_bot": false,
          "headline": "Merge 2.0.24 into main (#2119)",
          "author_name": "Qi Weng",
          "author_login": "bittergreen",
          "committed_at": "2026-07-19T03:20:59Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "13fbd43743b3b04b8c105a485f6c97729d26f776",
          "body": "…erformance table\n\nAligns the News section's LoCoMo/LongMemEval scores with the Performance table (88.83 / 89.20) in both README.md and README_ZH.md.\n\nFixes #2090",
          "is_bot": false,
          "headline": "Fix #2090: fix: README benchmark scores in News section don't match P…",
          "author_name": "shinetata",
          "author_login": "shinetata",
          "committed_at": "2026-07-09T11:05:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c6af4aadc9622c39fea63bf736c9c2a6cca7b9dc",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into bugfix/autodev-2090-20260709093247057",
          "author_name": "shinetata",
          "author_login": "shinetata",
          "committed_at": "2026-07-09T10:50:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2a12736958097d6d3f1b5d472f3b6c315cb989d3",
          "body": "Bumps apps/memos-local-plugin/package.json and package-lock.json for the\npublished npm release 2.0.10.\n\nPublished package:\nhttps://www.npmjs.com/package/@memtensor/memos-local-plugin/v/2.0.10\nRelease tag: memos-local-plugin-v2.0.10",
          "is_bot": false,
          "headline": "release: @memtensor/memos-local-plugin v2.0.10 (#2093)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T09:51:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "87d084345eeb5e33f7b29d128e90d39a00f391d1",
          "body": null,
          "is_bot": true,
          "headline": "release: @memtensor/memos-local-plugin v2.0.10",
          "author_name": "github-actions[bot]",
          "author_login": "github-actions[bot]",
          "committed_at": "2026-07-09T09:47:15Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "64cddbfb7d81d268e55dda05c6fdb804a449798e",
          "body": "…mance table\n\nThe News section for 2026-07-02 quoted LoCoMo=92.34 and LongMemEval=93.40\n(added in #2019), while the Performance table just below reports 88.83 and\n89.20 (added in #2078 with the 10-benchmark 2026-07-02 evaluation report).\nUpdate the News entry in both README.md and README_ZH.md to 88.83 / 89.20 so\nthe two sections agree; the Performance table remains the authoritative\nsource.\n\nCloses #2090",
          "is_bot": false,
          "headline": "fix(readme): align News section LoCoMo/LongMemEval scores with Perfor…",
          "author_name": "autodev-bot",
          "author_login": null,
          "committed_at": "2026-07-09T09:37:51Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a8a7b3cb27e9cc6c83c45a1f278f2d11b34eb239",
          "body": "## Summary\n- avoid pushing release commits directly to protected main from plugin\npublish workflows\n- push version bump commits to release/<tag> branches and create PRs\ninstead\n- skip npm publish when the requested version already exists, so\npartially completed releases can be rerun safely\n- include package-lock.json in memos-local-plugin release metadata\ncommits\n\n## Verification\n- ruby YAML parse for both workflow files\n- bash -n for updated publish/release shell blocks\n- git diff --check",
          "is_bot": false,
          "headline": "fix(ci): avoid protected branch push in plugin releases (#2091)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T09:36:09Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "13b51e9ff27ea20cdcc95c4378ae68ab63b5a542",
          "body": null,
          "is_bot": false,
          "headline": "fix(ci): avoid protected branch push in plugin releases",
          "author_name": "jiachengzhen",
          "author_login": null,
          "committed_at": "2026-07-09T09:28:34Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "583b07b998afc4debb6c5078439b0b3896f5b097",
          "body": "## Description\n\nPlease include a summary of the change, the problem it solves, the\nimplementation approach, and relevant context. List any dependencies\nrequired for this change.\n\nRelated Issue (Required):  Fixes #issue_number\n\n## Type of change\n\nPlease delete options that are not relevant.\n\n- [ ] Bu\n[…]\nd the person who will review this PR | 我已提及将审查此 PR\n的人\n\n## Reviewer Checklist\n- [ ] closes #xxxx (Replace xxxx with the GitHub issue number)\n- [ ] Made sure Checks passed\n- [ ] Tests have been provided",
          "is_bot": false,
          "headline": "release: merge dev-v2.0.23 into main (#2085)",
          "author_name": "HarveyXiang",
          "author_login": "CarltonXiang",
          "committed_at": "2026-07-09T07:51:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "906b45bb796b506667137fc1a2fefc6649344f4d",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into dev-v2.0.23",
          "author_name": "HarveyXiang",
          "author_login": "CarltonXiang",
          "committed_at": "2026-07-09T07:15:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "7a17ce1b558b3c4ec4409366560e3e8a62baeba9",
          "body": null,
          "is_bot": false,
          "headline": "chore: update version to 2.0.23",
          "author_name": "harvey_xiang",
          "author_login": null,
          "committed_at": "2026-07-09T07:10:28Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "59c14746bd26716045c1a3ce622fd295c8988833",
          "body": "…able vector scan (scan (#2077)\n\n* fix(local-plugin): stop unbounded trace re-insertion + 100% CPU vector scan (#2076)\n\nTwo coupled root causes made the gateway Node process pin one CPU core\nat 100% with 4.2 GB RSS on startup for 40+ minutes on a 518k-row DB.\n\nBug #1 — synchronous full-table vector \n[…]\nerge conflict\n\n---------\n\nCo-authored-by: MemOS AutoDev <autodev@memtensor.local>\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Fix #2076: local-plugin v2.0.8: gateway CPU 100% — synchronous full-t…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-09T06:31:11Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "142fad4f7ce6757e8cd23d8deea9de6027eabae2",
          "body": "fix: publish compiled openclaw plugin entry\n\nCo-authored-by: Ziyang Guo <121015044+RerankerGuo@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix: publish compiled OpenClaw plugin entry (#2084)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T06:29:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "16dcbe638935f1dffaa059c9e6321d9ccff860ee",
          "body": "Reverts #2013 because it was merged into `main`, but the change should\nnot have landed on the main branch.\n\nThis PR was generated with `git revert -m 1\n9adfc7d5d24df372d168d579a9bfd69653ee045e` and only undoes the files\nchanged by #2013.",
          "is_bot": false,
          "headline": "Revert \"fix: publish compiled OpenClaw plugin entry (#2013)\" (#2082)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T06:24:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9deb941e8f888faccad098180cc6197642954f67",
          "body": "* feat(l3): dedicated l3Llm config slot for abstraction pass\n\nL3 abstraction runs on the main `llm`, which on cheap models\n(gemini-2.5-flash-lite) over-extracts and truncates the JSON,\nproducing \"'constraints'/'inference' must be an array\" failures —\nViolet logged 180 such failures and produced only\n[…]\nt\n\n* fix: resolve l3 llm config conflict\n\n* fix: satisfy ruff for hermes bridge reconnect\n\n---------\n\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>\nCo-authored-by: zhaxi <syzsunshine219@gmail.com>",
          "is_bot": false,
          "headline": "feat(l3): dedicated l3Llm config slot for abstraction pass (#1959)",
          "author_name": "Erick Wipprecht",
          "author_login": "chiefmojo",
          "committed_at": "2026-07-09T06:16:52Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b5fd982a63f9820d73845e7eba9ab06c1d074574",
          "body": "This reverts commit 9adfc7d5d24df372d168d579a9bfd69653ee045e, reversing\nchanges made to 96b8bec6ef0317ca5b78976d0f407078c34cbbc0.",
          "is_bot": false,
          "headline": "Revert \"fix: publish compiled OpenClaw plugin entry (#2013)\"",
          "author_name": "jiachengzhen",
          "author_login": null,
          "committed_at": "2026-07-09T06:15:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "9adfc7d5d24df372d168d579a9bfd69653ee045e",
          "body": "Fixes #1675.\n\nSummary\n- Point the npm package and OpenClaw manifests at the compiled\nentrypoint `./dist/index.js` instead of `index.ts`.\n- Include `dist` and `tsconfig.json` in the published package, and run\n`npm run build` during prepublish.\n- Compile from the package root so the root OpenClaw plug\n[…]\not installed in this worktree.\n- Attempted: npm run build; blocked because tsc is not installed in this\nworktree.\n- Attempted: make format; blocked because poetry is not installed in\nthis environment.",
          "is_bot": false,
          "headline": "fix: publish compiled OpenClaw plugin entry (#2013)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T06:13:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ff1b1be8c7f014270fe0df96e958b68387068dec",
          "body": "Fixes #1380.\n\nSummary\n- Tighten the skill creation evaluator prompt so low-reuse tasks are\nrejected before skill generation.\n- Add explicit filters for simple tool installation plus basic config,\nexploratory revert/abandon outcomes, and discussion/comparison-only\noutputs.\n- Add the requested experie\n[…]\not installed in this worktree.\n- Attempted: npm run build; blocked because tsc is not installed in this\nworktree.\n- Attempted: make format; blocked because poetry is not installed in\nthis environment.",
          "is_bot": false,
          "headline": "fix: tighten skill generation policy prompts (#2014)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T06:13:04Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "fda8c2299169536630dda2b40cf3285e782258c2",
          "body": "* fix: quarantine stale sqlite native binding\n\n* fix(openclaw): report unlink failure (not rename) and dedupe quarantine paths\n\nOCR review on #2049 surfaced two real bugs in quarantineNativeBinding:\n\n1. The inner 'catch {}' block had no binding, so 'reason' reported the\n   outer rename failure inste\n[…]\n-AI <project@memtensor.cn>\nCo-authored-by: Ziyang Guo <121015044+RunMarshal@users.noreply.github.com>\nCo-authored-by: zhaxi <syzsunshine219@gmail.com>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "fix: quarantine stale sqlite native binding (#2049)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T06:11:41Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "40f8e832a59bd9e56ac1b2ac338c764008a42b41",
          "body": "…DME_ZH (#2078)\n\n* docs: rewrite README around three usage scenarios with bilingual support\n\n- Rewrite README.md around three entry points: self-host, OpenClaw cloud plugin, local plugin\n- Add Performance block with 10 benchmark scores from 2026-07-02 evaluation report\n- Add \"What MemOS Is For\" sect\n[…]\nCo-authored-by: Cursor <cursoragent@cursor.com>\n\n---------\n\nCo-authored-by: sunqi <sunqi@memtensor.com>\nCo-authored-by: Cursor <cursoragent@cursor.com>\nCo-authored-by: zhaxi <syzsunshine219@gmail.com>",
          "is_bot": false,
          "headline": "docs: rewrite README around three usage scenarios + add bilingual REA…",
          "author_name": "shinetata",
          "author_login": "shinetata",
          "committed_at": "2026-07-09T06:10:45Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "4053c253c00fe8ef654a5f788ee5191929130bd3",
          "body": "…rable (#1483)\n\n* feat(memos-local): make auto-recall Phase 1 parameters configurable\n\nAuto-recall Phase 1 was using hardcoded maxResults=10 and minScore=0.45\nfor the quick local search pass before LLM dedup. This makes those\nvalues configurable via the existing recall.* config namespace:\n\n  recall.\n[…]\necially for\nusers with large memory stores.\n\n* fix: align auto-recall config with base\n\n---------\n\nCo-authored-by: 庸人i <yong@yongrenideMac-mini.local>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "feat(memos-local): make auto-recall Phase 1 search parameters configu…",
          "author_name": "yongren-del",
          "author_login": "yongren-del",
          "committed_at": "2026-07-09T06:09:21Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "8db255e4621eb7b0d5604ac36db75d382158592f",
          "body": null,
          "is_bot": false,
          "headline": "fix: tests for preference extractors (#2080)",
          "author_name": "Qi Weng",
          "author_login": "bittergreen",
          "committed_at": "2026-07-09T03:58:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "bcb711ee3ceaa44c3393016186d632ae3f84cd87",
          "body": "## Description\n\nfix: Disable thinking for qwen3 preference extractor\n\n## Type of change\n\n- [x] Bug fix (non-breaking change which fixes an issue)\n\n## How Has This Been Tested?\n\n- Not applicable\n\n## Checklist\n\n- [x] I have performed a self-review of my own code | 我已自行检查了自己的代码\n- [x] I have commented m\n[…]\nd the person who will review this PR | 我已提及将审查此 PR\n的人\n\n## Reviewer Checklist\n- [ ] closes #xxxx (Replace xxxx with the GitHub issue number)\n- [ ] Made sure Checks passed\n- [ ] Tests have been provided",
          "is_bot": false,
          "headline": "fix: Disable thinking for qwen3 preference extractor (#2079)",
          "author_name": "Qi Weng",
          "author_login": "bittergreen",
          "committed_at": "2026-07-09T03:50:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c739e9f264bbd8f78a6322cf677d2c409f31e138",
          "body": null,
          "is_bot": false,
          "headline": "fix: ruff",
          "author_name": "bittergreen",
          "author_login": "bittergreen",
          "committed_at": "2026-07-09T03:48:59Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "8436e3f85ddd39e51c33d97c0a8f9d0d15a56279",
          "body": "# Conflicts:\n#\tsrc/memos/api/config.py",
          "is_bot": false,
          "headline": "fix: Disable thinking for qwen3 preference extractor",
          "author_name": "bittergreen",
          "author_login": "bittergreen",
          "committed_at": "2026-07-09T03:36:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "11758c95fc961d4c6d7cf8447176b1149be0d4e6",
          "body": "…ist (#1669)\n\nCo-authored-by: zhaxi <syzsunshine219@gmail.com>",
          "is_bot": false,
          "headline": "fix: add missing contracts.tools declaration for OpenClaw tool allowl…",
          "author_name": "saraphine001",
          "author_login": "saraphine001",
          "committed_at": "2026-07-09T03:28:10Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0f4d2863c53a719ab5052d2f71c485f27e2c2daf",
          "body": "…ble probe (#1663)\n\n## Problem\n\nWhen configuring `openai_compatible` provider with an endpoint that\nalready includes the full API path (e.g. Zhipu AI / GLM models):\n\n```yaml\nendpoint: https://open.bigmodel.cn/api/paas/v4/chat/completions\n```\n\nThe probe function would append another `/v1/chat/complet\n[…]\nutes/models.ts`\n\n## Backward Compatibility\n\nFully backward compatible — existing endpoint formats (`/v1` or base\nURL) continue to work as before. This only adds support for the\nalready-full-path case.",
          "is_bot": false,
          "headline": "fix(memos-local-plugin): handle full endpoint paths in openai_compati…",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T03:10:56Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "347ce82ba938744de863f187b880a03bee5e9400",
          "body": "…uplication",
          "is_bot": false,
          "headline": "Merge branch 'dev-v2.0.23' into fix/openai-compatible-endpoint-path-d…",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T03:08:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "365bd8b569ede3aefb524da913644fe12165e361",
          "body": "…475)\n\nfeat(memos-local): add data export endpoint and UI (#1474)\n\n- SqliteStore.exportAll(): dump all memories/tasks/skills as JSON\n- SqliteStore.exportMemoriesAsCsv(): memories-only CSV with ISO timestamps\n- GET /api/export?format=json|csv endpoint in ViewerServer\n- Export buttons in Settings → General tab (i18n: en + zh)\n- exportData() JS helper triggers file download via <a> click\n\nCloses #1474\n\nCo-authored-by: zhaxi <syzsunshine219@gmail.com>",
          "is_bot": false,
          "headline": "feat(memos-local): add data export endpoint and UI (closes #1474) (#1…",
          "author_name": "owensun6",
          "author_login": "owensun6",
          "committed_at": "2026-07-09T03:01:25Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "43b8f2e1a89494870962e9f356f43e97244dfed1",
          "body": "Summary\n- Fixes #1421.\n- Add optional `inputType`, `queryInputType`, and `documentInputType`\nembedding config fields.\n- Route document embeddings through `documentInputType` and query\nembeddings through `queryInputType`, falling back to `inputType` when a\nspecific value is absent.\n- Forward `input_t\n[…]\ntests/embedding-input-type.test.ts (blocked: vitest:\nnot found)\n- npm run build (blocked: tsc: not found)\n- npm run lint (blocked: eslint: not found)\n- make format (blocked: poetry: Command not found)",
          "is_bot": false,
          "headline": "feat: route embedding input types by usage (#2024)",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T02:46:19Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a9338d8ad7c2f78b86af810fcc932ca6b48cf177",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* feat: add configurable CJK keyword tokenization\n\n---------\n\nCo-authored-by: harvey_xiang <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "feat: add configurable CJK keyword tokenization (#2040)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:45:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "de03ab29b10fcc70425d3d1b8a94f95b9556df17",
          "body": "…y skip evolution pipel (#2074)\n\n* fix(memos-local-plugin): actually skip evolution pipeline when lightweightMemory is enabled (#2063)\n\n`buildPipelineSubscribers` used to attach reward / L2 / L3 / skill /\nfeedback subscribers unconditionally, so `algorithm.lightweightMemory.enabled: true`\nonly affec\n[…]\natching\n   the existing recoveryReason=\"lightweight_startup_close_backfill\"\n   distinction so downstream analytics can tell the two apart.\n\n---------\n\nCo-authored-by: autodev <autodev@memtensor.local>",
          "is_bot": false,
          "headline": "Fix #2063: algorithm.lightweightMemory.enabled: true does not actuall…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-09T02:40:38Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "edcd7c84d493bed12d629012e10ab2295396e3cc",
          "body": "…th (#1817)\n\n## Summary\n\nThree targeted fixes from companion infrastructure stabilization:\n\n### 1. Skip orphan trace insert during dirty-reward recovery\n(`fc7252fc`)\nWhen `dirtyFlag` triggers a rescore on episodes with no matching turns,\nthe capture path inserts a trace with `r_reward=0` but no vali\n[…]\n/ `::1`).\n\n## Testing\n\nAll three fixes have been running on three companion instances\n(neuromancer, wintermute, case) for 48+ hours with zero bridge failures,\nno new orphan traces, and clean RPC auth.",
          "is_bot": false,
          "headline": "fix: bridge startup race, dirty-reward orphan traces, RPC loopback au…",
          "author_name": "zhaxi",
          "author_login": "syzsunshine219",
          "committed_at": "2026-07-09T02:39:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "598b674516f3e8deef7727a6af1ee7a512ca9e29",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* fix: avoid blocking OpenClaw registration rebuild\n\n* fix(openclaw): alias pluginDir to moduleDir after detectPluginDir removal\n\nOCR review on #2044 flagged that after removing detectPluginDir(modu\n[…]\ng <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>\nCo-authored-by: Ziyang Guo <121015044+RunMarshal@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix: avoid blocking OpenClaw plugin registration (#2044)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:34:58Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "2c48b496861d7bea6ca1ff963ba180d7c7209c87",
          "body": "…ponse (#2064)\n\n* fix(skill-crystallize): retry with context when LLM returns empty response\n\n* chore: add retry_succeeded log so successful rescues are visible\nWhen the correction retry rescues a previously-failed crystallization,\nlog a warning with policyId and the original error so operators can\n\n[…]\nn\nthe LLM returns blank output the correction retry was never triggered.\nChanged to  so empty responses also get a retry.\n\n---------\n\nCo-authored-by: 34262315716 <34262315716@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix(skill-crystallize): retry with context when LLM returns empty res…",
          "author_name": "Critical Natural",
          "author_login": "34262315716",
          "committed_at": "2026-07-09T02:33:55Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "46dff5b94164353a0eeb479f65aa783ce2dfd422",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* fix: log llm error response bodies\n\n---------\n\nCo-authored-by: harvey_xiang <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "fix: log LLM error response bodies (#2012)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:32:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98b037253c35f3493ed92b4627ae329d9b7b12b2",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* fix: load bridge package version without require\n\n---------\n\nCo-authored-by: harvey_xiang <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "fix: load bridge package version without require (#1992)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:32:12Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "e5080657562d535f6c9479c237d3570468ff2706",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* fix: delimit memory context with XML boundary\n\n---------\n\nCo-authored-by: harvey_xiang <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "fix: delimit memory context with XML boundary (#2052)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:30:55Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c4ed7a255c726ea3c2e43f9650be45a614aeb86d",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* fix: add durable Hermes provider link\n\n* fix(plugin): harden Hermes provider-link installers (9 OCR findings)\n\nOCR review on #2051 surfaced 9 robustness issues across the PowerShell\nand Unix Herme\n[…]\ng <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>\nCo-authored-by: Ziyang Guo <121015044+RunMarshal@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix: add durable Hermes provider link (#2051)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:30:20Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d7f15b07b6424aa4268c87708ce12f831fb921d4",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* fix: align Gemini viewer embedding test\n\n* fix(openclaw): don't leak Gemini API key to user-supplied endpoints\n\nOCR review on #2050 surfaced a security regression: the viewer Gemini\nembedding prob\n[…]\ng <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>\nCo-authored-by: Ziyang Guo <121015044+RunMarshal@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix: align Gemini viewer embedding test (#2050)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:24:24Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "10014cf071176464b5d109a8809ed593b12153da",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* docs: translate API reference pages\n\n---------\n\nCo-authored-by: harvey_xiang <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "docs: translate API reference pages (#2053)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-09T02:13:11Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "d2adf17b88e2e07c9f7d058821020afa236e90f9",
          "body": "…mOSClient signatures (#1919)\n\n* docs(cn): translate remaining English text in dream.md\n\n* docs: align Quick Start examples with MemOSClient signatures and add EN translations\n\nFix the Chat and Message API reference docs where Quick Start code\nexamples used parameters not present in the actual MemOS\n[…]\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>\nCo-authored-by: Memtensor-AI <project@memtensor.cn>",
          "is_bot": false,
          "headline": "docs: fix Quick Start examples in Chat & Message API docs to match Me…",
          "author_name": "Anky",
          "author_login": "hiasky",
          "committed_at": "2026-07-08T12:34:09Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "d9046d6ddf69b6bcaca849126ca0600bb529cbc1",
          "body": "* docs(cn): translate remaining English text in dream.md\n\n* chore: update github workflow stale.yaml\n\n* fix: quote OpenClaw FTS query terms\n\n---------\n\nCo-authored-by: harvey_xiang <harvey_xiang22@163.com>\nCo-authored-by: sonimwang <17816198144@163.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "fix: quote OpenClaw FTS query terms (#2043)",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-08T11:23:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "713ed0258818336c8cd9e294fdde20813225e3c7",
          "body": "Fixes two occurrences of \"monitering\" → \"monitoring\" in\nAPIADDRequest and APIFeedbackRequest task_id field descriptions\nin src/memos/api/product_models.py.\n\nCo-authored-by: Memtensor-AI <project@memtensor.cn>",
          "is_bot": false,
          "headline": "fix: correct \"monitering\" typo in task_id field descriptions (#1931)",
          "author_name": "nuthalapativarun",
          "author_login": "nuthalapativarun",
          "committed_at": "2026-07-08T11:21:30Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "afada8c52f57b4f4faefaff57cc9e9d604a457e8",
          "body": "* docs: clarify API product model descriptions\n\n* docs: normalize product model descriptions\n\n---------\n\nCo-authored-by: Lucas-FManager <luong.nguyen188@gmail.com>\nCo-authored-by: Lucas-FManager <265058144+Lucas-FManager@users.noreply.github.com>\nCo-authored-by: Memtensor-AI <project@memtensor.cn>",
          "is_bot": false,
          "headline": "docs: clarify API product model descriptions (#1810)",
          "author_name": "Nguyen Cat Luong",
          "author_login": "Lucas-FManager",
          "committed_at": "2026-07-08T11:21:13Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3e67ae8a6f1fb7cee38ae7b64751c5dbefc49c3b",
          "body": "…ategyStructMemReader (#1794)\n\nCo-authored-by: Memtensor-AI <project@memtensor.cn>",
          "is_bot": false,
          "headline": "refactor(mem-reader): remove dead remove_prompt_example branch in Str…",
          "author_name": "nuthalapativarun",
          "author_login": "nuthalapativarun",
          "committed_at": "2026-07-08T11:19:58Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0016bcd0f78e9f5a3f2b446904ea6360d2138793",
          "body": null,
          "is_bot": false,
          "headline": "fix: publish compiled openclaw plugin entry",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-08T06:02:26Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "23b39ddd453e7a93e9ebbc419268a849327467a3",
          "body": null,
          "is_bot": false,
          "headline": "fix: tighten skill generation policy prompts",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-08T06:02:24Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "257b2be801ec76304136b67b41998a7d501a530f",
          "body": null,
          "is_bot": false,
          "headline": "feat: route embedding input types by usage",
          "author_name": "Ziyang Guo",
          "author_login": "RerankerGuo",
          "committed_at": "2026-07-08T06:02:21Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "96b8bec6ef0317ca5b78976d0f407078c34cbbc0",
          "body": "Translated an untranslated JSON `description` field in\n`docs/cn/open_source/modules/dream.md` from English to Chinese.",
          "is_bot": false,
          "headline": "docs(cn): translate remaining English text in dream.md (#1893)",
          "author_name": "HarveyXiang",
          "author_login": "CarltonXiang",
          "committed_at": "2026-07-08T02:21:39Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "044f9fa75a3e1bd091791ef05640d7cf6a498bb4",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into translate-module-docs",
          "author_name": "HarveyXiang",
          "author_login": "CarltonXiang",
          "committed_at": "2026-07-08T02:20:56Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "85dd9cd03bab4667a83fa0c018d7c79c854defb1",
          "body": "## Description\n\nPlease include a summary of the change, the problem it solves, the\nimplementation approach, and relevant context. List any dependencies\nrequired for this change.\n\nRelated Issue (Required):  Fixes #issue_number\n\n## Type of change\n\nPlease delete options that are not relevant.\n\n- [ ] Bu\n[…]\nd the person who will review this PR | 我已提及将审查此 PR\n的人\n\n## Reviewer Checklist\n- [ ] closes #xxxx (Replace xxxx with the GitHub issue number)\n- [ ] Made sure Checks passed\n- [ ] Tests have been provided",
          "is_bot": false,
          "headline": "Chore/update workflow stale (#2065)",
          "author_name": "HarveyXiang",
          "author_login": "CarltonXiang",
          "committed_at": "2026-07-07T09:29:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cc0fb714ef7fea53955973f7f04f8ffb659c5b76",
          "body": null,
          "is_bot": false,
          "headline": "chore: update github workflow stale.yaml",
          "author_name": "harvey_xiang",
          "author_login": null,
          "committed_at": "2026-07-07T09:17:16Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "0398e0ed23422d44fb20a740f9637e12735ee256",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' into pr/may27-fixes",
          "author_name": "Erick Wipprecht",
          "author_login": "chiefmojo",
          "committed_at": "2026-07-04T14:25:20Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "98154ec84f16ceaf2e55bf2018535ecd18d5435d",
          "body": null,
          "is_bot": false,
          "headline": "Merge branch 'main' of github.com:MemTensor/MemOS",
          "author_name": "harvey_xiang",
          "author_login": null,
          "committed_at": "2026-07-03T08:34:53Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b051e6384d8c667ae7d521baa679f542f4488d19",
          "body": "## Description\n\nPlease include a summary of the change, the problem it solves, the\nimplementation approach, and relevant context. List any dependencies\nrequired for this change.\n\nRelated Issue (Required):  Fixes #issue_number\n\n## Type of change\n\nPlease delete options that are not relevant.\n\n- [ ] Bu\n[…]\nd the person who will review this PR | 我已提及将审查此 PR\n的人\n\n## Reviewer Checklist\n- [ ] closes #xxxx (Replace xxxx with the GitHub issue number)\n- [ ] Made sure Checks passed\n- [ ] Tests have been provided",
          "is_bot": false,
          "headline": "Dev v2.0.22 (#2058)",
          "author_name": "HarveyXiang",
          "author_login": "CarltonXiang",
          "committed_at": "2026-07-03T07:25:05Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "783c545aa19a61553eeacab54ad9d95dacc95971",
          "body": null,
          "is_bot": false,
          "headline": "chore: change version number to v2.0.22",
          "author_name": "jiachengzhen",
          "author_login": null,
          "committed_at": "2026-07-03T07:03:06Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "53546fff273867b6ab6d1633dd849c7e104869d9",
          "body": "…new sessions (#1869)\n\nfix: prevent agent from acting on cross-session memories unprompted\n\n- Add session tracking to detect when memories are from previous sessions\n- Tag cross-session memories with [from previous session] marker\n- Inject passive instructions for cross-session memories (background \n[…]\ne memory usage within same session\n\nFixes #1532\n\nCo-authored-by: AutoDev Agent <autodev@memtensor.cn>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>\nCo-authored-by: zhaxi <syzsunshine219@gmail.com>",
          "is_bot": false,
          "headline": "Fix #1532: Agent incorrectly acts on cross-session memory context in …",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T13:18:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "a612fe99534d970e7570593680575b06c68a49e8",
          "body": "…g model/provider chang (#1975)\n\nfeat(memos-local-openclaw): detect embedding model change and add re-embed CLI\n\nTags every cached embedding row with (provider, model) so the plugin can\ndetect when stored vectors were produced by a different embedding model\nthan the live config. On plugin init, when\n[…]\nmbedding-shaped tables; all upsert call sites pass producer info.\n\nResolves #1333.\n\nCo-authored-by: autodev <autodev@memtensor.bot>\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>",
          "is_bot": false,
          "headline": "Fix #1333: [Feature Request] Re-embed existing memories when embeddin…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T13:15:38Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "b50246b79bcede196540964c03681dce6fb98db1",
          "body": "fix(memos-local-openclaw): parse openclaw.json as JSON5 (#1543)\n\nOpenClaw stores its host config as JSON5 (// comments, single quotes,\ntrailing commas, unquoted identifier keys). The plugin previously read\nthe file via strict JSON.parse in 6 places, including the tools.allow\npatcher that runs on eve\n[…]\n empty; no throw on malformed).\n\nvitest: 21 new tests + 84 regression tests pass; tsc --noEmit clean.\n\nCo-authored-by: autodev <autodev@memtensor.dev>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Fix #1543: fix: MEMOS不支持JSON5格式的openclaw.json (#1990)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T13:15:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "17715689bc0002dcd0a732ab1e36bf23f5882094",
          "body": "fix(memos-local-plugin): recover memory_search + turn.end after hung bridge\n\nPorts the archived #1722 fix onto dev-20260624-v2.0.22, which never\nreceived it. Three cooperating defects in the Hermes MemOS Python\nadapter turn \"Node bridge subprocess dies quietly\" into \"every memory\ntool times out for \n[…]\niters). Ruff check + format\nclean. No wire-protocol change, no new dependencies.\n\nFixes #2028\n\nCo-authored-by: MemOS AutoDev <autodev@memtensor.local>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Fix #2028: fix: memory error (#2036)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T13:14:42Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c9f270f076e95868b826f797a36161b92ec318d0",
          "body": "…26.3.31 (#2037)\n\n* fix(memos-local-openclaw): migrate to OpenClaw 2026.3.31 memory API\n\nOpenClaw 2026.3.31 replaced the umbrella `registerMemoryCapability`\nwith three focused registrars (`registerMemoryPromptSection`,\n`registerMemoryFlushPlan`, `registerMemoryRuntime`), so the plugin's\ncall at inde\n[…]\ny after a successful postinstall\"\n\n---------\n\nCo-authored-by: MemOS AutoDev <autodev@memtensor.local>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>\nCo-authored-by: zhaxi <syzsunshine219@gmail.com>",
          "is_bot": false,
          "headline": "Fix #1559: fix: registerMemoryCapability API not found in OpenClaw 20…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T13:13:49Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "62af341281954535e92854ee68f02e5418b4c437",
          "body": "test(memos-local-plugin): guard bridge startStdioServer→core.init ordering (#1747)\n\nAdd regression coverage for #1747: the Hermes stdio bridge must call\nstartStdioServer() BEFORE awaiting core.init(). Otherwise orphan-episode\nrecovery (LLM-heavy, 10-60+s) inside init() blocks the stdio read loop,\nan\n[…]\ndio available within ms,\n  not after the init-block delay)\n\nUses a stub MemoryCore with a delayed init to simulate orphan recovery.\nFull bridge suite: 17/17 tests pass. Type-check clean.\n\nCloses #1747",
          "is_bot": false,
          "headline": "Fix #1747: bridge.cts 启动竞态: startStdioServer 应在 core.init 之前启动 (#2046)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T13:13:02Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "227051097081c872e839bb3e675d672877ce6d15",
          "body": "…o load: ReferenceError (#2047)\n\nfix(memos-local-openclaw): align tsconfig with package.json \"type\": \"module\"\n\nIssue #1733 reported that the legacy @memtensor/memos-lite-openclaw-plugin\nv0.2.3 failed to load on Node 22 / OpenClaw 2026.5.7 with\n\"ReferenceError: exports is not defined in ES module sco\n[…]\nbuild -> dist/*.js emit ESM (import/export), no exports./module.exports\n- Sanity: chunker/config/storage/plugin-openclaw-wiring/plugin-impl-access\n  tests (32 total) still pass unchanged.\n\nRefs: #1733",
          "is_bot": false,
          "headline": "Fix #1733: [Bug] @memtensor/memos-lite-openclaw-plugin v0.2.3 fails t…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T13:12:30Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ca6ca9c9513d13ba047649cf9b0d462ed5ee8f19",
          "body": "… on MiniMax & Anthropi (#1868)\n\nfix: split system-only messages into system+user for MiniMax/Anthropic compatibility\n\nFixes #1527\n\nChanges:\n- suggestion_handler.py: Split system-only messages in _get_further_suggestion() and handle_get_suggestion_queries()\n- chat_handler.py: Split system-only messa\n[…]\nsuring compatibility with MiniMax and Anthropic APIs while maintaining OpenAI compatibility.\n\nCo-authored-by: AutoDev Bot <autodev-bot@memtensor.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "Fix #1527: [Bug] suggestion_handler sends system-only message — fails…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T12:20:29Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "e3f4e51ed812dc0ead496f282609775f07918433",
          "body": "… direct call differenc (#1982)\n\nfix(scheduler): surface live local-queue counts in /scheduler/allstatus\n\nhandle_scheduler_allstatus only aggregated per-stream entries whose key\nstarts with \"scheduler:\" — these only exist for the Redis-backed message\nqueue. Under DEFAULT_USE_REDIS_QUEUE=false (Docke\n[…]\ns so\nin_progress / waiting / pending reflect the live state of the local\nqueue and dispatcher. Redis-queue aggregation is unchanged.\n\nFixes #1395\n\nCo-authored-by: autodev-bot <autodev@memtensor.local>",
          "is_bot": false,
          "headline": "Fix #1395: Scheduler initialized but not processing tasks (uvicorn vs…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T11:59:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "44bec71d651d83d7f393109bde0f807af3136f77",
          "body": "…o load: ReferenceError (#1996)\n\n* fix(memos-local-openclaw): emit ESM from tsc to match package type:module\n\nThe package declared \"type\": \"module\" but the tsconfig used\n\"module\": \"CommonJS\", so any `npm run build` produced dist/*.js files\ncontaining `Object.defineProperty(exports, ...)` and `export\n[…]\nhey are not.\n\n---------\n\nCo-authored-by: MemTensor AutoDev <autodev@memtensor.local>\nCo-authored-by: Claude Code (AutoDev) <claude-code@autodev.local>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Fix #1733: [Bug] @memtensor/memos-lite-openclaw-plugin v0.2.3 fails t…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T11:54:18Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "11d9258cae512d9e5d8ec8820ebe7e146f619dda",
          "body": "…… (#2042)\n\n* Fix #1518: (capture) Internal \"Review the conversation above\" prompts stored as user chunks (#1828)\n\nfix(memos-local-openclaw): skip \"Review the conversation above\" injected prompts in capture\n\nHermes Agent (and similar agent frameworks) inject \"Review the conversation\nabove, consider \n[…]\noDev <autodev@memtensor.local>\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\nCo-authored-by: Jiang <33757498+hijzy@users.noreply.github.com>\nCo-authored-by: jiang <fdjzy@qq.com>",
          "is_bot": false,
          "headline": "Fix #1518: (capture) Internal \"Review the conversation above\" prompts…",
          "author_name": "HarveyXiang",
          "author_login": "CarltonXiang",
          "committed_at": "2026-07-02T11:51:39Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "18e90e7d9b00a30e92ede89f1514efeb5d6b52de",
          "body": "fix: ci ruff",
          "is_bot": false,
          "headline": "fix: ci ruff check (#2045)",
          "author_name": "Qi Weng",
          "author_login": "bittergreen",
          "committed_at": "2026-07-02T11:50:49Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "2e28b2a1912e7e29d3c545e20079d249ab46e638",
          "body": "…o4j (#1977)\n\nfix(mem_reader): use \"memory list\" key in LLM-unparseable fallback (#1355)\n\nWhen the LLM response could not be parsed as JSON,\nSimpleStructMemReader._get_llm_response returned a salvage dict whose\nsole memory item was keyed by \"memory_list\" (with an underscore).\nDownstream consumers in\n[…]\nion tests covering the\nunit-level fallback shape and the reader-stage end-to-end path.\n\nCloses #1355\n\nCo-authored-by: autodev <autodev@memtensor.bot>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "Fix #1355: [Bug] /product/add returns 200 but memory not stored in Ne…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T11:33:01Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "290fbf1b1bb60133bbe6d3a67d1bd3e5a62f4500",
          "body": "test(memos-local-plugin): pin bridge.cts startup ordering invariant (#1747)\n\nIssue #1747 reported that the Hermes Python adapter's first `session.open`\nRPC times out (30s default) when MemOS bridge starts with dirty orphan\nepisodes from a previous chat — `core.init()` was running orphan-episode\nreco\n[…]\n2/82). The 2 pre-existing storage-layer failures on the base\nbranch are unrelated (confirmed via `git stash`). `tsc --noEmit` clean.\n\nRefs: #1747\n\nCo-authored-by: autodev-bot <autodev@memtensor.local>",
          "is_bot": false,
          "headline": "Fix #1747: bridge.cts 启动竞态: startStdioServer 应在 core.init 之前启动 (#1999)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T11:28:39Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c507b044ce696e20c3a18ff60e20959750a9d775",
          "body": "…r after transient star (#2001)\n\nfix(hermes): expire _bridge_ok cache so MemTensorProvider self-heals\n\nThe module-level _bridge_ok cache in daemon_manager.py had no expiry, so a\nsingle transient _node_available() failure during Hermes gateway startup\n(subprocess race, .env loaded after the first pro\n[…]\nng cache hit, TTL expiry recovery, running-\nbridge fallback, shutdown reset, and full-call revalidation. 48/48 python\ntests pass.\n\nCloses #1797\n\nCo-authored-by: MemOS AutoDev <autodev@memtensor.local>",
          "is_bot": false,
          "headline": "Fix #1797: bug(hermes): _bridge_ok cache permanently disables provide…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T11:28:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "4e16c6858da756309f7201782193f8bdf1579c11",
          "body": "…tarves Gateway event l (#2002)\n\nfix(memos-local-plugin): defer dreaming pipeline off Gateway event loop + backoff failed dirty rescores (#1808)\n\n`core.init()` in memos-local-plugin used to synchronously await the\nentire reflect → reward → L2-induction chain for every orphan and\ndirty closed episode\n[…]\n7 (the 2 unrelated `storage/traces-count` +\n`storage/migrator` failures reproduce on the base branch).\n\nCo-authored-by: Claude <noreply@anthropic.com>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Fix #1808: fix: [memos-local-plugin] Dreaming background processing s…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T11:27:20Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f1f31e556194c53bdf30391b6943723871c28f7a",
          "body": "…ent loop starvation on (#2038)\n\n* fix(memos-local-plugin): SQL-only embedding maintenance stats (#1929)\n\n`GET /api/v1/embeddings/maintenance` used to paginate every trace / policy /\nworld_model / skill row through `repos.*.list()`, which reads full BLOB\nvector columns and decodes them into Float32A\n[…]\nexport tidy-up.\n\n---------\n\nCo-authored-by: autodev-bot <autodev@memtensor.local>\nCo-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Fix #1929: Bug: /api/v1/embeddings/maintenance causes 100% CPU and ev…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T11:11:11Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "f75fc6d0b073cb6af86b6ae3f37435d0a52935af",
          "body": "Fix: bridge.cts hardcoded profileId: \"default\", causing all profile-specific\ndata to be invisible in the memOS web viewer for non-default profiles.\n\nThe Python adapter already derives profileId correctly from HERMES_HOME.\nThis change mirrors that logic in the Node.js bridge.\n\n- Add deriveProfileId()\n[…]\n\"default\" if MEMOS_HOME is not set or path does not match\n- Impact: zero for single-profile/default setups (still resolves to \"default\")\n\nFixes profile resolution issue reported by nova profile users.",
          "is_bot": false,
          "headline": "fix(bridge): derive profileId dynamically from MEMOS_HOME (#1949)",
          "author_name": "redashes1984",
          "author_login": "redashes1984",
          "committed_at": "2026-07-02T09:51:08Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "53df4581f5258fbe9ba47381578aa7c6da19f96f",
          "body": "* fix(memos-local): L2 candidate policy stuck in candidate — add Step 5 recheck\n\nA candidate policy whose support/gain already satisfy the promotion\nthresholds (support >= minSupport && gain >= minGain) but is no longer\ncosine-matched by any trace in subsequent episodes will never enter\n'touched' an\n[…]\nlling shutdown).\n\nBoth are required: weakref enables GC collection, __del__ ensures\ncleanup happens when collection occurs.\n\n---------\n\nCo-authored-by: a844810597 <a844810597@users.noreply.github.com>",
          "is_bot": false,
          "headline": "fix(memos-local): L2 candidate stuck + bridge subprocess leak (#1933)",
          "author_name": "a844810597",
          "author_login": "a844810597",
          "committed_at": "2026-07-02T09:50:44Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "f314f47029b71d4ffae115d89b297d820fa4496b",
          "body": "* fix(memos-local): L2 candidate policy stuck in candidate — add Step 5 recheck\n\nA candidate policy whose support/gain already satisfy the promotion\nthresholds (support >= minSupport && gain >= minGain) but is no longer\ncosine-matched by any trace in subsequent episodes will never enter\n'touched' an\n[…]\nfecycle integration\n\n---------\n\nCo-authored-by: a844810597 <a844810597@users.noreply.github.com>\nCo-authored-by: Ubuntu <ubuntu@localhost.localdomain>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "feat(memos-local): auto-promote candidate skills without trial (#1943)",
          "author_name": "a844810597",
          "author_login": "a844810597",
          "committed_at": "2026-07-02T09:50:26Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "7dd42dd584410c7d43812211940fe1f25e5a780d",
          "body": "… per call; old-space f (#1864)\n\n* fix: prevent ONNX memory leak in embedLocal by disposing tensors\n\n- Add explicit tensor disposal after each embedding call to free native ONNX memory\n- Implement periodic pipeline reset (default: every 50 calls) as safety net\n- Add MEMOS_EMBED_RESET_AFTER_CALLS env var for tuning (set to 0 to disable)\n- Add comprehensive tests for memory leak fix\n- Reduces leak rate from ~24 MB/s to ~0.25 MB/s\n\nFixes #1863\n\n* test: mock local embedding model in leak regression",
          "is_bot": false,
          "headline": "Fix #1863: [memos-local-openclaw] embedLocal leaks native ONNX memory…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T09:49:17Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c353fbe9e74365263ba70469ac0d529d42e09a97",
          "body": null,
          "is_bot": false,
          "headline": "chore: update poetry.lock",
          "author_name": "harvey_xiang",
          "author_login": null,
          "committed_at": "2026-07-02T09:09:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "ca75756be1ce3031aead74574799f923d6c91293",
          "body": "…ions and returns None (#1885)\n\n* fix: re-raise exceptions in timed_with_status when no fallback configured\n\nFixes #1523\n\nThe timed_with_status decorator was catching all exceptions but\nsilently swallowing them when no fallback was provided, causing\ndecorated functions to return None instead of prop\n[…]\n@users.noreply.github.com>\nCo-authored-by: Dubberman <48425266+whipser030@users.noreply.github.com>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>\nCo-authored-by: jiachengzhen <jiacz@memtensor.cn>",
          "is_bot": false,
          "headline": "Fix #1523: [Bug] timed_with_status decorator silently swallows except…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T08:19:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "38ee5c2ceaaa52927847de1d3854234eb21991d2",
          "body": "fix: raise scipy floor to ^1.13.0 for numpy 2.x / chonkie 1.6 compatibility\n\nThe [tool.poetry.group.eval] block declared `scipy = \"^1.10.1\"`, but\nscipy 1.10.x pins `numpy<1.27.0` while chonkie>=1.6 requires\n`numpy>=2.0.0`. The two constraints cannot be jointly satisfied, so\nusers hitting both packag\n[…]\nnumpy 2.2.6 / 2.3.1), all of\nwhich satisfy the new floor, so no re-lock is needed.\n\nFixes #1342\n\nCo-authored-by: MemOS AutoDev <autodev@memtensor.cn>\nCo-authored-by: HarveyXiang <harvey_xiang@163.com>",
          "is_bot": false,
          "headline": "Fix #1342: [Bug] v2.0.10 依赖冲突: numpy/scipy/chonkie 版本不兼容 (#1971)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T08:17:46Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "06836ef32611e9dcfedff13b78c41dd24248d028",
          "body": "… (No add/update items  (#1989)\n\n* fix: mem_reader fallback dict key matches consumer in simple_struct (#1493)\n\n`SimpleStructMemReader._get_llm_response` returned its salvage dict under\nthe key `memory_list` (underscore) while every downstream consumer reads\n`memory list` (space). The fallback was t\n[…]\nruff lint + format clean.\n\n* chore: re-trigger test-engine (auto-gen tests now advisory/non-gating; prior FAILED was a false positive)\n\n---------\n\nCo-authored-by: MemOS AutoDev <autodev@memtensor.com>",
          "is_bot": false,
          "headline": "Fix #1493: fix: /product/add returns 200 success but stores no memory…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T08:12:00Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "cc427ae2e5744f0edcb6680c06ee579dd75a2c72",
          "body": "## Description\n\nfix: default-disable dream plugin\ndocs: add readme for dream\ndocs: add readme for plugins\n\n## Type of change\n\n- [x] New feature (non-breaking change which adds functionality)\n- [x] Documentation update\n\n## How Has This Been Tested?\n\n- [x] Unit Test - tests/plugins/\n\n## Checklist\n\n- [\n[…]\nd the person who will review this PR | 我已提及将审查此 PR\n的人\n\n## Reviewer Checklist\n- [ ] closes #xxxx (Replace xxxx with the GitHub issue number)\n- [ ] Made sure Checks passed\n- [ ] Tests have been provided",
          "is_bot": false,
          "headline": "default-disable dream plugin & add READMEs (#1851)",
          "author_name": "Qi Weng",
          "author_login": "bittergreen",
          "committed_at": "2026-07-02T08:04:54Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "ab7029b0dbe32baf62ab880b9cd559ddc6c4b50b",
          "body": null,
          "is_bot": false,
          "headline": "feat: Support independent model config for preference memory. (#2039)",
          "author_name": "Qi Weng",
          "author_login": "bittergreen",
          "committed_at": "2026-07-02T07:57:45Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b0ce7131a6ad2910c137caced09dad44f4a415ab",
          "body": "…#1609)\n\nfix(memos-local-plugin): recognize 'memos' agent prefix in viewer SPA and server\n\ndetectAgentPrefix() only recognized openclaw/hermes, so when the viewer\nwas accessed through a /memos/ reverse-proxy prefix the SPA made API\ncalls without the prefix — hitting 404. Add 'memos' to both the\nfrontend prefix detector and the server-side AGENT_NAMES allowlist.",
          "is_bot": false,
          "headline": "fix(memos-local-plugin): support /memos/ proxy prefix in viewer SPA (…",
          "author_name": "Xinyu Du",
          "author_login": "Starfie1d1272",
          "committed_at": "2026-07-02T07:34:50Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "b745665d5c39ec1bb0a07469636f96497e8ce515",
          "body": "* fix: make memos startup recovery non-blocking\n\n* test: wait for async startup recovery",
          "is_bot": false,
          "headline": "fix: make MemOS startup recovery non-blocking (#1758)",
          "author_name": "leavrcn",
          "author_login": "leavrcn",
          "committed_at": "2026-07-02T07:34:18Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "eca8e468479a3a369ff05d4fb33fd17fb242e2b4",
          "body": "* fix(memos-local-plugin): detect Hermes chat with global flags\n\n* test: align Hermes bridge status test with helper module",
          "is_bot": false,
          "headline": "fix(memos-local-plugin): detect Hermes chat with global flags (#1951)",
          "author_name": "Kral",
          "author_login": "dashitongzhi",
          "committed_at": "2026-07-02T07:32:37Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b65daef47df8070b3cafd11c1b9ee722d0d8b7d",
          "body": "…ith prior meta-discuss (#1970)\n\nfix(openclaw-plugin): skip auto-recall for cron sessions (#1311)\n\nOpenClaw cron jobs reuse a stable session-key namespace\n(agent:<id>:cron:<jobId>) and the before_prompt_build hook used the cron\nprompt itself as the recall query. Prior meta-discussion about the cron\n\n[…]\ndefaulted in resolveConfig\n- Hook in apps/memos-local-openclaw/index.ts gains the early-return gate\n- Unit + integration tests cover cron / non-cron / opt-out / custom\n  patterns / invalid-regex paths",
          "is_bot": false,
          "headline": "Fix #1311: bug(openclaw-plugin): auto-recall contaminates cron runs w…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T07:29:51Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "9176e380174cc76e7360512ff4fa82b3b3a348ef",
          "body": "feat(memos-local-openclaw): add recall.autoRecallMinQueryLength config\n\nAuto-recall previously fired on every prompt down to 2 characters,\ninjecting unrelated history when users typed one-word confirmations\nlike \"好的\", \"可以\", \"运行\", \"继续\", \"?\", \"👍\". Reporter (#1347)\ndocumented the noise injection, token\n[…]\nple phrase while keeping legitimate short queries\n(\"fix bug\" / \"what is X\") usable. Users wanting the more aggressive\nsuggestion (10) can opt in; setting 0 restores pre-feature behaviour.\n\nRefs: #1347",
          "is_bot": false,
          "headline": "Fix #1347: 建议:增加自动召回的短查询过滤参数(min_query_length) (#1976)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T07:29:14Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "b54554bd7ae7ec27bbf1db0e2af2a7ccdc49b12e",
          "body": "Refresh README benchmark highlights and FAQ with the latest Agent Memory and User Memory evaluation results.",
          "is_bot": false,
          "headline": "docs: update benchmark PR messaging (#2019)",
          "author_name": "Matthew",
          "author_login": "MatthewZhuang",
          "committed_at": "2026-07-02T07:28:43Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "a9997751e094b667c195f2e0123c2fdb4ee1335f",
          "body": null,
          "is_bot": false,
          "headline": "fix(memos-local): align trace list pagination cap (#2026)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T07:27:23Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "c092077df3bb54ba60649787e35b14d4a60aee4c",
          "body": null,
          "is_bot": false,
          "headline": "feat: Support independent model config for preference memory.",
          "author_name": "bittergreen",
          "author_login": "bittergreen",
          "committed_at": "2026-07-02T07:19:42Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3b43c933ecf2f360d0efb3f617d02c00bb4df7c0",
          "body": null,
          "is_bot": false,
          "headline": "fix(openclaw): restart promptly after update install (#2032)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T06:28:22Z",
          "body_truncated": false,
          "is_coding_agent": false
        },
        {
          "oid": "3bfd14843d865753a78354f73efbe052e7eff66f",
          "body": "…Key relaxation (#1921)\n\nfix(memos-local-plugin): ensure system messages are always first in chat messages\n\nFixes HTTP 400 errors with Qwen3.6/vLLM which enforces 'system message must\nbe at the beginning' in its Jinja2 chat template.\n\nWhen skill crystallization or reward scoring constructs messages \n[…]\ntem message\n3. Appends all non-system messages in original order\n\nIncludes a fast path: if there's exactly one system already at position 0\nwith no later systems, returns the original array unchanged.",
          "is_bot": false,
          "headline": "fix(memos-local-plugin): system message ordering + local endpoint api…",
          "author_name": "redashes1984",
          "author_login": "redashes1984",
          "committed_at": "2026-07-02T06:26:53Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "5646c1369a05baf0800aec528a4bc7dafedf04d8",
          "body": "…ent loop starvation on (#1935)\n\n* fix(memos-local-plugin): stop blocking event loop in /api/v1/embeddings/maintenance\n\nThe maintenance stats endpoint used to paginate every row of `traces`,\n`policies`, `world_model`, and `skills` and hydrate the BLOB vector\ncolumns into JS just to inspect each vect\n[…]\n rename failed) is a server-side fault,\nso `PATCH /api/v1/config` must return 500 `internal`, not 400. The\nschema-validation (`config_invalid`) → 400 case is covered by the\nadjacent test.\n\nRefs: #1929",
          "is_bot": false,
          "headline": "Fix #1929: Bug: /api/v1/embeddings/maintenance causes 100% CPU and ev…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T06:24:15Z",
          "body_truncated": true,
          "is_coding_agent": true
        },
        {
          "oid": "082425625ad29bf574d1d3a4d5b5765cf4f0f2ae",
          "body": "…d output (dist/) (#1820)\n\nfix(plugin): compile TypeScript to dist/ for npm package\n\n- Updated package.json to point main entry to dist/index.js\n- Changed files field to include dist/ instead of raw src/\n- Updated openclaw.extensions to use compiled output\n- Changed prepublishOnly to prepack with np\n[…]\nile both index.ts and src/\n- Changed module to ES2022 to match package.json type: module\n- Added type declarations for openclaw/plugin-sdk external module\n- Added verification test script\n\nFixes #1619",
          "is_bot": false,
          "headline": "Fix #1619: Bug: npm package ships TypeScript source only — no compile…",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T06:21:50Z",
          "body_truncated": true,
          "is_coding_agent": false
        },
        {
          "oid": "c99d6392a9c680dd71d0c32e4ed7d47a6c4f87c2",
          "body": "fix(memos-local-plugin): extend memory.search/turn.end RPC timeout to 75s\n\nThe Hermes memtensor provider used the JSON-RPC 30s default for\nmemory.search, turn.start, and turn.end. After 1-2 hours of Hermes\nuse the V7 retrieval / capture / reflection pipeline legitimately runs\npast 30s once memory ac\n[…]\nmit and sync_turn's\n_ensure_bridge already opt into. Short-latency calls (session.open,\ncore.health, memory.get_*, skill.*) stay on the 30s fast-path so\nregressions there remain visible.\n\nFixes #2028.",
          "is_bot": false,
          "headline": "Fix #2028: fix: memory error (#2031)",
          "author_name": "Memtensor-AI",
          "author_login": "Memtensor-AI",
          "committed_at": "2026-07-02T06:21:15Z",
          "body_truncated": true,
          "is_coding_agent": false
        }
      ],
      "releases_count": 35,
      "commits_last_year": 1870,
      "latest_release_at": "2026-07-19T14:49:33Z",
      "latest_release_tag": "v2.0.24",
      "releases_from_tags": false,
      "days_since_last_push": 0,
      "active_weeks_last_year": 49,
      "days_since_latest_release": 4,
      "mean_days_between_releases": 9.7
    },
    "community": {
      "has_readme": true,
      "has_license": true,
      "has_description": true,
      "has_contributing": true,
      "health_percentage": 75,
      "has_issue_template": false,
      "has_code_of_conduct": false,
      "has_pull_request_template": true
    },
    "ecosystem": {
      "packages": [
        {
          "name": "MemoryOS",
          "exists": true,
          "license": "Apache-2.0",
          "keywords": [
            "memory",
            "llm",
            "language model",
            "memoryOS",
            "agent",
            "kv cache",
            "lora",
            "Intended Audience :: Developers",
            "License :: OSI Approved :: Apache Software License",
            "Natural Language :: Chinese (Simplified)",
            "Natural Language :: English",
            "Operating System :: OS Independent",
            "Programming Language :: Python :: 3 :: Only",
            "Programming Language :: Python :: 3.10",
            "Programming Language :: Python :: 3.11",
            "Programming Language :: Python :: 3.12",
            "Programming Language :: Python :: 3.13",
            "Topic :: Software Development :: Libraries",
            "Topic :: Software Development :: Libraries :: Python Modules"
          ],
          "ecosystem": "pypi",
          "matches_repo": true,
          "registry_url": "https://pypi.org/project/MemoryOS/",
          "is_deprecated": false,
          "latest_version": "2.0.24",
          "repository_url": "https://github.com/MemTensor/MemOS",
          "versions_count": 34,
          "total_downloads": null,
          "dependents_count": null,
          "deprecation_note": null,
          "maintainers_count": null,
          "monthly_downloads": null,
          "first_published_at": "2025-05-19T11:41:56.131340Z",
          "latest_published_at": "2026-07-19T14:50:34.106897Z",
          "latest_version_yanked": null,
          "days_since_latest_publish": 4
        }
      ]
    },
    "popularity": {
      "forks": 945,
      "stars": 10355,
      "watchers": 44,
      "fork_history": {
        "days": [
          {
            "date": "2025-07-06",
            "count": 2
          },
          {
            "date": "2025-07-07",
            "count": 24
          },
          {
            "date": "2025-07-08",
            "count": 14
          },
          {
            "date": "2025-07-09",
            "count": 23
          },
          {
            "date": "2025-07-10",
            "count": 24
          },
          {
            "date": "2025-07-11",
            "count": 8
          },
          {
            "date": "2025-07-12",
            "count": 7
          },
          {
            "date": "2025-07-13",
            "count": 2
          },
          {
            "date": "2025-07-14",
            "count": 7
          },
          {
            "date": "2025-07-15",
            "count": 4
          },
          {
            "date": "2025-07-16",
            "count": 7
          },
          {
            "date": "2025-07-17",
            "count": 5
          },
          {
            "date": "2025-07-18",
            "count": 4
          },
          {
            "date": "2025-07-19",
            "count": 2
          },
          {
            "date": "2025-07-20",
            "count": 2
          },
          {
            "date": "2025-07-21",
            "count": 1
          },
          {
            "date": "2025-07-22",
            "count": 1
          },
          {
            "date": "2025-07-23",
            "count": 1
          },
          {
            "date": "2025-07-25",
            "count": 5
          },
          {
            "date": "2025-07-26",
            "count": 3
          },
          {
            "date": "2025-07-27",
            "count": 1
          },
          {
            "date": "2025-07-28",
            "count": 2
          },
          {
            "date": "2025-07-30",
            "count": 1
          },
          {
            "date": "2025-08-01",
            "count": 1
          },
          {
            "date": "2025-08-03",
            "count": 3
          },
          {
            "date": "2025-08-04",
            "count": 1
          },
          {
            "date": "2025-08-05",
            "count": 2
          },
          {
            "date": "2025-08-06",
            "count": 2
          },
          {
            "date": "2025-08-07",
            "count": 2
          },
          {
            "date": "2025-08-08",
            "count": 2
          },
          {
            "date": "2025-08-09",
            "count": 2
          },
          {
            "date": "2025-08-10",
            "count": 2
          },
          {
            "date": "2025-08-11",
            "count": 3
          },
          {
            "date": "2025-08-13",
            "count": 1
          },
          {
            "date": "2025-08-14",
            "count": 1
          },
          {
            "date": "2025-08-16",
            "count": 1
          },
          {
            "date": "2025-08-17",
            "count": 2
          },
          {
            "date": "2025-08-18",
            "count": 1
          },
          {
            "date": "2025-08-19",
            "count": 2
          },
          {
            "date": "2025-08-20",
            "count": 2
          },
          {
            "date": "2025-08-25",
            "count": 1
          },
          {
            "date": "2025-08-29",
            "count": 1
          },
          {
            "date": "2025-09-01",
            "count": 1
          },
          {
            "date": "2025-09-02",
            "count": 1
          },
          {
            "date": "2025-09-03",
            "count": 1
          },
          {
            "date": "2025-09-04",
            "count": 1
          },
          {
            "date": "2025-09-08",
            "count": 1
          },
          {
            "date": "2025-09-09",
            "count": 3
          },
          {
            "date": "2025-09-10",
            "count": 3
          },
          {
            "date": "2025-09-11",
            "count": 1
          },
          {
            "date": "2025-09-15",
            "count": 1
          },
          {
            "date": "2025-09-16",
            "count": 2
          },
          {
            "date": "2025-09-17",
            "count": 1
          },
          {
            "date": "2025-09-22",
            "count": 3
          },
          {
            "date": "2025-09-23",
            "count": 1
          },
          {
            "date": "2025-09-24",
            "count": 1
          },
          {
            "date": "2025-09-25",
            "count": 2
          },
          {
            "date": "2025-09-26",
            "count": 1
          },
          {
            "date": "2025-09-27",
            "count": 1
          },
          {
            "date": "2025-09-28",
            "count": 2
          },
          {
            "date": "2025-10-01",
            "count": 1
          },
          {
            "date": "2025-10-02",
            "count": 1
          },
          {
            "date": "2025-10-03",
            "count": 1
          },
          {
            "date": "2025-10-04",
            "count": 1
          },
          {
            "date": "2025-10-06",
            "count": 1
          },
          {
            "date": "2025-10-10",
            "count": 1
          },
          {
            "date": "2025-10-13",
            "count": 1
          },
          {
            "date": "2025-10-15",
            "count": 1
          },
          {
            "date": "2025-10-16",
            "count": 3
          },
          {
            "date": "2025-10-18",
            "count": 1
          },
          {
            "date": "2025-10-20",
            "count": 1
          },
          {
            "date": "2025-10-24",
            "count": 2
          },
          {
            "date": "2025-10-25",
            "count": 1
          },
          {
            "date": "2025-10-28",
            "count": 1
          },
          {
            "date": "2025-10-29",
            "count": 1
          },
          {
            "date": "2025-10-30",
            "count": 1
          },
          {
            "date": "2025-10-31",
            "count": 2
          },
          {
            "date": "2025-11-03",
            "count": 2
          },
          {
            "date": "2025-11-04",
            "count": 3
          },
          {
            "date": "2025-11-06",
            "count": 2
          },
          {
            "date": "2025-11-07",
            "count": 1
          },
          {
            "date": "2025-11-10",
            "count": 1
          },
          {
            "date": "2025-11-11",
            "count": 1
          },
          {
            "date": "2025-11-12",
            "count": 3
          },
          {
            "date": "2025-11-13",
            "count": 2
          },
          {
            "date": "2025-11-14",
            "count": 1
          },
          {
            "date": "2025-11-16",
            "count": 1
          },
          {
            "date": "2025-11-17",
            "count": 2
          },
          {
            "date": "2025-11-18",
            "count": 1
          },
          {
            "date": "2025-11-19",
            "count": 2
          },
          {
            "date": "2025-11-20",
            "count": 4
          },
          {
            "date": "2025-11-21",
            "count": 1
          },
          {
            "date": "2025-11-24",
            "count": 3
          },
          {
            "date": "2025-11-26",
            "count": 1
          },
          {
            "date": "2025-11-27",
            "count": 1
          },
          {
            "date": "2025-11-28",
            "count": 1
          },
          {
            "date": "2025-12-01",
            "count": 3
          },
          {
            "date": "2025-12-02",
            "count": 1
          },
          {
            "date": "2025-12-03",
            "count": 3
          },
          {
            "date": "2025-12-04",
            "count": 10
          },
          {
            "date": "2025-12-05",
            "count": 2
          },
          {
            "date": "2025-12-06",
            "count": 1
          },
          {
            "date": "2025-12-07",
            "count": 1
          },
          {
            "date": "2025-12-08",
            "count": 2
          },
          {
            "date": "2025-12-09",
            "count": 2
          },
          {
            "date": "2025-12-10",
            "count": 4
          },
          {
            "date": "2025-12-11",
            "count": 3
          },
          {
            "date": "2025-12-12",
            "count": 1
          },
          {
            "date": "2025-12-17",
            "count": 1
          },
          {
            "date": "2025-12-22",
            "count": 3
          },
          {
            "date": "2025-12-23",
            "count": 3
          },
          {
            "date": "2025-12-25",
            "count": 3
          },
          {
            "date": "2025-12-26",
            "count": 1
          },
          {
            "date": "2025-12-27",
            "count": 2
          },
          {
            "date": "2025-12-28",
            "count": 1
          },
          {
            "date": "2025-12-29",
            "count": 3
          },
          {
            "date": "2025-12-30",
            "count": 1
          },
          {
            "date": "2025-12-31",
            "count": 1
          },
          {
            "date": "2026-01-06",
            "count": 3
          },
          {
            "date": "2026-01-08",
            "count": 1
          },
          {
            "date": "2026-01-09",
            "count": 2
          },
          {
            "date": "2026-01-10",
            "count": 1
          },
          {
            "date": "2026-01-12",
            "count": 2
          },
          {
            "date": "2026-01-14",
            "count": 2
          },
          {
            "date": "2026-01-16",
            "count": 1
          },
          {
            "date": "2026-01-17",
            "count": 2
          },
          {
            "date": "2026-01-18",
            "count": 1
          },
          {
            "date": "2026-01-19",
            "count": 3
          },
          {
            "date": "2026-01-20",
            "count": 27
          },
          {
            "date": "2026-01-21",
            "count": 30
          },
          {
            "date": "2026-01-22",
            "count": 3
          },
          {
            "date": "2026-01-23",
            "count": 8
          },
          {
            "date": "2026-01-24",
            "count": 4
          },
          {
            "date": "2026-01-25",
            "count": 1
          },
          {
            "date": "2026-01-27",
            "count": 1
          },
          {
            "date": "2026-01-28",
            "count": 3
          },
          {
            "date": "2026-01-29",
            "count": 1
          },
          {
            "date": "2026-01-31",
            "count": 1
          },
          {
            "date": "2026-02-01",
            "count": 1
          },
          {
            "date": "2026-02-03",
            "count": 4
          },
          {
            "date": "2026-02-04",
            "count": 3
          },
          {
            "date": "2026-02-05",
            "count": 2
          },
          {
            "date": "2026-02-06",
            "count": 4
          },
          {
            "date": "2026-02-07",
            "count": 1
          },
          {
            "date": "2026-02-08",
            "count": 2
          },
          {
            "date": "2026-02-09",
            "count": 6
          },
          {
            "date": "2026-02-10",
            "count": 6
          },
          {
            "date": "2026-02-11",
            "count": 5
          },
          {
            "date": "2026-02-12",
            "count": 6
          },
          {
            "date": "2026-02-13",
            "count": 5
          },
          {
            "date": "2026-02-14",
            "count": 9
          },
          {
            "date": "2026-02-15",
            "count": 9
          },
          {
            "date": "2026-02-16",
            "count": 2
          },
          {
            "date": "2026-02-17",
            "count": 6
          },
          {
            "date": "2026-02-18",
            "count": 3
          },
          {
            "date": "2026-02-19",
            "count": 4
          },
          {
            "date": "2026-02-20",
            "count": 1
          },
          {
            "date": "2026-02-21",
            "count": 3
          },
          {
            "date": "2026-02-22",
            "count": 2
          },
          {
            "date": "2026-02-23",
            "count": 4
          },
          {
            "date": "2026-02-25",
            "count": 5
          },
          {
            "date": "2026-02-26",
            "count": 5
          },
          {
            "date": "2026-02-27",
            "count": 4
          },
          {
            "date": "2026-02-28",
            "count": 2
          },
          {
            "date": "2026-03-01",
            "count": 1
          },
          {
            "date": "2026-03-02",
            "count": 8
          },
          {
            "date": "2026-03-03",
            "count": 5
          },
          {
            "date": "2026-03-04",
            "count": 2
          },
          {
            "date": "2026-03-05",
            "count": 4
          },
          {
            "date": "2026-03-06",
            "count": 4
          },
          {
            "date": "2026-03-08",
            "count": 3
          },
          {
            "date": "2026-03-09",
            "count": 5
          },
          {
            "date": "2026-03-10",
            "count": 5
          },
          {
            "date": "2026-03-11",
            "count": 13
          },
          {
            "date": "2026-03-12",
            "count": 6
          },
          {
            "date": "2026-03-13",
            "count": 5
          },
          {
            "date": "2026-03-14",
            "count": 4
          },
          {
            "date": "2026-03-15",
            "count": 4
          },
          {
            "date": "2026-03-16",
            "count": 11
          },
          {
            "date": "2026-03-17",
            "count": 8
          },
          {
            "date": "2026-03-18",
            "count": 6
          },
          {
            "date": "2026-03-19",
            "count": 5
          },
          {
            "date": "2026-03-20",
            "count": 2
          },
          {
            "date": "2026-03-21",
            "count": 5
          },
          {
            "date": "2026-03-22",
            "count": 4
          },
          {
            "date": "2026-03-23",
            "count": 8
          },
          {
            "date": "2026-03-24",
            "count": 6
          },
          {
            "date": "2026-03-25",
            "count": 7
          },
          {
            "date": "2026-03-26",
            "count": 5
          },
          {
            "date": "2026-03-27",
            "count": 1
          },
          {
            "date": "2026-03-28",
            "count": 4
          },
          {
            "date": "2026-03-29",
            "count": 2
          },
          {
            "date": "2026-03-30",
            "count": 3
          },
          {
            "date": "2026-03-31",
            "count": 4
          },
          {
            "date": "2026-04-01",
            "count": 4
          },
          {
            "date": "2026-04-02",
            "count": 7
          },
          {
            "date": "2026-04-03",
            "count": 3
          },
          {
            "date": "2026-04-05",
            "count": 3
          },
          {
            "date": "2026-04-06",
            "count": 4
          },
          {
            "date": "2026-04-07",
            "count": 4
          },
          {
            "date": "2026-04-08",
            "count": 1
          },
          {
            "date": "2026-04-09",
            "count": 1
          },
          {
            "date": "2026-04-10",
            "count": 7
          },
          {
            "date": "2026-04-11",
            "count": 4
          },
          {
            "date": "2026-04-12",
            "count": 1
          },
          {
            "date": "2026-04-13",
            "count": 4
          },
          {
            "date": "2026-04-14",
            "count": 3
          },
          {
            "date": "2026-04-16",
            "count": 2
          },
          {
            "date": "2026-04-17",
            "count": 2
          },
          {
            "date": "2026-04-18",
            "count": 1
          },
          {
            "date": "2026-04-19",
            "count": 5
          },
          {
            "date": "2026-04-20",
            "count": 2
          },
          {
            "date": "2026-04-21",
            "count": 3
          },
          {
            "date": "2026-04-22",
            "count": 2
          },
          {
            "date": "2026-04-23",
            "count": 11
          },
          {
            "date": "2026-04-24",
            "count": 2
          },
          {
            "date": "2026-04-25",
            "count": 4
          },
          {
            "date": "2026-04-26",
            "count": 6
          },
          {
            "date": "2026-04-27",
            "count": 3
          },
          {
            "date": "2026-04-28",
            "count": 6
          },
          {
            "date": "2026-04-29",
            "count": 2
          },
          {
            "date": "2026-05-01",
            "count": 2
          },
          {
            "date": "2026-05-03",
            "count": 2
          },
          {
            "date": "2026-05-04",
            "count": 1
          },
          {
            "date": "2026-05-05",
            "count": 1
          },
          {
            "date": "2026-05-06",
            "count": 3
          },
          {
            "date": "2026-05-07",
            "count": 1
          },
          {
            "date": "2026-05-08",
            "count": 4
          },
          {
            "date": "2026-05-09",
            "count": 3
          },
          {
            "date": "2026-05-10",
            "count": 1
          },
          {
            "date": "2026-05-11",
            "count": 2
          },
          {
            "date": "2026-05-12",
            "count": 4
          },
          {
            "date": "2026-05-14",
            "count": 4
          },
          {
            "date": "2026-05-15",
            "count": 2
          },
          {
            "date": "2026-05-16",
            "count": 2
          },
          {
            "date": "2026-05-17",
            "count": 4
          },
          {
            "date": "2026-05-18",
            "count": 8
          },
          {
            "date": "2026-05-19",
            "count": 2
          },
          {
            "date": "2026-05-20",
            "count": 4
          },
          {
            "date": "2026-05-21",
            "count": 6
          },
          {
            "date": "2026-05-22",
            "count": 6
          },
          {
            "date": "2026-05-23",
            "count": 1
          },
          {
            "date": "2026-05-24",
            "count": 1
          },
          {
            "date": "2026-05-25",
            "count": 3
          },
          {
            "date": "2026-05-26",
            "count": 3
          },
          {
            "date": "2026-05-27",
            "count": 3
          },
          {
            "date": "2026-05-28",
            "count": 4
          },
          {
            "date": "2026-05-29",
            "count": 1
          },
          {
            "date": "2026-06-01",
            "count": 1
          },
          {
            "date": "2026-06-02",
            "count": 4
          },
          {
            "date": "2026-06-04",
            "count": 4
          },
          {
            "date": "2026-06-05",
            "count": 4
          },
          {
            "date": "2026-06-06",
            "count": 5
          },
          {
            "date": "2026-06-08",
            "count": 6
          },
          {
            "date": "2026-06-09",
            "count": 1
          },
          {
            "date": "2026-06-10",
            "count": 5
          },
          {
            "date": "2026-06-11",
            "count": 6
          },
          {
            "date": "2026-06-12",
            "count": 6
          },
          {
            "date": "2026-06-14",
            "count": 1
          },
          {
            "date": "2026-06-16",
            "count": 2
          },
          {
            "date": "2026-06-17",
            "count": 2
          },
          {
            "date": "2026-06-18",
            "count": 2
          },
          {
            "date": "2026-06-20",
            "count": 1
          },
          {
            "date": "2026-06-21",
            "count": 1
          },
          {
            "date": "2026-06-23",
            "count": 2
          },
          {
            "date": "2026-06-24",
            "count": 1
          },
          {
            "date": "2026-06-25",
            "count": 1
          },
          {
            "date": "2026-06-26",
            "count": 1
          },
          {
            "date": "2026-06-29",
            "count": 1
          },
          {
            "date": "2026-06-30",
            "count": 3
          },
          {
            "date": "2026-07-01",
            "count": 2
          },
          {
            "date": "2026-07-02",
            "count": 1
          },
          {
            "date": "2026-07-05",
            "count": 3
          },
          {
            "date": "2026-07-06",
            "count": 1
          },
          {
            "date": "2026-07-07",
            "count": 2
          },
          {
            "date": "2026-07-08",
            "count": 4
          },
          {
            "date": "2026-07-11",
            "count": 5
          },
          {
            "date": "2026-07-14",
            "count": 2
          },
          {
            "date": "2026-07-15",
            "count": 4
          },
          {
            "date": "2026-07-17",
            "count": 2
          },
          {
            "date": "2026-07-18",
            "count": 1
          },
          {
            "date": "2026-07-19",
            "count": 2
          },
          {
            "date": "2026-07-20",
            "count": 2
          },
          {
            "date": "2026-07-21",
            "count": 5
          },
          {
            "date": "2026-07-22",
            "count": 1
          },
          {
            "date": "2026-07-23",
            "count": 2
          }
        ],
        "complete": true,
        "collected": 940,
        "total_forks": 945
      },
      "star_history": null,
      "open_issues_and_prs": 80
    },
    "ai_readiness": {
      "has_nix": false,
      "example_dirs": [
        "examples"
      ],
      "has_llms_txt": false,
      "has_dockerfile": true,
      "has_mcp_signal": true,
      "bootstrap_files": [
        "Makefile"
      ],
      "api_schema_files": [],
      "has_devcontainer": false,
      "typecheck_configs": [
        "apps/memos-local-openclaw/tsconfig.json",
        "apps/memos-local-plugin/tsconfig.json",
        "apps/openwork-memos-integration/apps/desktop/skills/ask-user-question/tsconfig.json",
        "apps/openwork-memos-integration/apps/desktop/skills/dev-browser/tsconfig.json",
        "apps/openwork-memos-integration/apps/desktop/skills/file-permission/tsconfig.json",
        "apps/openwork-memos-integration/apps/desktop/tsconfig.json",
        "apps/openwork-memos-integration/packages/shared/tsconfig.json"
      ],
      "toolchain_manifests": [],
      "largest_source_bytes": 658395,
      "source_files_sampled": 1404,
      "oversized_source_files": 21,
      "agent_instruction_files": [
        "AGENTS.md",
        "CLAUDE.md",
        "apps/openwork-memos-integration/CLAUDE.md"
      ],
      "agent_instruction_max_bytes": 10155
    },
    "dependencies": {
      "manifests": [
        "docker/requirements-full.txt",
        "docker/requirements.txt",
        "pyproject.toml"
      ],
      "advisories": {
        "error": null,
        "scope": "published_package",
        "source": "osv",
        "findings": [
          {
            "name": "fastmcp",
            "direct": true,
            "version": "2.14.7",
            "severity": "critical",
            "ecosystem": "pypi",
            "cvss_score": 10,
            "advisory_ids": [
              "GHSA-m8x7-r2rg-vh5g",
              "GHSA-rww4-4w9c-7733",
              "GHSA-vv7q-7jx5-f767",
              "PYSEC-2026-2475",
              "PYSEC-2026-2476",
              "PYSEC-2026-338"
            ],
            "fixed_version": "3.2.0",
            "advisory_count": 6,
            "oldest_advisory_days": 114
          },
          {
            "name": "transformers",
            "direct": true,
            "version": "4.57.6",
            "severity": "critical",
            "ecosystem": "pypi",
            "cvss_score": 9.6,
            "advisory_ids": [
              "GHSA-29pf-2h5f-8g72",
              "GHSA-69w3-r845-3855",
              "GHSA-fgcw-684q-jj6r",
              "PYSEC-2025-217",
              "PYSEC-2026-2288",
              "PYSEC-2026-2289",
              "PYSEC-2026-2290"
            ],
            "fixed_version": "5.5.0",
            "advisory_count": 7,
            "oldest_advisory_days": 212
          },
          {
            "name": "mcp",
            "direct": false,
            "version": "1.27.2",
            "severity": "high",
            "ecosystem": "pypi",
            "cvss_score": null,
            "advisory_ids": [
              "GHSA-vj7q-gjh5-988w",
              "PYSEC-2026-3483"
            ],
            "fixed_version": "1.28.1",
            "advisory_count": 2,
            "oldest_advisory_days": 7
          },
          {
            "name": "starlette",
            "direct": false,
            "version": "0.46.2",
            "severity": "high",
            "ecosystem": "pypi",
            "cvss_score": 7.5,
            "advisory_ids": [
              "GHSA-2c2j-9gv5-cj73",
              "GHSA-7f5h-v6xp-fcq8",
              "GHSA-82w8-qh3p-5jfq",
              "GHSA-86qp-5c8j-p5mr",
              "GHSA-jp82-jpqv-5vv3",
              "GHSA-wqp7-x3pw-xc5r",
              "GHSA-x746-7m8f-x49c",
              "PYSEC-2026-161",
              "PYSEC-2026-1941",
              "PYSEC-2026-1942"
            ],
            "fixed_version": "1.3.1",
            "advisory_count": 14,
            "oldest_advisory_days": 367
          },
          {
            "name": "diskcache",
            "direct": false,
            "version": "5.6.3",
            "severity": "moderate",
            "ecosystem": "pypi",
            "cvss_score": null,
            "advisory_ids": [
              "GHSA-w8v5-vhqr-4h9v",
              "PYSEC-2026-2447"
            ],
            "fixed_version": null,
            "advisory_count": 2,
            "oldest_advisory_days": 162
          }
        ],
        "collected": true,
        "malicious": [],
        "truncated": false,
        "by_severity": {
          "high": 2,
          "critical": 2,
          "moderate": 1
        },
        "advisory_count": 31,
        "affected_count": 5,
        "assessed_count": 127,
        "malicious_count": 0,
        "assessed_package": "pypi:MemoryOS@2.0.24",
        "unassessed_count": 0,
        "direct_affected_count": 2
      },
      "ecosystems": [
        "pypi"
      ],
      "dependencies": [
        {
          "name": "openai",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=1.77.0,<2.0.0)"
        },
        {
          "name": "ollama",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=0.5.0,<0.5.1)"
        },
        {
          "name": "transformers",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=4.51.3,<5.0.0)"
        },
        {
          "name": "tenacity",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=9.1.2,<10.0.0)"
        },
        {
          "name": "fastapi",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=0.115.12,<0.116.0)"
        },
        {
          "name": "sqlalchemy",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=2.0.41,<3.0.0)"
        },
        {
          "name": "pymysql",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=1.1.0,<2.0.0)"
        },
        {
          "name": "scikit-learn",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=1.7.0,<2.0.0)"
        },
        {
          "name": "fastmcp",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=2.10.5,<3.0.0)"
        },
        {
          "name": "python-dateutil",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=2.9.0.post0,<3.0.0)"
        },
        {
          "name": "prometheus-client",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=0.23.1,<0.24.0)"
        },
        {
          "name": "concurrent-log-handler",
          "manifest": "pyproject.toml",
          "ecosystem": "pypi",
          "version_constraint": "(>=0.9.28,<1.0.0)"
        }
      ],
      "all_dependencies": {
        "error": null,
        "source": "github-sbom",
        "packages": [
          {
            "name": "concurrent-log-handler",
            "direct": true,
            "version": "0.9.28",
            "ecosystem": "pypi"
          },
          {
            "name": "concurrent-log-handler",
            "direct": true,
            "version": "0.9.29",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi",
            "direct": true,
            "version": "0.115.14",
            "ecosystem": "pypi"
          },
          {
            "name": "fastmcp",
            "direct": true,
            "version": "2.10.5",
            "ecosystem": "pypi"
          },
          {
            "name": "fastmcp",
            "direct": true,
            "version": "2.13.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "fastmcp",
            "direct": true,
            "version": "2.14.7",
            "ecosystem": "pypi"
          },
          {
            "name": "ollama",
            "direct": true,
            "version": "0.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "openai",
            "direct": true,
            "version": "1.109.1",
            "ecosystem": "pypi"
          },
          {
            "name": "openai",
            "direct": true,
            "version": "1.97.0",
            "ecosystem": "pypi"
          },
          {
            "name": "prometheus-client",
            "direct": true,
            "version": "0.23.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pymysql",
            "direct": true,
            "version": "1.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dateutil",
            "direct": true,
            "version": "2.9.0.post0",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-learn",
            "direct": true,
            "version": "1.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-learn",
            "direct": true,
            "version": "1.7.2",
            "ecosystem": "pypi"
          },
          {
            "name": "scikit-learn",
            "direct": true,
            "version": "1.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": true,
            "version": "2.0.41",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": true,
            "version": "2.0.44",
            "ecosystem": "pypi"
          },
          {
            "name": "sqlalchemy",
            "direct": true,
            "version": "2.0.49",
            "ecosystem": "pypi"
          },
          {
            "name": "tenacity",
            "direct": true,
            "version": "9.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tenacity",
            "direct": true,
            "version": "9.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": true,
            "version": "4.53.2",
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": true,
            "version": "4.57.1",
            "ecosystem": "pypi"
          },
          {
            "name": "transformers",
            "direct": true,
            "version": "4.57.6",
            "ecosystem": "pypi"
          },
          {
            "name": "@aws-sdk/client-bedrock",
            "direct": false,
            "version": "^3.971.0",
            "ecosystem": "npm"
          },
          {
            "name": "@aws-sdk/credential-providers",
            "direct": false,
            "version": "^3.971.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/code-frame",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/compat-data",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/core",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/generator",
            "direct": false,
            "version": "7.29.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-annotate-as-pure",
            "direct": false,
            "version": "7.27.3",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-compilation-targets",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-globals",
            "direct": false,
            "version": "7.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-imports",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-module-transforms",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-plugin-utils",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-string-parser",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-identifier",
            "direct": false,
            "version": "7.28.5",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helper-validator-option",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/helpers",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/parser",
            "direct": false,
            "version": "7.29.2",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-syntax-jsx",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-react-jsx",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/plugin-transform-react-jsx-development",
            "direct": false,
            "version": "7.27.1",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/template",
            "direct": false,
            "version": "7.28.6",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/traverse",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@babel/types",
            "direct": false,
            "version": "7.29.0",
            "ecosystem": "npm"
          },
          {
            "name": "@electron/rebuild",
            "direct": false,
            "version": "^4.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@emnapi/runtime",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/aix-ppc64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/android-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/darwin-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/freebsd-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ia32",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-loong64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-mips64el",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-ppc64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-riscv64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-s390x",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/linux-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/netbsd-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openbsd-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/openharmony-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/sunos-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-arm64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-ia32",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "@esbuild/win32-x64",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "@hono/node-server",
            "direct": false,
            "version": "^1.19.7",
            "ecosystem": "npm"
          },
          {
            "name": "@hono/node-ws",
            "direct": false,
            "version": "^1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "@huggingface/jinja",
            "direct": false,
            "version": "0.5.7",
            "ecosystem": "npm"
          },
          {
            "name": "@huggingface/transformers",
            "direct": false,
            "version": "3.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "@huggingface/transformers",
            "direct": false,
            "version": "^3.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "@img/colour",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-darwin-x64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-arm64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-darwin-x64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-arm64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-ppc64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-riscv64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-s390x",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linux-x64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-arm64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-libvips-linuxmusl-x64",
            "direct": false,
            "version": "1.2.4",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-ppc64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-riscv64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-s390x",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linux-x64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-linuxmusl-x64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-wasm32",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-arm64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-ia32",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@img/sharp-win32-x64",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "@isaacs/fs-minipass",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/gen-mapping",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/remapping",
            "direct": false,
            "version": "2.3.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/resolve-uri",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/sourcemap-codec",
            "direct": false,
            "version": "1.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "@jridgewell/trace-mapping",
            "direct": false,
            "version": "0.3.31",
            "ecosystem": "npm"
          },
          {
            "name": "@modelcontextprotocol/sdk",
            "direct": false,
            "version": "^1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@playwright/test",
            "direct": false,
            "version": "^1.57.0",
            "ecosystem": "npm"
          },
          {
            "name": "@preact/preset-vite",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "npm"
          },
          {
            "name": "@preact/signals",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "@preact/signals-core",
            "direct": false,
            "version": "1.14.1",
            "ecosystem": "npm"
          },
          {
            "name": "@prefresh/babel-plugin",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "@prefresh/core",
            "direct": false,
            "version": "1.5.9",
            "ecosystem": "npm"
          },
          {
            "name": "@prefresh/utils",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@prefresh/vite",
            "direct": false,
            "version": "2.4.12",
            "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.4",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/eventemitter",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/fetch",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/float",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@protobufjs/inquire",
            "direct": false,
            "version": "1.1.0",
            "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.0",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-avatar",
            "direct": false,
            "version": "^1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dialog",
            "direct": false,
            "version": "^1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-dropdown-menu",
            "direct": false,
            "version": "^2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-label",
            "direct": false,
            "version": "^2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-popover",
            "direct": false,
            "version": "^1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-select",
            "direct": false,
            "version": "^2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-separator",
            "direct": false,
            "version": "^1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-slot",
            "direct": false,
            "version": "^1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "@radix-ui/react-tooltip",
            "direct": false,
            "version": "^1.1.6",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/pluginutils",
            "direct": false,
            "version": "4.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/pluginutils",
            "direct": false,
            "version": "5.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm-eabi",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-android-arm64",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-arm64",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-darwin-x64",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-arm64",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-freebsd-x64",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-gnueabihf",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm-musleabihf",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-gnu",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-arm64-musl",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-gnu",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-loong64-musl",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-gnu",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-ppc64-musl",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-gnu",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-riscv64-musl",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-s390x-gnu",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-gnu",
            "direct": false,
            "version": "^4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-linux-x64-musl",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openbsd-x64",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-openharmony-arm64",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-arm64-msvc",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-ia32-msvc",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-gnu",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "@rollup/rollup-win32-x64-msvc",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "@sinclair/typebox",
            "direct": false,
            "version": "0.34.49",
            "ecosystem": "npm"
          },
          {
            "name": "@sinclair/typebox",
            "direct": false,
            "version": "^0.34.48",
            "ecosystem": "npm"
          },
          {
            "name": "@tailwindcss/typography",
            "direct": false,
            "version": "^0.5.15",
            "ecosystem": "npm"
          },
          {
            "name": "@testing-library/dom",
            "direct": false,
            "version": "^10.4.1",
            "ecosystem": "npm"
          },
          {
            "name": "@testing-library/jest-dom",
            "direct": false,
            "version": "6.6.3",
            "ecosystem": "npm"
          },
          {
            "name": "@testing-library/react",
            "direct": false,
            "version": "^16.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/better-sqlite3",
            "direct": false,
            "version": "7.6.13",
            "ecosystem": "npm"
          },
          {
            "name": "@types/better-sqlite3",
            "direct": false,
            "version": "^7.6.12",
            "ecosystem": "npm"
          },
          {
            "name": "@types/estree",
            "direct": false,
            "version": "1.0.8",
            "ecosystem": "npm"
          },
          {
            "name": "@types/express",
            "direct": false,
            "version": "^5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "22.19.17",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^22.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/node",
            "direct": false,
            "version": "^22.10.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react",
            "direct": false,
            "version": "^19.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/react-dom",
            "direct": false,
            "version": "^19.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "@types/semver",
            "direct": false,
            "version": "^7.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "@types/uuid",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@types/uuid",
            "direct": false,
            "version": "^10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "@vitejs/plugin-react",
            "direct": false,
            "version": "^4.3.4",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/coverage-v8",
            "direct": false,
            "version": "^4.0.17",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/expect",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/mocker",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/pretty-format",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/runner",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/snapshot",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/spy",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "@vitest/utils",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "assertion-error",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "autoprefixer",
            "direct": false,
            "version": "^10.4.20",
            "ecosystem": "npm"
          },
          {
            "name": "babel-plugin-transform-hook-names",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "base64-js",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.19",
            "ecosystem": "npm"
          },
          {
            "name": "baseline-browser-mapping",
            "direct": false,
            "version": "2.10.20",
            "ecosystem": "npm"
          },
          {
            "name": "better-sqlite3",
            "direct": false,
            "version": "12.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "better-sqlite3",
            "direct": false,
            "version": "12.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "better-sqlite3",
            "direct": false,
            "version": "^12.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "bindings",
            "direct": false,
            "version": "1.5.0",
            "ecosystem": "npm"
          },
          {
            "name": "bl",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "boolbase",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "boolean",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "browserslist",
            "direct": false,
            "version": "4.28.2",
            "ecosystem": "npm"
          },
          {
            "name": "buffer",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "cac",
            "direct": false,
            "version": "6.7.14",
            "ecosystem": "npm"
          },
          {
            "name": "caniuse-lite",
            "direct": false,
            "version": "1.0.30001788",
            "ecosystem": "npm"
          },
          {
            "name": "chai",
            "direct": false,
            "version": "5.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "check-error",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "chownr",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "chownr",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "class-variance-authority",
            "direct": false,
            "version": "^0.7.1",
            "ecosystem": "npm"
          },
          {
            "name": "clsx",
            "direct": false,
            "version": "^2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "convert-source-map",
            "direct": false,
            "version": "2.0.0",
            "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": "debug",
            "direct": false,
            "version": "4.4.3",
            "ecosystem": "npm"
          },
          {
            "name": "decompress-response",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "deep-eql",
            "direct": false,
            "version": "5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "deep-extend",
            "direct": false,
            "version": "0.6.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": "detect-libc",
            "direct": false,
            "version": "2.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "detect-node",
            "direct": false,
            "version": "2.1.0",
            "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.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "electron",
            "direct": false,
            "version": "^35.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "electron-builder",
            "direct": false,
            "version": "^25.1.8",
            "ecosystem": "npm"
          },
          {
            "name": "electron-store",
            "direct": false,
            "version": "^8.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.340",
            "ecosystem": "npm"
          },
          {
            "name": "electron-to-chromium",
            "direct": false,
            "version": "1.5.343",
            "ecosystem": "npm"
          },
          {
            "name": "end-of-stream",
            "direct": false,
            "version": "1.4.5",
            "ecosystem": "npm"
          },
          {
            "name": "entities",
            "direct": false,
            "version": "4.5.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": "1.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "es6-error",
            "direct": false,
            "version": "4.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.21.5",
            "ecosystem": "npm"
          },
          {
            "name": "esbuild",
            "direct": false,
            "version": "0.27.7",
            "ecosystem": "npm"
          },
          {
            "name": "escalade",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "escape-string-regexp",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "estree-walker",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "expand-template",
            "direct": false,
            "version": "2.0.3",
            "ecosystem": "npm"
          },
          {
            "name": "expect-type",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "express",
            "direct": false,
            "version": "^4.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "file-uri-to-path",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.9.23",
            "ecosystem": "npm"
          },
          {
            "name": "framer-motion",
            "direct": false,
            "version": "^12.26.2",
            "ecosystem": "npm"
          },
          {
            "name": "fs-constants",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "fsevents",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "npm"
          },
          {
            "name": "gensync",
            "direct": false,
            "version": "1.0.0-beta.2",
            "ecosystem": "npm"
          },
          {
            "name": "get-tsconfig",
            "direct": false,
            "version": "4.14.0",
            "ecosystem": "npm"
          },
          {
            "name": "github-from-package",
            "direct": false,
            "version": "0.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "global-agent",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "globalthis",
            "direct": false,
            "version": "1.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "gopd",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "guid-typescript",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "npm"
          },
          {
            "name": "happy-dom",
            "direct": false,
            "version": "^20.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "has-property-descriptors",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "he",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "hono",
            "direct": false,
            "version": "^4.11.1",
            "ecosystem": "npm"
          },
          {
            "name": "ieee754",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "inherits",
            "direct": false,
            "version": "2.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "ini",
            "direct": false,
            "version": "1.3.8",
            "ecosystem": "npm"
          },
          {
            "name": "js-tokens",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsdom",
            "direct": false,
            "version": "^27.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "jsesc",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "json-stringify-safe",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "json5",
            "direct": false,
            "version": "2.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "kolorist",
            "direct": false,
            "version": "1.8.0",
            "ecosystem": "npm"
          },
          {
            "name": "long",
            "direct": false,
            "version": "5.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "loupe",
            "direct": false,
            "version": "3.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "lru-cache",
            "direct": false,
            "version": "5.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "lucide-react",
            "direct": false,
            "version": "^0.454.0",
            "ecosystem": "npm"
          },
          {
            "name": "magic-string",
            "direct": false,
            "version": "0.30.21",
            "ecosystem": "npm"
          },
          {
            "name": "matcher",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "mimic-response",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "minimist",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "minipass",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "minizlib",
            "direct": false,
            "version": "3.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "mkdirp-classic",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "npm"
          },
          {
            "name": "ms",
            "direct": false,
            "version": "2.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "nanoid",
            "direct": false,
            "version": "3.3.11",
            "ecosystem": "npm"
          },
          {
            "name": "napi-build-utils",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "next",
            "direct": false,
            "version": "^15.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "node-abi",
            "direct": false,
            "version": "3.89.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-html-parser",
            "direct": false,
            "version": "6.1.13",
            "ecosystem": "npm"
          },
          {
            "name": "node-pty",
            "direct": false,
            "version": "^1.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.37",
            "ecosystem": "npm"
          },
          {
            "name": "node-releases",
            "direct": false,
            "version": "2.0.38",
            "ecosystem": "npm"
          },
          {
            "name": "nth-check",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "object-keys",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "once",
            "direct": false,
            "version": "1.4.0",
            "ecosystem": "npm"
          },
          {
            "name": "onnxruntime-common",
            "direct": false,
            "version": "1.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "onnxruntime-common",
            "direct": false,
            "version": "1.22.0-dev.20250409-89f8206ba4",
            "ecosystem": "npm"
          },
          {
            "name": "onnxruntime-node",
            "direct": false,
            "version": "1.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "onnxruntime-web",
            "direct": false,
            "version": "1.22.0-dev.20250409-89f8206ba4",
            "ecosystem": "npm"
          },
          {
            "name": "opencode-ai",
            "direct": false,
            "version": "1.1.16",
            "ecosystem": "npm"
          },
          {
            "name": "pathe",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "npm"
          },
          {
            "name": "pathval",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "picocolors",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "2.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "picomatch",
            "direct": false,
            "version": "4.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "platform",
            "direct": false,
            "version": "1.3.6",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "8.5.10",
            "ecosystem": "npm"
          },
          {
            "name": "postcss",
            "direct": false,
            "version": "^8.4.49",
            "ecosystem": "npm"
          },
          {
            "name": "posthog-node",
            "direct": false,
            "version": "^5.28.0",
            "ecosystem": "npm"
          },
          {
            "name": "preact",
            "direct": false,
            "version": "10.29.1",
            "ecosystem": "npm"
          },
          {
            "name": "prebuild-install",
            "direct": false,
            "version": "7.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "protobufjs",
            "direct": false,
            "version": "7.5.5",
            "ecosystem": "npm"
          },
          {
            "name": "pump",
            "direct": false,
            "version": "3.0.4",
            "ecosystem": "npm"
          },
          {
            "name": "puppeteer",
            "direct": false,
            "version": "^24.38.0",
            "ecosystem": "npm"
          },
          {
            "name": "rc",
            "direct": false,
            "version": "1.2.8",
            "ecosystem": "npm"
          },
          {
            "name": "react",
            "direct": false,
            "version": "^19.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-dom",
            "direct": false,
            "version": "^19.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "react-markdown",
            "direct": false,
            "version": "^9.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "react-router-dom",
            "direct": false,
            "version": "^7.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "readable-stream",
            "direct": false,
            "version": "3.6.2",
            "ecosystem": "npm"
          },
          {
            "name": "rebrowser-playwright",
            "direct": false,
            "version": "^1.52.0",
            "ecosystem": "npm"
          },
          {
            "name": "resolve-pkg-maps",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "roarr",
            "direct": false,
            "version": "2.15.4",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.1",
            "ecosystem": "npm"
          },
          {
            "name": "rollup",
            "direct": false,
            "version": "4.60.2",
            "ecosystem": "npm"
          },
          {
            "name": "safe-buffer",
            "direct": false,
            "version": "5.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "6.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "7.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "semver",
            "direct": false,
            "version": "^7.7.4",
            "ecosystem": "npm"
          },
          {
            "name": "semver-compare",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "serialize-error",
            "direct": false,
            "version": "7.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "sharp",
            "direct": false,
            "version": "0.34.5",
            "ecosystem": "npm"
          },
          {
            "name": "siginfo",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "simple-code-frame",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "simple-concat",
            "direct": false,
            "version": "1.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "simple-get",
            "direct": false,
            "version": "4.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "source-map",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "npm"
          },
          {
            "name": "source-map-js",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "npm"
          },
          {
            "name": "sprintf-js",
            "direct": false,
            "version": "1.1.3",
            "ecosystem": "npm"
          },
          {
            "name": "stack-trace",
            "direct": false,
            "version": "1.0.0-pre2",
            "ecosystem": "npm"
          },
          {
            "name": "stackback",
            "direct": false,
            "version": "0.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "std-env",
            "direct": false,
            "version": "3.10.0",
            "ecosystem": "npm"
          },
          {
            "name": "string_decoder",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "strip-json-comments",
            "direct": false,
            "version": "2.0.1",
            "ecosystem": "npm"
          },
          {
            "name": "tailwind-merge",
            "direct": false,
            "version": "^3.3.1",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss",
            "direct": false,
            "version": "^3.4.17",
            "ecosystem": "npm"
          },
          {
            "name": "tailwindcss-animate",
            "direct": false,
            "version": "^1.0.7",
            "ecosystem": "npm"
          },
          {
            "name": "tar",
            "direct": false,
            "version": "7.5.13",
            "ecosystem": "npm"
          },
          {
            "name": "tar-fs",
            "direct": false,
            "version": "2.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "tar-stream",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinybench",
            "direct": false,
            "version": "2.9.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyexec",
            "direct": false,
            "version": "0.3.2",
            "ecosystem": "npm"
          },
          {
            "name": "tinypool",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "tinyrainbow",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "npm"
          },
          {
            "name": "tinyspy",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "tslib",
            "direct": false,
            "version": "2.8.1",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "4.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "tsx",
            "direct": false,
            "version": "^4.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "tunnel-agent",
            "direct": false,
            "version": "0.6.0",
            "ecosystem": "npm"
          },
          {
            "name": "type-fest",
            "direct": false,
            "version": "0.13.1",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "5.9.3",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.7.0",
            "ecosystem": "npm"
          },
          {
            "name": "typescript",
            "direct": false,
            "version": "^5.7.2",
            "ecosystem": "npm"
          },
          {
            "name": "undici-types",
            "direct": false,
            "version": "6.21.0",
            "ecosystem": "npm"
          },
          {
            "name": "update-browserslist-db",
            "direct": false,
            "version": "1.2.3",
            "ecosystem": "npm"
          },
          {
            "name": "util-deprecate",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "uuid",
            "direct": false,
            "version": "^10.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "5.4.21",
            "ecosystem": "npm"
          },
          {
            "name": "vite",
            "direct": false,
            "version": "^6.0.6",
            "ecosystem": "npm"
          },
          {
            "name": "vite-node",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "vite-plugin-electron",
            "direct": false,
            "version": "^0.28.8",
            "ecosystem": "npm"
          },
          {
            "name": "vite-prerender-plugin",
            "direct": false,
            "version": "0.5.13",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "2.1.9",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "^2.1.0",
            "ecosystem": "npm"
          },
          {
            "name": "vitest",
            "direct": false,
            "version": "^4.0.17",
            "ecosystem": "npm"
          },
          {
            "name": "why-is-node-running",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "npm"
          },
          {
            "name": "wrappy",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "npm"
          },
          {
            "name": "yallist",
            "direct": false,
            "version": "5.0.0",
            "ecosystem": "npm"
          },
          {
            "name": "yaml",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "npm"
          },
          {
            "name": "zimmerframe",
            "direct": false,
            "version": "1.1.4",
            "ecosystem": "npm"
          },
          {
            "name": "zod",
            "direct": false,
            "version": "^3.24.1",
            "ecosystem": "npm"
          },
          {
            "name": "zustand",
            "direct": false,
            "version": "^5.0.2",
            "ecosystem": "npm"
          },
          {
            "name": "absl-py",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "alibabacloud-oss-v2",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "annotated-doc",
            "direct": false,
            "version": "0.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "annotated-types",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.13.0",
            "ecosystem": "pypi"
          },
          {
            "name": "anyio",
            "direct": false,
            "version": "4.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "async-timeout",
            "direct": false,
            "version": "5.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "25.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "25.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "attrs",
            "direct": false,
            "version": "26.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "authlib",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "authlib",
            "direct": false,
            "version": "1.6.5",
            "ecosystem": "pypi"
          },
          {
            "name": "authlib",
            "direct": false,
            "version": "1.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "backoff",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "backports-tarfile",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "beartype",
            "direct": false,
            "version": "0.22.5",
            "ecosystem": "pypi"
          },
          {
            "name": "beartype",
            "direct": false,
            "version": "0.22.9",
            "ecosystem": "pypi"
          },
          {
            "name": "beautifulsoup4",
            "direct": false,
            "version": "4.13.4",
            "ecosystem": "pypi"
          },
          {
            "name": "beautifulsoup4",
            "direct": false,
            "version": "4.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "bert-score",
            "direct": false,
            "version": "0.3.13",
            "ecosystem": "pypi"
          },
          {
            "name": "cachetools",
            "direct": false,
            "version": "6.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cachetools",
            "direct": false,
            "version": "6.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cachetools",
            "direct": false,
            "version": "7.0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2025.11.12",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2025.7.14",
            "ecosystem": "pypi"
          },
          {
            "name": "certifi",
            "direct": false,
            "version": "2026.2.25",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "1.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cffi",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cfgv",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": false,
            "version": "3.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "charset-normalizer",
            "direct": false,
            "version": "3.4.7",
            "ecosystem": "pypi"
          },
          {
            "name": "chonkie",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "chonkie",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "chonkie",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "pypi"
          },
          {
            "name": "chonkie-core",
            "direct": false,
            "version": "0.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "click",
            "direct": false,
            "version": "8.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cloudpickle",
            "direct": false,
            "version": "3.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cobble",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "colorama",
            "direct": false,
            "version": "0.4.6",
            "ecosystem": "pypi"
          },
          {
            "name": "coloredlogs",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "contourpy",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "coverage",
            "direct": false,
            "version": "7.13.5",
            "ecosystem": "pypi"
          },
          {
            "name": "crcmod-plus",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cronsim",
            "direct": false,
            "version": "2.7",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "45.0.5",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "46.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "cryptography",
            "direct": false,
            "version": "46.0.7",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-bindings",
            "direct": false,
            "version": "13.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-pathfinder",
            "direct": false,
            "version": "1.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "cuda-toolkit",
            "direct": false,
            "version": "13.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cycler",
            "direct": false,
            "version": "0.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "cyclopts",
            "direct": false,
            "version": "3.22.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cyclopts",
            "direct": false,
            "version": "4.10.2",
            "ecosystem": "pypi"
          },
          {
            "name": "cyclopts",
            "direct": false,
            "version": "4.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "datasketch",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "datasketch",
            "direct": false,
            "version": "1.6.5",
            "ecosystem": "pypi"
          },
          {
            "name": "defusedxml",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "diskcache",
            "direct": false,
            "version": "5.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "distlib",
            "direct": false,
            "version": "0.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "distro",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dnspython",
            "direct": false,
            "version": "2.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "dnspython",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docstring-parser",
            "direct": false,
            "version": "0.16",
            "ecosystem": "pypi"
          },
          {
            "name": "docstring-parser",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docstring-parser",
            "direct": false,
            "version": "0.18.0",
            "ecosystem": "pypi"
          },
          {
            "name": "docutils",
            "direct": false,
            "version": "0.21.2",
            "ecosystem": "pypi"
          },
          {
            "name": "docutils",
            "direct": false,
            "version": "0.22.3",
            "ecosystem": "pypi"
          },
          {
            "name": "docutils",
            "direct": false,
            "version": "0.22.4",
            "ecosystem": "pypi"
          },
          {
            "name": "dotenv",
            "direct": false,
            "version": "0.9.9",
            "ecosystem": "pypi"
          },
          {
            "name": "email-validator",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "email-validator",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "et-xmlfile",
            "direct": false,
            "version": "2.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "exceptiongroup",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "exceptiongroup",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "fakeredis",
            "direct": false,
            "version": "2.34.1",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi-cli",
            "direct": false,
            "version": "0.0.16",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi-cli",
            "direct": false,
            "version": "0.0.24",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi-cli",
            "direct": false,
            "version": "0.0.8",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi-cloud-cli",
            "direct": false,
            "version": "0.1.4",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi-cloud-cli",
            "direct": false,
            "version": "0.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fastapi-cloud-cli",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "fastar",
            "direct": false,
            "version": "0.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "filelock",
            "direct": false,
            "version": "3.18.0",
            "ecosystem": "pypi"
          },
          {
            "name": "filelock",
            "direct": false,
            "version": "3.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "filelock",
            "direct": false,
            "version": "3.29.0",
            "ecosystem": "pypi"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.12.19",
            "ecosystem": "pypi"
          },
          {
            "name": "flatbuffers",
            "direct": false,
            "version": "25.2.10",
            "ecosystem": "pypi"
          },
          {
            "name": "fonttools",
            "direct": false,
            "version": "4.59.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fsspec",
            "direct": false,
            "version": "2025.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fsspec",
            "direct": false,
            "version": "2025.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "fsspec",
            "direct": false,
            "version": "2026.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "greenlet",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "greenlet",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio",
            "direct": false,
            "version": "1.73.1",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio",
            "direct": false,
            "version": "1.76.0",
            "ecosystem": "pypi"
          },
          {
            "name": "grpcio",
            "direct": false,
            "version": "1.80.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h11",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h2",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "h2",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hf-xet",
            "direct": false,
            "version": "1.1.5",
            "ecosystem": "pypi"
          },
          {
            "name": "hf-xet",
            "direct": false,
            "version": "1.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hf-xet",
            "direct": false,
            "version": "1.4.3",
            "ecosystem": "pypi"
          },
          {
            "name": "hpack",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "httpcore",
            "direct": false,
            "version": "1.0.9",
            "ecosystem": "pypi"
          },
          {
            "name": "httptools",
            "direct": false,
            "version": "0.6.4",
            "ecosystem": "pypi"
          },
          {
            "name": "httptools",
            "direct": false,
            "version": "0.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx",
            "direct": false,
            "version": "0.28.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx-sse",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "httpx-sse",
            "direct": false,
            "version": "0.4.3",
            "ecosystem": "pypi"
          },
          {
            "name": "huggingface-hub",
            "direct": false,
            "version": "0.33.4",
            "ecosystem": "pypi"
          },
          {
            "name": "huggingface-hub",
            "direct": false,
            "version": "0.36.0",
            "ecosystem": "pypi"
          },
          {
            "name": "huggingface-hub",
            "direct": false,
            "version": "0.36.2",
            "ecosystem": "pypi"
          },
          {
            "name": "humanfriendly",
            "direct": false,
            "version": "10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "hyperframe",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "identify",
            "direct": false,
            "version": "2.6.12",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.10",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.11",
            "ecosystem": "pypi"
          },
          {
            "name": "idna",
            "direct": false,
            "version": "3.12",
            "ecosystem": "pypi"
          },
          {
            "name": "importlib-metadata",
            "direct": false,
            "version": "8.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "iniconfig",
            "direct": false,
            "version": "2.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "itsdangerous",
            "direct": false,
            "version": "2.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-classes",
            "direct": false,
            "version": "3.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-context",
            "direct": false,
            "version": "6.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-context",
            "direct": false,
            "version": "6.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-functools",
            "direct": false,
            "version": "4.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jaraco-functools",
            "direct": false,
            "version": "4.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jeepney",
            "direct": false,
            "version": "0.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jieba",
            "direct": false,
            "version": "0.42",
            "ecosystem": "pypi"
          },
          {
            "name": "jinja2",
            "direct": false,
            "version": "3.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "jiter",
            "direct": false,
            "version": "0.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jiter",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jiter",
            "direct": false,
            "version": "0.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "joblib",
            "direct": false,
            "version": "1.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "joblib",
            "direct": false,
            "version": "1.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "joblib",
            "direct": false,
            "version": "1.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "joserfc",
            "direct": false,
            "version": "1.6.4",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpatch",
            "direct": false,
            "version": "1.33",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpointer",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonpointer",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonref",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "4.24.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "4.25.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema",
            "direct": false,
            "version": "4.26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-path",
            "direct": false,
            "version": "0.3.4",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-path",
            "direct": false,
            "version": "0.4.5",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-specifications",
            "direct": false,
            "version": "2025.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "jsonschema-specifications",
            "direct": false,
            "version": "2025.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "keyring",
            "direct": false,
            "version": "25.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "keyring",
            "direct": false,
            "version": "25.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "kiwisolver",
            "direct": false,
            "version": "1.4.8",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-core",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-core",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-text-splitters",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "langchain-text-splitters",
            "direct": false,
            "version": "1.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph-checkpoint",
            "direct": false,
            "version": "2.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph-prebuilt",
            "direct": false,
            "version": "0.5.2",
            "ecosystem": "pypi"
          },
          {
            "name": "langgraph-sdk",
            "direct": false,
            "version": "0.1.73",
            "ecosystem": "pypi"
          },
          {
            "name": "langsmith",
            "direct": false,
            "version": "0.4.7",
            "ecosystem": "pypi"
          },
          {
            "name": "langsmith",
            "direct": false,
            "version": "0.7.33",
            "ecosystem": "pypi"
          },
          {
            "name": "lupa",
            "direct": false,
            "version": "2.8",
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": false,
            "version": "6.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "lxml",
            "direct": false,
            "version": "6.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "magika",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "magika",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "mammoth",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mammoth",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown-it-py",
            "direct": false,
            "version": "3.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "markdown-it-py",
            "direct": false,
            "version": "4.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "markdownify",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "markdownify",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "markitdown",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "markitdown",
            "direct": false,
            "version": "0.1.5",
            "ecosystem": "pypi"
          },
          {
            "name": "markupsafe",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "markupsafe",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "matplotlib",
            "direct": false,
            "version": "3.10.3",
            "ecosystem": "pypi"
          },
          {
            "name": "mcp",
            "direct": false,
            "version": "1.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mcp",
            "direct": false,
            "version": "1.21.1",
            "ecosystem": "pypi"
          },
          {
            "name": "mcp",
            "direct": false,
            "version": "1.27.0",
            "ecosystem": "pypi"
          },
          {
            "name": "mdurl",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "mem0ai",
            "direct": false,
            "version": "0.1.114",
            "ecosystem": "pypi"
          },
          {
            "name": "memoryos",
            "direct": false,
            "version": "2.0.14",
            "ecosystem": "pypi"
          },
          {
            "name": "more-itertools",
            "direct": false,
            "version": "10.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "more-itertools",
            "direct": false,
            "version": "11.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "mpmath",
            "direct": false,
            "version": "1.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "neo4j",
            "direct": false,
            "version": "5.28.1",
            "ecosystem": "pypi"
          },
          {
            "name": "neo4j",
            "direct": false,
            "version": "5.28.3",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.5",
            "ecosystem": "pypi"
          },
          {
            "name": "networkx",
            "direct": false,
            "version": "3.6.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nltk",
            "direct": false,
            "version": "3.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nltk",
            "direct": false,
            "version": "3.9.4",
            "ecosystem": "pypi"
          },
          {
            "name": "nodeenv",
            "direct": false,
            "version": "1.9.1",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": false,
            "version": "2.2.6",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": false,
            "version": "2.3.4",
            "ecosystem": "pypi"
          },
          {
            "name": "numpy",
            "direct": false,
            "version": "2.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cublas",
            "direct": false,
            "version": "13.1.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cublas-cu12",
            "direct": false,
            "version": "12.6.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-cupti",
            "direct": false,
            "version": "13.0.85",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-cupti-cu12",
            "direct": false,
            "version": "12.6.80",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-nvrtc",
            "direct": false,
            "version": "13.0.88",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-nvrtc-cu12",
            "direct": false,
            "version": "12.6.77",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-runtime",
            "direct": false,
            "version": "13.0.96",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cuda-runtime-cu12",
            "direct": false,
            "version": "12.6.77",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cudnn-cu12",
            "direct": false,
            "version": "9.5.1.17",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cudnn-cu13",
            "direct": false,
            "version": "9.19.0.56",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufft",
            "direct": false,
            "version": "12.0.0.61",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufft-cu12",
            "direct": false,
            "version": "11.3.0.4",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufile",
            "direct": false,
            "version": "1.15.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cufile-cu12",
            "direct": false,
            "version": "1.11.1.6",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-curand",
            "direct": false,
            "version": "10.4.0.35",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-curand-cu12",
            "direct": false,
            "version": "10.3.7.77",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusolver",
            "direct": false,
            "version": "12.0.4.66",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusolver-cu12",
            "direct": false,
            "version": "11.7.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparse",
            "direct": false,
            "version": "12.6.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparse-cu12",
            "direct": false,
            "version": "12.5.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparselt-cu12",
            "direct": false,
            "version": "0.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-cusparselt-cu13",
            "direct": false,
            "version": "0.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nccl-cu12",
            "direct": false,
            "version": "2.26.2",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nccl-cu13",
            "direct": false,
            "version": "2.28.9",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvjitlink",
            "direct": false,
            "version": "13.0.88",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvjitlink-cu12",
            "direct": false,
            "version": "12.6.85",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvshmem-cu13",
            "direct": false,
            "version": "3.4.5",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvtx",
            "direct": false,
            "version": "13.0.85",
            "ecosystem": "pypi"
          },
          {
            "name": "nvidia-nvtx-cu12",
            "direct": false,
            "version": "12.6.77",
            "ecosystem": "pypi"
          },
          {
            "name": "onnxruntime",
            "direct": false,
            "version": "1.20.1",
            "ecosystem": "pypi"
          },
          {
            "name": "onnxruntime",
            "direct": false,
            "version": "1.22.1",
            "ecosystem": "pypi"
          },
          {
            "name": "openapi-pydantic",
            "direct": false,
            "version": "0.5.1",
            "ecosystem": "pypi"
          },
          {
            "name": "openpyxl",
            "direct": false,
            "version": "3.1.5",
            "ecosystem": "pypi"
          },
          {
            "name": "opentelemetry-api",
            "direct": false,
            "version": "1.41.0",
            "ecosystem": "pypi"
          },
          {
            "name": "orjson",
            "direct": false,
            "version": "3.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "orjson",
            "direct": false,
            "version": "3.11.4",
            "ecosystem": "pypi"
          },
          {
            "name": "orjson",
            "direct": false,
            "version": "3.11.8",
            "ecosystem": "pypi"
          },
          {
            "name": "ormsgpack",
            "direct": false,
            "version": "1.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "25.0",
            "ecosystem": "pypi"
          },
          {
            "name": "packaging",
            "direct": false,
            "version": "26.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": "2.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": "2.3.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pandas",
            "direct": false,
            "version": "3.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pathable",
            "direct": false,
            "version": "0.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pathable",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pathvalidate",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pdfminer-six",
            "direct": false,
            "version": "20250506",
            "ecosystem": "pypi"
          },
          {
            "name": "pdfminer-six",
            "direct": false,
            "version": "20251230",
            "ecosystem": "pypi"
          },
          {
            "name": "pdfplumber",
            "direct": false,
            "version": "0.11.9",
            "ecosystem": "pypi"
          },
          {
            "name": "pika",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pillow",
            "direct": false,
            "version": "11.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pillow",
            "direct": false,
            "version": "12.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "platformdirs",
            "direct": false,
            "version": "4.3.8",
            "ecosystem": "pypi"
          },
          {
            "name": "platformdirs",
            "direct": false,
            "version": "4.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "platformdirs",
            "direct": false,
            "version": "4.9.6",
            "ecosystem": "pypi"
          },
          {
            "name": "pluggy",
            "direct": false,
            "version": "1.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "portalocker",
            "direct": false,
            "version": "2.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "portalocker",
            "direct": false,
            "version": "2.8.0",
            "ecosystem": "pypi"
          },
          {
            "name": "portalocker",
            "direct": false,
            "version": "3.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "posthog",
            "direct": false,
            "version": "6.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pre-commit",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "protobuf",
            "direct": false,
            "version": "6.31.1",
            "ecosystem": "pypi"
          },
          {
            "name": "protobuf",
            "direct": false,
            "version": "6.33.1",
            "ecosystem": "pypi"
          },
          {
            "name": "protobuf",
            "direct": false,
            "version": "7.34.1",
            "ecosystem": "pypi"
          },
          {
            "name": "psycopg2-binary",
            "direct": false,
            "version": "2.9.11",
            "ecosystem": "pypi"
          },
          {
            "name": "py-key-value-aio",
            "direct": false,
            "version": "0.2.8",
            "ecosystem": "pypi"
          },
          {
            "name": "py-key-value-aio",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "py-key-value-shared",
            "direct": false,
            "version": "0.2.8",
            "ecosystem": "pypi"
          },
          {
            "name": "py-key-value-shared",
            "direct": false,
            "version": "0.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "2.22",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "2.23",
            "ecosystem": "pypi"
          },
          {
            "name": "pycparser",
            "direct": false,
            "version": "3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pycryptodome",
            "direct": false,
            "version": "3.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.11.7",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.12.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic",
            "direct": false,
            "version": "2.13.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.33.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.41.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-core",
            "direct": false,
            "version": "2.46.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-extra-types",
            "direct": false,
            "version": "2.10.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-extra-types",
            "direct": false,
            "version": "2.10.6",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-extra-types",
            "direct": false,
            "version": "2.11.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-settings",
            "direct": false,
            "version": "2.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-settings",
            "direct": false,
            "version": "2.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydantic-settings",
            "direct": false,
            "version": "2.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pydocket",
            "direct": false,
            "version": "0.18.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.19.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pygments",
            "direct": false,
            "version": "2.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": false,
            "version": "2.10.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyjwt",
            "direct": false,
            "version": "2.12.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pymilvus",
            "direct": false,
            "version": "2.6.12",
            "ecosystem": "pypi"
          },
          {
            "name": "pymilvus",
            "direct": false,
            "version": "2.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pymilvus",
            "direct": false,
            "version": "2.6.5",
            "ecosystem": "pypi"
          },
          {
            "name": "pyparsing",
            "direct": false,
            "version": "3.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pypdfium2",
            "direct": false,
            "version": "5.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pyperclip",
            "direct": false,
            "version": "1.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyperclip",
            "direct": false,
            "version": "1.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pyreadline3",
            "direct": false,
            "version": "3.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "8.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest",
            "direct": false,
            "version": "9.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-asyncio",
            "direct": false,
            "version": "0.23.8",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-cov",
            "direct": false,
            "version": "6.3.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-html",
            "direct": false,
            "version": "4.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "pytest-metadata",
            "direct": false,
            "version": "3.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": "1.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "python-dotenv",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "python-json-logger",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "python-multipart",
            "direct": false,
            "version": "0.0.20",
            "ecosystem": "pypi"
          },
          {
            "name": "python-multipart",
            "direct": false,
            "version": "0.0.26",
            "ecosystem": "pypi"
          },
          {
            "name": "python-pptx",
            "direct": false,
            "version": "1.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytz",
            "direct": false,
            "version": "2025.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pytz",
            "direct": false,
            "version": "2026.1.post1",
            "ecosystem": "pypi"
          },
          {
            "name": "pywin32",
            "direct": false,
            "version": "311",
            "ecosystem": "pypi"
          },
          {
            "name": "pywin32-ctypes",
            "direct": false,
            "version": "0.2.3",
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": "6.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "pyyaml",
            "direct": false,
            "version": "6.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-client",
            "direct": false,
            "version": "1.14.3",
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-client",
            "direct": false,
            "version": "1.16.2",
            "ecosystem": "pypi"
          },
          {
            "name": "qdrant-client",
            "direct": false,
            "version": "1.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rake-nltk",
            "direct": false,
            "version": "1.0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "rank-bm25",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "redis",
            "direct": false,
            "version": "6.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "redis",
            "direct": false,
            "version": "6.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "referencing",
            "direct": false,
            "version": "0.36.2",
            "ecosystem": "pypi"
          },
          {
            "name": "referencing",
            "direct": false,
            "version": "0.37.0",
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "2024.11.6",
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "2025.11.3",
            "ecosystem": "pypi"
          },
          {
            "name": "regex",
            "direct": false,
            "version": "2026.4.4",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": false,
            "version": "2.32.4",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": false,
            "version": "2.32.5",
            "ecosystem": "pypi"
          },
          {
            "name": "requests",
            "direct": false,
            "version": "2.33.1",
            "ecosystem": "pypi"
          },
          {
            "name": "requests-toolbelt",
            "direct": false,
            "version": "1.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": false,
            "version": "14.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": false,
            "version": "14.2.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rich",
            "direct": false,
            "version": "15.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rich-rst",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rich-rst",
            "direct": false,
            "version": "1.3.2",
            "ecosystem": "pypi"
          },
          {
            "name": "rich-toolkit",
            "direct": false,
            "version": "0.14.8",
            "ecosystem": "pypi"
          },
          {
            "name": "rich-toolkit",
            "direct": false,
            "version": "0.15.1",
            "ecosystem": "pypi"
          },
          {
            "name": "rich-toolkit",
            "direct": false,
            "version": "0.19.7",
            "ecosystem": "pypi"
          },
          {
            "name": "rignore",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "rignore",
            "direct": false,
            "version": "0.7.6",
            "ecosystem": "pypi"
          },
          {
            "name": "rouge-score",
            "direct": false,
            "version": "0.1.2",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.26.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.28.0",
            "ecosystem": "pypi"
          },
          {
            "name": "rpds-py",
            "direct": false,
            "version": "0.30.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ruff",
            "direct": false,
            "version": "0.11.13",
            "ecosystem": "pypi"
          },
          {
            "name": "safetensors",
            "direct": false,
            "version": "0.5.3",
            "ecosystem": "pypi"
          },
          {
            "name": "safetensors",
            "direct": false,
            "version": "0.6.2",
            "ecosystem": "pypi"
          },
          {
            "name": "safetensors",
            "direct": false,
            "version": "0.7.0",
            "ecosystem": "pypi"
          },
          {
            "name": "schedule",
            "direct": false,
            "version": "1.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.15.3",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.16.3",
            "ecosystem": "pypi"
          },
          {
            "name": "scipy",
            "direct": false,
            "version": "1.17.1",
            "ecosystem": "pypi"
          },
          {
            "name": "secretstorage",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sentence-transformers",
            "direct": false,
            "version": "4.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sentry-sdk",
            "direct": false,
            "version": "2.33.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sentry-sdk",
            "direct": false,
            "version": "2.44.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sentry-sdk",
            "direct": false,
            "version": "2.58.0",
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": "80.9.0",
            "ecosystem": "pypi"
          },
          {
            "name": "setuptools",
            "direct": false,
            "version": "81.0.0",
            "ecosystem": "pypi"
          },
          {
            "name": "shellingham",
            "direct": false,
            "version": "1.5.4",
            "ecosystem": "pypi"
          },
          {
            "name": "six",
            "direct": false,
            "version": "1.17.0",
            "ecosystem": "pypi"
          },
          {
            "name": "sniffio",
            "direct": false,
            "version": "1.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "sortedcontainers",
            "direct": false,
            "version": "2.4.0",
            "ecosystem": "pypi"
          },
          {
            "name": "soupsieve",
            "direct": false,
            "version": "2.7",
            "ecosystem": "pypi"
          },
          {
            "name": "soupsieve",
            "direct": false,
            "version": "2.8.3",
            "ecosystem": "pypi"
          },
          {
            "name": "sse-starlette",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "sse-starlette",
            "direct": false,
            "version": "3.0.3",
            "ecosystem": "pypi"
          },
          {
            "name": "starlette",
            "direct": false,
            "version": "0.46.2",
            "ecosystem": "pypi"
          },
          {
            "name": "sympy",
            "direct": false,
            "version": "1.14.0",
            "ecosystem": "pypi"
          },
          {
            "name": "taskgroup",
            "direct": false,
            "version": "0.2.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tavily-python",
            "direct": false,
            "version": "0.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tavily-python",
            "direct": false,
            "version": "0.7.23",
            "ecosystem": "pypi"
          },
          {
            "name": "threadpoolctl",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tiktoken",
            "direct": false,
            "version": "0.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": "0.21.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tokenizers",
            "direct": false,
            "version": "0.22.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli",
            "direct": false,
            "version": "2.2.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tomli",
            "direct": false,
            "version": "2.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": "2.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "torch",
            "direct": false,
            "version": "2.7.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tqdm",
            "direct": false,
            "version": "4.67.1",
            "ecosystem": "pypi"
          },
          {
            "name": "tqdm",
            "direct": false,
            "version": "4.67.3",
            "ecosystem": "pypi"
          },
          {
            "name": "triton",
            "direct": false,
            "version": "3.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "triton",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "triton",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typer",
            "direct": false,
            "version": "0.16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typer",
            "direct": false,
            "version": "0.20.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typer",
            "direct": false,
            "version": "0.24.1",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": false,
            "version": null,
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": false,
            "version": "4.14.1",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-extensions",
            "direct": false,
            "version": "4.15.0",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspection",
            "direct": false,
            "version": "0.4.1",
            "ecosystem": "pypi"
          },
          {
            "name": "typing-inspection",
            "direct": false,
            "version": "0.4.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tzdata",
            "direct": false,
            "version": "2025.2",
            "ecosystem": "pypi"
          },
          {
            "name": "tzdata",
            "direct": false,
            "version": "2026.1",
            "ecosystem": "pypi"
          },
          {
            "name": "ujson",
            "direct": false,
            "version": "5.10.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ujson",
            "direct": false,
            "version": "5.11.0",
            "ecosystem": "pypi"
          },
          {
            "name": "ujson",
            "direct": false,
            "version": "5.12.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uncalled-for",
            "direct": false,
            "version": "0.3.1",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "urllib3",
            "direct": false,
            "version": "2.6.3",
            "ecosystem": "pypi"
          },
          {
            "name": "uuid-utils",
            "direct": false,
            "version": "0.14.1",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": false,
            "version": "0.35.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": false,
            "version": "0.38.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvicorn",
            "direct": false,
            "version": "0.45.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvloop",
            "direct": false,
            "version": "0.21.0",
            "ecosystem": "pypi"
          },
          {
            "name": "uvloop",
            "direct": false,
            "version": "0.22.1",
            "ecosystem": "pypi"
          },
          {
            "name": "virtualenv",
            "direct": false,
            "version": "20.31.2",
            "ecosystem": "pypi"
          },
          {
            "name": "volcengine-python-sdk",
            "direct": false,
            "version": "4.0.45",
            "ecosystem": "pypi"
          },
          {
            "name": "volcengine-python-sdk",
            "direct": false,
            "version": "4.0.6",
            "ecosystem": "pypi"
          },
          {
            "name": "watchfiles",
            "direct": false,
            "version": "1.1.0",
            "ecosystem": "pypi"
          },
          {
            "name": "watchfiles",
            "direct": false,
            "version": "1.1.1",
            "ecosystem": "pypi"
          },
          {
            "name": "websockets",
            "direct": false,
            "version": "15.0.1",
            "ecosystem": "pypi"
          },
          {
            "name": "websockets",
            "direct": false,
            "version": "16.0",
            "ecosystem": "pypi"
          },
          {
            "name": "xlrd",
            "direct": false,
            "version": "2.0.2",
            "ecosystem": "pypi"
          },
          {
            "name": "xlsxwriter",
            "direct": false,
            "version": "3.2.5",
            "ecosystem": "pypi"
          },
          {
            "name": "xlsxwriter",
            "direct": false,
            "version": "3.2.9",
            "ecosystem": "pypi"
          },
          {
            "name": "xxhash",
            "direct": false,
            "version": "3.5.0",
            "ecosystem": "pypi"
          },
          {
            "name": "xxhash",
            "direct": false,
            "version": "3.6.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zep-cloud",
            "direct": false,
            "version": "2.19.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zipp",
            "direct": false,
            "version": "3.23.1",
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": false,
            "version": "0.23.0",
            "ecosystem": "pypi"
          },
          {
            "name": "zstandard",
            "direct": false,
            "version": "0.25.0",
            "ecosystem": "pypi"
          }
        ],
        "collected": true,
        "truncated": false,
        "total_count": 869,
        "direct_count": 23,
        "indirect_count": 846
      }
    },
    "maintainership": {
      "issues": {
        "open_prs": 30,
        "merged_prs": 1207,
        "open_issues": 50,
        "closed_ratio": 0.887,
        "closed_issues": 391,
        "closed_unmerged_prs": 371
      },
      "bus_factor": 4,
      "bot_contributors": 1,
      "top_contributors": [
        {
          "type": "User",
          "login": "tangg555",
          "commits": 232,
          "avatar_url": "https://avatars.githubusercontent.com/u/22412972?v=4"
        },
        {
          "type": "User",
          "login": "CaralHsi",
          "commits": 226,
          "avatar_url": "https://avatars.githubusercontent.com/u/27054213?v=4"
        },
        {
          "type": "User",
          "login": "hijzy",
          "commits": 214,
          "avatar_url": "https://avatars.githubusercontent.com/u/33757498?v=4"
        },
        {
          "type": "User",
          "login": "fridayL",
          "commits": 162,
          "avatar_url": "https://avatars.githubusercontent.com/u/78344051?v=4"
        },
        {
          "type": "User",
          "login": "Wang-Daoji",
          "commits": 99,
          "avatar_url": "https://avatars.githubusercontent.com/u/75928131?v=4"
        },
        {
          "type": "User",
          "login": "whipser030",
          "commits": 78,
          "avatar_url": "https://avatars.githubusercontent.com/u/48425266?v=4"
        },
        {
          "type": "User",
          "login": "wustzdy",
          "commits": 73,
          "avatar_url": "https://avatars.githubusercontent.com/u/67457465?v=4"
        },
        {
          "type": "User",
          "login": "CarltonXiang",
          "commits": 65,
          "avatar_url": "https://avatars.githubusercontent.com/u/11536432?v=4"
        },
        {
          "type": "User",
          "login": "Memtensor-AI",
          "commits": 64,
          "avatar_url": "https://avatars.githubusercontent.com/u/272161396?v=4"
        },
        {
          "type": "User",
          "login": "tangbotony",
          "commits": 53,
          "avatar_url": "https://avatars.githubusercontent.com/u/16586457?v=4"
        }
      ],
      "contributors_sampled": 79,
      "top_contributor_share": 0.142
    },
    "quality_signals": {
      "has_ci": true,
      "has_tests": true,
      "ci_workflows": [
        "memos-local-plugin-publish.yml",
        "openclaw-plugin-publish.yml",
        "python-release.yml",
        "python-tests.yml",
        "stale.yml"
      ],
      "has_docs_dir": true,
      "linter_configs": [
        ".eslintrc.json"
      ],
      "has_editorconfig": false,
      "has_linter_config": true,
      "has_precommit_config": true
    },
    "security_signals": {
      "lockfiles": [
        "package-lock.json",
        "pnpm-lock.yaml",
        "poetry.lock",
        "uv.lock"
      ],
      "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": 5,
            "reason": "branch protection is not maximal on development and all release branches",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
          },
          {
            "name": "CI-Tests",
            "score": 6,
            "reason": "12 out of 20 merged PRs checked by a CI test -- score normalized to 6",
            "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": 6,
            "reason": "Found 14/21 approved changesets -- score normalized to 6",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
          },
          {
            "name": "Contributors",
            "score": 10,
            "reason": "project has 12 contributing companies or organizations",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
          },
          {
            "name": "Dangerous-Workflow",
            "score": 10,
            "reason": "no dangerous workflow patterns detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
          },
          {
            "name": "Dependency-Update-Tool",
            "score": 0,
            "reason": "no update tool detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
          },
          {
            "name": "Fuzzing",
            "score": 0,
            "reason": "project is not fuzzed",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
          },
          {
            "name": "License",
            "score": 10,
            "reason": "license file detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
          },
          {
            "name": "Maintained",
            "score": 10,
            "reason": "30 commit(s) and 26 issue activity found in the last 90 days -- score normalized to 10",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
          },
          {
            "name": "Packaging",
            "score": 10,
            "reason": "packaging workflow detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
          },
          {
            "name": "Pinned-Dependencies",
            "score": 0,
            "reason": "dependency not pinned by hash detected -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
          },
          {
            "name": "SAST",
            "score": 0,
            "reason": "SAST tool is not run on all commits -- score normalized to 0",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
          },
          {
            "name": "Security-Policy",
            "score": 0,
            "reason": "security policy file not detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
          },
          {
            "name": "Signed-Releases",
            "score": 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": "172 existing vulnerabilities detected",
            "documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
          }
        ],
        "commit": "6734a0ea8d01293b4dae3611fae0ab3834366e1b",
        "ran_at": "2026-07-24T06:03:57Z",
        "aggregate_score": 4.6,
        "scorecard_version": "v5.5.0"
      },
      "has_codeql_workflow": false,
      "has_security_policy": false,
      "has_dependabot_config": false
    },
    "contribution_flow": {
      "collected": true,
      "ci_last_run_at": "2026-07-24T03:05:37Z",
      "oldest_open_prs": [
        {
          "number": 1379,
          "created_at": "2026-03-29T14:53:26Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1405,
          "created_at": "2026-04-02T09:29:40Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1457,
          "created_at": "2026-04-10T06:30:01Z",
          "last_comment_at": "2026-04-15T10:03:13Z",
          "last_comment_author": "CaralHsi"
        },
        {
          "number": 1481,
          "created_at": "2026-04-14T06:18:57Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1496,
          "created_at": "2026-04-19T03:18:17Z",
          "last_comment_at": "2026-07-02T10:21:00Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1509,
          "created_at": "2026-04-21T11:34:43Z",
          "last_comment_at": "2026-04-24T09:45:30Z",
          "last_comment_author": "zZhangSir"
        },
        {
          "number": 1795,
          "created_at": "2026-05-23T18:19:43Z",
          "last_comment_at": "2026-07-02T12:29:54Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1847,
          "created_at": "2026-06-01T01:51:57Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1848,
          "created_at": "2026-06-01T01:53:02Z",
          "last_comment_at": "2026-07-02T12:29:46Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1859,
          "created_at": "2026-06-01T15:40:34Z",
          "last_comment_at": "2026-07-02T10:25:41Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1862,
          "created_at": "2026-06-02T09:40:55Z",
          "last_comment_at": "2026-07-02T11:10:54Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1894,
          "created_at": "2026-06-06T06:06:37Z",
          "last_comment_at": "2026-06-11T07:14:25Z",
          "last_comment_author": "cnYui"
        },
        {
          "number": 1896,
          "created_at": "2026-06-08T11:06:27Z",
          "last_comment_at": "2026-07-02T12:29:42Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1952,
          "created_at": "2026-06-21T09:50:13Z",
          "last_comment_at": "2026-07-02T11:18:15Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 2020,
          "created_at": "2026-07-01T14:41:52Z",
          "last_comment_at": "2026-07-08T06:36:21Z",
          "last_comment_author": "RerankerGuo"
        },
        {
          "number": 2021,
          "created_at": "2026-07-01T14:50:08Z",
          "last_comment_at": "2026-07-08T06:36:19Z",
          "last_comment_author": "RerankerGuo"
        },
        {
          "number": 2022,
          "created_at": "2026-07-01T14:55:35Z",
          "last_comment_at": "2026-07-08T06:36:18Z",
          "last_comment_author": "RerankerGuo"
        },
        {
          "number": 2041,
          "created_at": "2026-07-02T07:59:09Z",
          "last_comment_at": "2026-07-08T06:36:09Z",
          "last_comment_author": "RerankerGuo"
        },
        {
          "number": 2072,
          "created_at": "2026-07-07T14:58:25Z",
          "last_comment_at": "2026-07-13T05:23:18Z",
          "last_comment_author": "ilya-bogin-keenable"
        },
        {
          "number": 2099,
          "created_at": "2026-07-12T07:33:38Z",
          "last_comment_at": null,
          "last_comment_author": null
        }
      ],
      "last_merged_pr_at": "2026-07-24T03:25:54Z",
      "ci_last_conclusion": "SUCCESS",
      "oldest_open_issues": [
        {
          "number": 1105,
          "created_at": "2026-02-20T16:37:06Z",
          "last_comment_at": "2026-05-29T06:12:23Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1217,
          "created_at": "2026-03-12T14:26:09Z",
          "last_comment_at": "2026-05-19T09:58:41Z",
          "last_comment_author": "archieang"
        },
        {
          "number": 1269,
          "created_at": "2026-03-18T00:55:09Z",
          "last_comment_at": "2026-05-27T06:20:06Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1273,
          "created_at": "2026-03-18T04:43:28Z",
          "last_comment_at": "2026-07-21T04:48:53Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1340,
          "created_at": "2026-03-24T12:05:34Z",
          "last_comment_at": "2026-04-24T03:08:31Z",
          "last_comment_author": "github-actions"
        },
        {
          "number": 1351,
          "created_at": "2026-03-25T13:10:49Z",
          "last_comment_at": "2026-07-19T04:23:59Z",
          "last_comment_author": "Robs87"
        },
        {
          "number": 1365,
          "created_at": "2026-03-27T03:04:07Z",
          "last_comment_at": "2026-03-28T13:57:51Z",
          "last_comment_author": "Vincentdu-cn"
        },
        {
          "number": 1383,
          "created_at": "2026-03-30T07:09:40Z",
          "last_comment_at": "2026-04-09T08:06:42Z",
          "last_comment_author": "Hun-ger"
        },
        {
          "number": 1387,
          "created_at": "2026-03-31T06:04:58Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1390,
          "created_at": "2026-03-31T09:19:50Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1391,
          "created_at": "2026-03-31T12:31:49Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1401,
          "created_at": "2026-04-02T07:28:59Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1411,
          "created_at": "2026-04-03T06:45:54Z",
          "last_comment_at": "2026-07-13T07:39:16Z",
          "last_comment_author": "Lilili-04"
        },
        {
          "number": 1417,
          "created_at": "2026-04-03T09:51:57Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1423,
          "created_at": "2026-04-05T00:45:10Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1448,
          "created_at": "2026-04-09T09:07:56Z",
          "last_comment_at": "2026-06-30T08:21:17Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1452,
          "created_at": "2026-04-09T16:18:54Z",
          "last_comment_at": "2026-05-21T20:08:51Z",
          "last_comment_author": "chiefmojo"
        },
        {
          "number": 1469,
          "created_at": "2026-04-10T23:19:18Z",
          "last_comment_at": "2026-06-04T12:34:54Z",
          "last_comment_author": "Memtensor-AI"
        },
        {
          "number": 1470,
          "created_at": "2026-04-11T02:04:33Z",
          "last_comment_at": null,
          "last_comment_author": null
        },
        {
          "number": 1482,
          "created_at": "2026-04-14T08:52:00Z",
          "last_comment_at": "2026-06-30T08:43:38Z",
          "last_comment_author": "Memtensor-AI"
        }
      ]
    }
  },
  "config": {
    "disabled_metrics": [],
    "disabled_categories": [],
    "disabled_components": {}
  },
  "source": {
    "url": "https://github.com/MemTensor/MemOS",
    "host": "github.com",
    "name": "MemOS",
    "owner": "MemTensor"
  },
  "metrics": {
    "overall": {
      "key": "overall",
      "band": "good",
      "name": "Overall health",
      "note": null,
      "notes": [],
      "value": 81,
      "inputs": {
        "security": 44,
        "vitality": 99,
        "community": 86,
        "governance": 81,
        "engineering": 88
      },
      "components": []
    },
    "categories": [
      {
        "key": "vitality",
        "band": "excellent",
        "name": "Vitality",
        "value": 99,
        "weight": 0.22,
        "metrics": [
          {
            "key": "development_activity",
            "band": "excellent",
            "name": "Development activity",
            "note": null,
            "notes": [],
            "value": 98,
            "inputs": {
              "commits_last_year": 1870,
              "human_commit_share": 0.99,
              "days_since_last_push": 0,
              "active_weeks_last_year": 49
            },
            "components": [
              {
                "key": "push_recency",
                "name": "Push recency",
                "detail": "last push 0 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "push_recency",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_cadence",
                "name": "Commit cadence",
                "detail": "49/52 weeks with commits",
                "points": 33.9,
                "status": "partial",
                "details": [
                  {
                    "code": "commit_cadence_weeks",
                    "params": {
                      "weeks": 49
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "commit_volume",
                "name": "Commit volume",
                "detail": "1870 commits in the last year",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "commits_last_year",
                    "params": {
                      "count": 1870
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "openssf_scorecard_maintained",
                "name": "OpenSSF Scorecard: Maintained",
                "detail": "30 commit(s) and 26 issue activity found in the last 90 days -- score normalized to 10",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "release_discipline",
            "band": "excellent",
            "name": "Release discipline",
            "note": "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": 35,
              "latest_release_tag": "v2.0.24",
              "releases_from_tags": false,
              "days_since_latest_release": 4,
              "mean_days_between_releases": 9.7
            },
            "components": [
              {
                "key": "ships_releases",
                "name": "Ships releases",
                "detail": "35 releases published",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "releases_published",
                    "params": {
                      "count": 35
                    }
                  }
                ],
                "max_points": 27
              },
              {
                "key": "release_recency",
                "name": "Release recency",
                "detail": "latest release 4 days ago",
                "points": 36,
                "status": "met",
                "details": [
                  {
                    "code": "release_recency",
                    "params": {
                      "days": 4
                    }
                  }
                ],
                "max_points": 36
              },
              {
                "key": "release_cadence",
                "name": "Release cadence",
                "detail": "a release every ~9.7 days",
                "points": 27,
                "status": "met",
                "details": [
                  {
                    "code": "release_cadence",
                    "params": {
                      "gap": 9.7
                    }
                  }
                ],
                "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": "maintained",
              "guards": [],
              "signals": [],
              "red_flag": false,
              "multiplier_pct": 100,
              "declared_reason": null,
              "unverified_reason": null,
              "unanswered_open_prs": null,
              "unanswered_open_issues": null,
              "days_since_last_merged_pr": null,
              "days_since_last_human_commit": 0,
              "days_since_last_human_commit_is_floor": false
            },
            "components": [
              {
                "key": "project_is_still_maintained",
                "name": "Project is still maintained",
                "detail": "last human commit 0 days ago",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "abandonment_maintained",
                    "params": {
                      "days": 0
                    }
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Is the project alive — is code being written and are releases shipping?"
      },
      {
        "key": "community",
        "band": "excellent",
        "name": "Community & Adoption",
        "value": 86,
        "weight": 0.18,
        "metrics": [
          {
            "key": "popularity",
            "band": "excellent",
            "name": "Popularity & adoption",
            "note": null,
            "notes": [],
            "value": 94,
            "inputs": {
              "forks": 945,
              "stars": 10355,
              "watchers": 44,
              "growth_state": "unverified",
              "growth_factor_pct": 100,
              "growth_unverified_reason": "no_history"
            },
            "components": [
              {
                "key": "stars",
                "name": "Stars",
                "detail": "10,355 stars",
                "points": 60,
                "status": "met",
                "details": [
                  {
                    "code": "stars",
                    "params": {
                      "count": 10355
                    }
                  }
                ],
                "max_points": 60
              },
              {
                "key": "forks",
                "name": "Forks",
                "detail": "945 forks",
                "points": 24.8,
                "status": "partial",
                "details": [
                  {
                    "code": "forks",
                    "params": {
                      "count": 945
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "watchers",
                "name": "Watchers",
                "detail": "44 watchers",
                "points": 9.1,
                "status": "partial",
                "details": [
                  {
                    "code": "watchers",
                    "params": {
                      "count": 44
                    }
                  }
                ],
                "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 (Apache-2.0)",
                "points": 22.5,
                "status": "met",
                "details": [
                  {
                    "code": "license_standard",
                    "params": {}
                  },
                  {
                    "code": "license_spdx",
                    "params": {
                      "spdx": "Apache-2.0"
                    }
                  }
                ],
                "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
              }
            ]
          }
        ],
        "description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
      },
      {
        "key": "governance",
        "band": "good",
        "name": "Sustainability & Governance",
        "value": 81,
        "weight": 0.24,
        "metrics": [
          {
            "key": "maintainer_resilience",
            "band": "excellent",
            "name": "Maintainer resilience (bus factor)",
            "note": null,
            "notes": [],
            "value": 86,
            "inputs": {
              "bus_factor": 4,
              "contributors_sampled": 79,
              "top_contributor_share": 0.142
            },
            "components": [
              {
                "key": "bus_factor",
                "name": "Bus factor",
                "detail": "4 contributor(s) cover half of all commits",
                "points": 43.2,
                "status": "partial",
                "details": [
                  {
                    "code": "bus_factor",
                    "params": {
                      "count": 4
                    }
                  }
                ],
                "max_points": 54
              },
              {
                "key": "commit_distribution",
                "name": "Commit distribution",
                "detail": "top contributor authored 14% of commits",
                "points": 19.3,
                "status": "partial",
                "details": [
                  {
                    "code": "top_contributor_share",
                    "params": {
                      "share": 14
                    }
                  }
                ],
                "max_points": 22.5
              },
              {
                "key": "contributor_breadth",
                "name": "Contributor breadth",
                "detail": "79 contributors",
                "points": 13.5,
                "status": "met",
                "details": [
                  {
                    "code": "contributors_sampled",
                    "params": {
                      "count": 79
                    }
                  }
                ],
                "max_points": 13.5
              },
              {
                "key": "openssf_scorecard_contributors",
                "name": "OpenSSF Scorecard: Contributors",
                "detail": "project has 12 contributing companies or organizations",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "responsiveness",
            "band": "good",
            "name": "Issue & PR responsiveness",
            "note": null,
            "notes": [],
            "value": 80,
            "inputs": {
              "merged_prs": 1207,
              "open_issues": 50,
              "closed_issues": 391,
              "issue_closed_ratio": 0.887,
              "closed_unmerged_prs": 371
            },
            "components": [
              {
                "key": "issue_resolution",
                "name": "Issue resolution",
                "detail": "89% of issues closed",
                "points": 41.5,
                "status": "partial",
                "details": [
                  {
                    "code": "issues_closed_share",
                    "params": {
                      "share": 89
                    }
                  }
                ],
                "max_points": 46.75
              },
              {
                "key": "pr_acceptance",
                "name": "PR acceptance",
                "detail": "1207/1578 decided PRs merged",
                "points": 29.3,
                "status": "partial",
                "details": [
                  {
                    "code": "decided_prs_merged",
                    "params": {
                      "merged": 1207,
                      "decided": 1578
                    }
                  }
                ],
                "max_points": 38.25
              },
              {
                "key": "openssf_scorecard_code_review",
                "name": "OpenSSF Scorecard: Code-Review",
                "detail": "Found 14/21 approved changesets -- score normalized to 6",
                "points": 9,
                "status": "partial",
                "details": [],
                "max_points": 15
              }
            ]
          },
          {
            "key": "stewardship",
            "band": "moderate",
            "name": "Ownership & stewardship",
            "note": null,
            "notes": [],
            "value": 59,
            "inputs": {
              "followers": 204,
              "owner_type": "Organization",
              "is_verified": null,
              "owner_login": "MemTensor",
              "public_repos": 24,
              "account_age_days": 446
            },
            "components": [
              {
                "key": "ownership_backing",
                "name": "Ownership backing",
                "detail": "organization-owned",
                "points": 30,
                "status": "met",
                "details": [
                  {
                    "code": "owner_organization",
                    "params": {}
                  }
                ],
                "max_points": 30
              },
              {
                "key": "verified_domain",
                "name": "Verified domain",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 20
              },
              {
                "key": "owner_reach",
                "name": "Owner reach",
                "detail": "204 followers of MemTensor",
                "points": 16.6,
                "status": "partial",
                "details": [
                  {
                    "code": "owner_followers",
                    "params": {
                      "count": 204,
                      "login": "MemTensor"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "track_record",
                "name": "Track record",
                "detail": "24 public repos, account ~1 yr old",
                "points": 12.6,
                "status": "partial",
                "details": [
                  {
                    "code": "public_repos",
                    "params": {
                      "count": 24
                    }
                  },
                  {
                    "code": "account_age_years",
                    "params": {
                      "years": 1
                    }
                  }
                ],
                "max_points": 25
              }
            ]
          },
          {
            "key": "package_maintenance",
            "band": "excellent",
            "name": "Package maintenance",
            "note": null,
            "notes": [],
            "value": 100,
            "inputs": {
              "packages": [
                "MemoryOS"
              ],
              "ecosystems": "pypi",
              "any_deprecated": false,
              "min_days_since_publish": 4
            },
            "components": [
              {
                "key": "published_resolvable",
                "name": "Published & resolvable",
                "detail": "1 package(s) on pypi",
                "points": 25,
                "status": "met",
                "details": [
                  {
                    "code": "packages_published",
                    "params": {
                      "count": 1,
                      "ecosystems": "pypi"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "publish_recency",
                "name": "Publish recency",
                "detail": "latest publish 4 days ago",
                "points": 35,
                "status": "met",
                "details": [
                  {
                    "code": "publish_recency",
                    "params": {
                      "days": 4
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "version_history",
                "name": "Version history",
                "detail": "34 published versions",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "published_versions",
                    "params": {
                      "count": 34
                    }
                  }
                ],
                "max_points": 20
              },
              {
                "key": "not_deprecated",
                "name": "Not deprecated",
                "detail": "active, not deprecated or yanked",
                "points": 20,
                "status": "met",
                "details": [
                  {
                    "code": "package_not_deprecated",
                    "params": {}
                  }
                ],
                "max_points": 20
              }
            ]
          }
        ],
        "description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
      },
      {
        "key": "engineering",
        "band": "excellent",
        "name": "Engineering Quality",
        "value": 88,
        "weight": 0.2,
        "metrics": [
          {
            "key": "engineering_practices",
            "band": "excellent",
            "name": "Engineering practices",
            "note": null,
            "notes": [],
            "value": 86,
            "inputs": {
              "has_ci": true,
              "has_tests": true,
              "has_editorconfig": false,
              "has_linter_config": true,
              "has_precommit_config": true
            },
            "components": [
              {
                "key": "ci_workflows",
                "name": "CI workflows",
                "detail": "5 workflow(s)",
                "points": 24,
                "status": "met",
                "details": [
                  {
                    "code": "ci_workflows",
                    "params": {
                      "count": 5
                    }
                  }
                ],
                "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": ".eslintrc.json",
                "points": 16,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc.json"
                    }
                  }
                ],
                "max_points": 16
              },
              {
                "key": "pre_commit_hooks",
                "name": "Pre-commit hooks",
                "detail": null,
                "points": 9.6,
                "status": "met",
                "details": [],
                "max_points": 9.6
              },
              {
                "key": "editorconfig",
                "name": ".editorconfig",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 6.4
              },
              {
                "key": "openssf_scorecard_ci_tests",
                "name": "OpenSSF Scorecard: CI-Tests",
                "detail": "12 out of 20 merged PRs checked by a CI test -- score normalized to 6",
                "points": 12,
                "status": "partial",
                "details": [],
                "max_points": 20
              }
            ]
          },
          {
            "key": "documentation",
            "band": "excellent",
            "name": "Documentation",
            "note": null,
            "notes": [],
            "value": 90,
            "inputs": {
              "topics": [
                "agent",
                "llm",
                "memory",
                "long-term-memory",
                "memory-management",
                "rag",
                "skills",
                "openclaw",
                "agentic-ai",
                "ai",
                "ai-agents",
                "chatgpt",
                "claude",
                "hermes",
                "multi-agent",
                "python",
                "self-evolving",
                "self-hosted",
                "token-savings",
                "mcp"
              ],
              "has_wiki": false,
              "homepage": "https://memos.openmem.net",
              "has_readme": true,
              "has_docs_dir": true,
              "has_description": true
            },
            "components": [
              {
                "key": "readme",
                "name": "README",
                "detail": null,
                "points": 30,
                "status": "met",
                "details": [],
                "max_points": 30
              },
              {
                "key": "documentation_directory",
                "name": "Documentation directory",
                "detail": null,
                "points": 25,
                "status": "met",
                "details": [],
                "max_points": 25
              },
              {
                "key": "documentation_homepage_site",
                "name": "Documentation / homepage site",
                "detail": "https://memos.openmem.net",
                "points": 15,
                "status": "met",
                "details": [],
                "max_points": 15
              },
              {
                "key": "repository_description",
                "name": "Repository description",
                "detail": null,
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "topics",
                "name": "Topics",
                "detail": "20 topics",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "topics_count",
                    "params": {
                      "count": 20
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "wiki",
                "name": "Wiki",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          }
        ],
        "description": "Are baseline engineering and documentation practices in place?"
      },
      {
        "key": "security",
        "band": "at_risk",
        "name": "Security",
        "value": 44,
        "weight": 0.16,
        "metrics": [
          {
            "key": "security_posture",
            "band": "at_risk",
            "name": "Security posture",
            "note": "Excluded from scoring (no data or not applicable): Signed-Releases. Remaining weights renormalized.",
            "notes": [
              {
                "code": "excluded_no_data",
                "params": {
                  "components": [
                    "signed_releases"
                  ]
                }
              },
              {
                "code": "weights_renormalized",
                "params": {}
              }
            ],
            "value": 46,
            "inputs": {
              "source": "openssf_scorecard",
              "checks_evaluated": 17,
              "scorecard_version": "v5.5.0",
              "checks_inconclusive": 1,
              "scorecard_aggregate": 4.6
            },
            "components": [
              {
                "key": "binary_artifacts",
                "name": "Binary-Artifacts",
                "detail": "no binaries found in the repo",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "branch_protection",
                "name": "Branch-Protection",
                "detail": "branch protection is not maximal on development and all release branches",
                "points": 3.8,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "ci_tests",
                "name": "CI-Tests",
                "detail": "12 out of 20 merged PRs checked by a CI test -- score normalized to 6",
                "points": 1.5,
                "status": "partial",
                "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 14/21 approved changesets -- score normalized to 6",
                "points": 4.5,
                "status": "partial",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "contributors",
                "name": "Contributors",
                "detail": "project has 12 contributing companies or organizations",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "dangerous_workflow",
                "name": "Dangerous-Workflow",
                "detail": "no dangerous workflow patterns detected",
                "points": 10,
                "status": "met",
                "details": [],
                "max_points": 10
              },
              {
                "key": "dependency_update_tool",
                "name": "Dependency-Update-Tool",
                "detail": "no update tool detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "fuzzing",
                "name": "Fuzzing",
                "detail": "project is not fuzzed",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "license",
                "name": "License",
                "detail": "license file detected",
                "points": 2.5,
                "status": "met",
                "details": [],
                "max_points": 2.5
              },
              {
                "key": "maintained",
                "name": "Maintained",
                "detail": "30 commit(s) and 26 issue activity found in the last 90 days -- score normalized to 10",
                "points": 7.5,
                "status": "met",
                "details": [],
                "max_points": 7.5
              },
              {
                "key": "packaging",
                "name": "Packaging",
                "detail": "packaging workflow detected",
                "points": 5,
                "status": "met",
                "details": [],
                "max_points": 5
              },
              {
                "key": "pinned_dependencies",
                "name": "Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "sast",
                "name": "SAST",
                "detail": "SAST tool is not run on all commits -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "security_policy",
                "name": "Security-Policy",
                "detail": "security policy file not detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 5
              },
              {
                "key": "signed_releases",
                "name": "Signed-Releases",
                "detail": "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": "172 existing vulnerabilities detected",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 7.5
              }
            ]
          },
          {
            "key": "dependency_advisories",
            "band": "at_risk",
            "name": "Dependency advisories",
            "note": "Matched the pypi:MemoryOS@2.0.24 runtime dependency closure — what installing the published package pulls in — 127 packages. Reachability is not analyzed.",
            "notes": [
              {
                "code": "advisories_scope_published",
                "params": {
                  "package": "pypi:MemoryOS@2.0.24",
                  "assessed": 127
                }
              },
              {
                "code": "advisories_reachability",
                "params": {}
              }
            ],
            "value": 36,
            "inputs": {
              "source": "osv",
              "advisories": 31,
              "affected_packages": 5,
              "assessed_packages": 127,
              "unassessed_packages": 0,
              "affected_by_severity": "critical 2, high 2, moderate 1",
              "direct_affected_packages": 2
            },
            "components": [
              {
                "key": "direct_dependencies_free_of_known_advisories",
                "name": "Direct dependencies free of known advisories",
                "detail": "2 affected: fastmcp 2.14.7 (critical 10.0), transformers 4.57.6 (critical 9.6)",
                "points": 5.6,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 2,
                      "packages": "fastmcp 2.14.7 (critical 10.0), transformers 4.57.6 (critical 9.6)"
                    }
                  }
                ],
                "max_points": 35
              },
              {
                "key": "indirect_dependencies_free_of_known_advisories",
                "name": "Indirect dependencies free of known advisories",
                "detail": "3 affected: mcp 1.27.2 (high), starlette 0.46.2 (high 7.5), diskcache 5.6.3 (moderate)",
                "points": 8,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_affected",
                    "params": {
                      "count": 3,
                      "packages": "mcp 1.27.2 (high), starlette 0.46.2 (high 7.5), diskcache 5.6.3 (moderate)"
                    }
                  }
                ],
                "max_points": 25
              },
              {
                "key": "no_advisories_left_outstanding",
                "name": "No advisories left outstanding",
                "detail": "4 advisory-carrying package(s) unaddressed past 90 days; oldest published 367 days ago",
                "points": 22.8,
                "status": "partial",
                "details": [
                  {
                    "code": "advisories_stale",
                    "params": {
                      "days": 90,
                      "count": 4,
                      "oldest": 367
                    }
                  }
                ],
                "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": 127,
              "malicious_packages": 0,
              "direct_malicious_packages": 0,
              "withdrawn_malicious_packages": 0,
              "installable_malicious_packages": 0
            },
            "components": [
              {
                "key": "no_dependency_reported_as_a_malicious_package",
                "name": "No dependency reported as a malicious package",
                "detail": "no dependency is reported as a malicious package",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "no_malicious_dependencies",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          },
          {
            "key": "high_risk_jurisdiction_exposure",
            "band": "excellent",
            "name": "High-Risk Jurisdiction Exposure",
            "note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
            "notes": [
              {
                "code": "jurisdiction_evidence_limits",
                "params": {}
              }
            ],
            "value": 100,
            "inputs": {
              "meaning": "self-published location evidence; not nationality or citizenship",
              "red_flag": false,
              "exposures": [],
              "policy_countries": [
                "Russia",
                "Iran",
                "North Korea"
              ],
              "review_only_matches": 0,
              "assessed_self_published_locations": 3
            },
            "components": [
              {
                "key": "policy_exposure_multiplier",
                "name": "Policy exposure multiplier",
                "detail": "no confirmed policy-scope location match",
                "points": 100,
                "status": "met",
                "details": [
                  {
                    "code": "jurisdiction_no_match",
                    "params": {}
                  }
                ],
                "max_points": 100
              }
            ]
          }
        ],
        "description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
      },
      {
        "key": "ai_readiness",
        "band": "good",
        "name": "AI Readiness",
        "value": 82,
        "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.939,
              "agent_instruction_files": [
                "AGENTS.md",
                "CLAUDE.md",
                "apps/openwork-memos-integration/CLAUDE.md"
              ],
              "agent_instruction_max_bytes": 10155
            },
            "components": [
              {
                "key": "agent_instructions",
                "name": "Agent instructions",
                "detail": "AGENTS.md, CLAUDE.md, apps/openwork-memos-integration/CLAUDE.md",
                "points": 45,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "AGENTS.md, CLAUDE.md, apps/openwork-memos-integration/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": "93 of 99 human commits state their intent (structured subject or explanatory body)",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "legible_history",
                    "params": {
                      "legible": 93,
                      "sampled": 99
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          },
          {
            "key": "ai_verify_loop",
            "band": "good",
            "name": "Verify loop (build / test / typecheck)",
            "note": null,
            "notes": [],
            "value": 82,
            "inputs": {
              "has_nix": false,
              "has_tests": true,
              "lockfiles": [
                "package-lock.json",
                "pnpm-lock.yaml",
                "poetry.lock",
                "uv.lock"
              ],
              "has_dockerfile": true,
              "typed_language": true,
              "bootstrap_files": [
                "Makefile"
              ],
              "has_devcontainer": false,
              "has_linter_config": true,
              "typecheck_configs": [
                "apps/memos-local-openclaw/tsconfig.json",
                "apps/memos-local-plugin/tsconfig.json",
                "apps/openwork-memos-integration/apps/desktop/skills/ask-user-question/tsconfig.json",
                "apps/openwork-memos-integration/apps/desktop/skills/dev-browser/tsconfig.json",
                "apps/openwork-memos-integration/apps/desktop/skills/file-permission/tsconfig.json",
                "apps/openwork-memos-integration/apps/desktop/tsconfig.json",
                "apps/openwork-memos-integration/packages/shared/tsconfig.json"
              ],
              "agent_commit_share": 0.08,
              "toolchain_manifests": [],
              "dependency_bot_commit_share": 0
            },
            "components": [
              {
                "key": "one_command_bootstrap",
                "name": "One-command bootstrap",
                "detail": "Makefile",
                "points": 18,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Makefile"
                    }
                  }
                ],
                "max_points": 18
              },
              {
                "key": "automated_tests",
                "name": "Automated tests",
                "detail": null,
                "points": 22,
                "status": "met",
                "details": [],
                "max_points": 22
              },
              {
                "key": "lint_format_config",
                "name": "Lint / format config",
                "detail": ".eslintrc.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": ".eslintrc.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "static_type_checking",
                "name": "Static type checking",
                "detail": "apps/memos-local-openclaw/tsconfig.json, apps/memos-local-plugin/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/ask-user-question/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/dev-browser/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/file-permission/tsconfig.json, apps/openwork-memos-integration/apps/desktop/tsconfig.json, apps/openwork-memos-integration/packages/shared/tsconfig.json",
                "points": 11,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "apps/memos-local-openclaw/tsconfig.json, apps/memos-local-plugin/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/ask-user-question/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/dev-browser/tsconfig.json, apps/openwork-memos-integration/apps/desktop/skills/file-permission/tsconfig.json, apps/openwork-memos-integration/apps/desktop/tsconfig.json, apps/openwork-memos-integration/packages/shared/tsconfig.json"
                    }
                  }
                ],
                "max_points": 11
              },
              {
                "key": "reproducible_environment",
                "name": "Reproducible environment",
                "detail": "Dockerfile, lockfile",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "Dockerfile, lockfile"
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "demonstrated_agent_practice",
                "name": "Demonstrated agent practice",
                "detail": "8 of the last 100 commits agent-authored or agent-credited",
                "points": 10,
                "status": "met",
                "details": [
                  {
                    "code": "agent_authored_commits",
                    "params": {
                      "count": 8,
                      "sampled": 100
                    }
                  }
                ],
                "max_points": 10
              },
              {
                "key": "automated_maintenance",
                "name": "Automated maintenance",
                "detail": "no automated dependency updates observed",
                "points": 0,
                "status": "missed",
                "details": [
                  {
                    "code": "no_dependency_automation",
                    "params": {}
                  }
                ],
                "max_points": 8
              },
              {
                "key": "openssf_scorecard_pinned_dependencies",
                "name": "OpenSSF Scorecard: Pinned-Dependencies",
                "detail": "dependency not pinned by hash detected -- score normalized to 0",
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 10
              }
            ]
          },
          {
            "key": "ai_code_legibility",
            "band": "excellent",
            "name": "Code legibility for models",
            "note": null,
            "notes": [],
            "value": 99,
            "inputs": {
              "primary_language": "TypeScript",
              "largest_source_bytes": 658395,
              "source_files_sampled": 1404,
              "oversized_source_files": 21
            },
            "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": "21/1404 source files over 60KB",
                "points": 54.2,
                "status": "partial",
                "details": [
                  {
                    "code": "oversized_source_files",
                    "params": {
                      "kb": 60,
                      "sampled": 1404,
                      "oversized": 21
                    }
                  }
                ],
                "max_points": 55
              }
            ]
          },
          {
            "key": "ai_interfaces",
            "band": "moderate",
            "name": "Machine-readable interfaces",
            "note": null,
            "notes": [],
            "value": 60,
            "inputs": {
              "example_dirs": [
                "examples"
              ],
              "has_mcp_signal": true,
              "api_schema_files": []
            },
            "components": [
              {
                "key": "api_schema_openapi_graphql_proto",
                "name": "API schema (OpenAPI/GraphQL/proto)",
                "detail": null,
                "points": 0,
                "status": "missed",
                "details": [],
                "max_points": 40
              },
              {
                "key": "mcp_server",
                "name": "MCP server",
                "detail": null,
                "points": 20,
                "status": "met",
                "details": [],
                "max_points": 20
              },
              {
                "key": "runnable_examples",
                "name": "Runnable examples",
                "detail": "examples",
                "points": 40,
                "status": "met",
                "details": [
                  {
                    "code": "file_list",
                    "params": {
                      "files": "examples"
                    }
                  }
                ],
                "max_points": 40
              }
            ]
          }
        ],
        "description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
      }
    ],
    "metrics_version": "1.13.0"
  },
  "warnings": [
    "Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
  ],
  "report_type": "repository",
  "generated_at": "2026-07-24T06:04:28.271379Z",
  "schema_version": "0.27.0",
  "badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/m/MemTensor/MemOS.svg",
  "full_name": "MemTensor/MemOS",
  "license_state": "standard",
  "license_spdx": "Apache-2.0"
}

Bewertungen sind Signale, keine Garantien. Sie spiegeln öffentlich sichtbare Praxis auf GitHub wider — kein Code-Audit und keine Sicherheitsgarantie.

Fehlende Daten werden ausgeschlossen und die Gewichte neu normiert, nie als null bewertet. Die Methodik ist versioniert und offen: Metriken v1.13.0, Schema v0.27.0 — vollständige Methodik · Metriken-Wiki.

Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte StatistikenPyPI.