← Home

@actual-app/api

An API for Actual

10
Versions
MIT
License
No
Install Scripts
Verified
Provenance

Supply chain provenance

Status for the latest visible version.

SLSA provenance attestation npm registry signatures No source commit

Maintainers

actual-app-usermatissjanisdolphishjoeljeremymatt-fiddactualbudget

Accepted risks

Findings the reviewer chose to accept rather than block on.

SourceRuleReasonAccepted byWhen
provenance publisher-changed AI (provenance): Transition to GitHub Actions publishing with SLSA/Sigstore attestation; legitimate CI/CD migration for actualbudget org. ai
phantom-deps phantom-dep:@actual-app/crdt AI (phantom-deps): Same org scope (@actual-app); likely used transitively or in build config, not a risk. ai
phantom-deps phantom-dep:compare-versions AI (phantom-deps): Referenced in config files per finding; stable false positive for this package. ai
publish-pattern dormant-publish AI (publish-pattern): Package has 389 versions and 13.7k weekly downloads; dormancy flag reflects new publisher account (matissjanis), not actual package inactivity. Legitimate maintainer transition. ai
phantom-deps phantom-dep:better-sqlite3 AI (phantom-deps): better-sqlite3 is a declared runtime dep used as a SQLite backend; referenced in config files rather than direct JS imports is normal for this package's architecture. ai
typosquat typosquat.levenshtein:hapi AI (typosquat): @actual-app/api is the legitimate Actual Budget API package; scoped name similarity to 'hapi' is purely coincidental string distance, not impersonation. ai
dependencies unvetted-dep:@actual-app/crdt AI (dependencies): First-party dependency from the same @actual-app org; expected internal dependency for Actual Budget packages. ai
typosquat typosquat.levenshtein:pg AI (typosquat): Scoped package @actual-app/api has no plausible impersonation relationship to 'pg'; false positive from Levenshtein distance on full scoped name. ai
typosquat typosquat.levenshtein:joi AI (typosquat): Scoped package @actual-app/api has no plausible impersonation relationship to 'joi'; false positive from Levenshtein distance on full scoped name. ai
typosquat typosquat.levenshtein:ajv AI (typosquat): Scoped package @actual-app/api has no plausible impersonation relationship to 'ajv'; false positive from Levenshtein distance on full scoped name. ai
dependencies unvetted-dep:@actual-app/core AI (dependencies): First-party dependency from the same @actual-app org; expected internal dependency for Actual Budget packages. ai

Versions (showing 10 of 10)

Version Deps Published
26.5.2 5 / 6
26.5.1 5 / 6
26.5.0 4 / 6
26.4.0 6 / 7
26.3.0 5 / 4
26.2.1 5 / 3
26.2.0 5 / 3
26.1.0 5 / 3
25.12.0 5 / 3
25.11.0 5 / 3

v26.5.2

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v26.5.1

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v26.5.0

2 findings
HIGH Publisher changed: actualbudget → GitHub Actions (on 2026-05-03) provenance

This version was published by a different npm account than previous versions on 2026-05-03. This could indicate a legitimate maintainer transition or an account compromise.

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v26.4.0

2 findings
HIGH typosquat.levenshtein: Possible typosquat of 'hapi' typosquat

Package name '@actual-app/api' is 1 edit(s) away from popular package 'hapi'.

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v26.3.0

2 findings
HIGH Publisher changed: actualbudget → matissjanis (on 2026-03-03) provenance

This version was published by a different npm account than previous versions on 2026-03-03. This could indicate a legitimate maintainer transition or an account compromise.

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v26.2.1

2 findings
HIGH Publisher changed: actualbudget → matissjanis (on 2026-02-22) provenance

This version was published by a different npm account than previous versions on 2026-02-22. This could indicate a legitimate maintainer transition or an account compromise.

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v26.2.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v26.1.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v25.12.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v25.11.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.