Vercel Composition Patterns
supabase/supabase
React composition patterns that scale. An agent skill from supabase/supabase.
Turn coding, debugging, research, architecture, migration, deployment, or product work into a clear, evidence-backed technical post in an existing publishing system.
$ npx skills add swyxio/skills --skill ai-devblog -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install swyxio/skills ai-devblog --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/swyxio/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/ai-devblog .claude/skills/ai-devblog && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "ai-devblog" agent skill from https://github.com/swyxio/skills/tree/main/ai-devblog into .claude/skills/ai-devblog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ai-devblog", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/swyxio/skills/tree/main/ai-devblogType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add swyxio/skills --skill ai-devblog -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install swyxio/skills ai-devblog --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swyxio/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/ai-devblog .agents/skills/ai-devblog && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ai-devblog" agent skill from https://github.com/swyxio/skills/tree/main/ai-devblog into .agents/skills/ai-devblog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ai-devblog", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add swyxio/skills --skill ai-devblog -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install swyxio/skills ai-devblog --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swyxio/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/ai-devblog .cursor/skills/ai-devblog && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ai-devblog" agent skill from https://github.com/swyxio/skills/tree/main/ai-devblog into .cursor/skills/ai-devblog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ai-devblog", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/swyxio/skills.git --path ai-devblog--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add swyxio/skills --skill ai-devblog -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install swyxio/skills ai-devblog --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swyxio/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/ai-devblog .gemini/skills/ai-devblog && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ai-devblog" agent skill from https://github.com/swyxio/skills/tree/main/ai-devblog into .gemini/skills/ai-devblog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ai-devblog", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install swyxio/skills ai-devblogInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add swyxio/skills --skill ai-devblog -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/swyxio/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/ai-devblog .github/skills/ai-devblog && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ai-devblog" agent skill from https://github.com/swyxio/skills/tree/main/ai-devblog into .github/skills/ai-devblog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ai-devblog", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add swyxio/skills --skill ai-devblog -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install swyxio/skills ai-devblog --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/swyxio/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/ai-devblog .opencode/skills/ai-devblog && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ai-devblog" agent skill from https://github.com/swyxio/skills/tree/main/ai-devblog into .opencode/skills/ai-devblog/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ai-devblog", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ai-devblogTurn coding, debugging, research, architecture, migration, deployment, or product work into a clear, evidence-backed technical post in an existing publishing system.
AI Devblog is an agent skill from swyxio/skills. Turn coding, debugging, research, architecture, migration, deployment, or product work into a clear, evidence-backed technical post in an existing publishing system. Use when an agent should reconstruct primary evidence, decide whether the material deserves a note or article, align on the intended reader, choose among field-report, explainer, reversal, origin-story, hands-on, or evidence-led argument forms, write and edit the piece, inspect its rendered presentation, and publish it at the requested visibility…
Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including reference files and assets (for example `agents/openai.yaml`, `references/angle-review.md` and `references/publishing-checklist.md`).
It sits in Development. The repository describes itself as: Agent skills for Claude Code and other AI agents. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 038ef34. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
AI Devblog loads about 3.2k tokens when it runs, and up to ~9.5k if it reads all its reference files. Until then it costs about 149 tokens; SKILL.md has 1,772 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from swyxio/skills at commit 038ef34, republished under its MIT licence (© swyxio). 1,772 words, ~3,238 tokens.
.claude/skills/ai-devblog/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Write a technical story that changes what a particular reader understands, believes, or can do. Keep the empirical honesty of a good engineering report, but make comprehension and human interest the organizing priorities.
Use this order of attention:
route the genre → align with the reader → choose the angle → explain → support with evidence → edit → cold-read → present → publish
Apply swyx-writing as the shared voice and editing layer. For substantial
public technical writing, read its
technical-writer influences
and the story modes before proposing an angle.
Apply research-grounded-writing when the post requires external research or
source-backed claims.
Use blog-system-design with this skill when the task changes the shared blog
index, taxonomy, article shell, typography, navigation, search, responsive
behavior, or reusable components. A post must not silently redesign its
publication.
First decide whether a devblog is the right container:
ai-readme when available.Apply an interestingness gate. A shipped capability alone is not enough. The material needs at least one reader payoff: a non-obvious finding, consequential decision, useful technique, measurable result, corrected belief, surprising failure, illuminating mechanism, or reusable model. Recommend a smaller form when the work does not earn a post.
Choose one primary story mode:
A post may borrow a secondary move, but do not turn every available fact into an omnibus article. See story modes for structures, title families, and Dan Luu/Fly.io-inspired angle prompts.
Choose a weight that fits the idea:
These are editing signals, not quotas. Never inflate a useful note or compress a mechanism until it no longer makes sense.
Before a standard or feature post, determine what the skill user expects the
reader to be, know, and want. If this is not already explicit, ask
one compact batch in the align-me shape:
Reply approve all to accept 1A, 2B, 3A, or give changes such as 2C. Then wait.Use the reader-and-angle checkpoint for the exact questions. Default to a smart adjacent engineer who knows the domain but not the project and wants a useful mental model or decision. Do not ask what the user has already answered. For a short note with an obvious readership, state the inferred assumptions briefly and proceed.
Then write privately:
For a standard or feature post, offer two or three genuinely different angles unless only one honest angle exists. Keep each option compact: title, promise, and tradeoff. Recommend one and wait. Never hide a single thesis behind cosmetic title variants.
Apply research-grounded-writing for general source selection, attribution,
uncertainty, and claim verification. For a technical field report, also
reconstruct the work itself:
Distinguish what this agent observed from repository history, another agent's work, human decisions, and inference. Attribute material ideas and firsthand observations. Do not invent motives, reactions, or a first-person experience.
When coding-agent threads exist, use them to recover the real prompt, surprise, failed assumption, and decision sequence. Match a thread by commit, file, command, and timestamp before using keyword similarity. Private threads may inform causality, but quote or screenshot them only after checking disclosure, secrets, identities, private paths, customer data, and internal architecture.
Do not promote a green build, HTTP 200, commit, upload, or public URL into proof of a different claim. Match numeric precision to the decision: round human durations and measurements unless extra precision changes the conclusion.
Treat the title and deck as one honest promise. Choose the family that fits the story: result, stance, reversal, distinction, paradox, mechanism, imperative, question, or origin. Between the title, deck, and first paragraph, name the central subject and stakes plainly.
If the post is about a Program Database, say Program Database. If it is about
SQLite, a product failure, a commercial interest, or a controversial
recommendation, say that. Do not bury the lede behind an abstract principle or
mystery hook. Cleverness may sharpen a clear subject; it may not conceal one.
Open according to the mode:
Name the system and why it matters by the end of the first paragraph. State the bottom line by the third. Label proposals and unshipped plans explicitly.
Follow the destination's existing front matter, author, avatar, and AI assistance conventions. Do not invent a persona or add a new metadata model for one post. Use a real publication date and a few durable, specific tags.
Default to a smart adjacent engineer. Declare at most three concepts the post may assume. Define project-specific nouns on first use and give plain behavior before an abbreviation or formal term. A link may deepen an explanation; it cannot replace one.
When the mechanism is unfamiliar or the draft makes a causal jump, use as many of these rungs as the reader needs:
The first three are the usual minimum. Skip a later rung when it does not help the intended reader. Prefer one recurring request, row, trace, failure, or fixture that gains detail over several disconnected examples. Before a command, code excerpt, table, transcript, or screenshot, tell the reader what question it answers; afterward, interpret what matters.
While outlining a mechanism, ask: What should the reader be able to see that is hard to understand from sentences? Plan the representation alongside the explanation, using the visual-language reference. Do not postpone this decision until presentation polish.
Build a private causal outline that connects the starting condition, mechanism, consequence, evidence, objection, and limitation. Let the selected story mode determine the public section order. Add a heading when the argument turns, not because a fixed number of paragraphs elapsed.
Use small exact code excerpts, focused diffs, authentic screenshots, commands, measured comparisons, and brief quotations only when they advance the chosen angle. Give readers prerequisites, expected results, and safe cleanup when reproducibility is part of the value. Never dump a full transcript or implementation inventory into the story merely because it exists.
Use a visual when it makes an important relationship easier to inspect or understand. Plan it around timing, topology, data movement, state or a comparison—not decoration. Tables and numbered text boxes are not substitutes for showing those relationships. Separate static explanation, interactive exploration and assessment; rejecting low-value controls is not a reason to omit a useful static diagram. Before producing or reviewing article visuals, read the visual-language reference. Generated pixels may illustrate an idea but never establish technical evidence. Keep the central claim available in accessible text.
Run the three passes in swyx-writing. During the developmental pass, also
check the selected story mode, angle, deliberate omissions, title/deck promise,
and interestingness gate. During the explanatory pass, check whether a central
technical relationship remains buried in prose and whether each visual reveals
it. Factual verification remains a separate evidence check.
Then run a mandatory context-isolated cold read for every standard or feature post. Give a fresh subagent or uninvolved reader only the draft and public links—not the task thread, repository history, intended thesis, or angle notes. Ask:
Compare the answers with the approved reader beliefs. If the cold reader misses the subject, thesis, mechanism, or evidence limit, revise and repeat. Fix the post; do not coach the reviewer. Use the same check in abbreviated form for a note when confusion risk is high.
Remove secrets, credentials, private headers, personal data, customer identifiers, private paths, and inaccessible links from prose and media. Distinguish inference from observation. Respect an explicit public or internal visibility choice; default to public only when the evidence is safe for the open web.
When the user asks for a finished post, default to carrying it through preview, commit, push, deployment, and final URL verification unless they request a draft-only or preview-only handoff. State that intended endpoint in the first progress update so the user can narrow it. Follow repository instructions and read the publishing checklist before publication work.
Report source creation, commit, push or merge, deployment, and live verification as separate facts. Never call a preview, build, health check, or URL alone proof that the article's technical claim is true.
© swyxio, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (references, assets) in ai-devblog of swyxio/skills.
Open the folder on GitHubat commit 038ef34
AI Devblog next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| AI Devblog this skillswyxio/skills | 175 | — | ~3.2k | Automated safety check: Pass | MIT | |
| Vercel Composition Patternssupabase/supabase | 111k | 58 repos | ~726 | Automated safety check: Pass | MIT | |
| Finishing a Development Branchobra/superpowers | 297k | 5 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Typescript Advanced Typesrolling-scopes/rsschool-app | 10k | 25 repos | ~4.2k | Automated safety check: Pass | MPL-2.0 | |
| PR Babysitteropeninterpreter/openinterpreter | 69k | 3 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Code Review ChecklistshareAI-lab/learn-claude-code | 78k | 5 repos | ~1.1k | Automated safety check: Pass | MIT |
supabase/supabase
React composition patterns that scale. An agent skill from supabase/supabase.
obra/superpowers
Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.
rolling-scopes/rsschool-app
Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
shareAI-lab/learn-claude-code
Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.
onyx-dot-app/onyx
Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.
swyxio/skills
Run a selected coding-agent CLI programmatically, with latency, error, usage, cost, and trace logging.
swyxio/skills
Design, implement, audit, or refresh protected username and handle namespaces for public products.
swyxio/skills
Fully automated new Mac setup for fullstack web developers and AI engineers.
swyxio/skills
Manage YouTube videos programmatically via the YouTube Data API v3 — upload video files, upload custom thumbnails, update video metadata (titles, descriptions, tags), and query video/channel info…
swyxio/skills
Batch YouTube Studio upload workflow for videos sourced from Airtable, Google Drive, Loom, YouTube, or local files.
swyxio/skills
Reconstruct and visually analyze paired agent, game, or policy trajectories to determine whether changed actions produced their intended effects.
Categories
Turn coding, debugging, research, architecture, migration, deployment, or product work into a clear, evidence-backed technical post in an existing publishing system. AI Devblog is an agent skill from swyxio/skills. Turn coding, debugging, research, architecture, migration, deployment, or product work into a clear, evidence-backed technical post in an existing publishing system.
AI Devblog fits situations like: an agent should reconstruct primary evidence; decide whether the material deserves a note; align on the intended reader; choose among field-report.
Run `npx skills add swyxio/skills --skill ai-devblog -a claude-code`. Or copy the skill folder (ai-devblog in swyxio/skills) into .claude/skills/ai-devblog in your project. Claude Code loads it when a task matches its description.
Run `npx skills add swyxio/skills --skill ai-devblog -a codex`. Or copy the skill folder (ai-devblog in swyxio/skills) into .agents/skills/ai-devblog in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add swyxio/skills --skill ai-devblog -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ai-devblog, .gemini/skills/ai-devblog, .github/skills/ai-devblog and .opencode/skills/ai-devblog in your project.
SKILL.md names no scripts, command-line tools or credentials: AI Devblog is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
AI Devblog is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with AI Devblog: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 297k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
swyxio (a GitHub user) maintains it in swyxio/skills, which has 175 GitHub stars. The repository holds 89 skills in this directory. The repository was last updated on October 5, 2026.
Source: swyxio/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.