Reusable skills for Claude Code, Codex, Cursor, and similar agent environments.
Each folder is a self-contained workflow with a SKILL.md, optional supporting scripts, and a focused trigger description so an agent can pick the right tool quickly.
Use the most specific skill that matches the job. When a workflow spans multiple stages, start with the orchestrator skill, then hand off to the atomic skill for the active stage.
| User intent | Start with | Hand off to |
|---|---|---|
| Download, transform, transcribe, thumbnail, or publish media end-to-end | media-transform | download-*, transcribe-anything, thumbnail-extraction, youtube-* |
| Download a video from a page, X/Twitter, or Zoom | download-video, download-x-video, or zoom-download | media-transform if more stages follow |
| Upload many submitted talks from Airtable/local files to YouTube Studio | youtube-studio-batch-upload | youtube-studio-computer-use for post-upload Studio cleanup |
| Edit existing YouTube Studio videos, thumbnails, playlists, visibility, or schedules through Chrome | youtube-studio-computer-use | youtube-api if API credentials exist and the task is API-friendly |
| Use the YouTube Data API for metadata, thumbnails, uploads, or channel listing | youtube-api | youtube-studio-computer-use for Studio-only states |
| Build a full YouTube operations bot with raw API access, Slack approvals, playlists, comments, live operations, and change-impact analytics | youtube-channel-operator | slackbot-builder, data-chatbots, then youtube-api or youtube-studio-computer-use |
| Redesign or reskin an app through generated visual directions and matched implementation screenshots | design-apps-with-imagegen | The project-specific frontend skill after the visual direction and prototype are proven |
| Build conference schedule, speaker, or developer data surfaces | schedule-design, conference-developer-endpoints, or europe-developer-api | accelevents-* or sync-accelevents when syncing source systems |
| Harden a software repo | codebase-maintainability-guardrails for defaults, then antislop-codebase for larger cleanup | productionize-*, security-*, observability-*, release-*, test-* |
| Design, debug, migrate, cache, or deploy a production system on Cloudflare | cloudflare-production-builder | Product-specific skills after the Cloudflare durability, storage, security, and release boundaries are settled |
| Build a structured-data chatbot or Slack bot | data-chatbots or slackbot-builder | app-ux-paradigms for interaction details |
| Protect usernames and public handles from route collisions, squatting, or impersonation | reserved-handle-policy | security-hardening when broader auth or permission review is needed |
| Write, revise, verify, or publish an individual technical devblog | ai-devblog | blog-system-design only when shared presentation infrastructure must change |
| Create or redesign a technical blog index, post shell, navigation, search, typography, or reusable components | blog-system-design | ai-devblog for individual article content |
- Prefer API skills for stable, supported bulk operations; prefer Computer Use skills for authenticated browser states, Studio-only controls, file pickers, disabled buttons, and save verification.
- Keep source acquisition, metadata staging, and upload ledgers in batch/upload skills. Keep existing-video cleanup, thumbnails, scheduling, playlist fixes, and save recovery in
youtube-studio-computer-use. - Treat status, reviewer, and operations fields as private by default. Public descriptions should use submitted abstracts, bios, company/project links, and social links entered for publication.
- Do not physically reorganize skill folders into categories unless every target agent loader supports nested skill discovery. The top-level
folder/SKILL.mdlayout is intentional.
Use these skills as a hardening progression: prevent new slop, harden the existing codebase as-is, add product services, then tighten safety, operability, and quality gates.
|
|
Foundation
Productization
Safety
Operability
Quality
|
- align-me — pauses before a long autonomous run to surface material ambiguities as numbered, lettered choices with concrete tradeoffs, recommendations, and an
approve allpath. - new-mac-setup — opinionated Apple Silicon Mac bootstrap for fullstack and AI work. Installs Homebrew, shell tooling, editors, AI tools, terminal setup, and macOS defaults in a repeatable run order.
- cloudflare-production-builder — chooses among Workers, Pages, Workflows, Queues, Durable Objects, D1, R2, KV, Cache API, alarms, and Cron; then applies durable handoffs, safe caching, migration discipline, multi-tenant boundaries, observability, and live production verification.
- claude-session-introspect — inspects Claude Code session JSONL files at
~/.claude/projects/for token totals, prompt counts, assistant turns, tool calls, compaction boundaries, and compaction summaries. - deep-trajectory-analysis — reconstructs paired agent, game, or policy trajectories from exact shared pre-states, connects aggregate effects to first-divergence evidence, and validates machine-readable causal reports before promotion decisions.
- design-apps-with-imagegen — audits an existing interface, generates several visual directions, prototypes beside the live product, compares matched responsive screenshots, and integrates only after behavior and visual deltas are verified.
- smart-entity-resolution — resolves named people or organizations in messy databases with aliases, duplicates, sparse records, common names, LLM retrieval repair, reranking, and visible runner-up candidates.
- autoreview — runs structured closeout code review with a selected helper, verifies accepted findings, reruns focused tests, and stops only when no actionable findings remain.
- public-qa-chatbot — builds unauthenticated public Q&A chatbot widgets with rate limits, origin/input hardening, semantic caching, observability, streaming UX, and robust chat scroll behavior.
- slackbot-builder — builds production Slack bots with signed Events API handlers, causal shared-thread sessions, per-thread serialization, stateful routing and owned-resource resolution, state-aware Block Kit approvals, durable execution for slow agent work, guaranteed result-or-error delivery, and structured observability.
- sync-url-navigation — syncs URL query params with app navigation, tabs, and filter state so views are bookmarkable and shareable (
view,table,q, deep links,popstate). - app-ux-paradigms — standard web UX defaults: Esc/backdrop/× for modals, ⌘/Ctrl shortcuts, form save states, tables, menus, and help text for discoverable interactions.
- data-chatbots — copilots over structured data that propose mutations (draft → Apply), not direct writes: prompting, validator allowlists, session memory with DRAFT/APPLIED/IGNORED, version-stale UX, and test matrices.
- reserved-handle-policy — designs and implements two-tier public username protection with hard platform reservations, administrator-reviewed claims, separator-confusable matching, a source-attributed registry of common names and notable identities, and signup/rename/admin test guidance.
AI DevRel is the end-to-end publication bundle: capture technical work, acquire and transform source media, extract the useful story, publish dense written and video explanations, operate distribution channels, and measure what changed. Start with the orchestrator for a multi-stage job, then route each stage to the narrowest atomic skill.
- ai-devblog — decides whether technical work merits a post, develops an evidence-fit angle, writes a structured Simplified-Technical-English-inspired article, builds purposeful article-specific explanations, and carries the post through rendered verification and publication.
- blog-system-design — designs dense technical blog systems: index and section pages, compact typography, full-text
/search, resizable article index rails, responsive floating TOCs, reusable explanatory components, and information-dense media policy.
- media-transform — orchestrates video pipelines across download, upload, transcription, chapters, thumbnails, and title testing by routing to the right atomic skill for each stage.
- download-video — downloads embedded videos from web pages by resolving the real player URL and calling
yt-dlpwith the right referer/origin headers. - download-x-video — downloads X/Twitter post videos with
yt-dlp, including HLS streams and reliable final-path detection. - zoom-download — downloads Zoom cloud recordings, verifies filenames/file types, and supports ffmpeg-based content analysis.
- transcribe-anything — transcribes audio and video files using pluggable ASR backends including local Whisper, whisperX, faster-whisper, OpenAI, Groq, Deepgram, AssemblyAI, Gemini, and Hugging Face models.
- conference-transcribe — splits long conference livestreams or YouTube videos into per-talk transcripts using chapter timestamps, segment transcription, and LLM cleanup.
- multimodal-extraction — turns local videos or video URLs into Markdown timelines with slide screenshots, key frames, and transcript spans aligned by timestamp.
- summarize-anything — recursively summarizes long text with pluggable LLM backends and can emit executive summaries, YouTube descriptions, chapters, posts, titles, thumbnail prompts, blog outlines, and pull quotes.
- podcast-publishing-assistant — turns podcasts, interviews, panels, and long-form audio/video into transcripts, summaries, chapter markers, show notes, titles, descriptions, and promo copy.
- youtube-channel-operator — designs full-power multi-channel YouTube operators with typed Data/Analytics/Reporting/Live API access, transcript-derived viewer packages, paid-versus-organic analysis, guided Slack approvals, exact-channel OAuth isolation, immutable external-action audit, Studio-only handoffs, and post-change measurement.
- youtube-api — manages YouTube videos programmatically through the YouTube Data API v3, including uploads, thumbnails, metadata updates, and channel video listing.
- youtube-publish — publishes videos on YouTube, edits titles/descriptions/timestamps, assigns playlists, and manages YouTube Studio metadata workflows.
- youtube-studio-batch-upload — batches YouTube Studio uploads from Airtable or local video submissions, with source download recovery, metadata staging, unlisted visibility, playlist tagging, save verification, and blocked-row reporting.
- youtube-studio-computer-use — automates live YouTube Studio cleanup through Chrome/Computer Use: thumbnails, schedules, playlist fixes, visibility, save-state recovery, and DOM-assisted edit pages.
- youtube-thumbnails — creates AI-generated YouTube thumbnails with prompt engineering, image generation, compression, and upload guidance.
- thumbnail-extraction — extracts interesting video frames, face crops, presentation slides, and transparent cutouts for thumbnail compositing.
- twitter-x-scraping — scrapes public Twitter/X profile and list timelines through Nitter-compatible mirror HTML, with cursor pagination, raw JSON persistence, and anti-bot fallback guidance. Does not treat public mirrors as a reliable source for a user's following graph.
- accelevents-api — reads and updates AI Engineer Europe speaker records through the Accelevents REST API while preserving full speaker payloads.
- accelevents-speaker-sync — syncs website speaker, session, schedule, room, track, and headshot changes back to Accelevents for AI Engineer Europe.
- conference-developer-endpoints — adds and reviews developer-facing conference endpoints such as
llms.txt,sessions.json,speakers.json, and MCP routes. - europe-developer-api — works with AI Engineer Europe developer endpoints, public schedule JSON, speakers JSON, MCP access, and the local
aiengCLI. - schedule-design — builds polished conference schedule views with React grids, filters, modals, favorites, sticky layouts, and normalized data.
- sync-accelevents — pulls Accelevents speaker headshots, social data, bios, and schedule metadata into local conference source data.
- testing-schedule-preview — tests the AI Engineer Europe internal Bun schedule preview and public schedule page workflows.
- web-animation-perf — debugs jank, layout thrash, and drift in JS-driven CSS animation across AI Engineer conference sites.
- One skill per top-level folder.
- Every skill must include
SKILL.md. - Add scripts only when they make the workflow more reliable or repeatable.
- Keep auxiliary docs minimal; the skill body should carry the agent-facing workflow.
Click into each folder for the detailed workflow, prerequisites, and command examples.
Clone this repo, then point Cursor at it with one symlink for the whole directory (recommended):
git clone git@github.com:swyxio/skills.git ~/Work/skills # or any path you prefer
rm -rf ~/.cursor/skills # only if replacing an old per-skill layout
ln -sf ~/Work/skills ~/.cursor/skillsCursor loads each skill subfolder that contains SKILL.md. git pull in ~/Work/skills updates every skill agents see — no per-skill symlinks to add after a new commit.
Optional: link only the skills you use (omit rm above; symlink into an existing ~/.cursor/skills/ folder):
ln -sf ~/Work/skills/data-chatbots ~/.cursor/skills/data-chatbotsDo not copy SKILL.md files into ~/.cursor/skills/; always symlink to this repo.
Note: Cursor’s built-in skills live separately at ~/.cursor/skills-cursor/ — leave that alone.