feat: add list account emails
Description
Adds a new AI tool list-account-emails that lists all available email addresses from the user's mail accounts. Also enhances the send-email tool to allow changing the sender email address via the from parameter.
Screencast
N/A
Checklist
- [x] I read the extension guidelines
- [x] I read the documentation about publishing
- [x] I ran
npm run buildand tested this distribution build in Raycast - [x] I checked that files in the
assetsfolder are used by the extension itself - [x] I checked that assets used in the
READMEare located outside the metadata folder if they were not generated with our metadata tool
Thank you for your contribution! :tada:
🔔 @yug2005 @pernielsentikaer @fengtianze @tleo19 @Luk4h @jfkisafk @StevenRCE0 @ridemountainpig @ViGeng @danteissaias @ANemcov @xilopaint you might want to have a look.
You can use this guide to learn how to check out the Pull Request locally in order to test it.
📋 Quick checkout commands
BRANCH="main"
FORK_URL="https://github.com/ikupenov/raycast-extensions.git"
EXTENSION_NAME="mail"
REPO_NAME="raycast-extensions"
git clone -n --depth=1 --filter=tree:0 -b $BRANCH $FORK_URL
cd $REPO_NAME
git sparse-checkout set --no-cone "extensions/$EXTENSION_NAME"
git checkout
cd "extensions/$EXTENSION_NAME"
npm install && npm run dev
Due to our current reduced availability, the initial review may take up to 10-15 business days.
Greptile Summary
- Adds new AI tool
list-account-emailsthat retrieves all available email addresses from user's mail accounts with optional query filtering - Enhances
send-emailtool to support custom sender addresses via newfromparameter, replacing account-based sending with email-address-based selection - Updates compose message UI to allow selecting from all available email addresses across accounts instead of being limited to single account's default email
Important Files Changed
| Filename | Overview |
|---|---|
| extensions/mail/src/tools/list-account-emails.ts | New AI tool that lists available email addresses from all user accounts with optional search filtering |
| extensions/mail/src/tools/send-email.ts | Enhanced with from parameter validation and updated to send from specific email addresses instead of account IDs |
| extensions/mail/src/components/compose-message.tsx | Modified to support selecting any email address as sender rather than being limited to specific account |
| extensions/mail/src/scripts/messages.ts | Updated AppleScript to use dynamic sender email address from from parameter instead of hardcoded account |
| extensions/mail/src/types/common.ts | Changed OutgoingMessage type to use from field instead of account field for more granular sender control |
Confidence score: 4/5
- This PR is generally safe to merge with one notable issue regarding CHANGELOG date formatting
- Score reflects well-structured implementation following existing patterns, but points deducted for static date in CHANGELOG that should use
{PR_MERGE_DATE}placeholder format - Pay close attention to the CHANGELOG.md file which uses a static date instead of the required merge date placeholder
Published to the Raycast Store: https://raycast.com/yug2005/mail
:tada: :tada: :tada:
Such a great contribution deserves a reward, but unfortunately we couldn't find your Raycast account based on your GitHub username (@ikupenov).
Please link your GitHub account to your Raycast account to receive your credits and soon be able to exchange them for some swag.