zames_pro@2.96.27
CAUTION· not startedPublisher claims: "Terminal coding agent that drives a real browser to chat with DeepSeek, Qwen or GLM — no API key required. Reads and edits files, runs commands, commits to git, like Claude Code / Codex CLI." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Not started: dependency install failed; the server itself was not observed.- Tested
- install scripts, with decoy credentials in place · second launch with the clock 45 days ahead · the dependency install step · every file read, file written and host contacted by what ran
- Not tested
- server startup · the tool list · tool behavior
What this means for the label: Caution here covers what ran. The server's tools were not exercised with a real credential, so nothing about their behavior is asserted; the credential summary below says what to do with that.
Before you give it your token
- It will ask for
- no credential variables read in the code
- Where it talks to
- no vendor host named in the codeAlso deepseek.com, z.ai, no-color.org, qwen.ai, duckduckgo.com — not the publisher's domain; check what for before connecting.
- What the honeypot saw
- no credential files read · no network
- What we could not test
- server startup · the tool list · tool behavior
Connect it under the guard. Not started: dependency install failed; the server itself was not observed. The code names no credential variable; the guard pins the network to what the honeypot saw and logs every call.
Never paste a credential into a chat, a ticket or a report, including ours. How the guard holds it.
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (3 scenarios; not started: dependency install failed; the server itself was not observed) on 2026-11-12 and scored it 77/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: Auto-update or dynamic fetch configuration; Auto-update or dynamic fetch configuration; Access to sensitive file paths. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 4 s · 3 scenarios · 0 deviationsStatic findings
transcript?.log('hook_pre_compact', { output: out });Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.// Enabled by the --dev flag (`npm run dev` sets it) or config.hotReload === true.Fix: Pin versions and sources; vendor anything fetched at install time.// NOTE: we deliberately do NOT kill stray chrome processes here. Per theFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// Own process group so a kill reaches children (a dev server spawns more).Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.// `{command: "npx --user-data-dir=/tmp/x", args: ["@playwright/mcp"]}` isFix: Pin versions and sources; vendor anything fetched at install time.transcript?.log('diagnostics', { tool: call.tool, output: diag });Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.// Best-effort by design — hooks must not be able to kill the loop.Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.transcript?.log('hook_session_start', { output: out });Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.// itself has finished (we cannot kill an arbitrary child process fromFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.const devMode = hasFlag('--dev') || config.hotReload === true;Fix: Pin versions and sources; vendor anything fetched at install time.en: 'Check command (e.g. npx tsc --noEmit)',Fix: Pin versions and sources; vendor anything fetched at install time.// A TUI mount failure must not kill the agent. We surface it and let theFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// Do NOT kill a foreign chrome (see AGENTS.md): only clear theFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// multi-user machine. We also chmod the target after rename because aFix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.// `command` (`cat /etc/passwd`), not in a `path` key. Scanning the commandFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.// project rules, an agent must never kill a browser it did not start —Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// Best-effort: on Windows chmod is largely a no-op and can throw.Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.return `Failed to kill ${id}: ${e.message}`;Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.// Own process group so the timeout can kill the WHOLE tree. A commandFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// child-process kill is to check it periodically. 100ms is cheap andFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.transcript?.log('hook_post_output', { tool: call.tool, output: post });Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.// All command output (console.log/error) must go ABOVE the input line,Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.command: 'npx tsc --noEmit',Fix: Pin versions and sources; vendor anything fetched at install time.ru: 'Команда проверки (например, npx tsc --noEmit)',Fix: Pin versions and sources; vendor anything fetched at install time.console.log(theme.system(limitsEmptyMessage(sendLogPath(logsDir, config.provider), t)));Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.en: '/remember <text> append a note to the project MEMORY.md (creates it)',Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.// browser, and leaving the nested (no-op) callbacks in place would killFix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.'configs, CI, and a sample of source files). Then write AGENTS.md with: ' +Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.// `/remember <text>` — append a durable note to the project MEMORY.md.Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.'insert remove drop restart stop start install kill move rename copy ' +Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.// write to the workdir's own MEMORY.md (the deepest file the loader reads)Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.// AGENTS.md is head-clipped; MEMORY.md is append-only so it uses theFix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.// Like Codex: let the agent explore the project and write AGENTS.md viaFix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.'mkdir rmdir touch chmod chown').split(' '));Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts./** MEMORY.md is append-only, so it gets its own (larger) budget. */Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.'run_in_background=true, and optionally kill it. id — the id returned ' +Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.fn: async ({ id, kill }) => {Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.Cost to the agent
Tokens estimated at four characters each. The tool list is re-read by the agent on every turn, so it is the number to compare between servers that do the same job: ranked across the index.
Known vulnerabilities
No advisories in OSV for zames_pro@2.96.27 as of 38 h ago. This is the package itself, not its dependencies.
What would make this Verified
3 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Unclaimed publisher≈ +8 on the totalClaim viqto0r: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- Auto-update or dynamic fetch configuration≈ +4 on the totalPin versions and sources; vendor anything fetched at install time.
- 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.
- File type combined with upload action≈ +2 on the totalRemove the call, or declare the host in frontmatter and explain in the README what is sent and why.
- Process kill command≈ +2 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.