Is davidbenjaminnovotny/clawpoker safe?

https://github.com/openclaw/skills/tree/main/skills/davidbenjaminnovotny/clawpoker

74
CAUTION

ClawPoker is a functionally coherent agentic poker skill that is transparent about its architecture, but it carries meaningful safety concerns: it explicitly removes human oversight for all in-session decisions, deploys a long-running background Node.js daemon polling an external API every 2 seconds for up to 40 minutes, spawns an autonomous sub-agent with shell execution capabilities, and a stray 'start' token at the end of the skill file may function as an implicit activation trigger. Installation behavior was clean and all canary honeypots remain intact, indicating no credential theft during the audit window; the risk profile is primarily architectural rather than overtly malicious.

Category Scores

Prompt Injection 65/100 · 30%
Data Exfiltration 80/100 · 25%
Code Execution 60/100 · 20%
Clone Behavior 95/100 · 10%
Canary Integrity 100/100 · 10%
Behavioral Reasoning 60/100 · 5%

Findings (9)

HIGH Explicit removal of human oversight for in-session decisions -25

The skill directly instructs the agent to act without consulting the user for any game decisions: 'Make decisions yourself — do not ask your human.' This is a principal hierarchy override — the user retains legal authority over the agent session but the skill explicitly removes their practical ability to exercise it for consequential in-game actions. Combined with a 40-minute autonomous loop, this creates a prolonged window of unilateral agent action.

MEDIUM Stray 'start' token at end of SKILL.md as potential activation trigger -10

The final content of skill.md is a bare word 'start' appearing on its own line after a closing paragraph and horizontal rule. In an adversarial framing this could act as an implicit command instructing the agent to immediately begin the poker workflow (register, join table, start Pulse, spawn Brain) upon reading the skill — without waiting for explicit user instruction. It may be an authoring artifact, but its position and isolation make it notable.

HIGH Embedded 40-minute background daemon with external API polling -25

The skill provides a complete, ready-to-execute Node.js script to be written to disk and launched as a detached background process. The daemon polls an external API every 2 seconds, performs atomic file writes, manages process signals, and exits only after 40 minutes or manual SIGTERM. Instructing users to run untrusted third-party code as a long-lived background daemon represents a significant code execution risk, especially when the daemon maintains a persistent external network channel.

MEDIUM Sub-agent spawned with autonomous shell execution loop -15

The skill instructs the primary agent to spawn a sub-agent (Brain) whose entire prompt consists of shell commands to execute in a continuous loop: file existence checks, lock file management via touch/rm, state reading via cat, and API calls via curl. This extends the attack surface to a second agent context operating autonomously with shell access.

MEDIUM Persistent external API channel to unauditable third-party service -20

The skill's core function requires a continuous bi-directional connection to clawpoker.com, an external service not affiliated with the skill registry. The agent transmits its name during registration and game-state requests during play. While these transmissions appear contextually appropriate, the server operator controls what data is logged, retained, or acted upon. If clawpoker.com is adversarially operated, API responses could carry secondary payloads interpreted by the Brain sub-agent.

MEDIUM 40-minute autonomous session with no in-skill user kill-switch -25

The two-agent architecture is designed to operate for 40 minutes without user intervention. The Brain sub-agent loops until the session file disappears, and the Pulse daemon self-terminates only on MAX_DURATION_MS or SIGTERM. The only documented stop mechanism is 'pkill -f node poker_pulse.js' — requiring the user to manually find and kill a background process. There is no in-skill command or file-based termination signal the user can easily trigger.

LOW Semantically unrelated skill co-dependency in lock.json -15

The .clawhub/lock.json bundled with the skill lists 'academic-research-hub' as a co-installed skill. A poker automation skill has no apparent functional dependency on academic research capabilities, which raises questions about whether the lock.json reflects accurate registry metadata or whether undocumented cross-skill interactions exist.

INFO Clean installation — no suspicious side effects -5

The monorepo clone and sparse-checkout completed without unexpected filesystem changes, process spawning, or network connections attributable to the skill. All installation-phase network activity was limited to expected infrastructure (GitHub, Ubuntu package servers).

INFO All honeypot credential files intact 0

Every monitored canary file was accessed only by the Oathe harness for integrity hashing (once at session open, once at close). The access timestamps at 1771927369 (pre-install) and 1771927391 (post-install) correspond to systematic scans by the monitoring infrastructure, not skill-attributable reads. No modification or exfiltration of canary data occurred.