Cos'è
Software Bill of Materials di Hermes Console — lista delle dipendenze
runtime e build-time direttamente referenziate dai package.json dei
tre pacchetti del monorepo. Si tratta del livello "top-level": le
dipendenze transitive sono ricostruibili dal pnpm-lock.yaml
versionato in repo.
Aggiornamento: questo documento è aggiornato al commit Git
indicato nel footer. Versione machine-readable (CycloneDX) generabile
con pnpm dlx @cyclonedx/cyclonedx-npm --output sbom.cdx.json,
disponibile su richiesta a security@oasi.systems.
Container base
| Layer | Versione | Licenza | Note |
|---|---|---|---|
node:22-bookworm-slim | Debian 12 (bookworm) + Node 22.x LTS | MIT (Node) / DFSG (Debian) | base image runtime per il container hermes-console |
| Postgres | 16.x | PostgreSQL | DB dedicato, schema isolato hermes + hermes_app |
| Redis | 7.x | RSALv2 / SSPLv1 dual | rate limit / cache (non persiste codice cliente) |
| nginx | 1.27.x | BSD-2 | reverse proxy + TLS terminator |
| osv-scanner | 2.3.8 | Apache-2.0 | vuln scanning (binary installato in image) |
Apps · hermes-console (Next.js)
Runtime dependencies
| Package | Version | Licenza | Scopo |
|---|---|---|---|
@prisma/client | 6.19.3 | Apache-2.0 | ORM Postgres |
@simplewebauthn/browser | ^13.2.2 | MIT | client passkey |
@simplewebauthn/server | ^13.2.2 | MIT | server passkey |
bcryptjs | ^3.0.2 | MIT | hash recovery codes (SALT_ROUNDS=11) |
ioredis | ^5.7.1 | MIT | client Redis (rate limit) |
jose | ^6.1.0 | MIT | JWT sign/verify (HS256) |
lucide-react | ^0.577.0 | ISC | icone UI |
next | 16.1.6 | MIT | framework web |
pdfkit | ^0.15.2 | MIT | rendering PDF Discovery Report |
pg | ^8.11.0 | MIT | driver Postgres (utilizzato da Prisma) |
prisma | 6.19.3 | Apache-2.0 | migrate CLI |
react | 19.2.3 | MIT | UI |
react-dom | 19.2.3 | MIT | UI rendering |
react-markdown | ^9.0.1 | MIT | rendering legali |
remark-gfm | ^4.0.0 | MIT | tabelle Markdown |
web-push | ^3.6.7 | MPL-2.0 | notifiche push (PWA) |
zod | ^4.3.6 | MIT | validazione input HTTP |
@oasi/hermes-core | workspace:* | UNLICENSED (in-house) | engine puro |
@oasi/admin-shell | workspace:* | UNLICENSED (in-house) | UI/auth tissue |
Build/test dependencies
@eslint/eslintrc, @tailwindcss/postcss, @types/*, eslint,
eslint-config-next, tailwindcss, typescript — tutte MIT
salvo typescript (Apache-2.0) e tailwindcss (MIT). Dettaglio
versioni in apps/hermes-console/package.json.
Packages · @oasi/hermes-core (engine)
Runtime
| Package | Version | Licenza | Scopo |
|---|---|---|---|
@anthropic-ai/sdk | ^0.32.0 | MIT | client Claude (CodeComprehender + RemediationPlanner) |
@octokit/rest | ^21.0.0 | MIT | GitHub API (Apply→PR) |
minimatch | ^10.0.0 | ISC | glob matching (file selection) |
yaml | ^2.6.0 | ISC | parsing config/manifests |
zod | ^3.23.0 | MIT | validazione input (engine boundary) |
Build/test
vitest 2.1 (MIT), @typescript-eslint/*, typescript, @types/*.
Packages · @oasi/admin-shell
Runtime
| Package | Version | Licenza | Scopo |
|---|---|---|---|
bcryptjs | ^3.0.2 | MIT | recovery codes hashing |
jose | ^6.1.0 | MIT | JWT primitives |
lucide-react | ^0.577.0 | ISC | icone UI |
web-push | ^3.6.7 | MPL-2.0 | push notifications |
Peer dependencies (versioni nominate dal consumer): next ^15 e
react ^19.
License summary
Tutte le dipendenze runtime sono sotto licenze permissive standard (MIT / ISC / Apache-2.0 / BSD-2 / MPL-2.0) o licenze OSS compatibili con uso commerciale. Nessuna dipendenza GPL-/AGPL- linked. Nessuna restrizione sulla redistribuzione binaria di Hermes.
web-push è MPL-2.0 (debole copyleft a livello di singolo file
modificato): OASI non ha modificato i file di web-push e
ridistribuisce il pacchetto invariato dentro il container Hermes.
Vulnerability monitoring delle dipendenze
OASI esegue osv-scanner sulle proprie dipendenze all'inizio di
ogni release maggiore + un controllo automatico mensile pianificato.
Riferimento: lo stesso strumento (osv-scanner 2.3.8) è quello che
gira sulle dipendenze del cliente in VulnScanner. Hermes pratica
ciò che predica.
Lista vulnerabilità note (data del documento): nessuna. Aggiornata
ad ogni release; in caso di CVE high/critical trovata, fix entro 14gg
e disclosure nel changelog pubblico (git log).
Versione machine-readable
Disponibile su richiesta a security@oasi.systems:
- CycloneDX JSON (
sbom.cdx.json) — formato standard SPDX/NTIA; - SPDX 2.3 (
sbom.spdx.json) — formato standard Linux Foundation.
Tempo di evasione: ≤2 giorni lavorativi dalla richiesta.
Generato da OASI S.r.l. su base package.json versionati al commit
indicato nel footer. Aggiornato manualmente ad ogni release; piano per
automatizzazione CI in roadmap (pnpm sbom generato in build).