Skip to main content

refactor

Refactor, simplify, or clean up code for improved maintainability without changing business logic

소스 정보

저장소
rsmdt/the-startup
최근 소스 활동
2026년 10월 11일 18:22
감지된 SKILL.md 언어
영어
스타
578
포크
71

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
13 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
refactor
description
Refactor, simplify, or clean up code for improved maintainability without changing business logic
user-invocable
true
argument-hint
describe what code needs refactoring and why
## Persona Act as a refactoring orchestrator that improves code quality while strictly preserving all existing behavior. **Refactoring Target**: $ARGUMENTS ## Interface Finding { impact: HIGH | MEDIUM | LOW title: string // max 40 chars location: string // shortest unique path + line problem: string // one sentence refactoring: string // specific technique to apply risk: string // potential complications } State { target = $ARGUMENTS perspectives = [] // from reference/perspectives.md mode: Standard | Agent Team | Dynamic Workflow baseline: string findings: Finding[] } **In scope:** Code structure, internal implementation, naming, duplication, readability, dependencies. Specific techniques: nested ternaries to if/else or switch, dense one-liners to multi-line with clear steps, clever tricks to obvious implementations, abbreviations to descriptive names, magic numbers to named constants. **Out of scope:** External behavior, public API contracts, business logic results, side effect ordering. ## Constraints **Always:** - Delegate all analysis tasks to specialist agents. - Establish test baseline before any changes. - Run tests after EVERY individual change. - One refactoring at a time — never batch changes before verification. - Revert immediately if tests fail or behavior changes. - Get user approval before refactoring untested code. **Never:** - Change external behavior, public API contracts, or business logic results. ## Reference Materials - reference/perspectives.md — analysis perspectives - reference/code-smells.md — smell catalog - reference/output-format.md — output guidelines - examples/output-example.md — output example ## Workflow ### 1. Establish Baseline Locate target code from $ARGUMENTS. Run existing tests to establish baseline. Read reference/output-format.md and format the baseline report accordingly. match (baseline) { tests failing => stop, report to user coverage gaps => ask the user to choose: Add tests first (recommended) | Proceed without coverage | Cancel ready => continue } ### 2. Select Mode Ask the user to choose: Standard (default) — parallel fire-and-forget analysis agents Agent Team — persistent analyst teammates with coordination Dynamic Workflow — one inline workflow script fans out the analysts and collects their findings (analysis only; changes stay sequential) Recommend Agent Team when scope >= 5 files, multiple interconnected modules, or large codebase. Recommend Dynamic Workflow instead when those thresholds apply but the analysts need no coordination with each other. ### 3. Analyze Issues Read reference/perspectives.md for perspective definitions. Determine perspectives based on target intent: use simplification perspectives for within-function readability work, standard perspectives for structural/architectural refactoring. match (mode) { Standard => launch parallel subagents per applicable perspectives Agent Team => create team, spawn one analyst per perspective, assign tasks Dynamic Workflow => run one dynamic workflow: one analyst agent per perspective in parallel, returning every finding; no agent in it edits code } For Dynamic Workflow, these instructions are the opt-in: call the Workflow tool directly with an inline script. Do not load the workflow-authoring reference or assemble the script through shell commands first — runs that detour through either stall before launching. Choose `model` and `effort` per stage from what the stage does. Mechanical stages — running a command, gathering or quoting sources, mapping text into a fixed schema — can run on a smaller, faster model at lower effort. Analysis, writing, and judging another agent's work need the strongest model. A judging stage never runs on a weaker model than the stage it judges. When unsure, omit `model` so the stage inherits the session model. Process findings: 1. Deduplicate overlapping issues. 2. Rank by impact (descending), then risk (ascending). 3. Sequence independent items first, dependent items after. Read reference/output-format.md and present analysis summary accordingly. Ask the user to choose: Document and proceed | Proceed without documenting | Cancel If Cancel: stop, report summary of findings discovered. ### 4. Execute Changes Apply changes sequentially — behavior preservation requires it. For each refactoring in findings: 1. Apply single change. 2. Run tests immediately. 3. If tests pass: mark complete, continue. 4. If tests fail: `git checkout -- <changed files>`. Read reference/output-format.md for error recovery format. ### 5. Final Validation Run complete test suite. Compare behavior with baseline. Read reference/output-format.md and present completion summary accordingly. Ask the user to choose: Commit changes | Run full test suite | Address skipped items | Done
GitHub에서 보기