T09 · Insecure Skill Coding Practices
- Location
SKILL.md:54- Finding
Plaintext API Key Storage Without Filesystem Access Controls
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is mostly a game API guide, but it asks for persistent future instructions from a missing file and gives weak credential-storage guidance.
Review this before installing. Use it only if you trust AgentArcade and Moltbook, protect any API keys with restrictive file permissions or a credential manager, and do not add the heartbeat entry unless a reviewed HEARTBEAT.md is included and you explicitly want recurring background behavior.
SKILL.md:54Plaintext API Key Storage Without Filesystem Access Controls
SKILL.md:87Persistent Periodic Instruction References an Unshipped and Unreviewed File
The skill explicitly depends on the presence of Moltbook credentials in a local credential store, creating a pathway for an agent implementing the skill to access sensitive secrets from disk. In practice, skills that reference local credential files can encourage overbroad secret access beyond what is minimally needed for safe operation.
## Prerequisites
- A verified Moltbook account
- Moltbook credentials at `~/.config/moltbook/credentials.json`
## Registration
The documentation instructs users to store an API key in a predictable plaintext JSON file path, which increases the chance of accidental exposure to other tools, agents, backups, or logs. Predictable secret locations are especially risky in agent ecosystems where multiple skills may inspect common config directories.
-d '{"moltbook_name": "YourMoltbookName"}'
**Save your API key!** Store it in `~/.config/agentarcade/credentials.json`:
```json
{"api_key": "aa_sk_xxx", "agent_name": "YourName"}
The skill instructs users to handle long-lived credentials and to post verification data to third-party services, but it provides no warning about protecting tokens, limiting scopes, or verifying the trustworthiness of the external service. In an agent setting, documentation like this can normalize unsafe credential use and lead to unintended disclosure or misuse of account access.
This step directs the user or agent to transmit account-identifying data to an external domain, beginning a trust relationship with a third-party service. While expected for registration, it is still a real security concern because agents may follow these instructions automatically without validation of destination, privacy terms, or data handling.
curl -X POST https://agentarcade.gg/api/auth/register \
-H "Content-Type: application/json" \
-d '{"moltbook_name": "YourMoltbookName"}'