一键导入
review-changes
Review all changes on the current branch. Use when the user asks for a code review or PR review.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Review all changes on the current branch. Use when the user asks for a code review or PR review.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Add a REST endpoint to the app — type contract in common, validation schema, action implementation, registration, tests, changelog. Use when the user asks to add/expose/create a new endpoint, route, REST API, or wants to convert a function into an HTTP-callable action. Branches between custom actions and DataSet-backed CRUD.
Wire a new entity into the data layer — model, store binding, DataSet with authorization/hooks, optional entity sync. Use when the user asks to add an entity, persist a model, expose a collection, or set up a new DataSet.
Fill changelog entries for the current branch. Use when the user asks to fill changelog, write changelog entries, update changelog, or prepare changelog for a PR.
| name | review-changes |
| description | Review all changes on the current branch. Use when the user asks for a code review or PR review. |
| disable-model-invocation | false |
| inputs | [{"id":"branch","type":"currentBranch","description":"The branch to review"}] |
Review all changes on the current branch compared to the upstream branch.
{{branch}}
IMPORTANT: This repository uses master as the integration branch.
Use master as the default base branch for all comparisons:
git diff origin/master...HEAD
Verify by checking GitHub workflows if unsure - look at .github/workflows/*.yml for pull_request.branches targets
Use the correct git diff syntax:
origin/master...HEAD - shows changes in current branch since it diverged from mastergit log --oneline origin/master..HEAD to see commits being reviewedBefore launching subagents, analyze what files changed:
git diff origin/master...HEAD --name-only
Conservative skip rules (only skip when 100% safe):
| Reviewer | Run | Notes |
|---|---|---|
reviewer-prettier | ✅ Always | Formats .md, .json, .ts, .tsx, etc. |
reviewer-typescript | Conditional | Skip ONLY if NO .ts/.tsx files changed |
reviewer-eslint | Conditional | Skip ONLY if NO .ts/.tsx files changed |
reviewer-tests | Conditional | Skip ONLY if NO .ts/.tsx files changed |
reviewer-complexity | Conditional | Skip ONLY if NO .ts/.tsx files changed |
When in doubt, run the check. Fast failures are better than missed issues.
IMPORTANT: Launch ALL applicable subagents in a SINGLE parallel batch. Do NOT wait for one group to finish before starting another.
In one tool call batch, launch all applicable reviewers:
reviewer-prettier (always)reviewer-typescript (if .ts/.tsx files changed)reviewer-eslint (if .ts/.tsx files changed)reviewer-tests (if .ts/.tsx files changed)reviewer-complexity (if .ts/.tsx files changed)Check for:
Code Quality & Bugs:
.cursor/rules/*)Standards & Compliance:
reviewer-typescript subagent to check for TypeScript errorsreviewer-eslint subagent to check for linting violationsreviewer-prettier subagent to check for formatting issuesFuryStack App-Specific:
defineService, defineStore, defineDataSet, injector.get/bind/invalidate)ObservableValue, useObservable, subscriptions)Symbol.dispose, Symbol.asyncDispose, factory onDispose)getDataSetFor, no-direct-store-token rule)Validate(...), errors as RequestErrorComplexity Audit:
reviewer-complexity subagent to flag overgrown components, services, and REST actions introduced or worsened by the branch (heuristics from .cursor/rules/COMPLEXITY.mdc)Shades Styling Patterns:
Flag useState() used only for CSS-representable states (hover, focus, active)
Recommend using css property with pseudo-selectors instead:
// ❌ Anti-pattern to flag
const [isHovered, setIsHovered] = useState('hover', false)
<div onMouseEnter={() => setIsHovered(true)} style={{ opacity: isHovered ? 1 : 0.7 }} />
// ✅ Recommend instead
css: { opacity: '0.7', '&:hover': { opacity: '1' } }
Static style props in Shade definitions should use css instead
Testing & Coverage:
reviewer-tests subagent to run unit tests and assess coveragePerformance & Security:
Documentation:
IMPORTANT: Only include subagent results in the final output if they found errors or issues.
reviewer-typescript passes → Do NOT mention it in the outputreviewer-eslint passes → Do NOT mention it in the outputreviewer-prettier passes → Do NOT mention it in the outputreviewer-tests passes → Do NOT mention it in the outputreviewer-complexity passes → Do NOT mention it in the outputOnly report subagent findings when they detect actual problems.
1. Summary: Brief overview of changes (2-3 sentences max)
2. Issues by Priority:
For each issue, be specific: package, file, line, problem, suggested fix.
3. Test Coverage: Assess coverage quality. Warn if public APIs lack tests.
4. Breaking Changes: List any breaking changes and suggest migration guide if needed.
5. Changelog: Generate a short, consistent changelog as a copyable markdown code block.
Format:
Example:
- Add user profile validation
- Fix observable memory leak in cache
- Update dependency injection patterns
6. Pull Request Description: Generate as a copyable markdown code block with:
## 📋 Remaining Tasks
### 💀 Critical
- [ ] Fix TypeScript error in `frontend/src/foo.ts:42`
### 🔥 High
- [ ] Add missing test for `handleSubmit` function
### 🤔 Medium
- [ ] Address memory leak in observable subscription
Omit empty priority sections. If no issues found, omit the entire Remaining Tasks section.
Style: Be critical, specific, and concise. Focus on code quality and API surface area. If unsure, ask for clarification.