moai-adk 0.3.0__py3-none-any.whl

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.

Potentially problematic release.


This version of moai-adk might be problematic. Click here for more details.

Files changed (87) hide show
  1. moai_adk/__init__.py +8 -0
  2. moai_adk/__main__.py +86 -0
  3. moai_adk/cli/__init__.py +2 -0
  4. moai_adk/cli/commands/__init__.py +16 -0
  5. moai_adk/cli/commands/backup.py +56 -0
  6. moai_adk/cli/commands/doctor.py +184 -0
  7. moai_adk/cli/commands/init.py +284 -0
  8. moai_adk/cli/commands/restore.py +77 -0
  9. moai_adk/cli/commands/status.py +79 -0
  10. moai_adk/cli/commands/update.py +133 -0
  11. moai_adk/cli/main.py +12 -0
  12. moai_adk/cli/prompts/__init__.py +5 -0
  13. moai_adk/cli/prompts/init_prompts.py +159 -0
  14. moai_adk/core/__init__.py +2 -0
  15. moai_adk/core/git/__init__.py +24 -0
  16. moai_adk/core/git/branch.py +26 -0
  17. moai_adk/core/git/branch_manager.py +137 -0
  18. moai_adk/core/git/checkpoint.py +140 -0
  19. moai_adk/core/git/commit.py +68 -0
  20. moai_adk/core/git/event_detector.py +81 -0
  21. moai_adk/core/git/manager.py +127 -0
  22. moai_adk/core/project/__init__.py +2 -0
  23. moai_adk/core/project/backup_utils.py +84 -0
  24. moai_adk/core/project/checker.py +302 -0
  25. moai_adk/core/project/detector.py +105 -0
  26. moai_adk/core/project/initializer.py +174 -0
  27. moai_adk/core/project/phase_executor.py +297 -0
  28. moai_adk/core/project/validator.py +118 -0
  29. moai_adk/core/quality/__init__.py +6 -0
  30. moai_adk/core/quality/trust_checker.py +441 -0
  31. moai_adk/core/quality/validators/__init__.py +6 -0
  32. moai_adk/core/quality/validators/base_validator.py +19 -0
  33. moai_adk/core/template/__init__.py +8 -0
  34. moai_adk/core/template/backup.py +95 -0
  35. moai_adk/core/template/config.py +95 -0
  36. moai_adk/core/template/languages.py +44 -0
  37. moai_adk/core/template/merger.py +117 -0
  38. moai_adk/core/template/processor.py +310 -0
  39. moai_adk/templates/.claude/agents/alfred/cc-manager.md +474 -0
  40. moai_adk/templates/.claude/agents/alfred/code-builder.md +534 -0
  41. moai_adk/templates/.claude/agents/alfred/debug-helper.md +302 -0
  42. moai_adk/templates/.claude/agents/alfred/doc-syncer.md +175 -0
  43. moai_adk/templates/.claude/agents/alfred/git-manager.md +200 -0
  44. moai_adk/templates/.claude/agents/alfred/project-manager.md +152 -0
  45. moai_adk/templates/.claude/agents/alfred/spec-builder.md +256 -0
  46. moai_adk/templates/.claude/agents/alfred/tag-agent.md +247 -0
  47. moai_adk/templates/.claude/agents/alfred/trust-checker.md +332 -0
  48. moai_adk/templates/.claude/commands/alfred/0-project.md +523 -0
  49. moai_adk/templates/.claude/commands/alfred/1-spec.md +531 -0
  50. moai_adk/templates/.claude/commands/alfred/2-build.md +413 -0
  51. moai_adk/templates/.claude/commands/alfred/3-sync.md +552 -0
  52. moai_adk/templates/.claude/hooks/alfred/README.md +238 -0
  53. moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +165 -0
  54. moai_adk/templates/.claude/hooks/alfred/core/__init__.py +79 -0
  55. moai_adk/templates/.claude/hooks/alfred/core/checkpoint.py +271 -0
  56. moai_adk/templates/.claude/hooks/alfred/core/context.py +110 -0
  57. moai_adk/templates/.claude/hooks/alfred/core/project.py +284 -0
  58. moai_adk/templates/.claude/hooks/alfred/core/tags.py +244 -0
  59. moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +23 -0
  60. moai_adk/templates/.claude/hooks/alfred/handlers/compact.py +51 -0
  61. moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +25 -0
  62. moai_adk/templates/.claude/hooks/alfred/handlers/session.py +80 -0
  63. moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +71 -0
  64. moai_adk/templates/.claude/hooks/alfred/handlers/user.py +41 -0
  65. moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +635 -0
  66. moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +691 -0
  67. moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +469 -0
  68. moai_adk/templates/.claude/settings.json +135 -0
  69. moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +68 -0
  70. moai_adk/templates/.github/workflows/moai-gitflow.yml +255 -0
  71. moai_adk/templates/.gitignore +41 -0
  72. moai_adk/templates/.moai/config.json +89 -0
  73. moai_adk/templates/.moai/memory/development-guide.md +367 -0
  74. moai_adk/templates/.moai/memory/spec-metadata.md +277 -0
  75. moai_adk/templates/.moai/project/product.md +121 -0
  76. moai_adk/templates/.moai/project/structure.md +150 -0
  77. moai_adk/templates/.moai/project/tech.md +221 -0
  78. moai_adk/templates/CLAUDE.md +733 -0
  79. moai_adk/templates/__init__.py +2 -0
  80. moai_adk/utils/__init__.py +8 -0
  81. moai_adk/utils/banner.py +42 -0
  82. moai_adk/utils/logger.py +152 -0
  83. moai_adk-0.3.0.dist-info/METADATA +20 -0
  84. moai_adk-0.3.0.dist-info/RECORD +87 -0
  85. moai_adk-0.3.0.dist-info/WHEEL +4 -0
  86. moai_adk-0.3.0.dist-info/entry_points.txt +2 -0
  87. moai_adk-0.3.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,121 @@
