원클릭으로
moonpay-price-alerts
Set up desktop price alerts that notify you when tokens hit target prices. Observe-only — no trading, just notifications.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Set up desktop price alerts that notify you when tokens hit target prices. Observe-only — no trading, just notifications.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Set up the MoonPay CLI, authenticate, and manage local wallets. Use when commands fail, for login, or to create/import wallets.
Multi-chain yield optimization via yield.xyz (StakeKit). Discover 2,988+ yield opportunities across 75+ blockchains, build deposit/withdrawal transactions with shell scripts, and sign them with a MoonPay wallet. Use when the user wants to earn yield, find the best lending or staking rate, enter/exit a position, or check portfolio balances.
What tokens are whales dollar-cost averaging into? Jupiter DCA strategies by smart money and target token fundamentals.
Manually refresh wallet balances shown in a compatible CLI status line. Use when the user says "refresh balances", "update status bar", or after receiving funds from outside the CLI.
Show MoonPay wallet balances in a compatible CLI status line using a local cache and refresh script. Use when the user asks to "show balances in the status bar", "add wallet to the CLI status line", or wants a persistent balance display while working.
Use when accessing Alchemy APIs for RPC calls, token balances, NFT metadata, asset transfers, transaction simulation, or Alchemy-specific features. Also use when the user mentions "SIWE", "SIWS", "x402", "MPP", "mppx", or "agentic gateway" — this skill covers wallet-based auth flows for Alchemy's x402 and MPP protocols on EVM (Ethereum, Base, Polygon) and SVM (Solana).
| name | moonpay-price-alerts |
| description | Set up desktop price alerts that notify you when tokens hit target prices. Observe-only — no trading, just notifications. |
| tags | ["alerts","research"] |
Monitor token prices and get desktop notifications when they cross a threshold. Uses mp token search for price checks and OS notifications (osascript/notify-send) for alerts. Observe-only — no funds at risk.
mp binary on PATH: which mpjq installed: which jqosascript (built-in) or Linux: notify-send (sudo apt install libnotify-bin)"Tell me when SOL drops below $80" — checks every 5 minutes, fires once, then disables itself.
~/.config/moonpay/scripts/alert-sol-below-80.sh#!/bin/bash
set -euo pipefail
MP="$(which mp)"
LOG="$HOME/.config/moonpay/logs/alerts.log"
mkdir -p "$(dirname "$LOG")"
log() { echo "[$(date -u +%Y-%m-%dT%H:%M:%SZ)] $*" >> "$LOG"; }
# --- Config ---
TOKEN="So11111111111111111111111111111111111111111"
CHAIN="solana"
SYMBOL="SOL"
TARGET=80
DIRECTION="below" # "above" or "below"
SCRIPT_NAME="alert-sol-below-80"
# --- Check price ---
PRICE=$("$MP" --json token search --query "$SYMBOL" --chain "$CHAIN" | jq -r '.items[0].marketData.price')
if [ -z "$PRICE" ] || [ "$PRICE" = "null" ]; then
log "ALERT $SCRIPT_NAME: price fetch failed, skipping"
exit 0
fi
# --- Compare ---
TRIGGERED=false
if [ "$DIRECTION" = "below" ] && (( $(echo "$PRICE < $TARGET" | bc -l) )); then
TRIGGERED=true
elif [ "$DIRECTION" = "above" ] && (( $(echo "$PRICE > $TARGET" | bc -l) )); then
TRIGGERED=true
fi
if [ "$TRIGGERED" = true ]; then
MSG="$SYMBOL is $DIRECTION \$$TARGET — currently \$$PRICE"
log "ALERT $SCRIPT_NAME: $MSG"
# Desktop notification
if [[ "$OSTYPE" == "darwin"* ]]; then
osascript -e "display notification \"$MSG\" with title \"MoonPay Alert\" sound name \"Glass\""
else
notify-send "MoonPay Alert" "$MSG"
fi
# Self-disable (one-shot)
if [[ "$OSTYPE" == "darwin"* ]]; then
launchctl unload "$HOME/Library/LaunchAgents/com.moonpay.${SCRIPT_NAME}.plist" 2>/dev/null || true
else
crontab -l | grep -v "$SCRIPT_NAME" | crontab -
fi
log "ALERT $SCRIPT_NAME: disabled after trigger"
else
log "ALERT $SCRIPT_NAME: $SYMBOL at \$$PRICE — not triggered ($DIRECTION $TARGET)"
fi
Check every 5 minutes:
# cron (Linux)
*/5 * * * * ~/.config/moonpay/scripts/alert-sol-below-80.sh # moonpay:alert-sol-below-80
# launchd (macOS) — use StartInterval of 300 seconds in the plist
Launchd plist at ~/Library/LaunchAgents/com.moonpay.alert-sol-below-80.plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.moonpay.alert-sol-below-80</string>
<key>ProgramArguments</key>
<array>
<string>/bin/bash</string>
<string>/Users/USERNAME/.config/moonpay/scripts/alert-sol-below-80.sh</string>
</array>
<key>StartInterval</key>
<integer>300</integer>
<key>StandardErrorPath</key>
<string>/Users/USERNAME/.config/moonpay/logs/alert-sol-below-80.err</string>
</dict>
</plist>
Load: launchctl load ~/Library/LaunchAgents/com.moonpay.alert-sol-below-80.plist
Important: Replace USERNAME with the actual username. Tilde does not expand in plist files.
"Alert me every hour while ETH is above $2000" — keeps firing on each check, doesn't self-disable.
Same script as above but remove the self-disable block. The alert fires every time the condition is met, until the user manually removes it.
# macOS
launchctl list | grep moonpay
# Linux
crontab -l | grep moonpay
# macOS
launchctl unload ~/Library/LaunchAgents/com.moonpay.alert-sol-below-80.plist
rm ~/Library/LaunchAgents/com.moonpay.alert-sol-below-80.plist
# Linux
crontab -l | grep -v "alert-sol-below-80" | crontab -
tail -50 ~/.config/moonpay/logs/alerts.log
mp token search are free — no gas costsmp token search --query "SOL" --chain solana to resolve token addresses~/.config/moonpay/logs/alerts.log — check this to verify they're runningbc -l handles decimal comparison; if unavailable, use awk "BEGIN {exit !($PRICE < $TARGET)}"