@sk8metal/michi-cli 0.1.0 → 0.2.1

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.
Files changed (52) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +1 -0
  3. package/dist/scripts/__tests__/validate-phase.test.js +83 -0
  4. package/dist/scripts/__tests__/validate-phase.test.js.map +1 -1
  5. package/dist/scripts/config/config-schema.d.ts +14 -0
  6. package/dist/scripts/config/config-schema.d.ts.map +1 -1
  7. package/dist/scripts/config/config-schema.js +9 -0
  8. package/dist/scripts/config/config-schema.js.map +1 -1
  9. package/dist/scripts/phase-runner.d.ts.map +1 -1
  10. package/dist/scripts/phase-runner.js +2 -2
  11. package/dist/scripts/phase-runner.js.map +1 -1
  12. package/dist/scripts/validate-phase.d.ts.map +1 -1
  13. package/dist/scripts/validate-phase.js +18 -3
  14. package/dist/scripts/validate-phase.js.map +1 -1
  15. package/dist/src/__tests__/integration/setup/claude.test.js +82 -0
  16. package/dist/src/__tests__/integration/setup/claude.test.js.map +1 -1
  17. package/dist/src/cli.d.ts.map +1 -1
  18. package/dist/src/cli.js +1 -0
  19. package/dist/src/cli.js.map +1 -1
  20. package/dist/src/commands/setup-existing.d.ts +1 -0
  21. package/dist/src/commands/setup-existing.d.ts.map +1 -1
  22. package/dist/src/commands/setup-existing.js +33 -0
  23. package/dist/src/commands/setup-existing.js.map +1 -1
  24. package/docs/user-guide/guides/agent-skills-integration.md +217 -0
  25. package/docs/user-guide/guides/customization.md +2 -2
  26. package/docs/user-guide/guides/multi-project.md +2 -2
  27. package/docs/user-guide/guides/phase-automation.md +25 -25
  28. package/docs/user-guide/guides/workflow.md +8 -20
  29. package/docs/user-guide/reference/config.md +2 -2
  30. package/docs/user-guide/reference/tasks-template.md +2 -2
  31. package/docs/user-guide/testing/test-planning-flow.md +1 -1
  32. package/package.json +2 -3
  33. package/scripts/__tests__/validate-phase.test.ts +100 -0
  34. package/scripts/config/config-schema.ts +11 -0
  35. package/scripts/phase-runner.ts +12 -3
  36. package/scripts/validate-phase.ts +21 -3
  37. package/templates/claude/agents/design-reviewer/AGENT.md +497 -0
  38. package/templates/claude/agents/e2e-first-planner/AGENT.md +410 -0
  39. package/templates/claude/agents/oss-license-checker/AGENT.md +265 -0
  40. package/templates/claude/agents/pr-resolver/AGENT.md +196 -0
  41. package/templates/claude/agents/stable-version-auditor/AGENT.md +279 -0
  42. package/templates/claude/commands/kiro/kiro-spec-impl.md +13 -4
  43. package/templates/claude/commands/kiro/kiro-spec-tasks.md +17 -3
  44. package/templates/claude/commands/michi/design-review.md +66 -0
  45. package/templates/claude/commands/michi/e2e-plan.md +113 -0
  46. package/templates/claude/commands/michi/license-check.md +80 -0
  47. package/templates/claude/commands/michi/pr-resolve.md +153 -0
  48. package/templates/claude/commands/michi/version-audit.md +91 -0
  49. package/templates/claude/skills/design-review/SKILL.md +648 -0
  50. package/templates/claude/skills/e2e-first-planning/SKILL.md +360 -0
  51. package/templates/claude/skills/oss-license/SKILL.md +232 -0
  52. package/templates/claude/skills/stable-version/SKILL.md +252 -0