1
+ ---
2
+ id: PRODUCT-001
3
+ version: 0.1.0
4
+ status: active
5
+ created: 2025-10-01
6
+ updated: 2025-10-01
7
+ authors: ["@project-owner"]
8
+ ---
9
+
10
+ # {{PROJECT_NAME}} Product Definition
11
+
12
+ ## HISTORY
13
+
14
+ ### v0.1.0 (2025-10-01)
15
+ - **INITIAL**: 프로젝트 제품 정의 문서 작성
16
+ - **AUTHOR**: @project-owner
17
+ - **SECTIONS**: Mission, User, Problem, Strategy, Success, Legacy
18
+
19
+ ---
20
+
21
+ ## @DOC:MISSION-001 핵심 미션
22
+
23
+ **[프로젝트의 핵심 미션과 목표를 정의하세요]**
24
+
25
+ ### 핵심 가치 제안
26
+
27
+ [이 프로젝트가 제공하는 핵심 가치를 설명하세요]
28
+
29
+ ## @SPEC:USER-001 주요 사용자층
30
+
31
+ ### 1차 사용자
32
+ - **대상**: [주요 사용자층을 정의하세요]
33
+ - **핵심 니즈**: [사용자가 해결하고자 하는 문제]
34
+ - **핵심 시나리오**: [주요 사용 시나리오를 설명하세요]
35
+
36
+ ### 2차 사용자 (선택사항)
37
+ - **대상**: [추가 사용자층이 있다면 정의하세요]
38
+ - **핵심 니즈**: [추가 사용자의 요구사항]
39
+
40
+ ## @SPEC:PROBLEM-001 해결하는 핵심 문제
41
+
42
+ ### 우선순위 높음
43
+ 1. [해결하려는 주요 문제 1]
44
+ 2. [해결하려는 주요 문제 2]
45
+ 3. [해결하려는 주요 문제 3]
46
+
47
+ ### 우선순위 중간
48
+ - [중요도가 중간인 문제들]
49
+
50
+ ### 현재 실패 사례들
51
+ - [기존 솔루션의 한계나 실패 사례들]
52
+
53
+ ## @DOC:STRATEGY-001 차별점 및 강점
54
+
55
+ ### 경쟁 솔루션 대비 강점
56
+ 1. [주요 차별점 1]
57
+ - **발휘 시나리오**: [어떤 상황에서 이 강점이 드러나는지]
58
+
59
+ 2. [주요 차별점 2]
60
+ - **발휘 시나리오**: [구체적인 활용 시나리오]
61
+
62
+ ## @SPEC:SUCCESS-001 성공 지표
63
+
64
+ ### 즉시 측정 가능한 KPI
65
+ 1. [측정 지표 1]
66
+ - **베이스라인**: [목표값과 측정 방법]
67
+
68
+ 2. [측정 지표 2]
69
+ - **베이스라인**: [목표값과 측정 방법]
70
+
71
+ ### 측정 주기
72
+ - **일간**: [일단위로 측정할 지표]
73
+ - **주간**: [주단위로 측정할 지표]
74
+ - **월간**: [월단위로 측정할 지표]
75
+
76
+ ## Legacy Context
77
+
78
+ ### 기존 자산 요약
79
+ - [활용할 기존 자산이나 리소스]
80
+ - [참고할 기존 프로젝트나 경험]
81
+
82
+ ## TODO:SPEC-BACKLOG-001 다음 단계 SPEC 후보
83
+
84
+ 1. **SPEC-001**: [첫 번째 구현할 기능]
85
+ 2. **SPEC-002**: [두 번째 구현할 기능]
86
+ 3. **SPEC-003**: [세 번째 구현할 기능]
87
+
88
+ ## EARS 요구사항 작성 가이드
89
+
90
+ ### EARS (Easy Approach to Requirements Syntax)
91
+
92
+ SPEC 작성 시 다음 EARS 구문을 활용하여 체계적인 요구사항을 작성하세요:
93
+
94
+ #### EARS 구문 형식
95
+ 1. **Ubiquitous Requirements**: 시스템은 [기능]을 제공해야 한다
96
+ 2. **Event-driven Requirements**: WHEN [조건]이면, 시스템은 [동작]해야 한다
97
+ 3. **State-driven Requirements**: WHILE [상태]일 때, 시스템은 [동작]해야 한다
98
+ 4. **Optional Features**: WHERE [조건]이면, 시스템은 [동작]할 수 있다
99
+ 5. **Constraints**: IF [조건]이면, 시스템은 [제약]해야 한다
100
+
101
+ #### 적용 예시
102
+ ```markdown
103
+ ### Ubiquitous Requirements (기본 기능)
104
+ - 시스템은 사용자 관리 기능을 제공해야 한다
105
+
106
+ ### Event-driven Requirements (이벤트 기반)
107
+ - WHEN 사용자가 가입하면, 시스템은 환영 이메일을 발송해야 한다
108
+
109
+ ### State-driven Requirements (상태 기반)
110
+ - WHILE 사용자가 로그인된 상태일 때, 시스템은 개인화된 대시보드를 표시해야 한다
111
+
112
+ ### Optional Features (선택적 기능)
113
+ - WHERE 프리미엄 계정이면, 시스템은 고급 기능을 제공할 수 있다
114
+
115
+ ### Constraints (제약사항)
116
+ - IF 계정이 잠긴 상태이면, 시스템은 로그인을 거부해야 한다
117
+ ```
118
+
119
+ ---
120
+
121
+ _이 문서는 `/alfred:1-spec` 실행 시 SPEC 생성의 기준이 됩니다._
@@ -0,0 +1,150 @@
1
+ ---
2
+ id: STRUCTURE-001
3
+ version: 0.1.0
4
+ status: active
5
+ created: 2025-10-01
6
+ updated: 2025-10-01
7
+ authors: ["@architect"]
8
+ ---
9
+
10
+ # {{PROJECT_NAME}} Structure Design
11
+
12
+ ## HISTORY
13
+
14
+ ### v0.1.0 (2025-10-01)
15
+ - **INITIAL**: 프로젝트 구조 설계 문서 작성
16
+ - **AUTHOR**: @architect
17
+ - **SECTIONS**: Architecture, Modules, Integration, Traceability
18
+
19
+ ---
20
+
21
+ ## @DOC:ARCHITECTURE-001 시스템 아키텍처
22
+
23
+ ### 아키텍처 전략
24
+
25
+ **[프로젝트의 전체 아키텍처 접근법을 설명하세요]**
26
+
27
+ ```
28
+ Project Architecture
29
+ ├── [Layer 1] # [역할 설명]
30
+ ├── [Layer 2] # [역할 설명]
31
+ ├── [Layer 3] # [역할 설명]
32
+ └── [Layer 4] # [역할 설명]
33
+ ```
34
+
35
+ **선택 이유**: [아키텍처 선택의 근거와 트레이드오프]
36
+
37
+ ## @DOC:MODULES-001 모듈별 책임 구분
38
+
39
+ ### 1. [주요 모듈 1]
40
+
41
+ - **책임**: [모듈의 주요 책임]
42
+ - **입력**: [처리하는 입력 데이터]
43
+ - **처리**: [수행하는 주요 처리 과정]
44
+ - **출력**: [생성하는 결과물]
45
+
46
+ | 컴포넌트 | 역할 | 주요 기능 |
47
+ |----------|------|-----------|
48
+ | [컴포넌트1] | [역할] | [기능 목록] |
49
+ | [컴포넌트2] | [역할] | [기능 목록] |
50
+
51
+ ### 2. [주요 모듈 2]
52
+
53
+ - **책임**: [모듈의 주요 책임]
54
+ - **입력**: [처리하는 입력 데이터]
55
+ - **처리**: [수행하는 주요 처리 과정]
56
+ - **출력**: [생성하는 결과물]
57
+
58
+ ## @DOC:INTEGRATION-001 외부 시스템 통합
59
+
60
+ ### [외부 시스템 1] 연동
61
+
62
+ - **인증 방식**: [인증 방법]
63
+ - **데이터 교환**: [데이터 형식과 프로토콜]
64
+ - **장애 시 대체**: [fallback 전략]
65
+ - **위험도**: [리스크 수준과 완화 방안]
66
+
67
+ ### [외부 시스템 2] 연동
68
+
69
+ - **용도**: [사용 목적]
70
+ - **의존성 수준**: [의존도와 대안]
71
+ - **성능 요구사항**: [응답 시간, 처리량 등]
72
+
73
+ ## @DOC:TRACEABILITY-001 추적성 전략
74
+
75
+ ### TAG 체계 적용
76
+
77
+ **TDD 완벽 정렬**: SPEC → 테스트 → 구현 → 문서
78
+ - `@SPEC:ID` (.moai/specs/) → `@TEST:ID` (tests/) → `@CODE:ID` (src/) → `@DOC:ID` (docs/)
79
+
80
+ **구현 세부사항**: @CODE:ID 내부 주석 레벨
81
+ - `@CODE:ID:API` - REST API, GraphQL 엔드포인트
82
+ - `@CODE:ID:UI` - 컴포넌트, 뷰, 화면
83
+ - `@CODE:ID:DATA` - 데이터 모델, 스키마, 타입
84
+ - `@CODE:ID:DOMAIN` - 비즈니스 로직, 도메인 규칙
85
+ - `@CODE:ID:INFRA` - 인프라, 데이터베이스, 외부 연동
86
+
87
+ ### TAG 추적성 관리 (코드 스캔 방식)
88
+
89
+ - **검증 방법**: `/alfred:3-sync` 실행 시 `rg '@(SPEC|TEST|CODE|DOC):' -n`으로 코드 전체 스캔
90
+ - **추적 범위**: 프로젝트 전체 소스코드 (.moai/specs/, tests/, src/, docs/)
91
+ - **유지 주기**: 코드 변경 시점마다 실시간 검증
92
+ - **CODE-FIRST 원칙**: TAG의 진실은 코드 자체에만 존재
93
+
94
+ ## Legacy Context
95
+
96
+ ### 기존 시스템 현황
97
+
98
+ **[현재 시스템이나 기존 자산에 대한 설명]**
99
+
100
+ ```
101
+ 기존 구조/
102
+ ├── [기존 컴포넌트1]/ # [현재 상태]
103
+ ├── [기존 컴포넌트2]/ # [현재 상태]
104
+ └── [기존 컴포넌트3]/ # [현재 상태]
105
+ ```
106
+
107
+ ### 마이그레이션 고려사항
108
+
109
+ 1. **[마이그레이션 항목 1]** - [계획과 우선순위]
110
+ 2. **[마이그레이션 항목 2]** - [계획과 우선순위]
111
+ 3. **[마이그레이션 항목 3]** - [계획과 우선순위]
112
+
113
+ ## TODO:STRUCTURE-001 구조 개선 계획
114
+
115
+ 1. **모듈 간 인터페이스 정의** - [계획 내용]
116
+ 2. **의존성 관리 전략** - [계획 내용]
117
+ 3. **확장성 확보 방안** - [계획 내용]
118
+
119
+ ## EARS 아키텍처 요구사항 작성법
120
+
121
+ ### 구조 설계에서의 EARS 활용
122
+
123
+ 아키텍처와 모듈 설계 시 EARS 구문을 활용하여 명확한 요구사항을 정의하세요:
124
+
125
+ #### 시스템 아키텍처 EARS 예시
126
+ ```markdown
127
+ ### Ubiquitous Requirements (아키텍처 기본 요구사항)
128
+ - 시스템은 계층형 아키텍처를 채택해야 한다
129
+ - 시스템은 모듈 간 느슨한 결합을 유지해야 한다
130
+
131
+ ### Event-driven Requirements (이벤트 기반 구조)
132
+ - WHEN 외부 API 호출이 실패하면, 시스템은 fallback 로직을 실행해야 한다
133
+ - WHEN 데이터 변경 이벤트가 발생하면, 시스템은 관련 모듈에 통지해야 한다
134
+
135
+ ### State-driven Requirements (상태 기반 구조)
136
+ - WHILE 시스템이 확장 모드일 때, 새로운 모듈을 동적으로 로드할 수 있어야 한다
137
+ - WHILE 개발 모드일 때, 시스템은 상세한 디버그 정보를 제공해야 한다
138
+
139
+ ### Optional Features (선택적 구조)
140
+ - WHERE 클라우드 환경이면, 시스템은 분산 캐시를 활용할 수 있다
141
+ - WHERE 고성능이 요구되면, 시스템은 메모리 캐싱을 적용할 수 있다
142
+
143
+ ### Constraints (구조적 제약사항)
144
+ - IF 보안 레벨이 높으면, 시스템은 모든 모듈 간 통신을 암호화해야 한다
145
+ - 각 모듈의 복잡도는 15를 초과하지 않아야 한다
146
+ ```
147
+
148
+ ---
149
+
150
+ _이 구조는 `/alfred:2-build` 실행 시 TDD 구현의 가이드라인이 됩니다._
@@ -0,0 +1,221 @@
1
+ ---
2
+ id: TECH-001
3
+ version: 0.1.0
4
+ status: active
5
+ created: 2025-10-01
6
+ updated: 2025-10-01
7
+ authors: ["@tech-lead"]
8
+ ---
9
+
10
+ # {{PROJECT_NAME}} Technology Stack
11
+
12
+ ## HISTORY
13
+
14
+ ### v0.1.0 (2025-10-01)
15
+ - **INITIAL**: 프로젝트 기술 스택 문서 작성
16
+ - **AUTHOR**: @tech-lead
17
+ - **SECTIONS**: Stack, Framework, Quality, Security, Deploy
18
+
19
+ ---
20
+
21
+ ## @DOC:STACK-001 언어 & 런타임
22
+
23
+ ### 주 언어 선택
24
+
25
+ - **언어**: [선택한 주 언어]
26
+ - **버전**: [지원 버전 범위]
27
+ - **선택 이유**: [선택 근거와 트레이드오프]
28
+ - **패키지 매니저**: [사용할 패키지 매니저]
29
+
30
+ ### 멀티 플랫폼 지원
31
+
32
+ | 플랫폼 | 지원 상태 | 검증 도구 | 주요 제약 |
33
+ |--------|-----------|-----------|-----------|
34
+ | **Windows** | [지원여부] | [검증방법] | [제약사항] |
35
+ | **macOS** | [지원여부] | [검증방법] | [제약사항] |
36
+ | **Linux** | [지원여부] | [검증방법] | [제약사항] |
37
+
38
+ ## @DOC:FRAMEWORK-001 핵심 프레임워크 & 라이브러리
39
+
40
+ ### 1. 주요 의존성
41
+
42
+ ```json
43
+ {
44
+ "dependencies": {
45
+ "[라이브러리1]": "[버전]",
46
+ "[라이브러리2]": "[버전]",
47
+ "[라이브러리3]": "[버전]"
48
+ }
49
+ }
50
+ ```
51
+
52
+ ### 2. 개발 도구
53
+
54
+ ```json
55
+ {
56
+ "devDependencies": {
57
+ "[개발도구1]": "[버전]",
58
+ "[개발도구2]": "[버전]",
59
+ "[개발도구3]": "[버전]"
60
+ }
61
+ }
62
+ ```
63
+
64
+ ### 3. 빌드 시스템
65
+
66
+ - **빌드 도구**: [선택한 빌드 도구]
67
+ - **번들링**: [번들러와 설정]
68
+ - **타겟**: [빌드 타겟 (브라우저, Node.js 등)]
69
+ - **성능 목표**: [빌드 시간 목표]
70
+
71
+ ## @DOC:QUALITY-001 품질 게이트 & 정책
72
+
73
+ ### 테스트 커버리지
74
+
75
+ - **목표**: [커버리지 목표 %]
76
+ - **측정 도구**: [사용할 도구]
77
+ - **실패 시 대응**: [커버리지 미달 시 처리]
78
+
79
+ ### 정적 분석
80
+
81
+ | 도구 | 역할 | 설정 파일 | 실패 시 조치 |
82
+ |------|------|-----------|--------------|
83
+ | [린터] | [역할] | [설정파일] | [조치방법] |
84
+ | [포매터] | [역할] | [설정파일] | [조치방법] |
85
+ | [타입체커] | [역할] | [설정파일] | [조치방법] |
86
+
87
+ ### 자동화 스크립트
88
+
89
+ ```bash
90
+ # 품질 검사 파이프라인
91
+ [테스트명령어] # 테스트 실행
92
+ [린트명령어] # 코드 품질 검사
93
+ [타입체크명령어] # 타입 검증
94
+ [빌드명령어] # 빌드 검증
95
+ ```
96
+
97
+ ## @DOC:SECURITY-001 보안 정책 & 운영
98
+
99
+ ### 비밀 관리
100
+
101
+ - **정책**: [비밀 관리 방식]
102
+ - **도구**: [사용할 도구나 서비스]
103
+ - **검증**: [자동 검증 방법]
104
+
105
+ ### 의존성 보안
106
+
107
+ ```json
108
+ {
109
+ "security": {
110
+ "audit_tool": "[보안감사도구]",
111
+ "update_policy": "[업데이트정책]",
112
+ "vulnerability_threshold": "[허용수준]"
113
+ }
114
+ }
115
+ ```
116
+
117
+ ### 로깅 정책
118
+
119
+ - **로그 수준**: [로그 레벨 정의]
120
+ - **민감정보 마스킹**: [마스킹 규칙]
121
+ - **보존 정책**: [로그 보존 기간]
122
+
123
+ ## @DOC:DEPLOY-001 배포 채널 & 전략
124
+
125
+ ### 1. 배포 채널
126
+
127
+ - **주 채널**: [주요 배포 경로]
128
+ - **릴리스 절차**: [배포 프로세스]
129
+ - **버전 정책**: [버전 관리 전략]
130
+ - **rollback 전략**: [롤백 방법]
131
+
132
+ ### 2. 개발 설치
133
+
134
+ ```bash
135
+ # 개발자 모드 설정
136
+ [로컬설치명령어]
137
+ [의존성설치명령어]
138
+ [개발환경구축명령어]
139
+ ```
140
+
141
+ ### 3. CI/CD 파이프라인
142
+
143
+ | 단계 | 목적 | 사용 도구 | 성공 조건 |
144
+ |------|------|-----------|-----------|
145
+ | [단계1] | [목적] | [도구] | [조건] |
146
+ | [단계2] | [목적] | [도구] | [조건] |
147
+ | [단계3] | [목적] | [도구] | [조건] |
148
+
149
+ ## 환경별 설정
150
+
151
+ ### 개발 환경 (`dev`)
152
+
153
+ ```bash
154
+ export PROJECT_MODE=development
155
+ export LOG_LEVEL=debug
156
+ [개발환경명령어]
157
+ ```
158
+
159
+ ### 테스트 환경 (`test`)
160
+
161
+ ```bash
162
+ export PROJECT_MODE=test
163
+ export LOG_LEVEL=info
164
+ [테스트환경명령어]
165
+ ```
166
+
167
+ ### 프로덕션 환경 (`production`)
168
+
169
+ ```bash
170
+ export PROJECT_MODE=production
171
+ export LOG_LEVEL=warning
172
+ [프로덕션명령어]
173
+ ```
174
+
175
+ ## @CODE:TECH-DEBT-001 기술 부채 관리
176
+
177
+ ### 현재 기술 부채
178
+
179
+ 1. **[기술부채1]** - [설명과 우선순위]
180
+ 2. **[기술부채2]** - [설명과 우선순위]
181
+ 3. **[기술부채3]** - [설명과 우선순위]
182
+
183
+ ### 개선 계획
184
+
185
+ - **단기 (1개월)**: [즉시 해결할 항목]
186
+ - **중기 (3개월)**: [점진적 개선 항목]
187
+ - **장기 (6개월+)**: [장기적 업그레이드 계획]
188
+
189
+ ## EARS 기술 요구사항 작성법
190
+
191
+ ### 기술 스택에서의 EARS 활용
192
+
193
+ 기술적 의사결정과 품질 게이트 설정 시 EARS 구문을 활용하여 명확한 기술 요구사항을 정의하세요:
194
+
195
+ #### 기술 스택 EARS 예시
196
+ ```markdown
197
+ ### Ubiquitous Requirements (기본 기술 요구사항)
198
+ - 시스템은 TypeScript 타입 안전성을 보장해야 한다
199
+ - 시스템은 크로스 플랫폼 호환성을 제공해야 한다
200
+
201
+ ### Event-driven Requirements (이벤트 기반 기술)
202
+ - WHEN 코드가 커밋되면, 시스템은 자동으로 테스트를 실행해야 한다
203
+ - WHEN 빌드가 실패하면, 시스템은 개발자에게 즉시 알림을 보내야 한다
204
+
205
+ ### State-driven Requirements (상태 기반 기술)
206
+ - WHILE 개발 모드일 때, 시스템은 hot-reload를 제공해야 한다
207
+ - WHILE 프로덕션 모드일 때, 시스템은 최적화된 빌드를 생성해야 한다
208
+
209
+ ### Optional Features (선택적 기술)
210
+ - WHERE Docker 환경이면, 시스템은 컨테이너 기반 배포를 지원할 수 있다
211
+ - WHERE CI/CD가 구성되면, 시스템은 자동 배포를 수행할 수 있다
212
+
213
+ ### Constraints (기술적 제약사항)
214
+ - IF 의존성에 보안 취약점이 발견되면, 시스템은 빌드를 중단해야 한다
215
+ - 테스트 커버리지는 85% 이상을 유지해야 한다
216
+ - 빌드 시간은 5분을 초과하지 않아야 한다
217
+ ```
218
+
219
+ ---
220
+
221
+ _이 기술 스택은 `/alfred:2-build` 실행 시 TDD 도구 선택과 품질 게이트 적용의 기준이 됩니다._