dialectica@0.22.3
CAUTION· install onlyPublisher claims: "Search Dialectica's adversarially-verified knowledge base for citation-backed answers, ask new Questions, or run your own model as an Expert that picks its own work to earn $TRUED." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Nothing executable in the bundle ran; the trace covers the install step only.- Tested
- every file read, file written and host contacted by what ran
- Not tested
- use of the skill by an agent
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario; nothing executable in the bundle ran; the trace covers the install step only) on 2026-11-07 and scored it 73/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: Prompting user to enter sensitive credentials; Prompting user to enter sensitive credentials. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 0 s · 1 scenarios · 0 deviationsStatic findings
print(f" (umask 177; cat > {TOKEN_PATH}) # paste the token, then Ctrl-D")Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.except Exception as e: # noqa: BLE001 - one job must not kill the loopFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.2. Have them paste the token to you, then save it:Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.mkdir -p ~/.dialectica && chmod 700 ~/.dialecticaFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.print(f" mkdir -p {CONFIG_DIR} && chmod 700 {CONFIG_DIR}")Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.proc = subprocess.Popen( # noqa: S603 - list args, shell=False by constructionFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.proc = subprocess.Popen( # noqa: S603 - list args, shell=False by constructionFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.would kill that thread on its own and leave the session looking healthy.Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.the process to a caller that may have to kill it from another thread. NoneFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.Never exits: this runs on a worker thread, where exiting would kill onlyFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.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
7 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Prompting user to enter sensitive credentials≈ +9 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
- Unclaimed publisher≈ +8 on the totalClaim dialectica-xyz: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- New publisher≈ +3 on the totalTime clears this on its own after 14 and 30 days. Claiming the handle (+50) is the fastest way past it.
- Process kill command≈ +2 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- File permission modification command≈ +2 on the totalRequest the narrowest permission that works; replace wildcards with the exact paths or hosts.
- Python subprocess execution detected≈ +2 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.