TavernKeeper Scan Report

MultihogAurelius/SillyTavern-MultihogDnDFramework

Commit 691fd89 Reviewed

No material or immediate-danger concern was identified in this review.

This advisory report describes what the named tools and contextual reviewer found at one exact commit. Unknown or unobserved behavior may still exist.

0 immediate danger 0 material 6 low

What this review found

No material or immediate-danger item was identified.

Minor cautions

zizmor reported unpinned-uses

Minor caution · high confidence

The workflow uses a version label for a standard GitHub action instead of locking it to an exact version. This is a minor best-practice gap, not an active problem.

Technical evidence

Scanner reason: zizmor matched workflow-security rule unpinned-uses in this repository.

Contextual assessment: The checkout action is referenced by major version tag rather than a pinned commit SHA. If the action's tag were ever moved to a compromised version, the workflow could execute untrusted code. This is a common community practice and the risk is low for a test-only workflow, but pinning to a SHA is the recommended hardening step.

Impact: low · Exploitability: unlikely

Developer action: Pin GitHub Actions to full commit SHAs instead of version tags to prevent supply-chain tampering.

Scanner
zizmor 1.28.0
Rule
unpinned-uses
File role
test
Source
.github/workflows/test.yml:11

zizmor reported excessive-permissions

Minor caution · high confidence

The workflow does not explicitly state what permissions it needs. GitHub applies safe defaults for test workflows, but spelling out minimal permissions is a recommended best practice.

Technical evidence

Scanner reason: zizmor matched workflow-security rule excessive-permissions in this repository.

Contextual assessment: The workflow does not declare an explicit permissions block. For pull_request events from forks, GitHub provides a read-only GITHUB_TOKEN by default, which is appropriate for this test-only workflow. Adding an explicit minimal permissions declaration is best practice but the current default does not expose write access to external contributors.

Impact: low · Exploitability: unlikely

Developer action: Add an explicit permissions block with contents: read to follow least-privilege best practice.

Scanner
zizmor 1.28.0
Rule
excessive-permissions
File role
test
Source
.github/workflows/test.yml:8-18

Dependency advisory GHSA-fxqj-rqcc-2cmp applies

Minor caution · medium confidence

This flagged dependency is a development-only tool used for testing. It is not included in the extension that users actually install and run, so the vulnerability cannot affect end users of the extension. It could only matter to the developer if they run the test tooling in an unsafe environment.

Technical evidence

Scanner reason: OSV-Scanner matched advisory GHSA-fxqj-rqcc-2cmp to a dependency declared by this repository.

Contextual assessment: The lockfile declares only vitest as a devDependency, with esbuild 0.28.1 as a transitive dev-only optional dependency. This advisory matches a development-tooling package that is not shipped to end users. SillyTavern extensions are installed via the extension installer as source files running in the browser; npm dev dependencies are never bundled or executed in the production extension runtime. The vulnerable code path is only reachable if a developer runs the local dev/test server in a hostile network environment, which is not part of the extension's stated purpose or distribution model.

Impact: low · Exploitability: unlikely

Developer action: Update the affected dev dependency to a patched version when convenient to keep the development environment secure, but no urgent action is needed for end-user safety.

Scanner
osv-scanner 2.4.0
Rule
GHSA-fxqj-rqcc-2cmp
File role
production
Source
package-lock.json

zizmor reported unpinned-uses

Minor caution · high confidence

The workflow uses a version label for a standard GitHub action instead of locking it to an exact version. This is a minor best-practice gap, not an active problem.

Technical evidence

Scanner reason: zizmor matched workflow-security rule unpinned-uses in this repository.

Contextual assessment: The setup-node action is referenced by major version tag rather than a pinned commit SHA. Same supply-chain consideration as the checkout action. Low risk for a test-only workflow, but SHA pinning is recommended.

Impact: low · Exploitability: unlikely

Developer action: Pin GitHub Actions to full commit SHAs instead of version tags to prevent supply-chain tampering.

Scanner
zizmor 1.28.0
Rule
unpinned-uses
File role
test
Source
.github/workflows/test.yml:12

Dependency advisory GHSA-2v37-7h3g-55p8 applies

Minor caution · medium confidence

Although this vulnerability is rated high severity, the affected package is a development tool that never ships with the extension. Users who install this extension through SillyTavern are not exposed to this vulnerability. Only the developer running the test or build tools locally could be affected, and only in specific network conditions.

Technical evidence

Scanner reason: OSV-Scanner matched advisory GHSA-2v37-7h3g-55p8 to a dependency declared by this repository.

Contextual assessment: This high-severity advisory matches a development-only dependency in the lockfile. The project's sole declared dependency is vitest as a devDependency, with esbuild 0.28.1 as a transitive dev-only optional package. These packages exist solely for local testing and building and are not part of the shipped SillyTavern extension. The extension is distributed as source code installed through SillyTavern's extension mechanism and runs in the browser context; the vulnerable dev-server or build-tool code has no runtime reachability for extension end users. Exploitation would require a developer running the dev tooling in a context where an attacker can reach the local server.

Impact: low · Exploitability: unlikely

Developer action: Update the affected dev dependency to a patched version to protect the development environment, but this does not pose a risk to extension users.

Scanner
osv-scanner 2.4.0
Rule
GHSA-2v37-7h3g-55p8
File role
production
Source
package-lock.json
Expected scanner matches (1)

zizmor reported artipacked

Expected behavior · high confidence

The scanner warned about saved workflow files potentially leaking credentials, but this test workflow never saves any files or credentials anywhere.

Technical evidence

Scanner reason: zizmor matched workflow-security rule artipacked in this repository.

Contextual assessment: The artipacked rule flags potential credential persistence via workflow artifacts. This workflow contains no artifact upload steps and no steps that would persist the GITHUB_TOKEN or other secrets to artifacts. It only checks out code, sets up Node, and runs tests. The scanner match is a false positive with low scanner confidence.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
zizmor 1.28.0
Rule
artipacked
File role
test
Source
.github/workflows/test.yml:11

Coverage and limitations

Tools

Limitations

Technical scan identity