@dotkaio/avis
Coding agent CLI with read, bash, edit, write tools and session management
Supply chain provenance
Status for the latest visible version.
Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.
Maintainers
Keywords
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| semgrep | semgrep:steganography-image-eval | AI (semgrep): Reading a WAD game file for DOOM engine in examples/; not steganography. | ai | |
| semgrep | semgrep:new-function-constructor | AI (semgrep): Loading compiled DOOM JS module in examples/; documented pattern. | ai | |
| semgrep | semgrep:base64-decode | AI (semgrep): Writing AI-generated image data from base64 in examples/; benign. | ai | |
| semgrep | semgrep:shady-links-raw-ip | AI (semgrep): Localhost OAuth redirect URI (127.0.0.1:8080) in examples/; not a remote exfiltration endpoint. | ai | |
| semgrep | semgrep:child-process-import | AI (semgrep): Windows toast notification via PowerShell in examples/notify.ts; expected CLI tool behavior. | ai | |
| typosquat | typosquat.levenshtein:axios | AI (typosquat): Scoped package @dotkaio/avis is a coding-agent CLI; no brand impersonation of axios. | ai | |
| phantom-deps | phantom-dep:marked | AI (phantom-deps): marked is a runtime dep used for rendering; phantom-dep heuristic false positive. | ai | |
| phantom-deps | phantom-dep:@types/ws | AI (phantom-deps): @types/ws is a type declaration package; not directly imported at runtime by design. | ai |
v0.64.2
2 findingsData read from image file then executed — steganography attack pattern Source: https://github.com/dotkaio/avis/blob/ae0392b0b65fc245ecf09c69abfa3770b0886839/examples/extensions/doom-overlay/doom-engine.ts#L58 56 | 57 | // Read WAD file > 58 | const wadData = readFileSync(this.wadPath); 59 | const wadArray = Array.from(new Uint8Array(wadData)); 60 |
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.64.1
2 findingsData read from image file then executed — steganography attack pattern Source: https://github.com/badlogic/avis-mono/blob/43d4c9bdc75f68f9d38793039e9a22730e9cf394/examples/extensions/doom-overlay/doom-engine.ts#L58 56 | 57 | // Read WAD file > 58 | const wadData = readFileSync(this.wadPath); 59 | const wadArray = Array.from(new Uint8Array(wadData)); 60 |
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.
v0.64.0
2 findingsData read from image file then executed — steganography attack pattern Source: https://github.com/badlogic/avis-mono/blob/af07fb10516903adc86a8966cee2dff8b63fdabe/examples/extensions/doom-overlay/doom-engine.ts#L58 56 | 57 | // Read WAD file > 58 | const wadData = readFileSync(this.wadPath); 59 | const wadArray = Array.from(new Uint8Array(wadData)); 60 |
Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.