aws-sns
AWS SNS
Manage SNS topics and publish notifications.
List topics
aws sns list-topics --query 'Topics[].TopicArn' --output table
Get topic attributes
aws sns get-topic-attributes --topic-arn "$SNS_TOPIC_ARN" | jq '.Attributes | {DisplayName, SubscriptionsConfirmed, SubscriptionsPending}'
List subscriptions
aws sns list-subscriptions-by-topic --topic-arn "$SNS_TOPIC_ARN" --query 'Subscriptions[].{Endpoint:Endpoint,Protocol:Protocol,Status:SubscriptionArn}' --output table
Publish message
aws sns publish --topic-arn "$SNS_TOPIC_ARN" \
--subject "Alert" \
--message "Deployment complete for v1.2.3" | jq '{MessageId}'
Publish JSON message (protocol-specific)
aws sns publish --topic-arn "$SNS_TOPIC_ARN" \
--message-structure json \
--message '{"default":"Alert","email":"Email body","sms":"SMS text"}' | jq '{MessageId}'
Subscribe endpoint
aws sns subscribe --topic-arn "$SNS_TOPIC_ARN" \
--protocol email --notification-endpoint user@example.com | jq '{SubscriptionArn}'
Notes
- Email subscriptions require confirmation by the recipient.
- Confirm before publishing or subscribing endpoints.
More from thinkfleetai/thinkfleet-engine
flyio-cli-public
Use the Fly.io flyctl CLI for deploying and operating apps on Fly.io: deploys (local or remote builder), viewing status/logs, SSH/console, secrets/config, scaling, machines, volumes, and Fly Postgres (create/attach/manage databases). Use when asked to deploy to Fly.io, debug fly deploy/build/runtime failures, set up GitHub Actions deploys/previews, or safely manage Fly apps and Postgres.
24kagi-search
Web search using Kagi Search API. Use when you need to search the web for current information, facts, or references. Requires KAGI_API_KEY in the environment.
22feishu-bridge
Connect a Feishu (Lark) bot to ThinkFleet via WebSocket long-connection. No public server, domain, or ngrok required. Use when setting up Feishu/Lark as a messaging channel, troubleshooting the Feishu bridge, or managing the bridge service (start/stop/logs). Covers bot creation on Feishu Open Platform, credential setup, bridge startup, macOS launchd auto-restart, and group chat behavior tuning.
13bambu-local
Control Bambu Lab 3D printers locally via MQTT (no cloud). Supports A1, A1 Mini, P1P, P1S, X1C.
10voice-transcribe
Transcribe audio files using OpenAI's gpt-4o-mini-transcribe model with vocabulary hints and text replacements. Requires uv (https://docs.astral.sh/uv/).
10video-subtitles
Generate SRT subtitles from video/audio with translation support. Transcribes Hebrew (ivrit.ai) and English (whisper), translates between languages, burns subtitles into video. Use for creating captions, transcripts, or hardcoded subtitles for WhatsApp/social media.
10