Monitor CI
nrwl/nx
Monitor Nx Cloud CI pipeline and handle self-healing fixes. An agent skill from nrwl/nx.
Diagnose and recover users stuck on a blank page or endless splash screen because a CDN or browser has pinned a 404 for a boot chunk.
$ npx skills add Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend recovering-poisoned-asset-cache --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/Comfy-Org/ComfyUI_frontend.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/recovering-poisoned-asset-cache .claude/skills/recovering-poisoned-asset-cache && 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 "recovering-poisoned-asset-cache" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/recovering-poisoned-asset-cache into .claude/skills/recovering-poisoned-asset-cache/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recovering-poisoned-asset-cache", 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/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/recovering-poisoned-asset-cacheType 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 Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend recovering-poisoned-asset-cache --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Comfy-Org/ComfyUI_frontend.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/recovering-poisoned-asset-cache .agents/skills/recovering-poisoned-asset-cache && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "recovering-poisoned-asset-cache" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/recovering-poisoned-asset-cache into .agents/skills/recovering-poisoned-asset-cache/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recovering-poisoned-asset-cache", 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 Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend recovering-poisoned-asset-cache --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Comfy-Org/ComfyUI_frontend.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/recovering-poisoned-asset-cache .cursor/skills/recovering-poisoned-asset-cache && 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 "recovering-poisoned-asset-cache" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/recovering-poisoned-asset-cache into .cursor/skills/recovering-poisoned-asset-cache/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recovering-poisoned-asset-cache", 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/Comfy-Org/ComfyUI_frontend.git --path .claude/skills/recovering-poisoned-asset-cache--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 Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend recovering-poisoned-asset-cache --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Comfy-Org/ComfyUI_frontend.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/recovering-poisoned-asset-cache .gemini/skills/recovering-poisoned-asset-cache && 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 "recovering-poisoned-asset-cache" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/recovering-poisoned-asset-cache into .gemini/skills/recovering-poisoned-asset-cache/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recovering-poisoned-asset-cache", 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 Comfy-Org/ComfyUI_frontend recovering-poisoned-asset-cacheInstalls 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 Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Comfy-Org/ComfyUI_frontend.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/recovering-poisoned-asset-cache .github/skills/recovering-poisoned-asset-cache && 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 "recovering-poisoned-asset-cache" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/recovering-poisoned-asset-cache into .github/skills/recovering-poisoned-asset-cache/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recovering-poisoned-asset-cache", 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 Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend recovering-poisoned-asset-cache --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Comfy-Org/ComfyUI_frontend.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/recovering-poisoned-asset-cache .opencode/skills/recovering-poisoned-asset-cache && 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 "recovering-poisoned-asset-cache" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/recovering-poisoned-asset-cache into .opencode/skills/recovering-poisoned-asset-cache/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recovering-poisoned-asset-cache", 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.
recovering-poisoned-asset-cacheDiagnose and recover users stuck on a blank page or endless splash screen because a CDN or browser has pinned a 404 for a boot chunk.
Recovering Poisoned Asset Cache is an agent skill from Comfy-Org/ComfyUI_frontend. Diagnose and recover users stuck on a blank page or endless splash screen because a CDN or browser has pinned a 404 for a boot chunk. Covers confirming the diagnosis, the origin-side fix, the edge purge, and forcing every asset URL to rotate when a redeploy cannot dislodge the cached 404. Use when users report "stuck on splash screen", "spinner forever", "blank page after deploy", a cached 404 on /assets/, or when reloading does not fix a broken app.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in DevOps & Cloud. The repository describes itself as: Official front-end implementation of ComfyUI. The licence is GPL-3.0.
Read from SKILL.md and the folder at commit d53a1c7. 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.
Shell commands in SKILL.md call:
curlpnpmFrom 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:
cloud.comfy.orgAlso links to:
us5.datadoghq.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.
Recovering Poisoned Asset Cache loads about 1.9k tokens when it runs. Until then it costs about 122 tokens; SKILL.md has 832 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 Comfy-Org/ComfyUI_frontend at commit d53a1c7, republished under its GPL-3.0 licence (© Comfy-Org). 832 words, ~1,853 tokens.
.claude/skills/recovering-poisoned-asset-cache/SKILL.md (or your agent's skills folder).A content-hashed chunk 404s. A cache stores that 404. Every client that reads
from that cache is served a broken app, and reloading cannot fix it — the
client is not asking origin, and with immutable it will not revalidate.
This happened as IR-105: nginx stamped Cache-Control: public, max-age=2592000, immutable on 404 responses, Cloudflare honoured it, and rolldown-runtime-*.js
— the module runtime, without which no other chunk can load — was served as a
cached 404 to a subset of users for as long as 30 days.
The same symptom ("stuck on splash / spinner forever") has at least three unrelated causes. Fixing the wrong one wastes an incident.
# 1. Is a boot asset 404ing, and is the 404 itself cached?
curl -sI https://cloud.comfy.org/assets/<chunk>.js | grep -iE 'HTTP/|cache-control|cf-cache-status|age'HTTP/2 404 + cf-cache-status: HIT → poisoned cache. This runbook applies.HTTP/2 404 + cf-cache-status: MISS/BYPASS → origin is genuinely missing
the file. Different problem: check the deploy and the bucket.200 → not this. The app is booting and failing later.
Check for an unregistered route or an auth stall instead; those present
identically and this runbook will not help.# 2. Prove the no-store fix is live, using a path that cannot exist
curl -sI https://cloud.comfy.org/assets/does-not-exist-probe-QQQ.js | grep -iE 'HTTP/|cache-control|cf-cache-status'
# want: 404 + cache-control: no-store + cf-cache-status: BYPASSRun the probe before concluding anything. A single healthy edge node is a sample of one — it does not prove other colos are clean.
Fixing one layer does not fix the others. Work down the list.
| Layer | Fix | Reaches |
|---|---|---|
| Origin emits cacheable 404s | nginx no-store on 4xx/5xx for asset locations (Comfy-Org/cloud#6472) | New poisonings only |
| Edge holds poisoned entries | Cloudflare purge of the specific URLs | New users hitting that colo |
| Client has it pinned | Nothing origin-side reaches them | Only a URL change does |
That last row is the one people miss. A user whose browser holds
max-age=2592000, immutable for a 404 is unreachable by any server-side action.
The instinct is "ship a new build, the hashes change". Measured, and it is false for exactly the chunks that matter. Two cloud builds of this repo differing only in commit hash:
rolldown-runtime, vendor-datadog, vendor-sentry, vendor-vue-core
kept byte-identical filenamesA content hash tracks content. Vendor chunks are leaves whose content comes from
node_modules, which a commit does not change. App chunks rotate because the
import specifiers inside them changed — that cascade never reaches the leaves.
So a redeploy leaves the poisoned vendor URLs exactly where they were.
In production, set the ASSET_CACHE_BUST repository variable on
Comfy-Org/ComfyUI_frontend (Settings → Secrets and variables → Actions →
Variables) to today's date, e.g. 20260818. Then deploy as normal.
A repo variable rather than a one-off build input is the whole point: the salt has to apply to every subsequent build, not just the recovery one. A manual one-shot build would fix the incident and then the next routine deploy would revert every filename to the poisoned names.
cloud-dispatch-build.yaml reads the variable into the frontend-asset-build
dispatch payload as asset_cache_bust; frontend-asset-predeploy.yml in
Comfy-Org/cloud passes it to both pnpm build invocations. Unset, the
payload field is empty and the build is byte-identical to today's.
Locally, or for a manual verification build:
ASSET_CACHE_BUST=20260818 pnpm build:cloudASSET_CACHE_BUST inserts its value into every emitted asset filename:
assets/rolldown-runtime-xtsTai4I.js -> assets/rolldown-runtime-cb20260818-xtsTai4I.jsVerified: 495 of 495 hashed JS/CSS assets get a new URL, index.html is
rewritten to match, and unset behaviour is byte-identical to today's build.
Non-hashed static files (favicon.ico, images/, CREDIT.txt,
sorted-custom-node-map.json) do not carry hashes and are unaffected — if one
of those is the poisoned file, this will not help it.
Use a date (20260818) rather than a counter. It is self-describing in a URL
six months later and cannot collide.
Only ever increment ASSET_CACHE_BUST. Never clear it, and never delete the
repository variable.
Clearing it reverts every filename to exactly the names that were poisoned, and any client still holding those entries breaks again — with no new deploy to blame. Treat it as a permanent, monotonic deploy variable: once set, it stays set, and the next incident bumps it.
This is the failure mode to watch for during a repo-settings cleanup: the variable looks like leftover incident debris precisely when it is doing its job.
The salt changes the filename, not the content hash — xtsTai4I above is
unchanged. That is deliberate and sufficient: caches key on URL.
# New URLs are live and cacheable as 200s
curl -sI https://cloud.comfy.org/assets/rolldown-runtime-cb<salt>-<hash>.js | grep -iE 'HTTP/|cache-control'
# The old poisoned URL is gone from index.html
curl -s https://cloud.comfy.org/ | grep -oE 'assets/[^"]+\.js'Then confirm in RUM that the failure actually stopped, rather than assuming:
@type:error @application.id:041a9897-5516-4b1f-a245-1a9aa6895488 @context.error_type:*Dashboard: https://us5.datadoghq.com/dashboard/u9c-dtd-ui6
Note the ceiling on what RUM can tell you here: if a boot chunk 404s, no
JavaScript executes, so no in-app reporter ever fires. A flat error chart is
not evidence the cached-404 failure stopped — it is what that failure looks
like. Confirm from the server side (404 rate on /assets/*) instead.
no-store fix covers /assets/* but not /extensions/*.
/extensions/core/clipspace.js still 404s as public, max-age=14400 and
re-caches after every purge. Shorter TTL and not immutable, so it
self-heals in ~4h — but it is uncovered.© Comfy-Org, GPL-3.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 .claude/skills/recovering-poisoned-asset-cache of Comfy-Org/ComfyUI_frontend.
Open the folder on GitHubat commit d53a1c7
Recovering Poisoned Asset Cache 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 |
|---|---|---|---|---|---|---|
| Recovering Poisoned Asset Cache this skillComfy-Org/ComfyUI_frontend | 2.1k | — | ~1.9k | Automated safety check: Pass | GPL-3.0 | |
| Monitor CInrwl/nx | 29k | 6 repos | ~4.7k | Automated safety check: Pass | MIT | |
| Terraform and OpenTofu Guideagentscope-ai/QwenPaw | 36k | 6 repos | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Vercel Optimize Auditvercel-labs/agent-skills | 32k | 8 repos | ~4.3k | Automated safety check: Pass | None | |
| Analyze GitHub Action Logswithastro/astro | 63k | 1 repos | ~1.3k | Automated safety check: Pass | Custom licence | |
| Openclaw Live Updateropenclaw/openclaw | 392k | — | ~3.7k | Automated safety check: Pass | MIT |
nrwl/nx
Monitor Nx Cloud CI pipeline and handle self-healing fixes. An agent skill from nrwl/nx.
agentscope-ai/QwenPaw
Guidance for writing and testing Terraform and OpenTofu code: module structure, naming, test approaches, CI/CD workflows, state handling and security scanning.
vercel-labs/agent-skills
Runs a metrics-first audit of a deployed Vercel project, gating investigations on real signals to produce ranked, citation-backed cost and performance recommendations.
withastro/astro
Analyze recent GitHub Actions workflow runs to identify patterns, mistakes, and improvements.
openclaw/openclaw
Maintain the canonical live OpenClaw main checkout, macOS LaunchAgent-managed Gateway, local macOS app, exact-head main CI, and recurring full release validation.
netdata/netdata
Use only when the user explicitly asks to build, run, preview, inspect, or validate learn.netdata.cloud locally using the contents of a PR or documentation branch before merge.
Comfy-Org/ComfyUI_frontend
Adds deprecation warnings for renamed or removed properties/APIs.
Comfy-Org/ComfyUI_frontend
Replay recorded agent conversations as Playwright tests against the real chat panel and canvas.
Comfy-Org/ComfyUI_frontend
Transforms raw Playwright codegen output into ComfyUI convention-compliant tests.
Comfy-Org/ComfyUI_frontend
Dispatches the comment-sicko subagent to hunt gratuitous comments in a PR/diff, triages its raw findings, and posts a polite, professional writeup.
Comfy-Org/ComfyUI_frontend
Diagnoses and fixes flaky Playwright e2e tests by replacing race-prone patterns with retry-safe alternatives.
Comfy-Org/ComfyUI_frontend
Ships performance fixes with CI-proven improvement using stacked PRs.
Categories
Diagnose and recover users stuck on a blank page or endless splash screen because a CDN or browser has pinned a 404 for a boot chunk. Recovering Poisoned Asset Cache is an agent skill from Comfy-Org/ComfyUI_frontend. Diagnose and recover users stuck on a blank page or endless splash screen because a CDN or browser has pinned a 404 for a boot chunk.
Recovering Poisoned Asset Cache fits situations like: users report stuck on splash screen; spinner forever; blank page after deploy; A cached 404 on /assets/.
Run `npx skills add Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a claude-code`. Or copy the skill folder (.claude/skills/recovering-poisoned-asset-cache in Comfy-Org/ComfyUI_frontend) into .claude/skills/recovering-poisoned-asset-cache in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a codex`. Or copy the skill folder (.claude/skills/recovering-poisoned-asset-cache in Comfy-Org/ComfyUI_frontend) into .agents/skills/recovering-poisoned-asset-cache 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 Comfy-Org/ComfyUI_frontend --skill recovering-poisoned-asset-cache -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/recovering-poisoned-asset-cache, .gemini/skills/recovering-poisoned-asset-cache, .github/skills/recovering-poisoned-asset-cache and .opencode/skills/recovering-poisoned-asset-cache in your project.
Going by SKILL.md and its folder, Recovering Poisoned Asset Cache needs the command-line tools its instructions call (curl and pnpm).
SKILL.md names 2 domains. In commands or code: cloud.comfy.org; the agent is likely to contact it when it follows the instructions. As links in the text: us5.datadoghq.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.
Recovering Poisoned Asset Cache is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.4k 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 Recovering Poisoned Asset Cache: Monitor CI (nrwl/nx, 29k stars), Terraform and OpenTofu Guide (agentscope-ai/QwenPaw, 36k stars), Vercel Optimize Audit (vercel-labs/agent-skills, 32k stars) and Analyze GitHub Action Logs (withastro/astro, 63k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Comfy-Org (a GitHub organization) maintains it in Comfy-Org/ComfyUI_frontend, which has 2,060 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 11, 2026.
Source: Comfy-Org/ComfyUI_frontend on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.