agentsclimarketplace

Email send direct

Skill aAAaqwq/AGI-Super-Team/skills/email-send-direct

Single email: dry-run, reply, attachmentsFrom its SKILL.md

Install
npx -y skills add aAAaqwq/AGI-Super-Team --skill email-send-direct

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

6.5 KB, ~1.7k tokens by cl100k_base, as published. Nobody here has run it

Email Send Direct

Send a single email via Gmail API from CLI

When to use

  • "write an email to X"
  • "send email to Y"
  • "reply to the email"
  • Any single email sending (not mass campaign)

IMPORTANT: Confirmation rule

ALWAYS first --dry-run, show preview to the user, and only after "yes" send without --dry-run.

Composing Guidelines

Before writing a single word:

  1. Read the full thread — inbox AND sent, not just the latest message. Use email-read skill to pull last 3-5 days of correspondence with this contact.
  2. Check CRM — read leads.csv and people.csv for context: deal stage, last activity, relationship notes. The email must reflect where we actually are, not where we were a week ago.
  3. Identify what they asked — list every question or request from their last message. Each one must be answered.

Writing rules:

  • Answer their questions first. Don't open with pleasantries or context-setting. If they asked "can you invoice monthly?" — start with "Yes, we'll submit monthly invoices."
  • Match the thread tone. If the conversation is casual ("Hey Ivan"), reply casual. If formal ("Dear Mr. Pasichnyk"), reply formal. Mirror their level.
  • No bot language. Never write: "Please find attached", "I hope this email finds you well", "As per our conversation", "Don't hesitate to reach out". Write like a human.
  • No unnecessary bullet points or formatting. Business emails are paragraphs. Use bullets only when listing 3+ distinct items that genuinely benefit from a list.
  • Reference shared context. Use "as discussed", "as you mentioned", "following up on our call" — shows you're in the conversation, not generating from a template.
  • Keep it short. 3-5 sentences for a reply. 2-3 short paragraphs max for a proposal email. If you need more, the content belongs in an attachment.
  • One clear call-to-action. End with exactly one thing you want them to do: review, sign, reply, schedule.

Ivan's voice:

  • Short, concrete, direct
  • Professional but warm — not stiff, not overly casual
  • Says "we" for company actions, "I" for personal commitments
  • Signs off: "Best," or "Thanks," — never "Best regards," or "Sincerely,"
  • First email in thread: "Hi [Name]," — replies: often no greeting, just jumps in

Anti-patterns (never do these):

BadWhyInstead
"Please find attached the proposal"Corporate robot"Proposal is attached" or "Attached is the proposal we discussed"
Bullet-point summary of what's attachedThey can read it themselvesOne sentence saying what it is
Repeating info they already knowWastes their timeReference it briefly, move forward
"Let me know if you have any questions"Empty fillerSpecific CTA: "Let me know if the terms work"
Long intro before answering their questionBuries the answerAnswer first, context after

Paths

WhatPath
Script$GOOGLE_TOOLS_PATH/send_email.py
Token$GOOGLE_TOOLS_PATH/token.json
venv$GOOGLE_TOOLS_PATH/.venv/bin/python3

How to run

Simple email

cd $GOOGLE_TOOLS_PATH
.venv/bin/python3 send_email.py \
    --to [email protected] \
    --subject "Subject" \
    --body "Message text" \
    --dry-run

With CC

.venv/bin/python3 send_email.py \
    --to [email protected] \
    --cc [email protected] \
    --cc [email protected] \
    --subject "Subject" \
    --body "Message" \
    --dry-run

With attachment

.venv/bin/python3 send_email.py \
    --to [email protected] \
    --subject "NDA attached" \
    --body "Please find attached." \
    --attach /path/to/file.pdf \
    --attach /path/to/another.pdf \
    --dry-run

Reply in thread (search by query)

.venv/bin/python3 send_email.py \
    --to [email protected] \
    --subject "Re: Original Subject" \
    --body "Reply text" \
    --reply-to 'from:[email protected] subject:"Original Subject"' \
    --dry-run

Reply in thread (by message ID)

.venv/bin/python3 send_email.py \
    --to [email protected] \
    --subject "Re: Original Subject" \
    --body "Reply text" \
    --reply-to-id MESSAGE_ID \
    --dry-run

Body from file

.venv/bin/python3 send_email.py \
    --to [email protected] \
    --subject "Subject" \
    --body-file /path/to/message.txt \
    --dry-run

Parameters

ParameterDescriptionRequired
--to EMAILRecipient (can specify multiple)yes
--cc EMAILCC (can specify multiple)no
--subject TEXTEmail subjectyes
--body TEXTEmail body textyes*
--body-file FILEBody text from fileyes*
--attach FILEAttachment (can specify multiple)no
--reply-to QUERYGmail query for thread lookupno
--reply-to-id IDGmail message ID for replyno
--dry-runPreview only, do not sendno

*Either --body or --body-file is required.

Workflow for Claude

1. Prepare the email text
2. Run with --dry-run
3. Show preview to the user
4. After confirmation -- run WITHOUT --dry-run
5. Script automatically verifies sending (labels, snippet)

Output

Dry-run

============================================================
  EMAIL PREVIEW
============================================================
  From:    Your Name <[email protected]>
  To:      [email protected]
  Cc:      [email protected]
  Subject: Re: Topic
  Thread:  abc123 (reply)
  Attach:  file.pdf (23,794 bytes)
------------------------------------------------------------
Message body here...
============================================================

[DRY RUN] Email not sent.

After send

  Sent! Message ID: 19c90af2b9ceaf61

  Verify:  OK
  ID:      19c90af2b9ceaf61
  To:      [email protected]
  Cc:      [email protected]
  Subject: Re: Topic
  Labels:  ['SENT']
  Snippet: Message body here...
  Attach:  ['file.pdf']

Sender

From: Your Name <[email protected]>

Troubleshooting

ProblemSolution
401 UnauthorizedRefresh token: google-auth skill
Attachment not foundCheck file path
Thread not foundCheck --reply-to query
Encoding issuesBody is automatically UTF-8

Related skills

  • email-send-bulk -- mass sending via Google Sheets
  • email-read -- reading email
  • email-monitor -- automatic monitoring
  • google-auth -- if authorization issues

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.