IMAP/SMTP Email - Maddy Fix
Analysis
The skill appears aligned with email reading and sending, but it gives the agent high-impact email authority, including direct sending, without an explicit approval safeguard.
Findings (9)
Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
text: parsed.text, html: parsed.html, snippet: parsed.text ? parsed.text.slice(0, 200)
The skill returns email body content to the agent. Email bodies are external, untrusted text and may contain instructions aimed at influencing the agent.
const info = await transporter.sendMail(mailOptions);
The skill can directly send email from the configured account. The artifacts do not show an explicit confirmation, dry-run, or approval gate before this high-impact action.
"dependencies": {
"dotenv": "^16.6.1",
"imap": "^0.8.19",
"imap-simple": "^5.1.0",
"mailparser": "^3.9.3",
"nodemailer": "^7.0.13"
}The skill relies on npm packages with semver ranges rather than exact pinned versions. These dependencies are purpose-aligned, but future compatible releases could change installed code.
(cd "$SKILL_DIR" && npm install --production)
The setup helper executes a shell script and installs npm dependencies. This is disclosed and purpose-aligned, but it is still code execution during setup.
to: options.to, cc: options.cc || undefined, bcc: options.bcc || undefined, attachments: options.attachments || []
The send path supports multiple recipient fields and attachments. A single mistaken command can propagate information outside the local environment.
"author": "NetEase"
The package metadata makes an official-sounding author claim. Users should verify provenance before assuming the skill is officially maintained by that provider.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
requires:
env:
- IMAP_HOST
- IMAP_USER
- IMAP_PASS
- SMTP_HOST
- SMTP_USER
- SMTP_PASS
primaryEnv: SMTP_PASSThe skill explicitly requires mailbox credentials for both IMAP and SMTP, giving it authority to read and send email.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
Configuration is stored at `~/.config/imap-smtp-email/.env` (survives skill updates).
The skill uses persistent local configuration that survives updates and includes sensitive account settings and passwords.
read -p "Accept self-signed certificates? (y/n): " ACCEPT_CERT if [ "$ACCEPT_CERT" = "y" ]; then REJECT_UNAUTHORIZED="false"
The setup can configure IMAP/SMTP connections to skip certificate verification for self-signed servers. This may be useful for local or private servers, but it weakens protection for credentials and email content in transit.