@@ -0,0 +1,252 @@
1
+ ---
2
+ name: stable-version
3
+ description: |
4
+ 各言語/フレームワークの安定版バージョン確認ガイド。
5
+ LTSの考え方、EOLチェック、アップグレード判断をサポート。
6
+ allowed-tools: Bash, Read, Grep, Glob, WebFetch
7
+ ---
8
+
9
+ # 安定版バージョン確認スキル
10
+
11
+ ## 目的
12
+
13
+ 技術スタックのバージョンを最適な状態に維持し、セキュリティリスクと技術的負債を最小化する。
14
+
15
+ ## LTS(Long Term Support)の考え方
16
+
17
+ ### LTS優先の原則
18
+
19
+ 1. **本番環境**: LTSバージョンを使用(安定性・長期サポート重視)
20
+ 2. **開発環境**: Current/Latest対応も許容(新機能の検証用)
21
+ 3. **EOL前6ヶ月**: アップグレード計画を開始
22
+ 4. **セキュリティパッチ**: EOL後はパッチ提供なし
23
+
24
+ ### EOL(End of Life)対応
25
+
26
+ - **EOL後のリスク**: セキュリティパッチなし、脆弱性対応不可
27
+ - **EOL 6ヶ月前**: アップグレード計画開始
28
+ - **EOL 3ヶ月前**: アップグレード実施推奨
29
+ - **EOL到達**: 緊急アップグレード必須
30
+
31
+ ## バージョン確認方法
32
+
33
+ ### Node.js
34
+
35
+ ```bash
36
+ # 現在のLTSバージョン確認
37
+ curl -s https://nodejs.org/dist/index.json | jq '[.[] | select(.lts != false)] | .[0]'
38
+
39
+ # ローカルバージョン確認
40
+ node --version
41
+
42
+ # nvm使用時の最新LTS
43
+ nvm ls-remote --lts | tail -1
44
+
45
+ # LTSスケジュール確認
46
+ # https://nodejs.org/en/about/releases/
47
+ # - 偶数バージョン(18, 20, 22): LTS
48
+ # - 奇数バージョン(19, 21): Current(短期サポート)
49
+ ```
50
+
51
+ **LTS例:**
52
+ - Node.js 18.x: EOL 2025-04-30
53
+ - Node.js 20.x: EOL 2026-04-30
54
+ - Node.js 22.x: EOL 2027-04-30
55
+
56
+ ### Python
57
+
58
+ ```bash
59
+ # 公式リリーススケジュール
60
+ # https://devguide.python.org/versions/
61
+
62
+ # ローカルバージョン確認
63
+ python --version
64
+ python3 --version
65
+
66
+ # pyenv使用時
67
+ pyenv install --list | grep -E '^\s+3\.'
68
+ pyenv install --list | grep -v '[a-zA-Z]' | grep '^\s+3\.' | tail -5
69
+ ```
70
+
71
+ **LTS例:**
72
+ - Python 3.9: EOL 2025-10
73
+ - Python 3.10: EOL 2026-10
74
+ - Python 3.11: EOL 2027-10
75
+ - Python 3.12: EOL 2028-10
76
+
77
+ ### Java
78
+
79
+ ```bash
80
+ # LTSバージョン: 8, 11, 17, 21
81
+ java -version
82
+
83
+ # SDKMAN使用時
84
+ sdk list java | grep -E '(8|11|17|21)\.'
85
+
86
+ # OpenJDK LTS確認
87
+ # https://openjdk.org/
88
+ ```
89
+
90
+ **LTS例:**
91
+ - Java 8: 長期サポート(ベンダーにより異なる)
92
+ - Java 11: EOL 2026-09 (Oracle)
93
+ - Java 17: EOL 2029-09 (Oracle)
94
+ - Java 21: EOL 2031-09 (Oracle)
95
+
96
+ ### Spring Boot
97
+
98
+ ```bash
99
+ # 公式サポート状況確認
100
+ # https://spring.io/projects/spring-boot#support
101
+
102
+ # 現在のバージョン確認
103
+ ./gradlew dependencies | grep spring-boot
104
+
105
+ # または pom.xml / build.gradle から確認
106
+ grep 'spring-boot' pom.xml
107
+ ```
108
+
109
+ **サポート例:**
110
+ - Spring Boot 2.7.x: OSS support ended 2023-11-18
111
+ - Spring Boot 3.0.x: OSS support ended 2023-11-24
112
+ - Spring Boot 3.1.x: OSS support ended 2024-05-18
113
+ - Spring Boot 3.2.x: OSS support until 2025-02-23
114
+ - Spring Boot 3.3.x: OSS support until 2025-08-23
115
+
116
+ ### PHP
117
+
118
+ ```bash
119
+ # バージョン確認
120
+ php --version
121
+
122
+ # サポート状況確認
123
+ # https://www.php.net/supported-versions.php
124
+ ```
125
+
126
+ **サポート例:**
127
+ - PHP 8.1: Security fixes until 2024-11-25
128
+ - PHP 8.2: Security fixes until 2025-12-08
129
+ - PHP 8.3: Security fixes until 2026-11-23
130
+
131
+ ### その他フレームワーク
132
+
133
+ | 技術 | LTS確認方法 |
134
+ |------|-----------|
135
+ | React | GitHub releases確認 (https://github.com/facebook/react/releases) |
136
+ | Vue.js | https://v3.vuejs.org/guide/migration/introduction.html |
137
+ | Angular | https://angular.io/guide/releases |
138
+ | Rails | https://rubyonrails.org/ |
139
+ | Django | https://www.djangoproject.com/download/ |
140
+
141
+ ## アップグレード判断基準
142
+
143
+ ### 即時アップグレード推奨(Critical)
144
+
145
+ - ⚠️ セキュリティ脆弱性(CVE)が公開された場合
146
+ - ⚠️ EOLまで3ヶ月以内
147
+ - ⚠️ 重大なバグ修正リリース
148
+
149
+ ### 計画的アップグレード(Warning)
150
+
151
+ - 📅 新LTSリリース後6ヶ月以内に計画開始
152
+ - 📅 メジャーバージョンアップは十分なテスト期間確保
153
+ - 📅 EOLまで6ヶ月〜3ヶ月
154
+
155
+ ### アップグレード見送り可(Info)
156
+
157
+ - ✅ マイナーバージョン差(例: 3.2.1 → 3.2.3)
158
+ - ✅ 新機能のみのリリース(セキュリティパッチなし)
159
+ - ✅ 現行バージョンが最新LTS
160
+
161
+ ## EOLチェックツール
162
+
163
+ ### endoflife.date(推奨)
164
+
165
+ ```bash
166
+ # Web API経由でEOL情報を取得
167
+ curl -s https://endoflife.date/api/nodejs.json | jq '.[] | select(.eol | contains("2025"))'
168
+ curl -s https://endoflife.date/api/python.json | jq '.[] | select(.eol | contains("2025"))'
169
+ curl -s https://endoflife.date/api/java.json | jq '.[] | select(.eol | contains("2025"))'
170
+ ```
171
+
172
+ ### 各プロジェクト公式
173
+
174
+ | 言語/FW | EOL情報URL |
175
+ |---------|-----------|
176
+ | Node.js | https://nodejs.org/en/about/releases/ |
177
+ | Python | https://devguide.python.org/versions/ |
178
+ | Java | https://www.oracle.com/java/technologies/java-se-support-roadmap.html |
179
+ | PHP | https://www.php.net/supported-versions.php |
180
+ | Ruby | https://www.ruby-lang.org/en/downloads/branches/ |
181
+
182
+ ## アップグレードパスの設計
183
+
184
+ ### メジャーバージョンアップ(例: Node.js 16 → 20)
185
+
186
+ ```
187
+ Phase 1: 調査(1週間)
188
+ - Breaking changesの確認
189
+ - 依存パッケージの互換性確認
190
+ - テスト計画策定
191
+
192
+ Phase 2: 開発環境移行(1週間)
193
+ - Node.js 20インストール
194
+ - ローカルテスト実行
195
+ - 問題の洗い出しと修正
196
+
197
+ Phase 3: ステージング環境移行(1週間)
198
+ - CI/CD設定変更
199
+ - E2Eテスト実行
200
+ - パフォーマンステスト
201
+
202
+ Phase 4: 本番環境移行(1週間)
203
+ - ブルーグリーンデプロイメント
204
+ - モニタリング強化
205
+ - ロールバック準備
206
+ ```
207
+
208
+ ### マイナーバージョンアップ(例: 3.10.1 → 3.10.8)
209
+
210
+ ```
211
+ 即座に実施可能:
212
+ 1. ローカルでテスト
213
+ 2. CI/CD通過確認
214
+ 3. 本番デプロイ
215
+ ```
216
+
217
+ ## CI/CDへの組み込み
218
+
219
+ ### GitHub Actions 例
220
+
221
+ ```yaml
222
+ name: Version Audit
223
+
224
+ on:
225
+ schedule:
226
+ - cron: '0 0 * * 1' # 毎週月曜日
227
+ workflow_dispatch:
228
+
229
+ jobs:
230
+ version-audit:
231
+ runs-on: ubuntu-latest
232
+ steps:
233
+ - uses: actions/checkout@v2
234
+
235
+ - name: Check Node.js version
236
+ run: |
237
+ CURRENT=$(node --version | sed 's/v//')
238
+ LATEST_LTS=$(curl -s https://nodejs.org/dist/index.json | jq -r '[.[] | select(.lts != false)] | .[0].version' | sed 's/v//')
239
+ echo "Current: $CURRENT"
240
+ echo "Latest LTS: $LATEST_LTS"
241
+ if [ "$CURRENT" != "$LATEST_LTS" ]; then
242
+ echo "⚠️ Node.js update available: $CURRENT → $LATEST_LTS"
243
+ fi
244
+ ```
245
+
246
+ ## 参考資料
247
+
248
+ - [endoflife.date](https://endoflife.date/) - 複数技術のEOL情報
249
+ - [Node.js Releases](https://nodejs.org/en/about/releases/)
250
+ - [Python EOL](https://devguide.python.org/versions/)
251
+ - [Java SE Support Roadmap](https://www.oracle.com/java/technologies/java-se-support-roadmap.html)
252
+ - [PHP Supported Versions](https://www.php.net/supported-versions.php)