TavernKeeper Scan Report

ExtensionMuncher/MemoryLoom

Commit b02ee7d Reviewed

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

This advisory report describes what the named tools and review process 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

JavaScript analysis reported javascript.xray.unsafe-regex

Minor caution · medium confidence

A crafted input might briefly slow or freeze the local client, without showing broader security harm.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.unsafe-regex. The match applies to this repository.

Contextual assessment: The expression may permit a local CPU slowdown, but this evidence shows no credential, persistence, code-execution, or cross-user impact.

Impact: low · Exploitability: plausible

Developer action: Bound the input length or replace the expression when practical.

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.unsafe-regex
File role
production
Source
llm/writer.js:682

JavaScript analysis reported javascript.xray.unsafe-regex

Minor caution · medium confidence

A crafted input might briefly slow or freeze the local client, without showing broader security harm.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.unsafe-regex. The match applies to this repository.

Contextual assessment: The expression may permit a local CPU slowdown, but this evidence shows no credential, persistence, code-execution, or cross-user impact.

Impact: low · Exploitability: plausible

Developer action: Bound the input length or replace the expression when practical.

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.unsafe-regex
File role
production
Source
lib/lorebookImport.js:35
Contextual expected matches (2)

JavaScript analysis reported javascript.xray.shady-link

Expected behavior · high confidence

The flagged text is the standard default local address for Ollama, used when no other address is configured. It is sent to SillyTavern's own backend so memory lookups can reach the user's own local embedding service. Nothing goes anywhere unexpected.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.shady-link. The match applies to this repository.

Contextual assessment: The scanner flagged a network-access literal in the vector query path. In context, that literal is again Ollama's default local endpoint address, applied in queryCollection as the final fallback of the same resolution chain used by the embedder: user-configured alternate endpoint (when enabled and filled), then SillyTavern's stored Ollama server URL, then any filled alternate URL, then the default local address. The resolved value is placed in the request body's apiUrl field and posted to SillyTavern's own relative vector-query endpoint with standard ST request headers; the host server contacts the embedding backend. Per the code comments, this fallback exists so retrieval does not fail with a server error for users who did not select Ollama as their text-generation backend. The behavior matches the project's documented purpose of supporting multiple user-configured embedding providers, involves no direct remote fetch from the extension, no obfuscation, and no credential or private-content flow to any unexpected destination. The scanner signal is a heuristic match on a localhost literal, not demonstrated exposure.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.shady-link
File role
production
Source
embed/retriever.js:263

JavaScript analysis reported javascript.xray.shady-link

Expected behavior · high confidence

The flagged text is simply the standard default address for a locally running Ollama program, used when the user has not configured one. It is handed to SillyTavern's own backend so it can reach the user's own local embedding service. Nothing is sent anywhere unexpected, and nothing leaves the user's machine because of this line.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.shady-link. The match applies to this repository.

Contextual assessment: The scanner flagged a network-access literal on the flagged line. In context, that literal is Ollama's default local endpoint address, used only as the final fallback in a provider URL resolution chain: a user-configured alternate endpoint (when enabled and filled), then SillyTavern's stored Ollama text-generation server URL, then any filled alternate URL, then the default local address. The resolved value is placed in the request body's apiUrl field and posted to SillyTavern's own relative vector-insert endpoint using standard ST request headers; the host server, not the extension, contacts the configured embedding backend. This mirrors SillyTavern's native vector-storage behavior, matches the project's stated purpose of user-configurable embedding backends (Local/Transformers, Ollama, vLLM, OpenAI, Cohere, Google, OpenRouter, Mistral), and is disclosed in the README's Vectorization settings documentation. There is no direct client-side fetch to any remote host, no obfuscation, no credential handling, and no data flow beyond the user's configured embedding backend. The flag is a benign heuristic match on a localhost literal, not demonstrated exposure.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.shady-link
File role
production
Source
embed/embedder.js:139

Related contextual observations

Flagged link is a documented local Ollama fallback address

low risk · high confidence

This is a sensible default: if the user picks Ollama but never enters an address, the extension falls back to the well-known local Ollama address instead of failing. It matches the project's documented purpose.

Technical assessment

The flagged line is the terminal fallback of the Ollama provider's URL resolution chain. It only applies when the user has not configured an alternate endpoint and SillyTavern has no stored Ollama URL, preventing an invalid-URL server error. The value travels inside the request body to SillyTavern's own relative vector API endpoint, matching the extension's stated embedding-provider configuration purpose.

Impact: none · Exploitability: unlikely

Developer action: none

Sources:

Retriever fallback chain mirrors the embedder's local Ollama default

low risk · high confidence

Memory lookups use the same sensible default as memory saving: if no custom address is set, they fall back to the well-known local Ollama address rather than erroring out. This matches the project's stated design.

Technical assessment

The retriever builds provider-specific query fields identical to the embedder's request-body builder, including the same final fallback to Ollama's default local address. The value is only a parameter passed to SillyTavern's own relative vector-query endpoint; the extension itself makes no cross-origin request, and the fallback exists to avoid server-side invalid-URL errors when no endpoint is configured.

Impact: none · Exploitability: unlikely

Developer action: none

Sources:

Coverage and limitations

JavaScript coverage

Tools

Limitations

Technical scan identity