Unverified 提交 189859d9 authored 作者: Will Chen's avatar Will Chen 提交者: GitHub

Migrate all Claude Code commands to skills format (#2663)

## Summary - Migrates all 16 `.claude/commands/` to `.claude/skills/` with proper SKILL.md frontmatter (name + description) - Moves supporting scripts (sanitize_issue_markdown.py, tests, goldens) into the fix-issue skill folder - Updates path references in `.prettierignore`, `.oxfmtrc.json`, and `.claude/README.md` - Eliminates spurious golden file "commands" (e.g., `dyad:scripts:goldens:*`) that were being registered as slash commands ## Test plan - Verify all skills are listed with `/` autocomplete - Invoke a skill (e.g., `/dyad:lint`) and confirm it works #skip-bugbot 🤖 Generated with [Claude Code](https://claude.com/claude-code) <!-- devin-review-badge-begin --> --- <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2663" target="_blank"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1"> <img src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1" alt="Open with Devin"> </picture> </a> <!-- devin-review-badge-end --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Migrates all Claude Code commands to the new skills format with SKILL.md frontmatter and updates docs/paths. This standardizes slash usage (/dyad:<skill>), fixes autocomplete, and removes stray commands. - **Refactors** - Moved 16 items from .claude/commands to .claude/skills with name/description frontmatter. - Moved sanitize_issue_markdown.py, tests, and goldens under the fix-issue skill; updated path in SKILL.md. - Updated .claude/README.md to list skills and include fast-push, pr-screencast, feedback-to-issues, deflake-e2e-recent-commits, remember-learnings. - Updated .prettierignore and .oxfmtrc.json to new goldens path. - Removed golden file “commands” that were being registered as slash commands. - **Migration** - Use /dyad:<skill> instead of /dyad:<command>. - Verify skills show in autocomplete and run one (e.g., /dyad:lint). - Update any local scripts from .claude/commands/... to .claude/skills/.... <sup>Written for commit 31ae67f994cb704c223428e66455665ffd2454ff. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> Co-authored-by: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
上级 e4582c39
...@@ -2,21 +2,25 @@ ...@@ -2,21 +2,25 @@
This directory contains Claude Code configuration for the Dyad project. This directory contains Claude Code configuration for the Dyad project.
## Commands ## Skills
Slash commands are invoked with `/dyad:<command>`. Available commands: Skills are invoked with `/dyad:<skill>`. Available skills:
| Command | Description | Uses | | Skill | Description | Uses |
| ------------------------------ | -------------------------------------------------------------- | ----------------------------------- | | ---------------------------------- | -------------------------------------------------------------- | ----------------------------------- |
| `/dyad:plan-to-issue` | Convert a plan to a GitHub issue | - | | `/dyad:plan-to-issue` | Convert a plan to a GitHub issue | - |
| `/dyad:fix-issue` | Fix a GitHub issue | `pr-push` | | `/dyad:fix-issue` | Fix a GitHub issue | `pr-push` |
| `/dyad:pr-fix` | Fix PR issues from CI failures or review comments | `pr-fix:comments`, `pr-fix:actions` | | `/dyad:pr-fix` | Fix PR issues from CI failures or review comments | `pr-fix:comments`, `pr-fix:actions` |
| `/dyad:pr-fix:comments` | Address unresolved PR review comments | `lint`, `pr-push` | | `/dyad:pr-fix:comments` | Address unresolved PR review comments | `lint`, `pr-push` |
| `/dyad:pr-fix:actions` | Fix failing CI checks and GitHub Actions | `e2e-rebase`, `pr-push` | | `/dyad:pr-fix:actions` | Fix failing CI checks and GitHub Actions | `e2e-rebase`, `pr-push` |
| `/dyad:pr-rebase` | Rebase the current branch | `pr-push` | | `/dyad:pr-rebase` | Rebase the current branch | `pr-push` |
| `/dyad:pr-push` | Push changes and create/update a PR | `remember-learnings` | | `/dyad:pr-push` | Push changes and create/update a PR | `remember-learnings` |
| `/dyad:lint` | Run all pre-commit checks (formatting, linting, type-checking) | - | | `/dyad:fast-push` | Fast push via haiku sub-agent | - |
| `/dyad:e2e-rebase` | Rebase E2E test snapshots | - | | `/dyad:lint` | Run all pre-commit checks (formatting, linting, type-checking) | - |
| `/dyad:deflake-e2e` | Deflake flaky E2E tests | - | | `/dyad:e2e-rebase` | Rebase E2E test snapshots | - |
| `/dyad:deflake-e2e-recent-prs` | Gather flaky tests from recent PRs and deflake them | `deflake-e2e`, `pr-push` | | `/dyad:deflake-e2e` | Deflake flaky E2E tests | - |
| `/dyad:session-debug` | Debug session issues | - | | `/dyad:deflake-e2e-recent-commits` | Gather flaky tests from recent CI runs and deflake them | `deflake-e2e`, `pr-push` |
| `/dyad:session-debug` | Debug session issues | - |
| `/dyad:pr-screencast` | Record visual demo of PR feature | - |
| `/dyad:feedback-to-issues` | Turn customer feedback into GitHub issues | - |
| `/remember-learnings` | Capture session learnings into AGENTS.md/rules | - |
---
name: dyad:deflake-e2e-recent-commits
description: Automatically gather flaky E2E tests from recent CI runs on the main branch and from recent PRs by wwwillchen/wwwillchen-bot, then deflake them.
---
# Deflake E2E Tests from Recent Commits # 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/wwwillchen-bot, then deflake them. Automatically gather flaky E2E tests from recent CI runs on the main branch and from recent PRs by wwwillchen/wwwillchen-bot, then deflake them.
......
---
name: dyad:deflake-e2e
description: Identify and fix flaky E2E tests by running them repeatedly and investigating failures.
---
# Deflake E2E Tests # Deflake E2E Tests
Identify and fix flaky E2E tests by running them repeatedly and investigating failures. Identify and fix flaky E2E tests by running them repeatedly and investigating failures.
......
---
name: dyad:e2e-rebase
description: Rebase E2E test snapshots based on failed tests from the PR comments.
---
# E2E Snapshot Rebase # E2E Snapshot Rebase
Rebase E2E test snapshots based on failed tests from the PR comments. Rebase E2E test snapshots based on failed tests from the PR comments.
......
---
name: dyad:fast-push
description: Commit any uncommitted changes, run lint checks, fix any issues, and push the current branch. Delegates to a haiku sub-agent for speed.
---
# Fast Push # Fast Push
Commit any uncommitted changes, run lint checks, fix any issues, and push the current branch. Delegates to a haiku sub-agent for speed. Commit any uncommitted changes, run lint checks, fix any issues, and push the current branch. Delegates to a haiku sub-agent for speed.
......
---
name: dyad:feedback-to-issues
description: Turn customer feedback (usually an email) into discrete GitHub issues. Checks for duplicates, proposes new issues for approval, creates them, and drafts a reply email.
---
# Feedback to Issues # Feedback to Issues
Turn customer feedback (usually an email) into discrete GitHub issues. Checks for duplicates, proposes new issues for approval, creates them, and drafts a reply email. Turn customer feedback (usually an email) into discrete GitHub issues. Checks for duplicates, proposes new issues for approval, creates them, and drafts a reply email.
......
---
name: dyad:fix-issue
description: Create a plan to fix a GitHub issue, then implement it locally.
---
# Fix Issue # Fix Issue
Create a plan to fix a GitHub issue, then implement it locally. Create a plan to fix a GitHub issue, then implement it locally.
...@@ -25,7 +30,7 @@ Create a plan to fix a GitHub issue, then implement it locally. ...@@ -25,7 +30,7 @@ Create a plan to fix a GitHub issue, then implement it locally.
Run the issue body through the sanitization script to remove HTML comments, invisible characters, and other artifacts: Run the issue body through the sanitization script to remove HTML comments, invisible characters, and other artifacts:
``` ```
printf '%s' "$ISSUE_BODY" | python3 .claude/commands/dyad/scripts/sanitize_issue_markdown.py printf '%s' "$ISSUE_BODY" | python3 .claude/skills/fix-issue/scripts/sanitize_issue_markdown.py
``` ```
This removes: This removes:
......
---
name: dyad:lint
description: Run pre-commit checks including formatting, linting, and type-checking, and fix any errors.
---
# Lint # Lint
Run pre-commit checks including formatting, linting, and type-checking, and fix any errors. Run pre-commit checks including formatting, linting, and type-checking, and fix any errors.
......
---
name: dyad:plan-to-issue
description: Create a plan collaboratively with the user, then convert the approved plan into a GitHub issue.
---
# Plan to Issue # Plan to Issue
Create a plan collaboratively with the user, then convert the approved plan into a GitHub issue. Create a plan collaboratively with the user, then convert the approved plan into a GitHub issue.
......
---
name: dyad:pr-fix:actions
description: Fix failing CI checks and GitHub Actions on a Pull Request.
---
# PR Fix: Actions # PR Fix: Actions
Fix failing CI checks and GitHub Actions on a Pull Request. Fix failing CI checks and GitHub Actions on a Pull Request.
......
---
name: dyad:pr-fix:comments
description: Read all unresolved GitHub PR comments from trusted authors and address or resolve them appropriately.
---
# PR Fix: Comments # PR Fix: Comments
Read all unresolved GitHub PR comments from trusted authors and address or resolve them appropriately. Read all unresolved GitHub PR comments from trusted authors and address or resolve them appropriately.
......
---
name: dyad:pr-fix
description: Address all outstanding issues on a GitHub Pull Request by handling both review comments and failing CI checks.
---
# PR Fix # PR Fix
Address all outstanding issues on a GitHub Pull Request by handling both review comments and failing CI checks. Address all outstanding issues on a GitHub Pull Request by handling both review comments and failing CI checks.
......
---
name: dyad:pr-push
description: Commit any uncommitted changes, run lint checks, fix any issues, and push the current branch.
---
# PR Push # PR Push
Commit any uncommitted changes, run lint checks, fix any issues, and push the current branch. Commit any uncommitted changes, run lint checks, fix any issues, and push the current branch.
......
---
name: dyad:pr-rebase
description: Rebase the current branch on the latest upstream changes, resolve conflicts, and push.
---
# PR Rebase # PR Rebase
Rebase the current branch on the latest upstream changes, resolve conflicts, and push. Rebase the current branch on the latest upstream changes, resolve conflicts, and push.
......
---
name: dyad:pr-screencast
description: Record a visual demonstration of the key feature of this PR using screenshots and add it as a new comment to the PR.
---
# PR Screencast # PR Screencast
Record a visual demonstration of the key feature of this PR using screenshots and add it as a new comment to the PR. Record a visual demonstration of the key feature of this PR using screenshots and add it as a new comment to the PR.
......
---
name: remember-learnings
description: Review the current session for errors, issues, snags, and hard-won knowledge, then update the rules/ files (or AGENTS.md if no suitable rule file exists) with actionable learnings.
---
# Remember Learnings # Remember Learnings
Review the current session for errors, issues, snags, and hard-won knowledge, then update the `rules/` files (or `AGENTS.md` if no suitable rule file exists) with actionable learnings so future agent sessions run more smoothly. Review the current session for errors, issues, snags, and hard-won knowledge, then update the `rules/` files (or `AGENTS.md` if no suitable rule file exists) with actionable learnings so future agent sessions run more smoothly.
......
---
name: dyad:session-debug
description: Analyze session debugging data to identify errors and issues that may have caused a user-reported problem.
---
# Session Debug # Session Debug
Analyze session debugging data to identify errors and issues that may have caused a user-reported problem. Analyze session debugging data to identify errors and issues that may have caused a user-reported problem.
......
...@@ -9,6 +9,6 @@ ...@@ -9,6 +9,6 @@
"**/pnpm-lock.yaml", "**/pnpm-lock.yaml",
"**/snapshots/**", "**/snapshots/**",
"e2e-tests/fixtures/**", "e2e-tests/fixtures/**",
".claude/commands/dyad/scripts/goldens/**" ".claude/skills/fix-issue/scripts/goldens/**"
] ]
} }
...@@ -8,4 +8,4 @@ drizzle/ ...@@ -8,4 +8,4 @@ drizzle/
# test fixtures # test fixtures
e2e-tests/fixtures/** e2e-tests/fixtures/**
# sanitize_issue_markdown test goldens # sanitize_issue_markdown test goldens
.claude/commands/dyad/scripts/goldens/** .claude/skills/fix-issue/scripts/goldens/**
\ No newline at end of file \ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论