Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计未展示

dyad%3adeflake-e2e-recent-commitsdyad%3adeflake e2e 最近提交

Agent Skill

dyad%3adeflake-e2e-recent-commits 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

588

周安装

25

GitHub Stars

20,221

下载量

206
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dyad%3adeflake-e2e-recent-commits(dyad%3adeflake e2e 最近提交)
来源仓库:https://github.com/dyad-sh/dyad
仓库路径:skills/dyad%3Adeflake-e2e-recent-commits
安装命令:
npx skills add https://github.com/dyad-sh/dyad --skill dyad:deflake-e2e-recent-commits
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/dyad-sh/dyad --skill dyad:deflake-e2e-recent-commits

简介

dyad:deflake-e2e-recent-commits 自动从最近提交中提取 flaky 测试并执行修复。

  • 适用于 main 分支和 PR 中 dyad-assistant 触发的测试问题追踪与解决。
  • 通过 gh api 获取 CI 运行记录,筛选失败测试后调用 deflake-e2e 处理。
  • 使用前需确认 GitHub 权限和分支保护策略,注意可能修改代码和推送变更。
  • dyad%3adeflake-e2e-recent-commits 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Deflake E2E Tests from Recent Commits

Automatically gather flaky E2E tests from recent CI runs on the main branch and from recent PRs by wwwillchen/keppo-bot/dyad-assistant, then deflake them.

Arguments

  • $ARGUMENTS: (Optional) Number of recent commits to scan (default: 10)

Task Tracking

You MUST use the TodoWrite tool to track your progress. At the start, create todos for each major step below. Mark each todo as in_progress when you start it and completed when you finish.

