Skip to content

Add Wasp code review skill - #4556

Open
infomiho wants to merge 4 commits into
mainfrom
miho/wasp-review-skill-only
Open

Add Wasp code review skill#4556
infomiho wants to merge 4 commits into
mainfrom
miho/wasp-review-skill-only

Conversation

@infomiho

@infomiho infomiho commented Jul 27, 2026

Copy link
Copy Markdown
Member

Description

Adds /wasp-review, our team code review skill. It's based on some of our existing writing on reviewing and some other existing skills.

The skill lives in .agents/skills and is linked from .claude/skills so Claude can find it too.

Sources

Type of change

  • 🔧 Just code/docs improvement
  • 🐞 Bug fix
  • 🚀 New/improved feature
  • 💥 Breaking change

Checklist

  • I tested my change in a Wasp app to verify that it works as intended.

  • 🧪 Tests and apps:

    • I added unit tests for my change.
    • (if you fixed a bug) I added a regression test for the bug I fixed.
    • (if you added/updated a feature) I added/updated e2e tests in examples/kitchen-sink/e2e-tests.
    • (if you added/updated a feature) I updated the starter templates in waspc/data/Cli/templates, as needed.
    • (if you added/updated a feature) I updated the example apps in examples/, as needed.
      • (if you updated examples/tutorials) I updated the tutorial in the docs (and vice versa).
  • 📜 Documentation:

    • (if you added/updated a feature) I added/updated the documentation in web/docs/.
  • 🆕 Changelog: (if change is more than just code/docs improvement)

    • I updated waspc/ChangeLog.md with a user-friendly description of the change.
    • (if you did a breaking change) I added a step to the current migration guide in web/docs/migration-guides/.
    • I bumped the version in waspc/waspc.cabal to reflect the changes I introduced.

No automated tests were added because this is only an instruction file.

@infomiho
infomiho requested a review from a team as a code owner July 27, 2026 13:43
@infomiho
infomiho requested review from sodic and removed request for a team July 27, 2026 13:43
@infomiho infomiho mentioned this pull request Jul 27, 2026
15 tasks
@infomiho
infomiho temporarily deployed to fly-deploy-test July 27, 2026 14:14 — with GitHub Actions Inactive
@infomiho
infomiho temporarily deployed to railway-deploy-test July 27, 2026 14:14 — with GitHub Actions Inactive
@pkg-pr-new

pkg-pr-new Bot commented Jul 27, 2026

Copy link
Copy Markdown

Open in StackBlitz

@wasp.sh/spec

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/spec@4556

@wasp.sh/wasp-cli

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli@4556

@wasp.sh/wasp-cli-darwin-arm64-unknown

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-darwin-arm64-unknown@4556

@wasp.sh/wasp-cli-darwin-x64-unknown

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-darwin-x64-unknown@4556

@wasp.sh/wasp-cli-linux-arm64-glibc

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-linux-arm64-glibc@4556

@wasp.sh/wasp-cli-linux-x64-glibc

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-linux-x64-glibc@4556

@wasp.sh/wasp-cli-linux-x64-musl

npx https://pkg.pr.new/wasp-lang/wasp/@wasp.sh/wasp-cli-linux-x64-musl@4556

commit: 317ab30


- Demand precise, informative names. Names must not misdirect, omit relevant behavior, or assume unavailable context.
- Make names accurately reflect what their declarations represent.
- Context is kind: evaluate names within their scope and surrounding vocabulary.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Context is kind: evaluate names within their scope and surrounding vocabulary.
- Context is king: evaluate names within their scope and surrounding vocabulary.

## Contracts And Interfaces

- Review names before implementation details. Poor names often expose deeper problems in decomposition and architecture.
- Declaration should be enough to understand, without the implementation. A function’s name, arguments, types, and contract should explain its behavior.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one feels like it could be too much. But we can tone it down in the future if needed.

- Demand code to be easy to read. Understanding one section should not require reading the entire file.
- Review from the perspective of a developer with minimal reasonable context.

## Design And Architecture

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would also add something like

"Avoid NIH": before creating a new abstraction or creating a helper, look in the codebase or existing dependencies if one already exists. You can also bring in established or industry-standard libraries where it makes sense. If you end up writing new code and it might be reusable in different places in code, put it in a common location."

- Use comments only for information that names, arguments, and types cannot express.
- Remove comments that merely narrate obvious code or exhibit generated filler.
- Suggest pruning fluff and no-op sentences from prose.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Remove comments that only clarify questions or edge cases from a specific session and that are obvious or not needed for a fresh reviewer."


## Code Smells

<!-- Based on Martin Fowler's Refactoring -->

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<!-- Based on Martin Fowler's Refactoring -->

We don't need the agent to know that

## Other

- Check whether requested improvements justify their implementation cost.
- Run `shellcheck` when shell scripts change.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove. Reminding it to use linters should be a write-time thing, not review-time. Instead we might need to add shellcheck to our linters.

@FranjoMindek FranjoMindek left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Didn't read the sources

description: Review code changes for correctness, clarity, and potential issues. Use when the user asks for a review, code review, PR review, or wants feedback on a diff or file.
---

Review the specified PR, diff, or files. If none are specified, review the staged and unstaged changes.

@FranjoMindek FranjoMindek Jul 31, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If none are specified, review the staged and unstaged changes.

Definitely needs to be part of the description.

This comes from your action workflow.
We don't have such assumptions.


# Findings And Reporting

- Make every finding actionable. Include the file and line, explain the problem, and suggest a concrete fix.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe instruct it to add examples e.g. code snippets?
Can be valid for both "explain the problem" and "suggest a concrete fix".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants