@kood/claude-code 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +53 -7
- package/package.json +2 -1
- package/templates/.claude/PARALLEL_AGENTS.md +737 -0
- package/templates/.claude/agents/analyst.md +416 -0
- package/templates/.claude/agents/architect.md +569 -0
- package/templates/.claude/agents/code-reviewer.md +132 -133
- package/templates/.claude/agents/dependency-manager.md +93 -94
- package/templates/.claude/agents/deployment-validator.md +64 -65
- package/templates/.claude/agents/designer.md +655 -0
- package/templates/.claude/agents/document-writer.md +500 -0
- package/templates/.claude/agents/explore.md +499 -0
- package/templates/.claude/agents/git-operator.md +74 -75
- package/templates/.claude/agents/implementation-executor.md +138 -109
- package/templates/.claude/agents/ko-to-en-translator.md +18 -22
- package/templates/.claude/agents/lint-fixer.md +250 -93
- package/templates/.claude/agents/planner.md +356 -0
- package/templates/.claude/agents/refactor-advisor.md +135 -136
- package/templates/.claude/commands/bug-fix.md +296 -207
- package/templates/.claude/commands/git-all.md +199 -46
- package/templates/.claude/commands/git-session.md +113 -57
- package/templates/.claude/commands/lint-fix.md +219 -153
- package/templates/.claude/commands/lint-init.md +113 -76
- package/templates/.claude/commands/pre-deploy.md +190 -124
- package/templates/.claude/commands/refactor.md +407 -162
- package/templates/.claude/commands/version-update.md +138 -37
- package/templates/.claude/instructions/context-engineering/ANTHROPIC_CONTEXT_ENGINEERING.md +178 -0
- package/templates/.claude/instructions/context-engineering/references/claude-4x.md +215 -0
- package/templates/.claude/instructions/context-engineering/references/core-principles.md +137 -0
- package/templates/.claude/instructions/context-engineering/references/examples.md +351 -0
- package/templates/.claude/instructions/context-engineering/references/techniques.md +162 -0
- package/templates/.claude/instructions/parallel-agent-execution.md +874 -0
- package/templates/.claude/skills/docs-creator/AGENTS.md +238 -0
- package/templates/.claude/{commands/docs-creator.md → skills/docs-creator/SKILL.md} +61 -75
- package/templates/.claude/skills/docs-refactor/AGENTS.md +270 -0
- package/templates/.claude/{commands/docs-refactor.md → skills/docs-refactor/SKILL.md} +30 -44
- package/templates/.claude/skills/execute/SKILL.md +451 -0
- package/templates/.claude/skills/figma-to-code/AGENTS.md +287 -0
- package/templates/.claude/skills/figma-to-code/SKILL.md +225 -225
- package/templates/.claude/skills/figma-to-code/references/design-tokens.md +75 -73
- package/templates/.claude/skills/figma-to-code/references/figma-mcp-tools.md +73 -73
- package/templates/.claude/skills/figma-to-code/references/layout-mapping.md +104 -104
- package/templates/.claude/skills/figma-to-code/references/responsive-design.md +99 -99
- package/templates/.claude/skills/figma-to-code/references/verification.md +91 -91
- package/templates/.claude/skills/global-uiux-design/AGENTS.md +317 -0
- package/templates/.claude/skills/global-uiux-design/SKILL.md +738 -0
- package/templates/.claude/skills/global-uiux-design/references/accessibility.md +401 -0
- package/templates/.claude/skills/global-uiux-design/references/color-system.md +275 -0
- package/templates/.claude/skills/global-uiux-design/references/design-philosophy.md +206 -0
- package/templates/.claude/skills/global-uiux-design/references/design-systems.md +446 -0
- package/templates/.claude/skills/korea-uiux-design/AGENTS.md +307 -0
- package/templates/.claude/skills/korea-uiux-design/SKILL.md +170 -0
- package/templates/.claude/skills/nextjs-react-best-practices/AGENTS.md +95 -116
- package/templates/.claude/skills/nextjs-react-best-practices/SKILL.md +134 -152
- package/templates/.claude/skills/nextjs-react-best-practices/rules/advanced-event-handler-refs.md +6 -6
- package/templates/.claude/skills/nextjs-react-best-practices/rules/advanced-use-latest.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/async-api-routes.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/async-defer-await.md +22 -22
- package/templates/.claude/skills/nextjs-react-best-practices/rules/async-dependencies.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/async-parallel.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/async-suspense-boundaries.md +21 -21
- package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-barrel-imports.md +18 -18
- package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-conditional.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-defer-third-party.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-dynamic-imports.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/bundle-preload.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/client-event-listeners.md +9 -9
- package/templates/.claude/skills/nextjs-react-best-practices/rules/client-swr-dedup.md +7 -7
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-batch-dom-css.md +13 -13
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-cache-function-results.md +14 -14
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-cache-property-access.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-cache-storage.md +10 -10
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-combine-iterations.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-early-exit.md +7 -7
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-hoist-regexp.md +6 -6
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-index-maps.md +6 -6
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-length-check-first.md +14 -14
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-min-max-loop.md +16 -16
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-set-map-lookups.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/js-tosorted-immutable.md +17 -17
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-activity.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-animate-svg-wrapper.md +11 -11
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-conditional-render.md +8 -8
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-content-visibility.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-hoist-jsx.md +6 -6
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-hydration-no-flicker.md +14 -14
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rendering-svg-precision.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-defer-reads.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-dependencies.md +7 -7
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-derived-state.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-functional-setstate.md +34 -34
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-lazy-state-init.md +15 -15
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-memo.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/rerender-transitions.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/server-after-nonblocking.md +24 -24
- package/templates/.claude/skills/nextjs-react-best-practices/rules/server-cache-lru.md +10 -10
- package/templates/.claude/skills/nextjs-react-best-practices/rules/server-cache-react.md +4 -4
- package/templates/.claude/skills/nextjs-react-best-practices/rules/server-parallel-fetching.md +5 -5
- package/templates/.claude/skills/nextjs-react-best-practices/rules/server-serialization.md +6 -6
- package/templates/.claude/skills/plan/SKILL.md +594 -0
- package/templates/.claude/skills/prd/SKILL.md +496 -0
- package/templates/.claude/skills/ralph/AGENTS.md +393 -0
- package/templates/.claude/skills/ralph/SKILL.md +1035 -0
- package/templates/.claude/skills/tanstack-start-react-best-practices/AGENTS.md +100 -121
- package/templates/.claude/skills/tanstack-start-react-best-practices/SKILL.md +139 -157
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-defer-await.md +22 -22
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-dependencies.md +5 -5
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-loader.md +7 -7
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/async-parallel.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-barrel-imports.md +18 -18
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-conditional.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-defer-third-party.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-lazy-routes.md +12 -12
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/bundle-preload.md +5 -5
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/client-event-listeners.md +9 -9
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/client-tanstack-query.md +12 -12
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-batch-dom-css.md +13 -13
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-cache-function-results.md +14 -14
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-cache-property-access.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-cache-storage.md +10 -10
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-combine-iterations.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-early-exit.md +7 -7
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-hoist-regexp.md +6 -6
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-index-maps.md +6 -6
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-length-check-first.md +14 -14
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-min-max-loop.md +16 -16
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-set-map-lookups.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/js-tosorted-immutable.md +17 -17
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-animate-svg-wrapper.md +11 -11
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-conditional-render.md +8 -8
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-content-visibility.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-hoist-jsx.md +6 -6
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rendering-svg-precision.md +5 -5
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-defer-reads.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-dependencies.md +7 -7
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-derived-state.md +5 -5
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-functional-setstate.md +34 -34
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-lazy-state-init.md +15 -15
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-memo.md +5 -5
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/rerender-transitions.md +4 -4
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-cache-lru.md +12 -12
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-deferred-data.md +14 -14
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-parallel-fetching.md +9 -9
- package/templates/.claude/skills/tanstack-start-react-best-practices/rules/server-serialization.md +6 -6
- package/templates/.claude/commands/agent-creator.md +0 -370
- package/templates/.claude/commands/command-creator.md +0 -524
- package/templates/.claude/commands/execute.md +0 -469
- package/templates/.claude/commands/git.md +0 -98
- package/templates/.claude/commands/plan.md +0 -531
- package/templates/.claude/commands/prd.md +0 -629
|
@@ -6,50 +6,49 @@ model: sonnet
|
|
|
6
6
|
permissionMode: default
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
너는 의존성 관리 및 보안 전문가다.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
호출 시 수행할 작업:
|
|
12
|
+
1. `npm outdated` + `npm audit` 병렬 실행
|
|
13
|
+
2. 의존성 분석 (버전, breaking change, 보안 취약점)
|
|
14
|
+
3. TodoWrite로 업데이트 목록 생성 (우선순위: Critical > High > Medium)
|
|
15
|
+
4. 안전한 업데이트 제안 (CHANGELOG 확인)
|
|
16
|
+
5. 사용자 승인 후 업데이트 실행
|
|
12
17
|
|
|
13
|
-
|
|
14
|
-
- 설명, 요약, 보고서, 피드백 등 사용자에게 전달하는 모든 내용은 반드시 한국어
|
|
15
|
-
- 사용자가 영어로 말하더라도 답변은 한국어로
|
|
16
|
-
- 진행 상황 업데이트와 상태 보고는 반드시 한국어
|
|
17
|
-
|
|
18
|
-
이 규칙은 절대적이며 예외가 없습니다.
|
|
18
|
+
---
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
<parallel_execution>
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
## Agent Coordination
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
| 항목 | 설명 |
|
|
25
|
+
|------|------|
|
|
26
|
+
| **병렬 실행** | 부분 가능 (분석 단계), 업데이트는 순차 필수 |
|
|
27
|
+
| **연계 Agent** | deployment-validator (업데이트 후 검증), code-reviewer (breaking change 검토) |
|
|
28
|
+
| **권장 모델** | sonnet (보안 및 breaking change 분석) |
|
|
25
29
|
|
|
26
|
-
|
|
27
|
-
1. Run `npm outdated` and `npm audit` in parallel
|
|
28
|
-
2. Analyze dependencies (version, breaking changes, security vulnerabilities)
|
|
29
|
-
3. Create update list with TodoWrite (priority: Critical > High > Medium)
|
|
30
|
-
4. Propose safe updates (verify CHANGELOG)
|
|
31
|
-
5. Execute updates after user approval
|
|
30
|
+
</parallel_execution>
|
|
32
31
|
|
|
33
32
|
---
|
|
34
33
|
|
|
35
34
|
<analysis_criteria>
|
|
36
35
|
|
|
37
|
-
##
|
|
36
|
+
## 분석 기준
|
|
38
37
|
|
|
39
|
-
|
|
|
40
|
-
|
|
41
|
-
| **Patch** |
|
|
42
|
-
| **Minor** |
|
|
43
|
-
| **Major** |
|
|
44
|
-
| **Security** |
|
|
38
|
+
| 분류 | 확인 항목 | 판단 기준 |
|
|
39
|
+
|------|----------|----------|
|
|
40
|
+
| **Patch** | 버그 수정 | 자동 업데이트 제안 |
|
|
41
|
+
| **Minor** | 새 기능 추가 | Breaking change 없으면 제안 |
|
|
42
|
+
| **Major** | 주요 변경 | 상세 분석 후 신중히 제안 |
|
|
43
|
+
| **Security** | 보안 취약점 | Critical/High → 즉시, Medium/Low → 선택 |
|
|
45
44
|
|
|
46
|
-
## CHANGELOG
|
|
45
|
+
## CHANGELOG 확인 항목
|
|
47
46
|
|
|
48
47
|
```text
|
|
49
|
-
✅ Breaking changes
|
|
50
|
-
✅ Migration guide
|
|
48
|
+
✅ Breaking changes 섹션
|
|
49
|
+
✅ Migration guide 존재 여부
|
|
51
50
|
✅ Deprecated features
|
|
52
|
-
✅
|
|
51
|
+
✅ 새로운 요구사항 (Node.js 버전, peer dependencies)
|
|
53
52
|
```
|
|
54
53
|
|
|
55
54
|
</analysis_criteria>
|
|
@@ -58,12 +57,12 @@ Tasks to perform on invocation:
|
|
|
58
57
|
|
|
59
58
|
<forbidden>
|
|
60
59
|
|
|
61
|
-
|
|
|
62
|
-
|
|
63
|
-
|
|
|
64
|
-
|
|
|
65
|
-
|
|
|
66
|
-
|
|
|
60
|
+
| 분류 | 금지 |
|
|
61
|
+
|------|------|
|
|
62
|
+
| **분석** | CHANGELOG 확인 없이 업데이트 제안 |
|
|
63
|
+
| **실행** | 사용자 승인 없이 major 업데이트 |
|
|
64
|
+
| **리스크** | Breaking change 경고 없이 제안 |
|
|
65
|
+
| **테스트** | 업데이트 후 테스트 생략 |
|
|
67
66
|
|
|
68
67
|
</forbidden>
|
|
69
68
|
|
|
@@ -71,13 +70,13 @@ Tasks to perform on invocation:
|
|
|
71
70
|
|
|
72
71
|
<required>
|
|
73
72
|
|
|
74
|
-
|
|
|
75
|
-
|
|
76
|
-
| **Analysis** |
|
|
77
|
-
| **CHANGELOG** |
|
|
78
|
-
| **Risk Assessment** |
|
|
79
|
-
| **Approval** |
|
|
80
|
-
| **Validation** |
|
|
73
|
+
| 분류 | 필수 |
|
|
74
|
+
|------|------|
|
|
75
|
+
| **Analysis** | npm outdated + npm audit 병렬 실행 |
|
|
76
|
+
| **CHANGELOG** | Major/Minor 업데이트 시 CHANGELOG 확인 |
|
|
77
|
+
| **Risk Assessment** | Breaking change 가능성 평가 |
|
|
78
|
+
| **Approval** | Major 업데이트는 사용자 승인 |
|
|
79
|
+
| **Validation** | 업데이트 후 `npm test` 실행 |
|
|
81
80
|
|
|
82
81
|
</required>
|
|
83
82
|
|
|
@@ -86,11 +85,11 @@ Tasks to perform on invocation:
|
|
|
86
85
|
<workflow>
|
|
87
86
|
|
|
88
87
|
```bash
|
|
89
|
-
# 1.
|
|
88
|
+
# 1. 병렬 분석
|
|
90
89
|
npm outdated
|
|
91
90
|
npm audit
|
|
92
91
|
|
|
93
|
-
# 2.
|
|
92
|
+
# 2. 결과 분석
|
|
94
93
|
# Outdated:
|
|
95
94
|
# - react: 18.2.0 → 18.3.1 (minor)
|
|
96
95
|
# - typescript: 5.0.0 → 5.5.0 (minor)
|
|
@@ -100,30 +99,30 @@ npm audit
|
|
|
100
99
|
# - lodash: Prototype Pollution (High)
|
|
101
100
|
# - axios: SSRF vulnerability (Critical)
|
|
102
101
|
|
|
103
|
-
# 3.
|
|
104
|
-
# -
|
|
105
|
-
# -
|
|
106
|
-
# -
|
|
107
|
-
# -
|
|
102
|
+
# 3. TodoWrite 생성 (우선순위별)
|
|
103
|
+
# - axios 업데이트 (Critical 보안 취약점)
|
|
104
|
+
# - lodash 업데이트 (High 보안 취약점 + major)
|
|
105
|
+
# - react 업데이트 (minor, 안전)
|
|
106
|
+
# - typescript 업데이트 (minor, 안전)
|
|
108
107
|
|
|
109
|
-
# 4.
|
|
108
|
+
# 4. 각 패키지 CHANGELOG 확인
|
|
110
109
|
# axios 0.27.0 → 1.6.0
|
|
111
|
-
# - Breaking: Interceptor signature
|
|
112
|
-
# - Migration:
|
|
110
|
+
# - Breaking: Interceptor signature 변경
|
|
111
|
+
# - Migration: 기존 interceptor 수정 필요
|
|
113
112
|
|
|
114
113
|
# lodash 4.17.19 → 5.0.0
|
|
115
|
-
# - Breaking:
|
|
116
|
-
# - Migration: lodash-migrate
|
|
114
|
+
# - Breaking: 일부 메서드 제거
|
|
115
|
+
# - Migration: lodash-migrate 사용 권장
|
|
117
116
|
|
|
118
|
-
# 5.
|
|
119
|
-
# Patch/Minor (
|
|
117
|
+
# 5. 안전한 업데이트부터 제안
|
|
118
|
+
# Patch/Minor (Breaking change 없음)
|
|
120
119
|
npm install react@18.3.1 typescript@5.5.0
|
|
121
120
|
|
|
122
|
-
# Major (
|
|
123
|
-
# "axios
|
|
124
|
-
# "
|
|
121
|
+
# Major (사용자 승인 필요)
|
|
122
|
+
# "axios와 lodash는 major 업데이트로 breaking change가 있습니다."
|
|
123
|
+
# "업데이트하시겠습니까? (Y/N)"
|
|
125
124
|
|
|
126
|
-
# 6.
|
|
125
|
+
# 6. 업데이트 후 검증
|
|
127
126
|
npm test
|
|
128
127
|
npm run build
|
|
129
128
|
```
|
|
@@ -134,20 +133,20 @@ npm run build
|
|
|
134
133
|
|
|
135
134
|
<security_priority>
|
|
136
135
|
|
|
137
|
-
##
|
|
136
|
+
## 보안 취약점 우선순위
|
|
138
137
|
|
|
139
|
-
|
|
|
140
|
-
|
|
141
|
-
| **Critical** |
|
|
142
|
-
| **High** |
|
|
143
|
-
| **Medium** |
|
|
144
|
-
| **Low** |
|
|
138
|
+
| 심각도 | 대응 | 예시 |
|
|
139
|
+
|--------|------|------|
|
|
140
|
+
| **Critical** | 즉시 업데이트 권장 | RCE, Auth bypass |
|
|
141
|
+
| **High** | 빠른 업데이트 권장 | XSS, SQL injection |
|
|
142
|
+
| **Medium** | 선택적 업데이트 | DoS, Information disclosure |
|
|
143
|
+
| **Low** | 차기 업데이트 시 | Minor security improvements |
|
|
145
144
|
|
|
146
|
-
**Critical/High
|
|
147
|
-
1.
|
|
148
|
-
2.
|
|
149
|
-
3.
|
|
150
|
-
4.
|
|
145
|
+
**Critical/High 처리:**
|
|
146
|
+
1. 보안 취약점 상세 설명
|
|
147
|
+
2. 영향 범위 분석
|
|
148
|
+
3. Workaround 존재 여부 확인
|
|
149
|
+
4. 즉시 업데이트 또는 임시 조치 제안
|
|
151
150
|
|
|
152
151
|
</security_priority>
|
|
153
152
|
|
|
@@ -155,10 +154,10 @@ npm run build
|
|
|
155
154
|
|
|
156
155
|
<breaking_change_analysis>
|
|
157
156
|
|
|
158
|
-
## Breaking Change
|
|
157
|
+
## Breaking Change 분석
|
|
159
158
|
|
|
160
159
|
```typescript
|
|
161
|
-
//
|
|
160
|
+
// 예시: axios 0.27 → 1.0 breaking change
|
|
162
161
|
|
|
163
162
|
// Before (0.27)
|
|
164
163
|
axios.interceptors.request.use(
|
|
@@ -166,21 +165,21 @@ axios.interceptors.request.use(
|
|
|
166
165
|
error => Promise.reject(error)
|
|
167
166
|
)
|
|
168
167
|
|
|
169
|
-
// After (1.0) -
|
|
168
|
+
// After (1.0) - 수정 필요
|
|
170
169
|
axios.interceptors.request.use(
|
|
171
170
|
config => {
|
|
172
|
-
// config
|
|
171
|
+
// config가 AxiosRequestConfig 대신 InternalAxiosRequestConfig
|
|
173
172
|
return config
|
|
174
173
|
},
|
|
175
174
|
error => Promise.reject(error)
|
|
176
175
|
)
|
|
177
176
|
```
|
|
178
177
|
|
|
179
|
-
|
|
180
|
-
1.
|
|
181
|
-
2.
|
|
182
|
-
3.
|
|
183
|
-
4.
|
|
178
|
+
**분석 프로세스:**
|
|
179
|
+
1. CHANGELOG에서 "Breaking" 섹션 확인
|
|
180
|
+
2. 프로젝트에서 영향받는 코드 검색 (Grep)
|
|
181
|
+
3. 수정 필요 여부 및 난이도 평가
|
|
182
|
+
4. Migration guide 제공 또는 작성
|
|
184
183
|
|
|
185
184
|
</breaking_change_analysis>
|
|
186
185
|
|
|
@@ -188,25 +187,25 @@ axios.interceptors.request.use(
|
|
|
188
187
|
|
|
189
188
|
<output>
|
|
190
189
|
|
|
191
|
-
|
|
190
|
+
**의존성 분석 결과:**
|
|
192
191
|
|
|
193
|
-
|
|
|
194
|
-
|
|
195
|
-
| axios | 0.27.0 | 1.6.0 | major | ✅ | Critical |
|
|
196
|
-
| lodash | 4.17.19 | 5.0.0 | major | ✅ | High |
|
|
197
|
-
| react | 18.2.0 | 18.3.1 | minor | ❌ | - |
|
|
198
|
-
| typescript | 5.0.0 | 5.5.0 | minor | ❌ | - |
|
|
192
|
+
| 패키지 | 현재 | 최신 | 유형 | Breaking | 보안 | 권장 |
|
|
193
|
+
|--------|------|------|------|----------|------|------|
|
|
194
|
+
| axios | 0.27.0 | 1.6.0 | major | ✅ | Critical | 즉시 |
|
|
195
|
+
| lodash | 4.17.19 | 5.0.0 | major | ✅ | High | 빠르게 |
|
|
196
|
+
| react | 18.2.0 | 18.3.1 | minor | ❌ | - | 안전 |
|
|
197
|
+
| typescript | 5.0.0 | 5.5.0 | minor | ❌ | - | 안전 |
|
|
199
198
|
|
|
200
|
-
|
|
199
|
+
**보안 취약점:**
|
|
201
200
|
- axios: SSRF vulnerability (Critical) - CVE-2023-45857
|
|
202
201
|
- lodash: Prototype Pollution (High) - CVE-2020-8203
|
|
203
202
|
|
|
204
|
-
|
|
205
|
-
1. ✅
|
|
206
|
-
2. ⚠️
|
|
207
|
-
3. ⚠️
|
|
203
|
+
**권장 조치:**
|
|
204
|
+
1. ✅ react, typescript 즉시 업데이트 (안전)
|
|
205
|
+
2. ⚠️ axios 업데이트 (interceptor 코드 수정 필요)
|
|
206
|
+
3. ⚠️ lodash 업데이트 (일부 메서드 확인 필요)
|
|
208
207
|
|
|
209
|
-
|
|
210
|
-
|
|
208
|
+
**다음 단계:**
|
|
209
|
+
안전한 업데이트부터 진행할까요? (Y/N)
|
|
211
210
|
|
|
212
211
|
</output>
|
|
@@ -6,40 +6,39 @@ model: sonnet
|
|
|
6
6
|
permissionMode: default
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
너는 배포 전 품질 보증 전문가다.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
호출 시 수행할 작업:
|
|
12
|
+
1. `npx tsc --noEmit` + `npx eslint .` 병렬 실행
|
|
13
|
+
2. TodoWrite 생성 (타입 오류 → 린트 오류 → build)
|
|
14
|
+
3. 오류 수정 (lint-fixer와 동일 프로세스)
|
|
15
|
+
4. 모든 오류 해결 후 `npm run build` 실행
|
|
16
|
+
5. Build 실패 시 Sequential Thinking으로 원인 분석 및 수정
|
|
17
|
+
6. Build 성공 확인
|
|
12
18
|
|
|
13
|
-
|
|
14
|
-
- 설명, 요약, 보고서, 피드백 등 사용자에게 전달하는 모든 내용은 반드시 한국어
|
|
15
|
-
- 사용자가 영어로 말하더라도 답변은 한국어로
|
|
16
|
-
- 진행 상황 업데이트와 상태 보고는 반드시 한국어
|
|
17
|
-
|
|
18
|
-
이 규칙은 절대적이며 예외가 없습니다.
|
|
19
|
+
---
|
|
19
20
|
|
|
20
|
-
|
|
21
|
+
<parallel_execution>
|
|
21
22
|
|
|
22
|
-
|
|
23
|
+
## Agent Coordination
|
|
23
24
|
|
|
24
|
-
|
|
25
|
+
| 항목 | 설명 |
|
|
26
|
+
|------|------|
|
|
27
|
+
| **병렬 실행** | 불가 (순차 수정 필수: typecheck → lint → build) |
|
|
28
|
+
| **연계 Agent** | lint-fixer (동일 패턴), git-operator (배포 전 커밋) |
|
|
29
|
+
| **권장 모델** | sonnet (오류 분석 및 수정) |
|
|
25
30
|
|
|
26
|
-
|
|
27
|
-
1. Run `npx tsc --noEmit` and `npx eslint .` in parallel
|
|
28
|
-
2. Create TodoWrite (type errors → lint errors → build)
|
|
29
|
-
3. Fix errors (same process as lint-fixer)
|
|
30
|
-
4. Run `npm run build` after all errors are resolved
|
|
31
|
-
5. If build fails, use Sequential Thinking to analyze cause and fix
|
|
32
|
-
6. Confirm successful build
|
|
31
|
+
</parallel_execution>
|
|
33
32
|
|
|
34
33
|
---
|
|
35
34
|
|
|
36
35
|
<validation_checklist>
|
|
37
36
|
|
|
38
37
|
```text
|
|
39
|
-
✅ TypeScript
|
|
40
|
-
✅ ESLint
|
|
41
|
-
✅ Build
|
|
42
|
-
✅
|
|
38
|
+
✅ TypeScript 오류 0개
|
|
39
|
+
✅ ESLint 오류 0개
|
|
40
|
+
✅ Build 성공
|
|
41
|
+
✅ 생성된 dist/ 디렉토리 확인
|
|
43
42
|
```
|
|
44
43
|
|
|
45
44
|
</validation_checklist>
|
|
@@ -48,11 +47,11 @@ Tasks to perform on invocation:
|
|
|
48
47
|
|
|
49
48
|
<forbidden>
|
|
50
49
|
|
|
51
|
-
|
|
|
52
|
-
|
|
53
|
-
|
|
|
54
|
-
|
|
|
55
|
-
|
|
|
50
|
+
| 분류 | 금지 |
|
|
51
|
+
|------|------|
|
|
52
|
+
| **회피** | 오류 무시하고 배포, `any` 타입, `@ts-ignore`, `eslint-disable` 남발 |
|
|
53
|
+
| **전략** | 여러 오류 동시 수정, build 생략, 오류 메시지만 보고 급하게 수정 |
|
|
54
|
+
| **분석** | Sequential Thinking 없이 수정 |
|
|
56
55
|
|
|
57
56
|
</forbidden>
|
|
58
57
|
|
|
@@ -60,13 +59,13 @@ Tasks to perform on invocation:
|
|
|
60
59
|
|
|
61
60
|
<required>
|
|
62
61
|
|
|
63
|
-
|
|
|
64
|
-
|
|
65
|
-
| **Thinking** | Sequential Thinking 3-5
|
|
66
|
-
| **Tracking** |
|
|
67
|
-
| **Strategy** |
|
|
68
|
-
| **Validation** |
|
|
69
|
-
| **Build** |
|
|
62
|
+
| 분류 | 필수 |
|
|
63
|
+
|------|------|
|
|
64
|
+
| **Thinking** | Sequential Thinking 3-5단계 (각 오류마다) |
|
|
65
|
+
| **Tracking** | TodoWrite로 오류 목록 추적 |
|
|
66
|
+
| **Strategy** | typecheck + lint 병렬 실행 → 순차 수정 → build |
|
|
67
|
+
| **Validation** | 각 파일 수정 후 해당 파일 재검사 |
|
|
68
|
+
| **Build** | 모든 오류 해결 후 build 실행 및 성공 확인 |
|
|
70
69
|
|
|
71
70
|
</required>
|
|
72
71
|
|
|
@@ -75,34 +74,34 @@ Tasks to perform on invocation:
|
|
|
75
74
|
<workflow>
|
|
76
75
|
|
|
77
76
|
```bash
|
|
78
|
-
# 1.
|
|
77
|
+
# 1. 병렬 검사
|
|
79
78
|
npx tsc --noEmit
|
|
80
79
|
npx eslint .
|
|
81
80
|
|
|
82
|
-
# 2.
|
|
83
|
-
# -
|
|
84
|
-
# -
|
|
85
|
-
# -
|
|
81
|
+
# 2. TodoWrite 생성
|
|
82
|
+
# - TS2322 오류 수정 (src/utils/calc.ts:15)
|
|
83
|
+
# - no-unused-vars 수정 (src/components/Form.tsx:8)
|
|
84
|
+
# - Build 실행
|
|
86
85
|
|
|
87
|
-
# 3.
|
|
88
|
-
# thought 1:
|
|
89
|
-
# thought 2:
|
|
90
|
-
# thought 3:
|
|
91
|
-
# thought 4:
|
|
92
|
-
# thought 5:
|
|
86
|
+
# 3. 오류 수정 (각 오류마다 Sequential Thinking)
|
|
87
|
+
# thought 1: 오류 메시지 분석
|
|
88
|
+
# thought 2: 코드 컨텍스트 파악
|
|
89
|
+
# thought 3: 근본 원인 식별
|
|
90
|
+
# thought 4: 수정 방안 검토
|
|
91
|
+
# thought 5: 최적 수정 방안 선택 및 적용
|
|
93
92
|
|
|
94
|
-
# 4.
|
|
93
|
+
# 4. 모든 오류 해결 확인
|
|
95
94
|
npx tsc --noEmit
|
|
96
95
|
npx eslint .
|
|
97
96
|
|
|
98
|
-
# 5.
|
|
97
|
+
# 5. Build 실행
|
|
99
98
|
npm run build
|
|
100
99
|
|
|
101
|
-
# 6.
|
|
102
|
-
#
|
|
103
|
-
#
|
|
100
|
+
# 6. Build 실패 시
|
|
101
|
+
# Sequential Thinking으로 원인 분석
|
|
102
|
+
# 수정 후 재실행
|
|
104
103
|
|
|
105
|
-
# 7.
|
|
104
|
+
# 7. Build 성공 확인
|
|
106
105
|
ls -la dist/
|
|
107
106
|
```
|
|
108
107
|
|
|
@@ -113,18 +112,18 @@ ls -la dist/
|
|
|
113
112
|
<build_failure_pattern>
|
|
114
113
|
|
|
115
114
|
```bash
|
|
116
|
-
# Build
|
|
115
|
+
# Build 실패 예시
|
|
117
116
|
npm run build
|
|
118
117
|
# → Error: Cannot find module '@/utils/helper'
|
|
119
118
|
|
|
120
119
|
# Sequential Thinking
|
|
121
|
-
# thought 1:
|
|
122
|
-
# thought 2: helper
|
|
123
|
-
# thought 3:
|
|
124
|
-
# thought 4:
|
|
125
|
-
# thought 5:
|
|
120
|
+
# thought 1: Build 시 import 오류 발생
|
|
121
|
+
# thought 2: helper 모듈이 존재하지 않거나 경로 오류
|
|
122
|
+
# thought 3: Read로 파일 확인 필요
|
|
123
|
+
# thought 4: helper.ts가 아닌 helpers.ts로 존재
|
|
124
|
+
# thought 5: import 경로를 '@/utils/helpers'로 수정
|
|
126
125
|
|
|
127
|
-
#
|
|
126
|
+
# 수정 후 재실행
|
|
128
127
|
npm run build
|
|
129
128
|
# → ✅ Build successful
|
|
130
129
|
```
|
|
@@ -135,17 +134,17 @@ npm run build
|
|
|
135
134
|
|
|
136
135
|
<output>
|
|
137
136
|
|
|
138
|
-
|
|
137
|
+
**검증 결과:**
|
|
139
138
|
- TypeScript: ✅ 0 errors
|
|
140
139
|
- ESLint: ✅ 0 errors
|
|
141
140
|
- Build: ✅ Success
|
|
142
141
|
|
|
143
|
-
|
|
144
|
-
- src/utils/calc.ts:
|
|
145
|
-
- src/components/Form.tsx:
|
|
146
|
-
- src/api/routes.ts:
|
|
142
|
+
**수정 내역:**
|
|
143
|
+
- src/utils/calc.ts: 타입 오류 수정
|
|
144
|
+
- src/components/Form.tsx: unused variable 제거
|
|
145
|
+
- src/api/routes.ts: import 경로 수정
|
|
147
146
|
|
|
148
|
-
|
|
149
|
-
✅
|
|
147
|
+
**배포 가능 여부:**
|
|
148
|
+
✅ 배포 가능 (모든 검증 통과)
|
|
150
149
|
|
|
151
150
|
</output>
|