bama
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
Build transactional email, SMS, and push workflows for developers creating AI-native products and next-generation apps.
SkillsPythonGitHub @senderkitOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Add and operate transactional email, SMS, push & web-push from your AI coding agent — no provider lock-in. Skills + MCP for Claude Code, Codex & Cursor.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Add transactional email, SMS, push, and web-push notifications to any app — straight from your AI coding agent. Portable AI-agent skills for SenderKit, packaged as a plugin for Claude Code, OpenAI Codex, Cursor, opencode, and other Agent Skills-compatible coding assistants.
SenderKit sends email, SMS, push, and web-push directly, and can also route through providers like Resend, SendGrid, Postmark, Mailgun, SES, Twilio, FCM, APNs, and Expo — so your app isn't locked into one vendor. These skills let an agent wire SenderKit into your codebase and operate it at runtime over MCP.Read the full README ↗Add transactional email, SMS, push, and web-push notifications to any app — straight from your AI coding agent. Portable AI-agent skills for SenderKit, packaged as a plugin for Claude Code, OpenAI Codex, Cursor, opencode, and other Agent Skills-compatible coding assistants.
SenderKit sends email, SMS, push, and web-push directly, and can also route through providers like Resend, SendGrid, Postmark, Mailgun, SES, Twilio, FCM, APNs, and Expo — so your app isn't locked into one vendor. These skills let an agent wire SenderKit into your codebase and operate it at runtime over MCP.
This repository contains one senderkit plugin with three related skills:
senderkit-integration - add SenderKit to an app, or replace/route an existing email, SMS, or push provider through it.senderkit-mcp-messaging-operations - send and inspect messages at runtime through the SenderKit MCP connector.senderkit-email-deliverability - authenticate a sending domain (SPF/DKIM/DMARC) so email reaches the inbox.You don't need to name SenderKit — these skills activate on everyday messaging requests. Examples:
| You ask | Skill that helps |
|---|---|
| "Add a welcome email when a user signs up" | senderkit-integration |
| "Set up SMS OTP / verification codes" | senderkit-integration |
| "Add push notifications to this project" | senderkit-integration |
| "Send password-reset and receipt emails" | senderkit-integration |
| "Switch my email provider to SenderKit (or route through it, no lock-in)" | senderkit-integration |
| "Send a test email and check its delivery status" | senderkit-mcp-messaging-operations |
| "Why did this message fail? Cancel that scheduled send" | senderkit-mcp-messaging-operations |
| "Why are my emails going to spam? Set up DKIM/SPF/DMARC" | senderkit-email-deliverability |
Rule of thumb: integration writes SenderKit into your code; messaging operations sends and inspects messages at runtime via MCP.
This repo ships per-platform metadata — Claude Code (.claude-plugin/), OpenAI Codex (.codex-plugin/), Cursor (.cursor-plugin/), and opencode (opencode.json) — and the authored skills under ./skills/. Pick your agent below; each path ends with a quick check so you know it worked.
The skills CLI installs the skills into the right location for whichever agent you use (Claude Code, Codex, Cursor, opencode, and others):
npx skills add senderkit/senderkit-skills
It detects your agent, lists the three skills, and copies the ones you pick. This installs the skills only — to get the senderkit_* MCP tools, also connect the MCP server (see Connect the SenderKit MCP server).
Check it works: ask your agent "Use senderkit-integration to add a welcome email."
From the marketplace (recommended):
/plugin marketplace add senderkit/senderkit-skills
/plugin install senderkit@senderkit-skills
From a local checkout (for development):
claude --plugin-dir .
This loads both skills and the SenderKit MCP server from the repo's .mcp.json (OAuth, no key stored). Run /mcp, sign in, and pick a workspace and test/live mode.
Check it works: run /mcp — the senderkit server should be connected — or ask "Use senderkit-integration to add a welcome email."
"ChatGPT" support means Codex, OpenAI's coding agent (CLI / IDE extension / app). The ChatGPT chat app does not load skills.
Codex discovers skills from .agents/skills/ directories. Vendor the skills into your user scope (available in every repo) or a single repo's scope:
git clone https://github.com/senderkit/senderkit-skills.git
mkdir -p ~/.agents/skills
cp -R senderkit-skills/skills/senderkit-integration ~/.agents/skills/
cp -R senderkit-skills/skills/senderkit-mcp-messaging-operations ~/.agents/skills/
# repo-scoped instead? copy into <your-repo>/.agents/skills/
Restart Codex so it picks them up. Connect MCP: the bundled .mcp.json (referenced from .codex-plugin/plugin.json) points Codex at https://mcp.senderkit.com over OAuth — run codex mcp login senderkit to sign in (no key stored). Prefer an API key? See API key (optional) below, or run senderkit mcp install --client codex.
Check it works: run /skills (the SenderKit skills should be listed) or invoke one explicitly with $senderkit-integration.
Distributing the full plugin (skills + MCP) to a team? Publish this repo as a Codex marketplace and install via codex → /plugins. See https://developers.openai.com/codex/plugins/build.
For an individual install, load this repo as a local plugin:
git clone https://github.com/senderkit/senderkit-skills.git
ln -s "$(pwd)/senderkit-skills" ~/.cursor/plugins/local/senderkit
Reload Cursor (Developer: Reload Window). Skills show up under Settings → Rules & Skills and can be invoked with /senderkit-integration. Connect MCP: the bundled .cursor-plugin/plugin.json points Cursor at https://mcp.senderkit.com over OAuth — open Settings → MCP, toggle the server on, and sign in (no key stored). Prefer an API key? See API key (optional) below, or run senderkit mcp install --client cursor.
For teams, import this GitHub repo as a Team Marketplace (Dashboard → Settings → Plugins; Teams/Enterprise plans). See https://cursor.com/docs/plugins.
Check it works: type /senderkit-integration in chat, or ask "Send a test email and check its status via SenderKit MCP."
opencode auto-discovers Agent Skills (one folder per skill, SKILL.md inside) from ~/.config/opencode/skills/ (user scope, every repo) or .opencode/skills/ (repo scope) — and also reads .claude/skills/ and .agents/skills/, so the same skill folders work unchanged. Vendor them in:
git clone https://github.com/senderkit/senderkit-skills.git
mkdir -p ~/.config/opencode/skills
cp -R senderkit-skills/skills/senderkit-integration ~/.config/opencode/skills/
cp -R senderkit-skills/skills/senderkit-mcp-messaging-operations ~/.config/opencode/skills/
cp -R senderkit-skills/skills/senderkit-email-deliverability ~/.config/opencode/skills/
# repo-scoped instead? copy into <your-repo>/.opencode/skills/
Connect MCP: merge the mcp block from this repo's opencode.json into your own opencode.json (project root or ~/.config/opencode/opencode.json). It points opencode at https://mcp.senderkit.com as a "type": "remote" server with no auth, so opencode runs the OAuth flow on first use (no key stored). Sign in with opencode mcp auth senderkit. Prefer an API key? See API key (optional) below.
Check it works: run opencode mcp list (the senderkit server should be listed) or ask "Use senderkit-integration to add a welcome email."
Installing the plugin/skills gives you the senderkit_* MCP tools. Auth differs per client:
.mcp.json. Run /mcp, sign in, pick a workspace and test/live mode. No API key is stored in the repo..cursor-plugin/plugin.json. Toggle the server under Settings → MCP and sign in. No API key is stored in the repo..mcp.json. Run codex mcp login senderkit to sign in. No API key is stored in the repo.opencode.json ("type": "remote", url only). Run opencode mcp auth senderkit to sign in. No API key is stored in the repo.Every shipped manifest is OAuth-only, so no credential is committed. mcp.senderkit.com also accepts an API key if you'd rather skip OAuth — set SENDERKIT_API_KEY (the sk_live_ / sk_test_ prefix selects mode) and add it in your own MCP config:
Authorization header, e.g. in ~/.cursor/mcp.json:
{
"mcpServers": {
"senderkit": {
"url": "https://mcp.senderkit.com",
"headers": { "Authorization": "Bearer ${env:SENDERKIT_API_KEY}" }
}
}
}
bearer_token_env_var = "SENDERKIT_API_KEY" to the senderkit server in your ~/.codex/config.toml.opencode.json, set "oauth": false on the senderkit server and add a header: "headers": { "Authorization": "Bearer {env:SENDERKIT_API_KEY}" } (opencode interpolates {env:VAR}).Other clients (Windsurf, VS Code, Zed, Claude Desktop) and manual config: see skills/senderkit-mcp-messaging-operations/README.md and https://docs.senderkit.com/mcp/installation. The SenderKit CLI can also write the config for you: senderkit mcp install --client cursor (or codex, claude-code, vscode, zed, all).
Use senderkit-integration when an agent needs to modify an application: detect the stack, add SenderKit, migrate provider calls, preserve existing notification behavior, and verify the integration before live traffic.
Suggested prompt:
Use $senderkit-integration to add SenderKit transactional messaging to this project.
Claude Code plugin command:
/senderkit:senderkit-integration
Use senderkit-mcp-messaging-operations when an agent has access to the SenderKit MCP server and needs to send messages, inspect templates, check message status, or cancel pending sends through MCP tool calls.
Suggested prompt:
Use $senderkit-mcp-messaging-operations to send a test message and verify its status through SenderKit MCP.
Claude Code plugin command:
/senderkit:senderkit-mcp-messaging-operations
Use senderkit-email-deliverability when transactional email needs to be authenticated to reach the inbox: diagnose current SPF/DKIM/DMARC with dig, generate the exact records to add, point to the SenderKit dashboard for issued values, and verify publication.
Suggested prompt:
Use $senderkit-email-deliverability to diagnose and fix SPF, DKIM, and DMARC for my sending domain.
Claude Code plugin command:
/senderkit:senderkit-email-deliverability
senderkit-skills/
|-- .claude-plugin/
| |-- marketplace.json
| `-- plugin.json
|-- .codex-plugin/
| `-- plugin.json
|-- .cursor-plugin/
| |-- marketplace.json
| `-- plugin.json
|-- .github/
| |-- dependabot.yml
| `-- workflows/
| |-- validate.yml
| `-- hol-scanner.yml
|-- .codexignore
|-- .mcp.json
|-- opencode.json
|-- AGENTS.md
|-- LICENSE
|-- README.md
|-- SECURITY.md
|-- llms.txt
`-- skills/
|-- senderkit-email-deliverability/
|-- senderkit-integration/
`-- senderkit-mcp-messaging-operations/
https://docs.senderkit.com/mcp/overviewhttps://docs.senderkit.com/mcp/toolshttps://www.senderkit.com/openapi.yaml