aiwf 0.3.15 → 0.3.16
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/README.ko.md +3 -4
- package/README.md +38 -3
- package/docs/API_REFERENCE_FULL.ko.md +979 -0
- package/docs/API_REFERENCE_FULL.md +979 -0
- package/docs/ARCHITECTURE.ko.md +314 -0
- package/docs/ARCHITECTURE.md +314 -0
- package/docs/GETTING_STARTED.ko.md +219 -0
- package/docs/GETTING_STARTED.md +0 -1
- package/docs/PERFORMANCE_GUIDELINES.ko.md +388 -0
- package/docs/TROUBLESHOOTING.ko.md +366 -0
- package/package.json +50 -2
- package/src/DEPENDENCY_MAP.md +90 -0
- package/src/lib/installer.js +1 -0
- package/src/lib/resources/templates/api-server/template/src/controllers/aiwfController.ts +0 -14
- package/src/lib/resources/templates/api-server/template/src/routes/aiwf.ts +0 -11
- package/src/lib/resources/templates/web-app/template/src/pages/AiwfDashboard.tsx +2 -5
- package/src/lib/resources/utils/token-reporter.js +2 -3
- package/src/utils/checkpoint-manager.js +11 -1
- package/src/utils/engineering-guard.js +11 -1
- package/templates/api-server/template/src/controllers/aiwfController.ts +0 -14
- package/templates/api-server/template/src/routes/aiwf.ts +0 -11
- package/templates/web-app/template/src/pages/AiwfDashboard.tsx +2 -5
- package/docs/guides/feature-git-integration-guide-ko.md +0 -481
- package/docs/guides/feature-git-integration-guide.md +0 -481
- package/src/commands/cache-templates.js +0 -209
- package/src/commands/create-offline.js +0 -86
- package/src/commands/state-refactored.js +0 -419
- package/src/lib/resources/commands/feature-ledger.js +0 -565
- package/src/lib/resources/commands/feature_commit_report.js +0 -370
- package/src/lib/resources/commands/scan_git_history.js +0 -234
- package/src/lib/resources/commands/sync_feature_commits.js +0 -154
- package/src/lib/resources/templates/web-app/template/src/components/aiwf/FeatureLedger.tsx +0 -93
- package/src/lib/resources/utils/feature-updater.js +0 -271
- package/src/utils/git-integration.js +0 -173
- package/templates/web-app/template/src/components/aiwf/FeatureLedger.tsx +0 -93
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
# AIWF 시작하기
|
|
2
|
+
|
|
3
|
+
[한국어](GETTING_STARTED.ko.md) | [English](GETTING_STARTED.md)
|
|
4
|
+
|
|
5
|
+
> AIWF를 사용하여 AI 지원 개발을 시작하는 빠른 가이드
|
|
6
|
+
|
|
7
|
+
## 📋 목차
|
|
8
|
+
|
|
9
|
+
1. [설치](#설치)
|
|
10
|
+
2. [첫 프로젝트 설정](#첫-프로젝트-설정)
|
|
11
|
+
3. [기본 워크플로우](#기본-워크플로우)
|
|
12
|
+
4. [핵심 개념](#핵심-개념)
|
|
13
|
+
5. [다음 단계](#다음-단계)
|
|
14
|
+
|
|
15
|
+
## 설치
|
|
16
|
+
|
|
17
|
+
### 전역 설치 (권장)
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm install -g aiwf
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### 프로젝트에 AIWF 설치
|
|
24
|
+
|
|
25
|
+
프로젝트 디렉토리로 이동한 후:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
aiwf install
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
설치 프로그램이 다음을 안내합니다:
|
|
32
|
+
1. **언어 선택**: 한국어 또는 영어 선택
|
|
33
|
+
2. **프로젝트 설정**: 현재 디렉토리에 AIWF 초기화
|
|
34
|
+
3. **Claude 명령어**: 언어별 명령어 설치
|
|
35
|
+
4. **문서**: 가이드 및 템플릿 다운로드
|
|
36
|
+
|
|
37
|
+
## 첫 프로젝트 설정
|
|
38
|
+
|
|
39
|
+
### 1. 새 프로젝트 생성
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# 대화형 프로젝트 생성
|
|
43
|
+
aiwf create-project
|
|
44
|
+
|
|
45
|
+
# 템플릿 사용
|
|
46
|
+
aiwf create-project my-api --template api-server
|
|
47
|
+
aiwf create-project my-lib --template npm-library
|
|
48
|
+
aiwf create-project my-app --template web-app
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### 2. 기존 프로젝트에 AIWF 추가
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
cd my-existing-project
|
|
55
|
+
aiwf install
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 3. 프로젝트 상태 초기화
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
aiwf state init
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## 기본 워크플로우
|
|
65
|
+
|
|
66
|
+
### 1. 마일스톤 계획
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
# PRD로부터 마일스톤 생성
|
|
70
|
+
aiwf create-milestone-plan
|
|
71
|
+
|
|
72
|
+
# 마일스톤으로부터 스프린트 생성
|
|
73
|
+
aiwf create-sprints-from-milestone
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### 2. 태스크 관리
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# 일반 태스크 생성
|
|
80
|
+
aiwf create-general-task "기능 구현" --description "사용자 인증 추가"
|
|
81
|
+
|
|
82
|
+
# 스프린트에 태스크 추가
|
|
83
|
+
aiwf add-sprint-task S01 "API 엔드포인트 구현"
|
|
84
|
+
|
|
85
|
+
# 스마트 태스크 시작
|
|
86
|
+
aiwf smart-start
|
|
87
|
+
|
|
88
|
+
# 태스크 완료
|
|
89
|
+
aiwf smart-complete
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 3. 상태 추적
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# 상태 업데이트
|
|
96
|
+
aiwf state update
|
|
97
|
+
|
|
98
|
+
# 현재 상태 확인
|
|
99
|
+
aiwf state show
|
|
100
|
+
|
|
101
|
+
# 다음 추천 작업
|
|
102
|
+
aiwf state next
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### 4. YOLO 모드 (자율 실행)
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
# 전체 스프린트 자동 실행
|
|
109
|
+
aiwf yolo
|
|
110
|
+
|
|
111
|
+
# 안전 모드로 실행
|
|
112
|
+
aiwf yolo --safe
|
|
113
|
+
|
|
114
|
+
# 드라이런 (시뮬레이션)
|
|
115
|
+
aiwf yolo --dry-run
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## 핵심 개념
|
|
119
|
+
|
|
120
|
+
### 📂 프로젝트 구조
|
|
121
|
+
|
|
122
|
+
```
|
|
123
|
+
my-project/
|
|
124
|
+
├── .aiwf/ # AIWF 구성 및 상태
|
|
125
|
+
│ ├── config.json # 프로젝트 설정
|
|
126
|
+
│ ├── state/ # 상태 파일
|
|
127
|
+
│ └── checkpoints/ # YOLO 체크포인트
|
|
128
|
+
├── milestones/ # 마일스톤 정의
|
|
129
|
+
├── sprints/ # 스프린트 정의
|
|
130
|
+
└── tasks/ # 태스크 파일
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 🎯 워크플로우 단계
|
|
134
|
+
|
|
135
|
+
1. **계획 (Planning)**
|
|
136
|
+
- PRD 작성
|
|
137
|
+
- 마일스톤 정의
|
|
138
|
+
- 스프린트 분할
|
|
139
|
+
|
|
140
|
+
2. **개발 (Development)**
|
|
141
|
+
- 태스크 생성 및 할당
|
|
142
|
+
- 코드 구현
|
|
143
|
+
- 테스트 작성
|
|
144
|
+
|
|
145
|
+
3. **리뷰 (Review)**
|
|
146
|
+
- 코드 리뷰
|
|
147
|
+
- 테스트 실행
|
|
148
|
+
- 품질 평가
|
|
149
|
+
|
|
150
|
+
4. **배포 (Deployment)**
|
|
151
|
+
- 최종 검증
|
|
152
|
+
- 릴리스 준비
|
|
153
|
+
- 문서 업데이트
|
|
154
|
+
|
|
155
|
+
### 🤖 AI 페르소나
|
|
156
|
+
|
|
157
|
+
AIWF는 전문 AI 페르소나를 제공합니다:
|
|
158
|
+
|
|
159
|
+
- **Architect**: 시스템 설계 및 아키텍처
|
|
160
|
+
- **Backend**: 백엔드 개발 및 API
|
|
161
|
+
- **Frontend**: UI/UX 및 프론트엔드
|
|
162
|
+
- **Security**: 보안 검토 및 개선
|
|
163
|
+
- **Data Analyst**: 데이터 분석 및 최적화
|
|
164
|
+
|
|
165
|
+
페르소나 사용 예:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
# 아키텍처 리뷰
|
|
169
|
+
aiwf persona apply architect
|
|
170
|
+
|
|
171
|
+
# 보안 검토
|
|
172
|
+
aiwf persona apply security
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### 💾 체크포인트 시스템
|
|
176
|
+
|
|
177
|
+
YOLO 모드 실행 중 진행 상황 자동 저장:
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
# 체크포인트 목록
|
|
181
|
+
aiwf checkpoint list
|
|
182
|
+
|
|
183
|
+
# 특정 체크포인트에서 재개
|
|
184
|
+
aiwf yolo --resume checkpoint-id
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
## 다음 단계
|
|
188
|
+
|
|
189
|
+
### 📚 추천 문서
|
|
190
|
+
|
|
191
|
+
1. **[명령어 가이드](COMMANDS_GUIDE.ko.md)** - 모든 AIWF 명령어 상세 설명
|
|
192
|
+
2. **[상태 관리 가이드](STATE_MANAGEMENT_GUIDE.ko.md)** - 고급 상태 관리 기법
|
|
193
|
+
3. **[AI 페르소나 가이드](guides/ai-personas-guide-ko.md)** - 페르소나 활용법
|
|
194
|
+
4. **[독립 스프린트 가이드](guides/independent-sprint-guide-ko.md)** - YOLO 최적화 스프린트
|
|
195
|
+
|
|
196
|
+
### 🎓 학습 경로
|
|
197
|
+
|
|
198
|
+
1. **초급**: 기본 명령어와 워크플로우 익히기
|
|
199
|
+
2. **중급**: 상태 관리와 AI 페르소나 활용
|
|
200
|
+
3. **고급**: YOLO 모드와 커스터마이징
|
|
201
|
+
|
|
202
|
+
### 💡 팁
|
|
203
|
+
|
|
204
|
+
- 항상 `aiwf state update`로 상태 동기화
|
|
205
|
+
- 큰 작업은 작은 태스크로 분할
|
|
206
|
+
- YOLO 모드는 충분한 컨텍스트와 함께 사용
|
|
207
|
+
- 정기적으로 체크포인트 확인
|
|
208
|
+
|
|
209
|
+
## 🆘 도움말
|
|
210
|
+
|
|
211
|
+
문제가 발생하면:
|
|
212
|
+
|
|
213
|
+
1. `aiwf --help` 명령어 도움말 확인
|
|
214
|
+
2. [문제 해결 가이드](TROUBLESHOOTING.ko.md) 참조
|
|
215
|
+
3. [GitHub 이슈](https://github.com/moonklabs/aiwf/issues) 제출
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
🎉 이제 AIWF로 AI 지원 개발을 시작할 준비가 되었습니다!
|
package/docs/GETTING_STARTED.md
CHANGED
|
@@ -169,7 +169,6 @@ my-project/
|
|
|
169
169
|
│ │ └── S03_M01_integration_testing/
|
|
170
170
|
│ ├── 04_GENERAL_TASKS/ # Non-sprint tasks
|
|
171
171
|
│ ├── 05_ARCHITECTURAL_DECISIONS/ # ADRs
|
|
172
|
-
│ ├── 06_FEATURE_LEDGERS/ # Feature tracking
|
|
173
172
|
│ └── 99_TEMPLATES/ # Reusable templates
|
|
174
173
|
├── .claude/commands/aiwf/ # Claude commands
|
|
175
174
|
├── src/ # Your source code
|
|
@@ -0,0 +1,388 @@
|
|
|
1
|
+
# AIWF 성능 가이드라인
|
|
2
|
+
|
|
3
|
+
[한국어](PERFORMANCE_GUIDELINES.ko.md) | [English](PERFORMANCE_GUIDELINES.md)
|
|
4
|
+
|
|
5
|
+
> AIWF 프로젝트의 성능을 최적화하기 위한 모범 사례와 가이드라인
|
|
6
|
+
|
|
7
|
+
## 📋 목차
|
|
8
|
+
|
|
9
|
+
1. [개요](#개요)
|
|
10
|
+
2. [토큰 최적화](#토큰-최적화)
|
|
11
|
+
3. [파일 시스템 성능](#파일-시스템-성능)
|
|
12
|
+
4. [상태 관리 최적화](#상태-관리-최적화)
|
|
13
|
+
5. [메모리 관리](#메모리-관리)
|
|
14
|
+
6. [명령어 실행 최적화](#명령어-실행-최적화)
|
|
15
|
+
7. [AI 상호작용 최적화](#ai-상호작용-최적화)
|
|
16
|
+
8. [모니터링과 프로파일링](#모니터링과-프로파일링)
|
|
17
|
+
|
|
18
|
+
## 개요
|
|
19
|
+
|
|
20
|
+
AIWF의 성능은 다음 요소들에 의해 결정됩니다:
|
|
21
|
+
- AI 모델과의 토큰 교환량
|
|
22
|
+
- 파일 시스템 작업 효율성
|
|
23
|
+
- 상태 관리 오버헤드
|
|
24
|
+
- 메모리 사용량
|
|
25
|
+
- 명령어 실행 시간
|
|
26
|
+
|
|
27
|
+
이 가이드는 각 영역에서 성능을 최적화하는 방법을 설명합니다.
|
|
28
|
+
|
|
29
|
+
## 토큰 최적화
|
|
30
|
+
|
|
31
|
+
### 컨텍스트 압축 전략
|
|
32
|
+
|
|
33
|
+
토큰 사용량을 줄이는 것은 비용과 성능 모두에 중요합니다.
|
|
34
|
+
|
|
35
|
+
#### 1. 적절한 압축 레벨 선택
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
# 최소 압축 (중요 정보 보존)
|
|
39
|
+
aiwf compress minimal
|
|
40
|
+
|
|
41
|
+
# 균형 압축 (권장)
|
|
42
|
+
aiwf compress balanced
|
|
43
|
+
|
|
44
|
+
# 공격적 압축 (최대 토큰 절약)
|
|
45
|
+
aiwf compress aggressive
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
#### 2. 페르소나 기반 압축
|
|
49
|
+
|
|
50
|
+
활성 페르소나에 맞춰 관련 정보만 보존:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# 백엔드 작업 시
|
|
54
|
+
aiwf persona apply backend
|
|
55
|
+
aiwf compress with-persona
|
|
56
|
+
|
|
57
|
+
# 프론트엔드 작업 시
|
|
58
|
+
aiwf persona apply frontend
|
|
59
|
+
aiwf compress with-persona
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
#### 3. 파일 필터링
|
|
63
|
+
|
|
64
|
+
불필요한 파일 제외:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# .aiwfignore 파일 생성
|
|
68
|
+
cat > .aiwfignore << EOF
|
|
69
|
+
# 빌드 산출물
|
|
70
|
+
dist/
|
|
71
|
+
build/
|
|
72
|
+
*.min.js
|
|
73
|
+
*.map
|
|
74
|
+
|
|
75
|
+
# 의존성
|
|
76
|
+
node_modules/
|
|
77
|
+
vendor/
|
|
78
|
+
|
|
79
|
+
# 로그 및 캐시
|
|
80
|
+
*.log
|
|
81
|
+
.cache/
|
|
82
|
+
coverage/
|
|
83
|
+
|
|
84
|
+
# 대용량 파일
|
|
85
|
+
*.jpg
|
|
86
|
+
*.png
|
|
87
|
+
*.mp4
|
|
88
|
+
*.zip
|
|
89
|
+
EOF
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 토큰 사용량 모니터링
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# 현재 세션 토큰 사용량
|
|
96
|
+
aiwf token status
|
|
97
|
+
|
|
98
|
+
# 일일 리포트
|
|
99
|
+
aiwf token report daily
|
|
100
|
+
|
|
101
|
+
# 주간 리포트
|
|
102
|
+
aiwf token report weekly
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### 토큰 한도 설정
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
# 세션당 한도 설정
|
|
109
|
+
aiwf token limit session 50000
|
|
110
|
+
|
|
111
|
+
# 일일 한도 설정
|
|
112
|
+
aiwf token limit daily 200000
|
|
113
|
+
|
|
114
|
+
# 경고 임계값 설정
|
|
115
|
+
aiwf token limit warning 0.8
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## 파일 시스템 성능
|
|
119
|
+
|
|
120
|
+
### 인덱싱 최적화
|
|
121
|
+
|
|
122
|
+
#### 1. 선택적 인덱싱
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
# 특정 디렉토리만 인덱싱
|
|
126
|
+
aiwf index --include src/ docs/
|
|
127
|
+
|
|
128
|
+
# 특정 파일 타입만 인덱싱
|
|
129
|
+
aiwf index --types js,ts,md
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
#### 2. 인덱스 캐싱
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
# 인덱스 캐시 활성화
|
|
136
|
+
aiwf config set index.cache true
|
|
137
|
+
|
|
138
|
+
# 캐시 TTL 설정 (초 단위)
|
|
139
|
+
aiwf config set index.cacheTTL 3600
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### 파일 감시 최적화
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
# 감시 제외 패턴 설정
|
|
146
|
+
aiwf config set watch.ignore "node_modules/**,dist/**"
|
|
147
|
+
|
|
148
|
+
# 디바운스 시간 설정 (밀리초)
|
|
149
|
+
aiwf config set watch.debounce 500
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
## 상태 관리 최적화
|
|
153
|
+
|
|
154
|
+
### 상태 파일 크기 관리
|
|
155
|
+
|
|
156
|
+
#### 1. 정기적인 정리
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
# 완료된 태스크 아카이브
|
|
160
|
+
aiwf state archive --older-than 30d
|
|
161
|
+
|
|
162
|
+
# 상태 파일 압축
|
|
163
|
+
aiwf state compact
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
#### 2. 증분 업데이트
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
# 전체 업데이트 대신 증분 업데이트 사용
|
|
170
|
+
aiwf state update --incremental
|
|
171
|
+
|
|
172
|
+
# 특정 스프린트만 업데이트
|
|
173
|
+
aiwf state update --sprint S01
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
### 상태 검증 최적화
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
# 빠른 검증 (기본 체크만)
|
|
180
|
+
aiwf state validate --quick
|
|
181
|
+
|
|
182
|
+
# 비동기 검증
|
|
183
|
+
aiwf state validate --async
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## 메모리 관리
|
|
187
|
+
|
|
188
|
+
### Node.js 메모리 설정
|
|
189
|
+
|
|
190
|
+
```bash
|
|
191
|
+
# 힙 메모리 증가
|
|
192
|
+
export NODE_OPTIONS="--max-old-space-size=4096"
|
|
193
|
+
|
|
194
|
+
# 또는 .aiwf/config.json에 설정
|
|
195
|
+
{
|
|
196
|
+
"performance": {
|
|
197
|
+
"nodeOptions": "--max-old-space-size=4096"
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### 메모리 누수 방지
|
|
203
|
+
|
|
204
|
+
#### 1. 리소스 정리
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
# 임시 파일 정리
|
|
208
|
+
aiwf cleanup temp
|
|
209
|
+
|
|
210
|
+
# 오래된 체크포인트 제거
|
|
211
|
+
aiwf checkpoint prune --keep-last 5
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
#### 2. 캐시 관리
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
# 캐시 크기 제한
|
|
218
|
+
aiwf config set cache.maxSize "100MB"
|
|
219
|
+
|
|
220
|
+
# 캐시 정리
|
|
221
|
+
aiwf cache clear
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
## 명령어 실행 최적화
|
|
225
|
+
|
|
226
|
+
### 병렬 처리
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
# 병렬 태스크 실행
|
|
230
|
+
aiwf task run --parallel 4
|
|
231
|
+
|
|
232
|
+
# 독립적인 스프린트 병렬 실행
|
|
233
|
+
aiwf sprint run S01 S02 --parallel
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
### 배치 작업
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
# 여러 태스크 일괄 생성
|
|
240
|
+
aiwf task create-batch tasks.json
|
|
241
|
+
|
|
242
|
+
# 일괄 상태 업데이트
|
|
243
|
+
aiwf state update-batch
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### 지연 로딩
|
|
247
|
+
|
|
248
|
+
```bash
|
|
249
|
+
# 필요시에만 리소스 로드
|
|
250
|
+
aiwf config set lazy.loading true
|
|
251
|
+
|
|
252
|
+
# 명령어별 지연 로딩
|
|
253
|
+
aiwf config set lazy.commands true
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
## AI 상호작용 최적화
|
|
257
|
+
|
|
258
|
+
### 효율적인 프롬프트
|
|
259
|
+
|
|
260
|
+
#### 1. 프롬프트 템플릿 사용
|
|
261
|
+
|
|
262
|
+
```bash
|
|
263
|
+
# 프롬프트 템플릿 생성
|
|
264
|
+
aiwf prompt create backend-api
|
|
265
|
+
|
|
266
|
+
# 템플릿 재사용
|
|
267
|
+
aiwf task create --prompt-template backend-api
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
#### 2. 컨텍스트 재사용
|
|
271
|
+
|
|
272
|
+
```bash
|
|
273
|
+
# 컨텍스트 캐싱 활성화
|
|
274
|
+
aiwf config set ai.contextCache true
|
|
275
|
+
|
|
276
|
+
# 캐시 수명 설정
|
|
277
|
+
aiwf config set ai.contextCacheTTL 1800
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### 응답 최적화
|
|
281
|
+
|
|
282
|
+
```bash
|
|
283
|
+
# 응답 길이 제한
|
|
284
|
+
aiwf config set ai.maxResponseTokens 2000
|
|
285
|
+
|
|
286
|
+
# 스트리밍 응답 활성화
|
|
287
|
+
aiwf config set ai.streaming true
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
## 모니터링과 프로파일링
|
|
291
|
+
|
|
292
|
+
### 성능 메트릭
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
# 성능 모니터링 활성화
|
|
296
|
+
aiwf monitor start
|
|
297
|
+
|
|
298
|
+
# 실시간 메트릭 보기
|
|
299
|
+
aiwf monitor status
|
|
300
|
+
|
|
301
|
+
# 성능 리포트 생성
|
|
302
|
+
aiwf monitor report
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
### 프로파일링
|
|
306
|
+
|
|
307
|
+
```bash
|
|
308
|
+
# CPU 프로파일링
|
|
309
|
+
aiwf profile cpu --duration 30s
|
|
310
|
+
|
|
311
|
+
# 메모리 프로파일링
|
|
312
|
+
aiwf profile memory
|
|
313
|
+
|
|
314
|
+
# 프로파일 분석
|
|
315
|
+
aiwf profile analyze
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### 벤치마크
|
|
319
|
+
|
|
320
|
+
```bash
|
|
321
|
+
# 기본 벤치마크 실행
|
|
322
|
+
aiwf benchmark
|
|
323
|
+
|
|
324
|
+
# 특정 명령어 벤치마크
|
|
325
|
+
aiwf benchmark --command "state update"
|
|
326
|
+
|
|
327
|
+
# 비교 벤치마크
|
|
328
|
+
aiwf benchmark --compare v0.3.0
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
## 모범 사례 체크리스트
|
|
332
|
+
|
|
333
|
+
### 일일 최적화
|
|
334
|
+
- [ ] 토큰 사용량 확인
|
|
335
|
+
- [ ] 임시 파일 정리
|
|
336
|
+
- [ ] 캐시 상태 확인
|
|
337
|
+
|
|
338
|
+
### 주간 최적화
|
|
339
|
+
- [ ] 상태 파일 압축
|
|
340
|
+
- [ ] 오래된 체크포인트 정리
|
|
341
|
+
- [ ] 성능 리포트 검토
|
|
342
|
+
|
|
343
|
+
### 월간 최적화
|
|
344
|
+
- [ ] 전체 인덱스 재구축
|
|
345
|
+
- [ ] 완료된 태스크 아카이브
|
|
346
|
+
- [ ] 성능 벤치마크 실행
|
|
347
|
+
|
|
348
|
+
## 성능 문제 해결
|
|
349
|
+
|
|
350
|
+
### 느린 시작 시간
|
|
351
|
+
|
|
352
|
+
1. **원인 파악**:
|
|
353
|
+
```bash
|
|
354
|
+
aiwf debug startup
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
2. **해결책**:
|
|
358
|
+
- 지연 로딩 활성화
|
|
359
|
+
- 불필요한 플러그인 제거
|
|
360
|
+
- 캐시 프리로드
|
|
361
|
+
|
|
362
|
+
### 높은 메모리 사용
|
|
363
|
+
|
|
364
|
+
1. **메모리 프로파일**:
|
|
365
|
+
```bash
|
|
366
|
+
aiwf profile memory --heap-snapshot
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
2. **해결책**:
|
|
370
|
+
- 캐시 크기 제한
|
|
371
|
+
- 리소스 풀 크기 조정
|
|
372
|
+
- 가비지 컬렉션 튜닝
|
|
373
|
+
|
|
374
|
+
### 느린 파일 작업
|
|
375
|
+
|
|
376
|
+
1. **I/O 분석**:
|
|
377
|
+
```bash
|
|
378
|
+
aiwf debug io
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
2. **해결책**:
|
|
382
|
+
- SSD 사용
|
|
383
|
+
- 파일 감시 최적화
|
|
384
|
+
- 배치 I/O 작업
|
|
385
|
+
|
|
386
|
+
---
|
|
387
|
+
|
|
388
|
+
💡 **프로 팁**: 성능 최적화는 지속적인 과정입니다. 정기적으로 모니터링하고 조정하세요!
|