Send email
Send plain-text email through either macOS /usr/bin/mail or an explicitly selected authenticated SMTP service, with RFC 2047 subject encoding and remote acceptance verification. Use when the user asks to email, mail, send, or deliver a report, notification, or confirmation, including when direct Postfix delivery is rejected because of sender-IP reputation.From its SKILL.md
npx -y skills add jeffliu05042/send-email-skill --skill send-emailAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 21 days oldThe repository was created 21 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.0 KB, 586 tokens by cl100k_base, as published. Nobody here has run it
Send Email
Use scripts/send_email.sh, resolved relative to this SKILL.md. It supports two explicit transports and never retries through a different transport automatically.
Safety
- Send only when the user explicitly authorizes delivery and supplies or confirms the recipient.
- Review the recipient, subject, body, and transport before execution. Never include credentials, private keys, or unrelated local data.
- Send exactly once. Investigate an uncertain result before retrying.
- Prefer a macOS Keychain item for SMTP passwords. Never place passwords in files, command arguments, commits, or user-facing output.
- Use plain-text content. Attachments and HTML are outside this skill's scope.
Select a Transport
local(default): use/usr/bin/mailand direct Postfix delivery. Choose only when the current network's sender IP is acceptable to the recipient domain.smtp: log in to a configured SMTP service over SSL or STARTTLS. Choose when direct delivery is blocked or authenticated sender identity is required. Read references/smtp.md before use.
Do not fall back from local to smtp automatically: a local result may be delayed or ambiguous, and fallback could send a duplicate.
Send
Pipe a generated body through standard input:
printf '%s\n' 'Report body' | \
<skill-directory>/scripts/send_email.sh \
--transport local \
--to '[email protected]' \
--subject 'Report subject'
For authenticated SMTP, configure the variables in references/smtp.md, then change the transport:
printf '%s\n' 'Report body' | \
<skill-directory>/scripts/send_email.sh \
--transport smtp \
--to '[email protected]' \
--subject 'Report subject'
Alternatively pass --body-file '/absolute/path/report.txt'. Use --dry-run to validate inputs and configuration without sending or connecting to the SMTP server.
Interpret Results
SUBJECT_HEADER_READYreports ASCII or RFC 2047 subject preparation.LOCAL_MAIL_ACCEPTEDmeans/usr/bin/mailaccepted a local-transport message.SMTP_CONFIG_READYandSMTP_AUTHENTICATEDdescribe authenticated SMTP setup and login.REMOTE_SMTP_ACCEPTEDmeans the receiving SMTP server accepted the message; require it plus exit code0before reporting success.REMOTE_SMTP_REJECTED,REMOTE_DELIVERY_DEFERRED,REMOTE_DELIVERY_UNCONFIRMED,SMTP_AUTH_FAILED, andSMTP_SEND_FAILEDare failures.- Say the receiving SMTP server accepted the message; do not claim the recipient read it.
- On nonzero exit, report the exact failure and do not silently switch transports or retry.
What ships with it: 4 files
17.1 KB alongside SKILL.md, 2 of them executable
agents/
- openai.yaml257 B
references/
- smtp.md2.6 KB
scripts/
- send_email.shruns6.4 KB
- smtp_send.pyruns7.8 KB