Vercel Composition Patterns
supabase/supabase
React composition patterns that scale. An agent skill from supabase/supabase.
Assists in the upgrade of an OpenShift Console dynamic plugin to the latest Console SDK version.
$ npx skills add openshift-eng/ai-helpers --skill upgrade-console-sdk -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install openshift-eng/ai-helpers upgrade-console-sdk --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/openshift-eng/ai-helpers.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/console/skills/upgrade-console-sdk .claude/skills/upgrade-console-sdk && 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 "upgrade-console-sdk" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/console/skills/upgrade-console-sdk into .claude/skills/upgrade-console-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "upgrade-console-sdk", 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/openshift-eng/ai-helpers/tree/main/plugins/console/skills/upgrade-console-sdkType 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 openshift-eng/ai-helpers --skill upgrade-console-sdk -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install openshift-eng/ai-helpers upgrade-console-sdk --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/console/skills/upgrade-console-sdk .agents/skills/upgrade-console-sdk && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "upgrade-console-sdk" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/console/skills/upgrade-console-sdk into .agents/skills/upgrade-console-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "upgrade-console-sdk", 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 openshift-eng/ai-helpers --skill upgrade-console-sdk -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install openshift-eng/ai-helpers upgrade-console-sdk --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/console/skills/upgrade-console-sdk .cursor/skills/upgrade-console-sdk && 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 "upgrade-console-sdk" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/console/skills/upgrade-console-sdk into .cursor/skills/upgrade-console-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "upgrade-console-sdk", 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/openshift-eng/ai-helpers.git --path plugins/console/skills/upgrade-console-sdk--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 openshift-eng/ai-helpers --skill upgrade-console-sdk -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install openshift-eng/ai-helpers upgrade-console-sdk --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/console/skills/upgrade-console-sdk .gemini/skills/upgrade-console-sdk && 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 "upgrade-console-sdk" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/console/skills/upgrade-console-sdk into .gemini/skills/upgrade-console-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "upgrade-console-sdk", 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 openshift-eng/ai-helpers upgrade-console-sdkInstalls 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 openshift-eng/ai-helpers --skill upgrade-console-sdk -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/console/skills/upgrade-console-sdk .github/skills/upgrade-console-sdk && 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 "upgrade-console-sdk" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/console/skills/upgrade-console-sdk into .github/skills/upgrade-console-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "upgrade-console-sdk", 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 openshift-eng/ai-helpers --skill upgrade-console-sdk -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install openshift-eng/ai-helpers upgrade-console-sdk --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/console/skills/upgrade-console-sdk .opencode/skills/upgrade-console-sdk && 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 "upgrade-console-sdk" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/console/skills/upgrade-console-sdk into .opencode/skills/upgrade-console-sdk/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "upgrade-console-sdk", 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.
upgrade-console-sdkAssists in the upgrade of an OpenShift Console dynamic plugin to the latest Console SDK version.
Upgrade Console SDK is an agent skill from openshift-eng/ai-helpers. Assists in the upgrade of an OpenShift Console dynamic plugin to the latest Console SDK version.
Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Designed for Claude Code. Requires Node.js, gh CLI, and internet access.
It sits in Development. It works with React. The repository describes itself as: Developer productivity tools for Claude Code & other AI assistants. The licence is Apache-2.0.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a627176. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
Bash(gh api repos/openshift/console/contents/*)Bash(gh api repos/*/releases/tags/*)WebFetch(domain:raw.githubusercontent.com)AskUserQuestionBash(yarn npm info *)Bash(npm info *)From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
yarnghnpmpnpmFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
raw.githubusercontent.comAlso links to:
github.comFrom 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.
Designed for Claude Code. Requires Node.js, gh CLI, and internet access.
From compatibility in the SKILL.md frontmatter.
Upgrade Console SDK loads about 3.6k tokens when it runs. Until then it costs about 29 tokens; SKILL.md has 1,684 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 openshift-eng/ai-helpers at commit a627176, republished under its Apache-2.0 licence (© openshift-eng). 1,684 words, ~3,638 tokens.
.claude/skills/upgrade-console-sdk/SKILL.md (or your agent's skills folder).You are a senior software engineer with expertise in TypeScript, React, and webpack module federation, particularly in the context of OpenShift Console dynamic plugins. Your task is to assist developers in upgrading their Console dynamic plugins to a newer Console SDK version.
# Upgrade a Console plugin from version 4.18 to 4.22
/console:upgrade-console-sdk 4.18 4.22The current-target-version and new-target-version arguments are mandatory -- when not provided, use the AskUserQuestion tool to gather this information from the user.
OpenShift Console is the web-based UI for Red Hat OpenShift Container Platform. It provides cluster management, workload monitoring, and administrative capabilities. Console is built with React and TypeScript, and is designed as an extensible platform that allows dynamic plugins to add functionality without rebuilding or redeploying the console itself.
Dynamic plugins use module federation to load plugin code over the network at runtime. This means:
ConsolePlugin custom resource.console-extensions.json or inline in the bundler configuration file (e.g., webpack.config.ts/rspack.config.ts/rspack.config.mts)) that hook into Console's extension points -- adding pages, navigation items, resource views, dashboard cards, actions, and more.$codeRef entries that point to exposed modules, which are loaded on demand.There are two distributable SDK packages plugins depend on:
| Package | Purpose |
|---|---|
@openshift-console/dynamic-plugin-sdk | Core runtime APIs, types, hooks, and components used by plugins at runtime |
@openshift-console/dynamic-plugin-sdk-webpack | Webpack/Rspack ConsoleRemotePlugin that generates plugin manifests, configures module federation, and manages shared modules |
There is also @openshift-console/dynamic-plugin-sdk-internal which exposes additional Console code but has no backwards compatibility guarantees.
SDK packages follow a semver scheme where the major and minor version indicates the earliest supported OCP Console version, and the patch version indicates the release of that particular package. For example, 4.22.0 is the initial release targeting Console 4.22. Pre-release versions use the format 4.22.0-prerelease.1.
Console provides specific modules (e.g., React, Redux, routing libraries) to plugins at runtime via the Console's share scope. Plugins should list these as devDependencies (not dependencies) since Console supplies them. The exact list and versions change between Console releases -- when Console upgrades a shared module (e.g., React 17 to 18), all plugins must also upgrade to the matching version, since only one version of each singleton module can be loaded at runtime.
Always fetch the SDK README at runtime to get the current shared modules list.
Plugin metadata (consolePlugin object) can be specified in package.json or passed directly to ConsoleRemotePlugin in the bundler configuration file. Key fields:
name -- unique plugin identifier, must match the ConsolePlugin resource name on the cluster (must be a valid DNS subdomain name)version -- semver version of the pluginexposedModules -- map of module names to file paths that can be referenced via $codeRefdependencies -- @console/pluginAPI semver range declaring which Console versions the plugin supports (e.g., "^4.21.0")The following remote sources are the single source of truth for upgrade information. You MUST fetch and read these at runtime -- do NOT rely on memorized or cached data about version-specific changes. If a fetch fails (e.g., a release notes file doesn't exist yet for a pre-release version, or a rate limit is hit), inform the user and proceed with the data you have.
Fetch this file to determine shared modules, SDK version mapping, and PatternFly version compatibility:
https://raw.githubusercontent.com/openshift/console/refs/heads/main/frontend/packages/console-dynamic-plugin-sdk/README.md
Fetch both of these to identify breaking changes, type changes, deprecations, and new features across versions:
https://raw.githubusercontent.com/openshift/console/refs/heads/main/frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-core.mdhttps://raw.githubusercontent.com/openshift/console/refs/heads/main/frontend/packages/console-dynamic-plugin-sdk/CHANGELOG-webpack.mdFetch the release notes for EACH version in the upgrade range (from one version above the current through the target). Release notes document shared module changes, CSS removals, migration guides, and upgrade tips.
Available release notes versions:
!gh api repos/openshift/console/contents/frontend/packages/console-dynamic-plugin-sdk/release-notes --jq '.[].name'
Fetch each relevant version using this URL pattern:
https://raw.githubusercontent.com/openshift/console/refs/heads/main/frontend/packages/console-dynamic-plugin-sdk/release-notes/<version>
The console-plugin-template is the canonical reference for a Console dynamic plugin. Fetch its package.json, tsconfig.json, and rspack.config.ts for correct dependency versions, build configuration, and compiler options:
https://raw.githubusercontent.com/openshift/console-plugin-template/refs/heads/main/package.jsonhttps://raw.githubusercontent.com/openshift/console-plugin-template/refs/heads/main/tsconfig.jsonhttps://raw.githubusercontent.com/openshift/console-plugin-template/refs/heads/main/rspack.config.tsKey patterns to note from the template:
4.21-latest rather than exact versions. Check what dist-tag is current for the target version.consolePlugin.dependencies field uses a semver range like "@console/pluginAPI": "^4.21.0" to declare Console version compatibility.rspack.config.ts is used for 4.23/5.0 and later. In previous verisons, webpack.config.ts is used. Both are supported and migration is discretionary. If migrating to rspack and type: "module" is not set in package.json, the configuration file may need to be named rspack.config.mts to avoid ESM to CJS interop overhead.Follow these steps in order:
package.json to understand current SDK versions, shared module versions, and PatternFly versions.tsconfig.json to check compiler options.console-extensions.json if it exists, to understand extension types in use.Determine which package manager the plugin uses by checking these indicators in order:
packageManager field in package.json -- e.g., "packageManager": "yarn@4.13.0" means Yarn Berry (v4). This is the most reliable signal.yarn.lock -- Yarn (check format to distinguish v1 from Berry)package-lock.json -- npmpnpm-lock.yaml -- pnpm.yarnrc.yml file exists -- indicates Yarn Berry (v2 to v5). Yarn v1 uses .yarnrc (no .yml).Use the detected package manager for ALL dependency operations throughout the upgrade:
| Package Manager | Install | Add/upgrade a dep |
|---|---|---|
| npm | npm install | npm install <pkg>@<version> |
| Yarn Classic (v1) | yarn install | yarn upgrade <pkg>@<version> |
| Yarn Berry (v2, v3, v4, v5) | yarn install | yarn up <pkg>@<version> |
| pnpm | pnpm install | pnpm update <pkg>@<version> |
react.dev/blog/2022/03/08/react-18-upgrade-guide for React 18):
https://raw.githubusercontent.com/facebook/react/refs/heads/main/CHANGELOG.mdhttps://raw.githubusercontent.com/i18next/react-i18next/refs/heads/master/CHANGELOG.mdgh api repos/reduxjs/react-redux/releases/tags/v9.0.0 --jq .body)patternfly-org repo (raw markdown, easier to parse than the website):https://raw.githubusercontent.com/patternfly/patternfly-org/refs/heads/main/packages/documentation-site/patternfly-docs/content/releases/upgrade-guide.mdhttps://raw.githubusercontent.com/patternfly/patternfly-org/refs/heads/main/packages/documentation-site/patternfly-docs/content/releases/release-highlights.mdPresent a clear, versioned upgrade plan to the user that includes:
package.json dependency changes neededreact, react-i18next, react-redux, redux, redux-thunk, etc. Use the plugin template and release notes as the source of truth for correct versions.After the user approves the plan, make the changes:
package.json SDK and shared module versionstsconfig.json if needed (e.g., jsx compiler option)console-extensions.json if extension types changed@console/pluginAPI semver range in plugin metadata (consolePlugin.dependencies) to match the new target version.devDependencies (not dependencies) in the plugin's package.json, since Console provides them at runtime.@types/react must also be updated to match. Major @types/react versions introduce their own breaking changes (e.g., v18 removed implicit children from React.FC). Check the plugin template for the correct @types/react version.@openshift-console/dynamic-plugin-sdk-internal, warn that this package has no backwards compatibility guarantees.© openshift-eng, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in plugins/console/skills/upgrade-console-sdk of openshift-eng/ai-helpers.
Open the folder on GitHubat commit a627176
Upgrade Console SDK 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 |
|---|---|---|---|---|---|---|
| Upgrade Console SDK this skillopenshift-eng/ai-helpers | 120 | — | ~3.6k | Automated safety check: Pass | Apache-2.0 | |
| Vercel Composition Patternssupabase/supabase | 111k | 59 repos | ~726 | Automated safety check: Pass | MIT | |
| Electron Multi-Process ArchitectureiOfficeAI/AionUi | 33k | 1 repos | ~1.8k | Automated safety check: Pass | Apache-2.0 | |
| Nx Generatenomcopter/react-mosaic | 4.8k | 7 repos | ~1.9k | Automated safety check: Pass | Custom licence | |
| @pierre/diffs Code Renderingpierrecomputer/pierre | 6.2k | 2 repos | ~803 | Automated safety check: Pass | Apache-2.0 | |
| OpenTUI Terminal Interfacescline/cline | 70k | — | ~1.9k | Automated safety check: Pass | Apache-2.0 |
supabase/supabase
React composition patterns that scale. An agent skill from supabase/supabase.
iOfficeAI/AionUi
Tells the agent where new code belongs in an Electron multi-process project and which APIs each process may use, with rules for new bridges, services, agents and workers.
nomcopter/react-mosaic
Generate code using nx generators. An agent skill from nomcopter/react-mosaic.
pierrecomputer/pierre
Guides an agent through using @pierre/diffs to render syntax-highlighted files and diffs, and to build editing and review surfaces in React or plain JavaScript.
cline/cline
Helps build terminal user interfaces with OpenTUI using its core imperative API or its React and Solid reconcilers, with references for layout, keyboard, animation and testing.
codeaashu/claude-code
Development conventions and architecture guide for the Claude Code CLI repository.
openshift-eng/ai-helpers
Find and independently validate actionable reliability defects across OpenShift release jobs and presubmits, then export portable issue handoffs.
openshift-eng/ai-helpers
Fetch and address all PR review comments — categorize by priority, make code changes, post replies, and push.
openshift-eng/ai-helpers
Categorize Jira issues into Red Hat Sankey Activity Type categories using MCP Jira tools.
openshift-eng/ai-helpers
Decide whether a GitHub PR has unanswered authorized review comments or new required CI failures worth a follow-up agent.
openshift-eng/ai-helpers
Analyze OpenShift must-gather diagnostic data including cluster operators, pods, nodes, and network components.
openshift-eng/ai-helpers
Schema for the autodl JSON data file produced by payload-analysis for database ingestion — you must use this skill whenever generating the autodl JSON file
Works with
Categories
Assists in the upgrade of an OpenShift Console dynamic plugin to the latest Console SDK version. Upgrade Console SDK is an agent skill from openshift-eng/ai-helpers. Assists in the upgrade of an OpenShift Console dynamic plugin to the latest Console SDK version.
Upgrade Console SDK fits situations like: development work in your project.
Run `npx skills add openshift-eng/ai-helpers --skill upgrade-console-sdk -a claude-code`. Or copy the skill folder (plugins/console/skills/upgrade-console-sdk in openshift-eng/ai-helpers) into .claude/skills/upgrade-console-sdk in your project. Claude Code loads it when a task matches its description.
Run `npx skills add openshift-eng/ai-helpers --skill upgrade-console-sdk -a codex`. Or copy the skill folder (plugins/console/skills/upgrade-console-sdk in openshift-eng/ai-helpers) into .agents/skills/upgrade-console-sdk 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 openshift-eng/ai-helpers --skill upgrade-console-sdk -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/upgrade-console-sdk, .gemini/skills/upgrade-console-sdk, .github/skills/upgrade-console-sdk and .opencode/skills/upgrade-console-sdk in your project.
Going by SKILL.md and its folder, Upgrade Console SDK needs the command-line tools its instructions call (yarn, gh, npm and pnpm). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Bash(gh api repos/openshift/console/contents/*), Bash(gh api repos/*/releases/tags/*), WebFetch(domain:raw.githubusercontent.com), AskUserQuestion, Bash(yarn npm info *), Bash(npm info *). Compatibility (from SKILL.md): Designed for Claude Code. Requires Node.js, gh CLI, and internet access..
SKILL.md names 2 domains. In commands or code: raw.githubusercontent.com; the agent is likely to contact it when it follows the instructions. As links in the text: github.com. 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.
Upgrade Console SDK is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Upgrade Console SDK: Vercel Composition Patterns (supabase/supabase, 111k stars), Electron Multi-Process Architecture (iOfficeAI/AionUi, 33k stars), Nx Generate (nomcopter/react-mosaic, 4.8k stars) and @pierre/diffs Code Rendering (pierrecomputer/pierre, 6.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
openshift-eng (a GitHub organization) maintains it in openshift-eng/ai-helpers, which has 120 GitHub stars. The repository holds 118 skills in this directory. The repository was last updated on October 6, 2026.
Source: openshift-eng/ai-helpers on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.