一键导入
quick-change
Simple changes done right. Make the change, clean up after yourself, report what happened.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Simple changes done right. Make the change, clean up after yourself, report what happened.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Read-only quality scan of components. Reports problems without making changes. Uses software-base + domain profile skills.
Refactoring patterns - improving code design without changing behavior
Read-only quality scan of components. Reports problems without making changes. Uses software-base + domain profile skills.
Internal phase: independent Codex review + targeted fixes. Not user-facing.
Find duplicated code and consolidate into shared utilities. Fixes all duplicates.
Reference templates for Codex evaluation. Used by build/improve orchestrators — not executed directly.
| name | quick-change |
| description | Simple changes done right. Make the change, clean up after yourself, report what happened. |
For simple changes that don't warrant full planning — with a built-in cleanup pass.
No arguments? Describe this skill and stop. Do not execute.
/quick-change is the light workflow: make a small change carefully, then clean up what you wrote. One command instead of two.
Use this when:
If the change touches 5+ files or has design decisions → use /build or /improve instead.
| Skill | Why |
|---|---|
/clarity | Kernighan - naming, simplicity |
/refactoring | Fowler - safe small changes |
/style | Google - match existing patterns |
| Change Type | Invoke | Why |
|---|---|---|
| Rename | /clarity | Kernighan naming principles |
| Bug fix | /legacy | Feathers' characterization before change |
| Validation | /owasp | Input validation is security |
| Database | /sql | Celko's column design |
TypeScript/JavaScript:
| Pattern | Invoke |
|---|---|
*.ts, *.tsx | /typescript, /cherny |
*.js, *.jsx | /js-safety, /crockford |
*.spec.ts, *.test.ts | /dodds, /test-doubles |
Java:
| Pattern | Invoke |
|---|---|
*.java | /java (Bloch's field/API design) |
*Test.java | /test-doubles |
Python:
| Pattern | Invoke |
|---|---|
*.py | /python-idioms, /python-patterns |
test_*.py | /test-doubles |
C#:
| Pattern | Invoke |
|---|---|
*.cs | /csharp-depth |
Go:
| Pattern | Invoke |
|---|---|
*.go | /simplicity (Pike's Go proverbs) |
Read the existing code around the change. Check how similar things are done nearby.
Follow existing patterns. Complete the circuit — if you add a field, update everywhere it matters.
Run the checklist for your change type (see below). Don't skip items.
Review every file you just touched against the cleanup tables below. Fix issues inline — don't leave them for a separate pass.
Confirm build passes and tests pass.
List what was changed and what was cleaned.
| Smell | What to Look For | Fix |
|---|---|---|
| Over-abstraction | Factory/Builder/Wrapper used only once | Inline it |
| Defensive paranoia | if (x != null) when x can never be null | Remove check |
| Reimplementing stdlib | Custom deepClone, isEmpty, capitalize | Use library |
| Comment spam | // loop through users above for...of | Delete comment |
| Speculative features | Config option with only one value used | Remove option |
| Enterprise naming | AbstractUserFactoryManager | Simplify name |
| Wrapper classes | Class that just delegates to another | Inline or remove |
| Unused parameters | function foo(a, b, c) but c never used | Remove parameter |
| Over-generic types | Result<T, E, M, C> for simple return | Simplify type |
| Problem | Threshold | Fix |
|---|---|---|
| Vague names | data, result, temp, item, info | Rename to intent |
| Magic numbers | Hardcoded values | Extract to constant |
| Dead code | Unused imports, unreachable code | Delete |
| Redundant code | Duplicate logic | Extract or remove |
| Smell | Example | Fix |
|---|---|---|
| Generic -er | Processor, Handler, Manager | Name for what it does |
| Impl suffix | UserServiceImpl | UserService if only one |
| I- prefix | IUserService | UserService (TS isn't C#) |
| Type in name | userString, countInt | user, count |
| Negative booleans | isNotValid, hasNoErrors | isValid, hasErrors |
## Quick Change: [description]
CHANGE_TYPE: [add-field | rename | add-param | bug-fix | other]
### Changed
| File:Line | What Changed |
|-----------|-------------|
| src/user.ts:12 | Added `email` field to User model |
| src/user.dto.ts:8 | Added `email` to UserDTO |
### Checklist
- [x] Model updated
- [x] DTO updated
- [x] Tests updated
- [ ] N/A: No UI for this field
### Cleaned
| File:Line | Issue | What Was Done |
|-----------|-------|---------------|
| src/user.ts:45 | Defensive paranoia | Removed null check on required field |
| src/user.ts:23 | Comment spam | Deleted `// Get the user` above `getUser()` |
### Summary
| | Count |
|---|-------|
| Files changed | N |
| Checklist items | N/N |
| Issues cleaned | N |
BUILD: pass
TESTS: pass
QUICK_CHANGE_COMPLETE
Leave these for dedicated skills:
| Issue | Use Instead |
|---|---|
| Long functions (>30 lines) | /improve |
| Deep nesting (>3 levels) | /improve |
| Complex refactoring | /improve |
| Security issues | /security-review |
| Static analysis | /qodana-review |
| Mistake | Example | Do This Instead |
|---|---|---|
| Incomplete circuit | Added field to model, forgot DTO | Grep for the type name, update all |
| Inconsistent naming | user_name in DB, userName in code, name in UI | Match existing pattern exactly |
| Speculative additions | "Added createdAt while I was there" | Only what was requested |
| Missing validation | Added email field with no format check | Add validation if the field has constraints |
| No test | "It's just a field" | Add test, especially for validation |
Use /build or /improve instead if:
| Workflow | When to Use | Overhead |
|---|---|---|
/build | New feature from scratch | Full pipeline |
/improve | Refine existing code | Full pipeline |
/quick-change | Add field, rename, small fix | Light (checklist + cleanup) |