dsh-tg-bridge@1.19.3
Telegram bridge for DeepSeek Harness: text, voice, photos and project-per-topic sessions without opening the desktop app
AI Security Review
scanned 9d ago · by lpm-firewall-aiSource inspection found a user-invoked mutation of global agent persona settings, which warrants a capability warning under the review policy. The credential probe is aligned with the configured provider, and the manifest has no npm lifecycle hooks; the scanner’s exfiltration label is not supported by the inspected flow.
Decision evidence
public snapshot- The `/soul` command writes user-supplied text into the global agent instructions file’s persona section when invoked with text (control.mjs).
- The model probe reads the configured provider URL and key, then sends a one-token request to that provider; its caller uses the probe to check model availability (model-probe.mjs).
- The manifest defines start and setup scripts but no npm lifecycle hooks (package.json).
- The bridge resolves settings callback data through `commandFor` and answers when it is unrecognized.
- The panel escapes dynamic content before placing it in Telegram HTML markup.
- Settings callback data must match a defined button with a command; unmatched data returns null.
- The persona write is behind an explicit `/soul` command with supplied text; the handler also offers a read-only form when no text is supplied (control.mjs).
- The probe does not select a fixed unrelated recipient: it derives the provider URL and key name from the active profile or explicit environment overrides (model-probe.mjs).
Source & flagged code
10 flaggedFindings
Affected versions and remediation
This report applies to dsh-tg-bridge@1.19.3.
See all versions of dsh-tg-bridge for other recorded verdicts.
- Review the evidence and your use of dsh-tg-bridge@1.19.3 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.