Instructions

  1. Gather flaky tests from recent CI runs on main: List recent CI workflow runs triggered by pushes to main: gh api "repos/{owner}/{repo}/actions/workflows/ci.yml/runs?branch=main&event=push&per_page=<COMMIT_COUNT * 3>&status=completed" --jq '.workflow_runs[] | select(.conclusion == "success" or.conclusion == "failure") | {id, head_sha, conclusion}' Note: We fetch 3x the desired commit count because many runs may be cancelled (due to concurrency groups). Filter to only success and failure conclusions to get runs that actually completed and have artifacts. Use $ARGUMENTS as the commit count, defaulting to 10 if not provided. For each completed run, download the html-report artifact which contains results.json with the full Playwright test results: a. Find the html-report artifact for the run: gh api "repos/{owner}/{repo}/actions/runs/<run_id>/artifacts?per_page=30" --jq '.artifacts[] | select(.name | startswith("html-report")) | select(.expired == false) |.name' b. Download it using gh run download: gh run download <run_id> --name <artifact_name> --dir /tmp/playwright-report-<run_id> c. Parse /tmp/playwright-report-<run_id>/results.json to extract flaky tests. Write a Node.js script inside the .claude/ directory to do this parsing. Flaky tests are those where the final result status is "passed" but a prior result has status "failed", "timedOut", or "interrupted". The test title is built by joining parent suite titles (including the spec file path) and the test title, separated by >. d. Clean up the downloaded artifact directory after parsing. Note: Some runs may not have an html-report artifact (e.g., if they were cancelled early, the merge-reports job didn't complete, or artifacts have expired past the 3-day retention period). Skip these runs and continue to the next one.
  2. Gather flaky tests from recent PRs by wwwillchen, keppo-bot, and dyad-assistant:

In addition to main branch CI runs, scan recent open PRs authored by wwwillchen, keppo-bot, or dyad-assistant for flaky tests reported in Playwright report comments.

a. List recent open PRs by these authors:

gh pr list --author wwwillchen --state open --limit 10 --json number,title
gh pr list --author keppo-bot --state open --limit 10 --json number,title
gh pr list --author dyad-assistant --state open --limit 10 --json number,title

b. For each PR, find the most recent Playwright Test Results comment (posted by a bot, containing "🎭 Playwright Test Results"):

gh api "repos/{owner}/{repo}/issues/<pr_number>/comments" --jq '[.[] | select(.user.type == "Bot" and (.body | contains("Playwright Test Results")))] | last'

c. Parse the comment body to extract flaky tests. The comment format includes a "⚠️ Flaky Tests" section with test names in backticks:

  • Look for lines matching the pattern: ` - <test_title> (passed after N retries) `
  • Extract the test title from within the backticks
  • The test title format is: <spec_file.spec.ts> > <Suite Name> > <Test Name>

d. Add these flaky tests to the overall collection, noting they came from PR #N for the summary

  1. Deduplicate and rank by frequency: Count how many times each test appears as flaky across all CI runs. Sort by frequency (most flaky first). Group tests by their spec file. Print a summary table: Flaky test summary: - setup_flow.spec.ts > Setup Flow > setup banner shows correct state... (7 occurrences) - select_component.spec.ts > select component next.js (5 occurrences)...
  2. Skip if no flaky tests found: If no flaky tests are found, report "No flaky tests found in recent commits or PRs" and stop.
  3. Install dependencies and build: npm install npm run build IMPORTANT: This build step is required before running E2E tests. If you make any changes to application code (anything outside of e2e-tests/), you MUST re-run npm run build.
  4. Deflake each flaky test spec file (sequentially): For each unique spec file that has flaky tests (ordered by total flaky occurrences, most flaky first): a. Run the spec file 10 times to confirm flakiness (note: <spec_file> already includes the .spec.ts extension from parsing): PLAYWRIGHT_RETRIES=0 PLAYWRIGHT_HTML_OPEN=never npm run e2e -- e2e-tests/<spec_file> --repeat-each=10 IMPORTANT: PLAYWRIGHT_RETRIES=0 is required to disable automatic retries. Without it, CI environments (where CI=true) default to 2 retries, causing flaky tests to pass on retry and be incorrectly skipped. b. If the test passes all 10 runs, skip it (it may have been fixed already). c. If the test fails at least once, investigate with debug logs: DEBUG=pw:browser PLAYWRIGHT_RETRIES=0 PLAYWRIGHT_HTML_OPEN=never npm run e2e -- e2e-tests/<spec_file> d. Fix the flaky test following Playwright best practices: IMPORTANT: Do NOT change any application code. Only modify test files and snapshot baselines. e. Update snapshot baselines if needed: PLAYWRIGHT_RETRIES=0 PLAYWRIGHT_HTML_OPEN=never npm run e2e -- e2e-tests/<spec_file> --update-snapshots f. Verify the fix by running 10 times again: PLAYWRIGHT_RETRIES=0 PLAYWRIGHT_HTML_OPEN=never npm run e2e -- e2e-tests/<spec_file> --repeat-each=10 g. If the test still fails after your fix attempt, revert any changes to that spec file and move on to the next one. Do not spend more than 2 attempts fixing a single spec file.

- Use await expect(locator).toBeVisible() before interacting with elements - Use await page.waitForLoadState('networkidle') for network-dependent tests - Use stable selectors (data-testid, role, text) instead of fragile CSS selectors - Add explicit waits for animations: await page.waitForTimeout(300) (use sparingly) - Use await expect(locator).toHaveScreenshot() options like maxDiffPixelRatio for visual tests - Ensure proper test isolation (clean state before/after tests)

  1. Summarize results: Report:

- Total flaky tests found across main branch commits and PRs

  • Sources of flaky tests (main branch CI runs vs. PR comments from wwwillchen/keppo-bot/dyad-assistant)

- Which tests were successfully deflaked - What fixes were applied to each - Which tests could not be fixed (and why) - Verification results

  1. Create PR with fixes: If any fixes were made, run /dyad:pr-push to commit, lint, test, and push the changes as a PR. Use a branch name like deflake-e2e-<date> (e.g., deflake-e2e-2025-01-15). The PR title should be: fix: deflake E2E tests (<list of spec files>)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.72%
按下载量换算74

Claude

30.62%
按下载量换算63

Cursor

18.5%
按下载量换算38

Gemini CLI

9.94%
按下载量换算20

安全审计

暂无安全审计结果可展示。

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills