memory-tencentdb@0.3.7
CAUTION· static onlyPublisher claims: "四层记忆系统插件 — 自动捕获对话、提取结构化记忆、归纳场景、生成用户画像。支持 L0→L1→L2→L3 渐进式管线,本地 SQLite + 腾讯云向量数据库双后端。" Observed in sandbox: static analysis only — behavior not yet observed.
Coverage
Static only; nothing was run yet.The label rests on the code, the instruction files and the publisher. The honeypot run replaces this verdict when it completes.
Is [email protected] safe to install?
KillerSkills analysed it statically (a sandbox run is pending) on 2026-11-07 and scored it 46/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Access to sensitive file paths; Access to sensitive file paths; Outbound HTTP to raw IP address. Summary: static analysis only — behavior not yet observed.
Behavior trace
Queued for honeypot run · static analysis onlyThis version has not been detonated yet. The score above counts behavior as unknown (50/100), so it cannot read Verified until the honeypot run completes and replaces this verdict.
Static findings
echo " NOTE: Before using the memory plugin, configure LLM credentials in ~/.hermes/.env:"Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.* 所有连接参数通过 CLI 传入,无需 .env 文件。Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.echo " --backend-url (必填) offload 后端地址,如 http://1.2.3.4:8080"Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls./** Instance URL (e.g. "http://10.0.1.1:80" or external domain) */Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.# ── 4b: ~/.hermes/.env(systemd service 场景) ──Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose."url": { "type": "string", "description": "实例 URL(必填,如 http://10.0.1.1:8100)" },Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.# 但 hermes 的 run.py 启动时会 load_dotenv("~/.hermes/.env")。Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.cat << ENVEOF | sudo tee "$ENVFILE" > /dev/nullFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.# 因此必须将关键变量同步写入 .env,否则 systemd 场景下 Gateway 无法自动启动。Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.need_cmd npxFix: Pin versions and sources; vendor anything fetched at install time.HERMES_ENV="$HERMES_HOME/.env"Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose."url": { "type": "string", "description": "实例 URL(必填,如 http://10.0.1.1:8100)" },Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.kill -KILL $pids 2>/dev/null || trueFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.console.log(`📌 输出目录: ${args.output}`);Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why."MEMORY_TENCENTDB_LLM_API_KEY": "sk-test-placeholder-not-used",Fix: Never read or enumerate credential locations; accept a documented environment variable instead.[[ -n "$wpid" ]] && kill -0 "$wpid" 2>/dev/null && kill -TERM "$wpid" 2>/dev/null || trueFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.kill -TERM $pids 2>/dev/null || trueFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell."MEMORY_TENCENTDB_LLM_API_KEY": "sk-test-placeholder-not-used",Fix: Never read or enumerate credential locations; accept a documented environment variable instead.chmod 755 "$TEMP_SCRIPT"Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.console.log(` 📁 输出目录: ${args.output}`);Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.console.log(`\n🔧 Output: ${outputDir}`);Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.self._process = subprocess.Popen(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.chown -R $USERNAME:$USERNAME "$USER_HOME"Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts."""Symmetry contract: don't kill what we didn't start.Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.console.log(`\n📁 Output: ${summary.outputDir}\n`);Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why./** Instance URL (e.g. "http://10.0.1.1:80") */Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.* Must be called at plugin re-registration (hot-reload) to pick up config changes.Fix: Pin versions and sources; vendor anything fetched at install time.chmod "$mode" "$tmp"Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.proc = subprocess.Popen(Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.echo " --backend-url (必填) offload 后端地址,如 http://1.2.3.4:8080"Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls./** Instance URL (e.g. "http://10.0.1.1:80" or external domain) */Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls."TDAI_LLM_API_KEY": "sk-test-placeholder-not-used",Fix: Never read or enumerate credential locations; accept a documented environment variable instead.openclaw memory-tdai seed --input data.json --output-dir ./seed-output --strict-round-roleFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.# -9 → SIGKILL (supervisor had to force-kill after 10sFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell."TDAI_LLM_API_KEY": "sk-test-placeholder-not-used",Fix: Never read or enumerate credential locations; accept a documented environment variable instead./** Instance URL (e.g. "http://10.0.1.1:80") */Fix: Replace encoded or assembled strings with plain literals and remove undeclared network calls.Cost to the agent
Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.
Known vulnerabilities
Vulnerability advisories (OSV) cover npm and PyPI packages; this registry has no advisory database.
What would make this Verified
34 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Unclaimed publisher≈ +8 on the totalClaim paudyyin: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- Access to sensitive file paths≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
- Outbound HTTP to raw IP address≈ +4 on the totalReplace encoded or assembled strings with plain literals and remove undeclared network calls.
- Privileged sudo command≈ +4 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- Auto-update or dynamic fetch configuration≈ +4 on the totalPin versions and sources; vendor anything fetched at install time.
- npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.