Testing
kortix-ai/suna
A skill your agent uses for every Kortix test task, behavior change, bug fix, refactor, API route change, CLI change, SDK change, browser journey, test failure, coverage question, local benchmark…
Bug fix workflow that proves test validity with a red-then-green CI sequence.
$ npx skills add Comfy-Org/ComfyUI_frontend --skill red-green-fix -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend red-green-fix --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/red-green-fix .claude/skills/red-green-fix && 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 "red-green-fix" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/red-green-fix into .claude/skills/red-green-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "red-green-fix", 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/red-green-fixType 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 red-green-fix -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend red-green-fix --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/red-green-fix .agents/skills/red-green-fix && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "red-green-fix" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/red-green-fix into .agents/skills/red-green-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "red-green-fix", 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 red-green-fix -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend red-green-fix --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/red-green-fix .cursor/skills/red-green-fix && 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 "red-green-fix" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/red-green-fix into .cursor/skills/red-green-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "red-green-fix", 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/red-green-fix--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 red-green-fix -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Comfy-Org/ComfyUI_frontend red-green-fix --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/red-green-fix .gemini/skills/red-green-fix && 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 "red-green-fix" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/red-green-fix into .gemini/skills/red-green-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "red-green-fix", 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 red-green-fixInstalls 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 red-green-fix -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/red-green-fix .github/skills/red-green-fix && 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 "red-green-fix" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/red-green-fix into .github/skills/red-green-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "red-green-fix", 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 red-green-fix -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 red-green-fix --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/red-green-fix .opencode/skills/red-green-fix && 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 "red-green-fix" agent skill from https://github.com/Comfy-Org/ComfyUI_frontend/tree/main/.claude/skills/red-green-fix into .opencode/skills/red-green-fix/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "red-green-fix", 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.
red-green-fixBug fix workflow that proves test validity with a red-then-green CI sequence.
Red Green Fix is an agent skill from Comfy-Org/ComfyUI_frontend. Bug fix workflow that proves test validity with a red-then-green CI sequence. Commits a failing test first (CI red), then the minimal fix (CI green). Use when fixing a bug, writing a regression test, or when asked to prove a fix works.
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `reference/testing-anti-patterns.md`).
It sits in Testing & QA, covering Failing and flaky tests, Debugging and Test-driven development. It works with Playwright. The repository describes itself as: Official front-end implementation of ComfyUI. The licence is GPL-3.0.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a2dba8f. 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:
gitpnpmghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, pnpm and gh, which can reach the network depending on how they are called.
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.
Red Green Fix loads about 1.9k tokens when it runs. Until then it costs about 62 tokens; SKILL.md has 661 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 a2dba8f, republished under its GPL-3.0 licence (© Comfy-Org). 661 words, ~1,884 tokens.
.claude/skills/red-green-fix/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Fixes bugs as two commits so CI automatically proves the test catches the bug.
If you commit the test and fix together, the test always passes — reviewers cannot tell whether the test actually detects the bug or is a no-op. Splitting into two commits creates a verifiable CI trail:
The red-then-green sequence in the commit history proves the test is valid.
The user provides a bug description as an argument. If no description is given, ask the user to describe the bug before proceeding.
Bug description: $ARGUMENTS
Create an isolated branch from main:
git fetch origin main
git checkout -b fix/<bug-name> origin/mainWrite a test that reproduces the bug. Do NOT write any fix code.
| Bug type | Framework | File location |
|---|---|---|
| Logic, utils, stores, composables | Vitest | src/**/*.test.ts (colocated) |
| UI interaction, canvas, workflows | Playwright | browser_tests/tests/*.spec.ts |
For Playwright tests, follow the /writing-playwright-tests skill for patterns, fixtures, and tags.
reference/testing-anti-patterns.md// src/utils/pathUtil.test.ts
import { describe, expect, it } from 'vitest'
import { resolveModelPath } from './pathUtil'
describe('resolveModelPath', () => {
it('handles absolute paths from folder_paths API', () => {
const result = resolveModelPath(
'/absolute/models',
'/absolute/models/checkpoints'
)
expect(result).toBe('/absolute/models/checkpoints')
})
})import {
comfyPageFixture as test,
comfyExpect as expect
} from '../fixtures/ComfyPage'
test.describe('Model Download', { tag: ['@smoke'] }, () => {
test('downloads model when path is absolute', async ({ comfyPage }) => {
await comfyPage.workflow.loadWorkflow('missing-model')
const downloadBtn = comfyPage.page.getByTestId('download-model-button')
await downloadBtn.click()
await expect(comfyPage.page.getByText('Download complete')).toBeVisible()
})
})Run the test locally before pushing to confirm it fails for the right reason:
# Vitest
pnpm test:unit <test-file>
# Playwright
pnpm test:browser:local -- --grep "<test name>"If the test passes locally, it does not reproduce the bug — revisit your test before pushing.
pnpm typecheck
pnpm lint
pnpm format:check
git add <test-files-only>
git commit -m "test: add failing test for <concise bug description>"
git push -u origin HEADgh run list --branch $(git branch --show-current) --limit 1STOP HERE. Inform the user of the CI status and wait for confirmation before proceeding to Step 2.
Write the minimum code change needed to make the failing test pass.
pnpm typecheck
pnpm lint
pnpm format
git add <fix-files-only>
git commit -m "fix: <concise bug description>"
git pushgh run list --branch $(git branch --show-current) --limit 1gh pr create --title "fix: <description>" --body "$(cat <<'EOF'
## Summary
<Brief explanation of the bug and root cause>
- Fixes #<issue-number>
## Red-Green Verification
| Commit | CI Status | Purpose |
|--------|-----------|---------|
| `test: ...` | :red_circle: Red | Proves the test catches the bug |
| `fix: ...` | :green_circle: Green | Proves the fix resolves the bug |
## Test Plan
- [ ] CI red on test-only commit
- [ ] CI green on fix commit
- [ ] Added/updated E2E regression under `browser_tests/` or explained why not applicable
- [ ] Manual verification (if applicable)
EOF
)"Lint, typecheck, or other tests may fail — not just your new test. Check the CI logs carefully. If the failure is unrelated, fix it in a separate commit before the test: commit so the red X is clearly attributable to your test.
The bug may only manifest under specific conditions (e.g., Windows paths, external model directories, certain workflow structures). Make sure your test setup matches the actual bug scenario. Check that you're not accidentally testing the happy path.
If your e2e test is intermittent, it doesn't prove anything. Use retrying assertions (toBeVisible, toHaveText) instead of waitForTimeout. See the /writing-playwright-tests skill for anti-patterns.
If main itself is red, branch from the last green commit or fix the pre-existing failure first. A red-green proof is meaningless if the baseline is already red.
| Resource | Path |
|---|---|
| Unit test framework | Vitest (src/**/*.test.ts) |
| E2E test framework | Playwright (browser_tests/tests/*.spec.ts) |
| E2E fixtures | browser_tests/fixtures/ |
| E2E assets | browser_tests/assets/ |
| Playwright skill | .claude/skills/writing-playwright-tests/SKILL.md |
| Unit CI | .github/workflows/ci-tests-unit.yaml |
| E2E CI | .github/workflows/ci-tests-e2e.yaml |
| Lint CI | .github/workflows/ci-lint-format.yaml |
| Testing anti-patterns | reference/testing-anti-patterns.md |
| Related skill | .claude/skills/perf-fix-with-proof/SKILL.md |
© 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
SKILL.md and 1 other file in .claude/skills/red-green-fix of Comfy-Org/ComfyUI_frontend.
Open the folder on GitHubat commit a2dba8f
Red Green Fix 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 |
|---|---|---|---|---|---|---|
| Red Green Fix this skillComfy-Org/ComfyUI_frontend | 2.1k | — | ~1.9k | Automated safety check: Pass | GPL-3.0 | |
| Testingkortix-ai/suna | 20k | — | ~3.6k | Automated safety check: Notes | Custom licence | |
| E2Esendou-ink/sendou.ink | 297 | — | ~2.1k | Automated safety check: Notes | AGPL-3.0 | |
| Fix BugMelbourneDeveloper/dart_node | 113 | 1 repos | ~709 | Automated safety check: Notes | None | |
| Opsmill Dev Test Driving Bugsopsmill/infrahub | 534 | — | ~4k | Automated safety check: Pass | Apache-2.0 | |
| Debug E2E Testbitovi/ai-enablement-prompts | 121 | — | ~677 | Automated safety check: Pass | MIT |
kortix-ai/suna
A skill your agent uses for every Kortix test task, behavior change, bug fix, refactor, API route change, CLI change, SDK change, browser journey, test failure, coverage question, local benchmark…
sendou-ink/sendou.ink
Run, debug, and manage Playwright e2e tests. An agent skill from sendou-ink/sendou.ink.
MelbourneDeveloper/dart_node
Fix a bug using test-driven development. An agent skill from MelbourneDeveloper/dart_node.
opsmill/infrahub
Writes a single failing test that reproduces a bug after its root-cause analysis is complete, before any fix is written.
bitovi/ai-enablement-prompts
Debug and fix failing Playwright E2E tests. An agent skill from bitovi/ai-enablement-prompts.
idavidov13/agentic-playwright
Playwright test debugging conventions for the scaffold — reading failure messages, classifying failure modes (TimeoutError, ZodError, strict-mode violation, locator not found, network errors, schema…
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.
Works with
Categories
Bug fix workflow that proves test validity with a red-then-green CI sequence. Red Green Fix is an agent skill from Comfy-Org/ComfyUI_frontend. Bug fix workflow that proves test validity with a red-then-green CI sequence.
Red Green Fix fits situations like: writing a regression test; asked to prove a fix works.
Run `npx skills add Comfy-Org/ComfyUI_frontend --skill red-green-fix -a claude-code`. Or copy the skill folder (.claude/skills/red-green-fix in Comfy-Org/ComfyUI_frontend) into .claude/skills/red-green-fix in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Comfy-Org/ComfyUI_frontend --skill red-green-fix -a codex`. Or copy the skill folder (.claude/skills/red-green-fix in Comfy-Org/ComfyUI_frontend) into .agents/skills/red-green-fix 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 red-green-fix -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/red-green-fix, .gemini/skills/red-green-fix, .github/skills/red-green-fix and .opencode/skills/red-green-fix in your project.
Going by SKILL.md and its folder, Red Green Fix needs the command-line tools its instructions call (git, pnpm and gh).
SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. 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.
Red Green Fix 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.5k 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 Red Green Fix: Testing (kortix-ai/suna, 20k stars), E2E (sendou-ink/sendou.ink, 297 stars), Fix Bug (MelbourneDeveloper/dart_node, 113 stars) and Opsmill Dev Test Driving Bugs (opsmill/infrahub, 534 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,058 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 10, 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.