[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71J2RN4GRSJYZSWN4JEN82J":3,"skill-same:01M71J2RN4GRSJYZSWN4JEN82J":84},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":28,"publishedAt":49,"linkOnly":50,"markdownContent":51,"markdownBody":52,"frontMatter":53,"refName":42,"commitSha":63,"skillDirectory":64,"forksCount":14,"repositoryHtmlUrl":65,"repositoryHomepageUrl":6,"ownerHtmlUrl":66,"ownerBlogUrl":67,"ownerDescription":68,"updatedAt":69,"install":70,"resources":83},"01M71J2RN4GRSJYZSWN4JEN82J","sendblue-cli",null,"Send iMessage and SMS from the shell via the @sendblue\u002Fcli npm package — outbound sends, contact management, and account setup with no API client or webhook server required.","agency-black\u002FSkills","agency-black","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F234862658?v=4","01M6HWVFPNGNR5N2CX9ECSAD57","agencia.black","01M719WF77BF3HN0N9FK1APEFY",0,"MIT","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fsendblue\u002Fsendblue-cli\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],"sendblue","sendblue cli","cli","gemini","api-integration","api client","safe","2026","imessage","server","notifications","api","outbound","main","npm package","send","webhook","official","messaging","community","2026-11-10 10:12:30",false,"---\nname: sendblue-cli\ndescription: \"Send iMessage and SMS from the shell via the @sendblue\u002Fcli npm package — outbound sends, contact management, and account setup with no API client or webhook server required.\"\ncategory: api-integration\nrisk: safe\nsource: community\nsource_repo: sendblue-api\u002Fsendblue-cli\nsource_type: official\ndate_added: \"2026-05-22\"\nauthor: AnthonyFirth\ntags: [sendblue, imessage, sms, cli, messaging, notifications]\ntools: [claude, cursor, gemini]\nlicense: \"MIT\"\nlicense_source: \"https:\u002F\u002Fgithub.com\u002Fsendblue-api\u002Fsendblue-cli\u002Fblob\u002Fmain\u002FLICENSE\"\n---\n\n# Sendblue CLI\n\n## Overview\n\n`@sendblue\u002Fcli` is a Node CLI that creates a Sendblue account, provisions an iMessage-enabled number, and sends messages. It is the fastest way to text from a shell, script, or Claude Code hook — no API client, no webhook server, no credentials in env vars. Credentials live at `~\u002F.sendblue\u002Fcredentials.json` (mode `600`) and Node.js 18+ is required.\n\n## When to Use This Skill\n\n- Use when the user wants to text a phone number from a script, shell, hook, or agent turn (e.g. \"text me when X finishes\", \"ping my phone\", \"notify on completion\").\n- Use when the user mentions `sendblue` as a CLI\u002Fbinary or asks to set up the `@sendblue\u002Fcli` package.\n- Prefer this skill over [[sendblue-api]] when the work happens in a shell context, one-shot script, cron job, or agent hook.\n- Reach for [[sendblue-api]] instead when writing application code that integrates Sendblue, receiving inbound webhooks, or needing features the CLI does not expose (send styles, reactions, group messages, status callbacks, media uploads).\n\n## How It Works\n\n### Step 1: Install\n\n```bash\nnpm install -g @sendblue\u002Fcli       # global, exposes `sendblue`\n# or one-shot:\nnpx @sendblue\u002Fcli \u003Ccommand>\n```\n\n### Step 2: Set up an account\n\n`sendblue setup` runs interactively by default. For CI\u002Fscripts, run it in two phases — the first call sends an 8-digit verification code by email, the second consumes it.\n\n```bash\nsendblue setup --email you@example.com                                       # sends code\nsendblue setup --email you@example.com --code 12345678 \\\n               --company my-co --contact +15551234567                        # completes setup\n```\n\n| Flag | Notes |\n|---|---|\n| `--email` | Email address |\n| `--code` | 8-digit verification code (from the email) |\n| `--company` | Lowercase, hyphens\u002Funderscores, 3–64 chars |\n| `--contact` | First contact, E.164 |\n\n### Step 3: Send messages\n\n```bash\nsendblue send +15551234567 'Hello from Sendblue!'\nsendblue messages --inbound --limit 20\n```\n\nPhone numbers must be E.164 (`+` + country code + digits, no spaces or dashes).\n\n### Step 4: Manage contacts and plan\n\nOn the free plan, **a contact must text your Sendblue number once before outbound sends to that contact will work**. After `sendblue setup ... --contact +15551234567`, have that contact send any text to the printed Sendblue number, then run `sendblue contacts` to confirm verification.\n\n## Command Reference\n\n| Command | Purpose |\n|---|---|\n| `sendblue setup` | Create account, verify email, set company name, add first contact |\n| `sendblue login` | Log in to an existing account |\n| `sendblue send \u003Cnumber> \u003Cmessage>` | Send an iMessage |\n| `sendblue messages [--inbound\\|--outbound] [-n \u003Cnumber>] [-l \u003Ccount>]` | List recent messages |\n| `sendblue add-contact \u003Cnumber>` | Register a contact |\n| `sendblue contacts` | List contacts and their verification status |\n| `sendblue status` | Account\u002Fplan info |\n| `sendblue whoami` | Show current credentials and verify validity |\n\n## Examples\n\n### Example 1: Notify when a long task finishes\n\n```bash\nlong_running_thing && sendblue send +15551234567 \"✅ done: $(date)\"\n```\n\n### Example 2: Read recent inbound for a specific contact\n\n```bash\nsendblue messages -n +15551234567 --inbound --limit 50\n```\n\n### Example 3: Verify creds are good before a batch send\n\n```bash\nsendblue whoami || sendblue login\n```\n\n### Example 4: Wire to a Claude Code `Stop` hook\n\nTo text yourself at the end of every agent turn, register a `Stop` hook in `settings.json` that shells out to `sendblue send`. Defer the actual hook wiring to [[update-config]] and the trigger logic to [[sendblue-notify]] — this skill only owns the CLI invocation.\n\n## Best Practices\n\n- ✅ **Use E.164 numbers everywhere.** `+15551234567`, never `5551234567` or `(555) 123-4567`.\n- ✅ **Run `sendblue whoami` before unattended batches** to fail fast on stale or missing creds.\n- ✅ **Re-run `setup` as the same OS user** that owns `~\u002F.sendblue\u002Fcredentials.json`.\n- ❌ **Don't `sudo`** — it writes creds to root's home and the next non-sudo run won't see them.\n- ❌ **Don't embed creds in env vars** when the CLI already reads them from the per-user credentials file.\n\n## Limitations\n\n- Outbound-first: there is no built-in webhook server for inbound. Use [[sendblue-api]] webhooks for full inbound handling.\n- The CLI does not expose send styles\u002Feffects, reactions, group messages, status callbacks, media uploads, or the contacts API beyond basic CRUD. Reach for the HTTP API for those.\n- Free-plan accounts require recipient verification before outbound sends succeed.\n\n## Security & Safety Notes\n\n- Credentials are written to `~\u002F.sendblue\u002Fcredentials.json` with mode `600`. Treat that file like an API key — do not commit it, do not copy it across machines without the same posture.\n- Run the CLI as the OS user that owns the credentials file. `sudo` writes a separate copy under root's home and silently desyncs.\n- Outbound messages to phone numbers are not free of consequence — wire `sendblue send` into hooks or loops only after gating on duration or success conditions to avoid spamming the recipient.\n- Verification codes arrive by email; treat the address you registered with as a recovery factor for the account.\n\n## Common Pitfalls\n\n- **E.164 only.** `5551234567` or `(555) 123-4567` will fail — always `+15551234567`.\n- **Free-plan unverified contacts.** Outbound to a contact that hasn't texted in first returns an error — have them text your Sendblue number once, then confirm with `sendblue contacts`.\n- **Two-step setup in non-interactive mode.** `--email` alone only sends the code; you must run a second invocation with `--code` and the rest of the flags to finish.\n- **Credentials are per-user.** `~\u002F.sendblue\u002Fcredentials.json` is owner-only (`600`). Don't `sudo` and pollute root's home — re-running as the same user that ran `setup` is what works.\n\n## Related Skills\n\n- `@sendblue-api` — HTTP\u002FJSON alternative for application code, webhooks, and features the CLI does not expose.\n- `@sendblue-notify` — Patterns and copy rules for \"text me when X is done\" workflows that sit on top of this CLI.\n- `@update-config` — Wires `sendblue send` into Claude Code hooks (`Stop`, `Notification`) without owning the message logic.\n\n## Links\n\n- README & full flag reference: \u003Chttps:\u002F\u002Fgithub.com\u002Fsendblue-api\u002Fsendblue-cli>\n- Sendblue: \u003Chttps:\u002F\u002Fsendblue.com>\n- API docs (deeper protocol details): \u003Chttps:\u002F\u002Fdocs.sendblue.com>\n","# Sendblue CLI\n\n## Overview\n\n`@sendblue\u002Fcli` is a Node CLI that creates a Sendblue account, provisions an iMessage-enabled number, and sends messages. It is the fastest way to text from a shell, script, or Claude Code hook — no API client, no webhook server, no credentials in env vars. Credentials live at `~\u002F.sendblue\u002Fcredentials.json` (mode `600`) and Node.js 18+ is required.\n\n## When to Use This Skill\n\n- Use when the user wants to text a phone number from a script, shell, hook, or agent turn (e.g. \"text me when X finishes\", \"ping my phone\", \"notify on completion\").\n- Use when the user mentions `sendblue` as a CLI\u002Fbinary or asks to set up the `@sendblue\u002Fcli` package.\n- Prefer this skill over [[sendblue-api]] when the work happens in a shell context, one-shot script, cron job, or agent hook.\n- Reach for [[sendblue-api]] instead when writing application code that integrates Sendblue, receiving inbound webhooks, or needing features the CLI does not expose (send styles, reactions, group messages, status callbacks, media uploads).\n\n## How It Works\n\n### Step 1: Install\n\n```bash\nnpm install -g @sendblue\u002Fcli       # global, exposes `sendblue`\n# or one-shot:\nnpx @sendblue\u002Fcli \u003Ccommand>\n```\n\n### Step 2: Set up an account\n\n`sendblue setup` runs interactively by default. For CI\u002Fscripts, run it in two phases — the first call sends an 8-digit verification code by email, the second consumes it.\n\n```bash\nsendblue setup --email you@example.com                                       # sends code\nsendblue setup --email you@example.com --code 12345678 \\\n               --company my-co --contact +15551234567                        # completes setup\n```\n\n| Flag | Notes |\n|---|---|\n| `--email` | Email address |\n| `--code` | 8-digit verification code (from the email) |\n| `--company` | Lowercase, hyphens\u002Funderscores, 3–64 chars |\n| `--contact` | First contact, E.164 |\n\n### Step 3: Send messages\n\n```bash\nsendblue send +15551234567 'Hello from Sendblue!'\nsendblue messages --inbound --limit 20\n```\n\nPhone numbers must be E.164 (`+` + country code + digits, no spaces or dashes).\n\n### Step 4: Manage contacts and plan\n\nOn the free plan, **a contact must text your Sendblue number once before outbound sends to that contact will work**. After `sendblue setup ... --contact +15551234567`, have that contact send any text to the printed Sendblue number, then run `sendblue contacts` to confirm verification.\n\n## Command Reference\n\n| Command | Purpose |\n|---|---|\n| `sendblue setup` | Create account, verify email, set company name, add first contact |\n| `sendblue login` | Log in to an existing account |\n| `sendblue send \u003Cnumber> \u003Cmessage>` | Send an iMessage |\n| `sendblue messages [--inbound\\|--outbound] [-n \u003Cnumber>] [-l \u003Ccount>]` | List recent messages |\n| `sendblue add-contact \u003Cnumber>` | Register a contact |\n| `sendblue contacts` | List contacts and their verification status |\n| `sendblue status` | Account\u002Fplan info |\n| `sendblue whoami` | Show current credentials and verify validity |\n\n## Examples\n\n### Example 1: Notify when a long task finishes\n\n```bash\nlong_running_thing && sendblue send +15551234567 \"✅ done: $(date)\"\n```\n\n### Example 2: Read recent inbound for a specific contact\n\n```bash\nsendblue messages -n +15551234567 --inbound --limit 50\n```\n\n### Example 3: Verify creds are good before a batch send\n\n```bash\nsendblue whoami || sendblue login\n```\n\n### Example 4: Wire to a Claude Code `Stop` hook\n\nTo text yourself at the end of every agent turn, register a `Stop` hook in `settings.json` that shells out to `sendblue send`. Defer the actual hook wiring to [[update-config]] and the trigger logic to [[sendblue-notify]] — this skill only owns the CLI invocation.\n\n## Best Practices\n\n- ✅ **Use E.164 numbers everywhere.** `+15551234567`, never `5551234567` or `(555) 123-4567`.\n- ✅ **Run `sendblue whoami` before unattended batches** to fail fast on stale or missing creds.\n- ✅ **Re-run `setup` as the same OS user** that owns `~\u002F.sendblue\u002Fcredentials.json`.\n- ❌ **Don't `sudo`** — it writes creds to root's home and the next non-sudo run won't see them.\n- ❌ **Don't embed creds in env vars** when the CLI already reads them from the per-user credentials file.\n\n## Limitations\n\n- Outbound-first: there is no built-in webhook server for inbound. Use [[sendblue-api]] webhooks for full inbound handling.\n- The CLI does not expose send styles\u002Feffects, reactions, group messages, status callbacks, media uploads, or the contacts API beyond basic CRUD. Reach for the HTTP API for those.\n- Free-plan accounts require recipient verification before outbound sends succeed.\n\n## Security & Safety Notes\n\n- Credentials are written to `~\u002F.sendblue\u002Fcredentials.json` with mode `600`. Treat that file like an API key — do not commit it, do not copy it across machines without the same posture.\n- Run the CLI as the OS user that owns the credentials file. `sudo` writes a separate copy under root's home and silently desyncs.\n- Outbound messages to phone numbers are not free of consequence — wire `sendblue send` into hooks or loops only after gating on duration or success conditions to avoid spamming the recipient.\n- Verification codes arrive by email; treat the address you registered with as a recovery factor for the account.\n\n## Common Pitfalls\n\n- **E.164 only.** `5551234567` or `(555) 123-4567` will fail — always `+15551234567`.\n- **Free-plan unverified contacts.** Outbound to a contact that hasn't texted in first returns an error — have them text your Sendblue number once, then confirm with `sendblue contacts`.\n- **Two-step setup in non-interactive mode.** `--email` alone only sends the code; you must run a second invocation with `--code` and the rest of the flags to finish.\n- **Credentials are per-user.** `~\u002F.sendblue\u002Fcredentials.json` is owner-only (`600`). Don't `sudo` and pollute root's home — re-running as the same user that ran `setup` is what works.\n\n## Related Skills\n\n- `@sendblue-api` — HTTP\u002FJSON alternative for application code, webhooks, and features the CLI does not expose.\n- `@sendblue-notify` — Patterns and copy rules for \"text me when X is done\" workflows that sit on top of this CLI.\n- `@update-config` — Wires `sendblue send` into Claude Code hooks (`Stop`, `Notification`) without owning the message logic.\n\n## Links\n\n- README & full flag reference: \u003Chttps:\u002F\u002Fgithub.com\u002Fsendblue-api\u002Fsendblue-cli>\n- Sendblue: \u003Chttps:\u002F\u002Fsendblue.com>\n- API docs (deeper protocol details): \u003Chttps:\u002F\u002Fdocs.sendblue.com>\n",{"name":5,"risk":35,"tags":54,"tools":56,"author":59,"source":48,"license":15,"category":33,"date_added":60,"description":7,"source_repo":61,"source_type":46,"license_source":62},[29,37,55,31,47,39],"sms",[57,58,32],"claude","cursor","AnthonyFirth","2026-05-22","sendblue-api\u002Fsendblue-cli","https:\u002F\u002Fgithub.com\u002Fsendblue-api\u002Fsendblue-cli\u002Fblob\u002Fmain\u002FLICENSE","681496e0662f4c45c4758fae9d4510ae87311bf2","sendblue\u002Fsendblue-cli","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills","https:\u002F\u002Fgithub.com\u002Fagency-black","http:\u002F\u002Fwww.dogma.black","Las grandes ideas merecen una ejecución impecable. Construimos plataformas web, aplicaciones y ecosistemas digitales completos. Esta Trinidad es nuestro dogma.","2026-05-29 16:13:55",{"source":8,"skillName":5,"commands":71,"prompt":81,"zipAvailable":82},[72,75,78],{"tool":73,"command":74},"npx","npx skills add agency-black\u002FSkills --skill sendblue-cli",{"tool":76,"command":77},"bunx","bunx skills add agency-black\u002FSkills --skill sendblue-cli",{"tool":79,"command":80},"pnpm","pnpm dlx skills add agency-black\u002FSkills --skill sendblue-cli","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fsendblue\u002Fsendblue-cli\u002FSKILL.md",true,[],[85,112,138,168,193,217],{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":49},"01M71JZVZ0TVW7Z5DQBRWSBG8A","zarr-python","Chunked N-D arrays for cloud storage (Zarr-Python 3). Compressed arrays, parallel I\u002FO, S3\u002FGCS via fsspec, NumPy\u002FDask\u002FXarray compatible, for large-scale scientific computing pipelines.","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fzarr-python\u002FSKILL.md",[],[92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111],"zarr python","python","zarr","arrays","Cloud Storage","remote","workflows","scientific","read","write","edit","parallel","dask","for","s3fs","use","numpy","s3","scientific computing","scale",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":116,"sourceHtmlUrl":117,"categories":118,"keywords":122,"publishedAt":49},"01M71JYXC5VAEJT8KXN5GRK32S","xvary-stock-research","Thesis-driven equity analysis from public SEC EDGAR and market data; \u002Fanalyze, \u002Fscore, \u002Fcompare workflows with bundled Python tools (Claude Code, Cursor, Codex).","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fxvary-stock-research\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fxvary-stock-research\u002FSKILL.md",[119],{"categoryNo":120,"categoryName":121,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究",[123,124,125,126,127,48,128,93,129,98,130,131,132,133,134,135,136,137,58,36],"xvary","stock","research","xvary stock research","sec edgar","equity","thesis","analysis","code","Market","compare","market data","analyze","with","codex",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":142,"licenseFileUrl":143,"sourceHtmlUrl":144,"categories":145,"keywords":152,"publishedAt":49},"01M71JVSDPDQ5040YBN6J1ASKY","webapp-testing","Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fwebapp-testing\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fwebapp-testing\u002FSKILL.md",[146,149],{"categoryNo":147,"categoryName":148,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":150,"categoryName":151,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",[153,154,155,105,156,157,158,159,160,161,162,136,163,164,165,166,167],"webapp","testing","webapp testing","applications","local","frontend","debugging","toolkit","logs","browser","playwright","web","behavior","ui","screenshots",{"skillNo":169,"name":170,"nameZh":6,"description":171,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":142,"licenseFileUrl":172,"sourceHtmlUrl":173,"categories":174,"keywords":176,"publishedAt":49},"01M71JV64CW7R6FYYK9JWWGW0X","web-artifacts-builder","Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn\u002Fui). Use for complex artifacts requiring state management, routing, or shadcn\u002Fui components - not for simple single-file HTML\u002FJSX artifacts.","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fweb-artifacts-builder\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fweb-artifacts-builder\u002FSKILL.md",[175],{"categoryNo":150,"categoryName":151,"taxonomyType":21,"taxonomyTypeDesc":22},[177,178,179,164,180,181,182,105,183,184,158,185,107,186,187,188,189,190,191,192],"builder","artifacts builder","artifacts","web artifacts builder","single-file","css","Tailwind","ui components","single","file","components","react","multi","state","routing","state management",{"skillNo":194,"name":195,"nameZh":6,"description":196,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":197,"categories":198,"keywords":200,"publishedAt":49},"01M71JS4X2FRY41DE84DEP06MN","vercel-react-view-transitions","Guide for implementing smooth, native-feeling animations using React's View Transition API (`\u003CViewTransition>` component, `addTransitionType`, and CSS view transition pseudo-elements). Use this skill whenever the user wants to add page transitions, animate route changes, create shared element animations, animate enter\u002Fexit of components, animate list reorder, implement directional (forward\u002Fback) navigation animations, or integrate view transitions in Next.js. Also use when the user mentions view transitions, `startViewTransition`, `ViewTransition`, transition types, or asks about animating between UI states in React without third-party animation libraries.","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fvercel-react-view-transitions\u002FSKILL.md",[199],{"categoryNo":150,"categoryName":151,"taxonomyType":21,"taxonomyTypeDesc":22},[188,201,202,203,204,205,206,207,208,182,209,210,211,212,213,187,40,214,215,216],"vercel react view transitions","view","react view transitions","vercel","transitions","shared","back","Animation","types","states","element","implementing","when","route","create","libraries",{"skillNo":218,"name":219,"nameZh":6,"description":220,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":221,"categories":222,"keywords":224,"publishedAt":49},"01M71JS1WZ1J4F9YVC2203JBJW","vercel-react-native-skills","React Native and Expo best practices for building performant mobile apps. Use when building React Native components, optimizing list performance, implementing animations, or working with native modules. Triggers on tasks involving React Native, Expo, mobile performance, or native platform APIs.","https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fvercel-react-native-skills\u002FSKILL.md",[223],{"categoryNo":150,"categoryName":151,"taxonomyType":21,"taxonomyTypeDesc":22},[204,225,188,226,227,228,229,230,231,105,232,212,233,107,234,235,213,236,237,187],"vercel react native skills","react native","native","react native skills","modules","platform","animations","performance","triggers","react native components","apps","best practices","tasks"]