monol-plugin-scout 2.1.3 → 4.1.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.
Files changed (87) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/CHANGELOG.md +244 -0
  3. package/monol-plugin-scout-pkg/CLAUDE.md +125 -8
  4. package/monol-plugin-scout-pkg/api/mock/categories.json +81 -0
  5. package/monol-plugin-scout-pkg/api/mock/insights.json +111 -0
  6. package/monol-plugin-scout-pkg/api/mock/marketplace.json +501 -0
  7. package/monol-plugin-scout-pkg/api/mock/trending.json +96 -0
  8. package/monol-plugin-scout-pkg/commands/console.md +79 -0
  9. package/monol-plugin-scout-pkg/commands/frequency.md +32 -0
  10. package/monol-plugin-scout-pkg/commands/install.md +32 -0
  11. package/monol-plugin-scout-pkg/commands/priority.md +30 -0
  12. package/monol-plugin-scout-pkg/commands/quiet.md +32 -0
  13. package/monol-plugin-scout-pkg/commands/schedule.md +32 -0
  14. package/monol-plugin-scout-pkg/commands/scout.md +8 -5
  15. package/monol-plugin-scout-pkg/commands/skills.md +160 -0
  16. package/monol-plugin-scout-pkg/commands/team.md +32 -0
  17. package/monol-plugin-scout-pkg/commands/timing.md +32 -0
  18. package/monol-plugin-scout-pkg/commands/trust.md +85 -0
  19. package/monol-plugin-scout-pkg/commands/trusted-install.md +98 -0
  20. package/monol-plugin-scout-pkg/commands/uninstall.md +31 -0
  21. package/monol-plugin-scout-pkg/config.yaml +57 -0
  22. package/monol-plugin-scout-pkg/data/.cache/676d5ab664292155e5f509c69d4edae1 +10 -0
  23. package/monol-plugin-scout-pkg/data/.session +8 -0
  24. package/monol-plugin-scout-pkg/data/analytics.json +102 -0
  25. package/monol-plugin-scout-pkg/data/history.json +67 -11
  26. package/monol-plugin-scout-pkg/data/logs/scout.log +1 -0
  27. package/monol-plugin-scout-pkg/data/schedules.json +17 -0
  28. package/monol-plugin-scout-pkg/data/team.json +53 -0
  29. package/monol-plugin-scout-pkg/data/usage.json +100 -7
  30. package/monol-plugin-scout-pkg/docs/ARCHITECTURE.md +201 -0
  31. package/monol-plugin-scout-pkg/hooks/generate-insights.sh +102 -0
  32. package/monol-plugin-scout-pkg/hooks/hooks.json +36 -1
  33. package/monol-plugin-scout-pkg/hooks/on-session-end.sh +136 -0
  34. package/monol-plugin-scout-pkg/hooks/on-session-start.sh +43 -0
  35. package/monol-plugin-scout-pkg/hooks/on-stop.md +79 -0
  36. package/monol-plugin-scout-pkg/hooks/open-console.sh +111 -0
  37. package/monol-plugin-scout-pkg/hooks/open-dashboard.sh +61 -0
  38. package/monol-plugin-scout-pkg/hooks/track-usage.sh +59 -0
  39. package/monol-plugin-scout-pkg/lib/ai-recommender.sh +505 -0
  40. package/monol-plugin-scout-pkg/lib/cache.sh +194 -0
  41. package/monol-plugin-scout-pkg/lib/data-validator.sh +360 -0
  42. package/monol-plugin-scout-pkg/lib/error-handler.sh +296 -0
  43. package/monol-plugin-scout-pkg/lib/logger.sh +263 -0
  44. package/monol-plugin-scout-pkg/lib/plugin-manager.sh +239 -0
  45. package/monol-plugin-scout-pkg/lib/priority-scorer.sh +262 -0
  46. package/monol-plugin-scout-pkg/lib/profile-learner.sh +339 -0
  47. package/monol-plugin-scout-pkg/lib/project-analyzer.sh +281 -0
  48. package/monol-plugin-scout-pkg/lib/recommendation-controller.sh +290 -0
  49. package/monol-plugin-scout-pkg/lib/rejection-learner.sh +232 -0
  50. package/monol-plugin-scout-pkg/lib/scheduler.sh +275 -0
  51. package/monol-plugin-scout-pkg/lib/skill-scout.sh +729 -0
  52. package/monol-plugin-scout-pkg/lib/sync.sh +221 -0
  53. package/monol-plugin-scout-pkg/lib/team-learner.sh +450 -0
  54. package/monol-plugin-scout-pkg/lib/team-manager.sh +369 -0
  55. package/monol-plugin-scout-pkg/lib/trend-learner.sh +428 -0
  56. package/monol-plugin-scout-pkg/lib/trust-manager.sh +261 -0
  57. package/monol-plugin-scout-pkg/lib/trusted-installer.sh +738 -0
  58. package/monol-plugin-scout-pkg/plugin.json +3 -2
  59. package/monol-plugin-scout-pkg/skills/audit.md +6 -0
  60. package/monol-plugin-scout-pkg/skills/cleanup.md +6 -0
  61. package/monol-plugin-scout-pkg/skills/compare.md +6 -0
  62. package/monol-plugin-scout-pkg/skills/console.md +315 -0
  63. package/monol-plugin-scout-pkg/skills/explore.md +6 -0
  64. package/monol-plugin-scout-pkg/skills/fork.md +6 -0
  65. package/monol-plugin-scout-pkg/skills/frequency.md +93 -0
  66. package/monol-plugin-scout-pkg/skills/install.md +127 -0
  67. package/monol-plugin-scout-pkg/skills/priority.md +77 -0
  68. package/monol-plugin-scout-pkg/skills/quiet.md +73 -0
  69. package/monol-plugin-scout-pkg/skills/schedule.md +95 -0
  70. package/monol-plugin-scout-pkg/skills/scout.md +27 -17
  71. package/monol-plugin-scout-pkg/skills/skills.md +230 -0
  72. package/monol-plugin-scout-pkg/skills/team.md +117 -0
  73. package/monol-plugin-scout-pkg/skills/timing.md +97 -0
  74. package/monol-plugin-scout-pkg/skills/trust.md +120 -0
  75. package/monol-plugin-scout-pkg/skills/trusted-install.md +264 -0
  76. package/monol-plugin-scout-pkg/skills/uninstall.md +100 -0
  77. package/monol-plugin-scout-pkg/web/components/activity-chart.js +208 -0
  78. package/monol-plugin-scout-pkg/web/components/index.js +27 -0
  79. package/monol-plugin-scout-pkg/web/components/insight-card.js +365 -0
  80. package/monol-plugin-scout-pkg/web/components/overview.js +154 -0
  81. package/monol-plugin-scout-pkg/web/components/plugin-list.js +242 -0
  82. package/monol-plugin-scout-pkg/web/components/stats-card.js +126 -0
  83. package/monol-plugin-scout-pkg/web/components/team-list.js +346 -0
  84. package/monol-plugin-scout-pkg/web/console.html +2098 -0
  85. package/monol-plugin-scout-pkg/web/dashboard.html +2106 -0
  86. package/monol-plugin-scout-pkg/web/manifest.json +29 -0
  87. package/package.json +1 -1
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "monol-plugin-scout",
3
- "version": "2.1.2",
3
+ "version": "4.1.0",
4
4
  "description": "Claude Code 플러그인 마켓플레이스 모니터링 및 추천 에이전트",
5
5
  "author": "monol",
6
6
  "commands": "commands/",
7
7
  "skills": "skills/",
8
- "hooks": "hooks/"
8
+ "hooks": "hooks/",
9
+ "lib": "lib/"
9
10
  }
@@ -2,6 +2,12 @@
2
2
  description: 설치된 플러그인 보안 및 업데이트 점검
3
3
  argument-hint: "[--security | --updates]"
4
4
  allowed-tools: [Read, Glob, Bash, WebFetch]
5
+ hooks:
6
+ Stop:
7
+ - hooks:
8
+ - type: command
9
+ command: "bash ${CLAUDE_PLUGIN_ROOT}/hooks/track-usage.sh audit"
10
+ timeout: 5
5
11
  ---
6
12
 
7
13
  # /scout audit - 보안 및 업데이트 점검
@@ -2,6 +2,12 @@
2
2
  description: 미사용 플러그인 정리 제안
3
3
  argument-hint: "[--dry-run | --force]"
4
4
  allowed-tools: [Read, Glob, Bash, AskUserQuestion]
5
+ hooks:
6
+ Stop:
7
+ - hooks:
8
+ - type: command
9
+ command: "bash ${CLAUDE_PLUGIN_ROOT}/hooks/track-usage.sh cleanup"
10
+ timeout: 5
5
11
  ---
6
12
 
7
13
  # /scout cleanup - 미사용 플러그인 정리
@@ -2,6 +2,12 @@
2
2
  description: 플러그인 비교표 생성
3
3
  argument-hint: "<plugin1> <plugin2> [plugin3]"
4
4
  allowed-tools: [Read, Glob, Grep, WebFetch]
5
+ hooks:
6
+ Stop:
7
+ - hooks:
8
+ - type: command
9
+ command: "bash ${CLAUDE_PLUGIN_ROOT}/hooks/track-usage.sh compare"
10
+ timeout: 5
5
11
  ---
6
12
 
7
13
  # /scout compare - 플러그인 비교
@@ -0,0 +1,315 @@
1
+ ---
2
+ description: 플러그인 대시보드 콘솔 - 전체 현황 및 분석 (한글: 콘솔, 대시보드, 플러그인현황)
3
+ argument-hint: "[--web | --view <dashboard|plugins|analytics|users> | --plugin <name> | --user <name>]"
4
+ allowed-tools: [Read, Glob, Grep, Bash, WebFetch, AskUserQuestion]
5
+ hooks:
6
+ Stop:
7
+ - hooks:
8
+ - type: command
9
+ command: "bash ${CLAUDE_PLUGIN_ROOT}/hooks/track-usage.sh console"
10
+ timeout: 5
11
+ ---
12
+
13
+ # /scout console - 플러그인 대시보드 콘솔
14
+
15
+ 플러그인 현황을 대시보드 형태로 보여주고, 상세 정보 조회, 사용 분석, 인사이트를 제공합니다.
16
+
17
+ ## 사용법
18
+
19
+ ```
20
+ /scout console # 메인 대시보드 (CLI)
21
+ /scout console --web # 웹 대시보드 (브라우저에서 열림)
22
+ /scout console --view dashboard # 대시보드 뷰
23
+ /scout console --view plugins # 플러그인 목록
24
+ /scout console --view analytics # 사용 분석
25
+ /scout console --view users # 사용자 분석
26
+ /scout console --plugin <name> # 특정 플러그인 상세
27
+ /scout console --user <name> # 특정 사용자 분석
28
+ ```
29
+
30
+ ## 인자: $ARGUMENTS
31
+
32
+ ## 동작
33
+
34
+ ### --web 옵션 (웹 대시보드)
35
+
36
+ `--web` 인자가 포함된 경우, 브라우저에서 웹 대시보드를 엽니다:
37
+
38
+ ```bash
39
+ bash ${CLAUDE_PLUGIN_ROOT}/hooks/open-console.sh
40
+ ```
41
+
42
+ 웹 대시보드 특징:
43
+ - 모던 다크 테마 (GitHub Dark 스타일)
44
+ - 네온 그린/사이안 액센트
45
+ - Chart.js 기반 인터랙티브 차트
46
+ - 반응형 디자인
47
+ - 30초마다 자동 새로고침
48
+
49
+ 웹 대시보드를 연 후, 사용자에게 안내 메시지를 표시합니다:
50
+ ```
51
+ 웹 대시보드가 브라우저에서 열렸습니다.
52
+ 파일 위치: /tmp/plugin-scout-console.html
53
+ ```
54
+
55
+ ### CLI 대시보드 (기본)
56
+
57
+ ### Phase 1: 데이터 수집
58
+
59
+ 1. **설치된 플러그인 조회**:
60
+ ```bash
61
+ cat ~/.claude/plugins/installed_plugins.json
62
+ ```
63
+
64
+ 2. **활성화 상태 확인**:
65
+ ```bash
66
+ cat ~/.claude/settings.json | jq '.enabledPlugins'
67
+ ```
68
+
69
+ 3. **사용량 데이터 로드**:
70
+ ```
71
+ ${CLAUDE_PLUGIN_ROOT}/data/usage.json
72
+ ${CLAUDE_PLUGIN_ROOT}/data/analytics.json
73
+ ```
74
+
75
+ 4. **마켓플레이스 정보**:
76
+ ```bash
77
+ cat ~/.claude/plugins/known_marketplaces.json
78
+ ```
79
+
80
+ ### Phase 2: 대시보드 렌더링
81
+
82
+ 인자가 없거나 `--view dashboard`인 경우, 다음 형식으로 대시보드 표시:
83
+
84
+ ```
85
+ ╔═══════════════════════════════════════════════════════════════╗
86
+ ║ PLUGIN SCOUT CONSOLE v2.5.0 ║
87
+ ╠═══════════════════════════════════════════════════════════════╣
88
+ ║ Last Updated: [timestamp] ║
89
+ ╠═══════════════════════════════════════════════════════════════╣
90
+ ║ ║
91
+ ║ OVERVIEW QUICK STATS ║
92
+ ║ ───────────────────────────── ──────────────────────────── ║
93
+ ║ Total Plugins: [N] Usage This Week: [N] times ║
94
+ ║ ├─ Active: [N] Avg Daily: [N] times ║
95
+ ║ └─ Dormant: [N] Most Used: [plugin] ║
96
+ ║ ║
97
+ ║ Users: [N] Sessions: [N] ║
98
+ ║ Marketplaces: [N] Avg Duration: [N] min ║
99
+ ║ ║
100
+ ╠═══════════════════════════════════════════════════════════════╣
101
+ ║ TOP PLUGINS (by usage) TOP USERS (by activity) ║
102
+ ║ ───────────────────────────── ──────────────────────────── ║
103
+ ║ 1. [plugin] [N] 1. [user] [N] ║
104
+ ║ 2. [plugin] [N] 2. [user] [N] ║
105
+ ║ 3. [plugin] [N] 3. [user] [N] ║
106
+ ║ ║
107
+ ╠═══════════════════════════════════════════════════════════════╣
108
+ ║ INSIGHTS ║
109
+ ║ ─────────────────────────────────────────────────────────────║
110
+ ║ [insight-icon] [insight-message] ║
111
+ ║ [insight-icon] [insight-message] ║
112
+ ║ [insight-icon] [insight-message] ║
113
+ ╠═══════════════════════════════════════════════════════════════╣
114
+ ║ [1] 플러그인 상세 [2] 분석 [3] 사용자 [4] 탐색 [5] 정리 ║
115
+ ╚═══════════════════════════════════════════════════════════════╝
116
+ ```
117
+
118
+ ### Phase 3: 인터랙티브 메뉴
119
+
120
+ 대시보드 표시 후 AskUserQuestion으로 다음 동작 선택:
121
+
122
+ ```yaml
123
+ questions:
124
+ - question: "어떤 작업을 하시겠습니까?"
125
+ header: "Console"
126
+ options:
127
+ - label: "플러그인 상세보기"
128
+ description: "설치된 플러그인의 상세 정보 조회"
129
+ - label: "사용 분석"
130
+ description: "플러그인 사용 통계 및 트렌드 분석"
131
+ - label: "사용자 분석"
132
+ description: "팀원별 플러그인 사용 현황"
133
+ - label: "마켓플레이스 탐색"
134
+ description: "새 플러그인 찾기 (/scout explore)"
135
+ - label: "미사용 정리"
136
+ description: "오래된 플러그인 정리 (/scout cleanup)"
137
+ multiSelect: false
138
+ ```
139
+
140
+ ### Phase 4: 뷰별 상세 동작
141
+
142
+ #### 4.1 플러그인 목록 뷰 (`--view plugins`)
143
+
144
+ ```
145
+ ╔═══════════════════════════════════════════════════════════════╗
146
+ ║ INSTALLED PLUGINS ║
147
+ ╠═══════════════════════════════════════════════════════════════╣
148
+ ║ # │ Plugin │ Ver │ Usage │ Last Used │ Status ║
149
+ ║ ────┼───────────────────┼───────┼───────┼────────────┼─────── ║
150
+ ║ 1 │ commit-commands │ 2.1.0 │ 23 │ Today │ Active ║
151
+ ║ 2 │ code-review │ 1.5.0 │ 15 │ Today │ Active ║
152
+ ║ 3 │ typescript-lsp │ 1.2.0 │ 8 │ Yesterday │ Active ║
153
+ ║ ... ║
154
+ ╚═══════════════════════════════════════════════════════════════╝
155
+ ```
156
+
157
+ 플러그인 선택 메뉴:
158
+ ```yaml
159
+ questions:
160
+ - question: "어떤 플러그인의 상세 정보를 볼까요?"
161
+ header: "플러그인"
162
+ options:
163
+ - label: "[plugin-name]"
164
+ description: "사용: [N]회 | [status]"
165
+ # 동적으로 생성
166
+ multiSelect: false
167
+ ```
168
+
169
+ #### 4.2 플러그인 상세 뷰 (`--plugin <name>`)
170
+
171
+ ```
172
+ ╔═══════════════════════════════════════════════════════════════╗
173
+ ║ PLUGIN DETAIL: [plugin-name] ║
174
+ ╠═══════════════════════════════════════════════════════════════╣
175
+ ║ BASIC INFO ║
176
+ ║ ─────────────────────────────────────────────────────────────║
177
+ ║ Name: [name] ║
178
+ ║ Version: [version] (Latest: [latest] [status]) ║
179
+ ║ Category: [category] ║
180
+ ║ Author: [author] ║
181
+ ║ License: [license] ║
182
+ ║ Installed: [date] ([days] days ago) ║
183
+ ║ Source: [marketplace] ([type]) ║
184
+ ╠═══════════════════════════════════════════════════════════════╣
185
+ ║ DESCRIPTION ║
186
+ ║ ─────────────────────────────────────────────────────────────║
187
+ ║ [description] ║
188
+ ╠═══════════════════════════════════════════════════════════════╣
189
+ ║ USAGE STATISTICS ║
190
+ ║ ─────────────────────────────────────────────────────────────║
191
+ ║ Total Usage: [N] times ║
192
+ ║ This Week: [N] times ║
193
+ ║ Usage Share: [N]% of all plugin usage ║
194
+ ║ Trend: [arrow] [change]% vs last week ║
195
+ ║ ║
196
+ ║ Usage by User: ║
197
+ ║ ├─ [user1] [N] times ║
198
+ ║ ├─ [user2] [N] times ║
199
+ ║ └─ [user3] [N] times ║
200
+ ╠═══════════════════════════════════════════════════════════════╣
201
+ ║ HEALTH & SECURITY ║
202
+ ║ ─────────────────────────────────────────────────────────────║
203
+ ║ License: [status] [license] ║
204
+ ║ Vulnerabilities: [status] ║
205
+ ║ Author: [status] [verification] ║
206
+ ║ Health Score: [score]/100 ║
207
+ ╠═══════════════════════════════════════════════════════════════╣
208
+ ║ [U] 업데이트 [R] 제거 [C] 비교 [B] 뒤로 ║
209
+ ╚═══════════════════════════════════════════════════════════════╝
210
+ ```
211
+
212
+ #### 4.3 분석 뷰 (`--view analytics`)
213
+
214
+ ```
215
+ ╔═══════════════════════════════════════════════════════════════╗
216
+ ║ USAGE ANALYTICS ║
217
+ ╠═══════════════════════════════════════════════════════════════╣
218
+ ║ Period: [start] ~ [end] ([N] days) ║
219
+ ╠═══════════════════════════════════════════════════════════════╣
220
+ ║ ║
221
+ ║ USAGE BY PLUGIN ║
222
+ ║ ─────────────────────────────────────────────────────────────║
223
+ ║ [plugin] [bar] [N] ║
224
+ ║ [plugin] [bar] [N] ║
225
+ ║ ... ║
226
+ ║ ║
227
+ ║ USAGE BY CATEGORY USAGE TREND ║
228
+ ║ ───────────────────────────── ──────────────────────────── ║
229
+ ║ productivity [N] [bar] Week 1: [N] ║
230
+ ║ development [N] [bar] Week 2: [N] ║
231
+ ║ external [N] [bar] Week 3: [N] ║
232
+ ║ Week 4: [N] ║
233
+ ║ ║
234
+ ╠═══════════════════════════════════════════════════════════════╣
235
+ ║ KEY INSIGHTS ║
236
+ ║ ─────────────────────────────────────────────────────────────║
237
+ ║ 1. [insight] ║
238
+ ║ 2. [insight] ║
239
+ ║ 3. [insight] ║
240
+ ╚═══════════════════════════════════════════════════════════════╝
241
+ ```
242
+
243
+ #### 4.4 사용자 분석 뷰 (`--view users`)
244
+
245
+ ```
246
+ ╔═══════════════════════════════════════════════════════════════╗
247
+ ║ USER ANALYTICS ║
248
+ ╠═══════════════════════════════════════════════════════════════╣
249
+ ║ ║
250
+ ║ USER ACTIVITY ║
251
+ ║ ─────────────────────────────────────────────────────────────║
252
+ ║ # │ User │ Usage │ Sessions │ Top Plugin │ Active ║
253
+ ║ ────┼───────────┼───────┼──────────┼───────────────┼───────── ║
254
+ ║ 1 │ kent │ 50 │ 12 │ commit-cmd │ Today ║
255
+ ║ 2 │ john │ 42 │ 10 │ code-review │ Today ║
256
+ ║ 3 │ jane │ 38 │ 8 │ typescript │ Yesterday║
257
+ ║ ║
258
+ ╠═══════════════════════════════════════════════════════════════╣
259
+ ║ TEAM INSIGHTS ║
260
+ ║ ─────────────────────────────────────────────────────────────║
261
+ ║ - 팀 전체 사용량 증가 추세 (+15% vs 지난주) ║
262
+ ║ - commit-commands가 팀에서 가장 인기 있는 플러그인 ║
263
+ ║ - 3명의 사용자가 활발히 사용 중 ║
264
+ ╚═══════════════════════════════════════════════════════════════╝
265
+ ```
266
+
267
+ ## 인사이트 아이콘
268
+
269
+ | 아이콘 | 타입 | 의미 |
270
+ |--------|------|------|
271
+ | 💡 | recommendation | 추천 |
272
+ | ⚠️ | warning | 경고 (미사용, 보안) |
273
+ | 🔄 | update | 업데이트 가능 |
274
+ | 📈 | trend-up | 사용량 증가 |
275
+ | 📉 | trend-down | 사용량 감소 |
276
+ | 🔒 | security | 보안 관련 |
277
+ | ✅ | success | 양호 |
278
+
279
+ ## 상태 정의
280
+
281
+ | 상태 | 조건 |
282
+ |------|------|
283
+ | Active | lastUsed <= 7일 |
284
+ | Low | 7일 < lastUsed <= 30일 |
285
+ | Dormant | lastUsed > 30일 |
286
+ | Unused | usageCount == 0 |
287
+
288
+ ## 에러 처리
289
+
290
+ - **데이터 없음**:
291
+ ```
292
+ 사용 데이터가 없습니다. 플러그인을 사용하면 자동으로 기록됩니다.
293
+ ```
294
+
295
+ - **플러그인 없음**:
296
+ ```
297
+ '[name]' 플러그인을 찾을 수 없습니다.
298
+ 설치된 플러그인: /plugin list
299
+ ```
300
+
301
+ ## 예시
302
+
303
+ ```
304
+ /scout console
305
+ → 메인 대시보드 표시
306
+
307
+ /scout console --view analytics
308
+ → 사용 분석 뷰
309
+
310
+ /scout console --plugin commit-commands
311
+ → commit-commands 상세 정보
312
+
313
+ /scout console --user kent
314
+ → kent 사용자 분석
315
+ ```
@@ -2,6 +2,12 @@
2
2
  description: 마켓플레이스 카테고리별 탐색
3
3
  argument-hint: "[category | --search <keyword>]"
4
4
  allowed-tools: [Read, Glob, WebFetch, AskUserQuestion]
5
+ hooks:
6
+ Stop:
7
+ - hooks:
8
+ - type: command
9
+ command: "bash ${CLAUDE_PLUGIN_ROOT}/hooks/track-usage.sh explore"
10
+ timeout: 5
5
11
  ---
6
12
 
7
13
  # /scout explore - 마켓플레이스 탐색
@@ -2,6 +2,12 @@
2
2
  description: 플러그인 포크 및 커스터마이징
3
3
  argument-hint: "<source-plugin> <new-name> [--local]"
4
4
  allowed-tools: [Read, Write, Bash, Glob]
5
+ hooks:
6
+ Stop:
7
+ - hooks:
8
+ - type: command
9
+ command: "bash ${CLAUDE_PLUGIN_ROOT}/hooks/track-usage.sh fork"
10
+ timeout: 5
5
11
  ---
6
12
 
7
13
  # /scout fork - 플러그인 포크
@@ -0,0 +1,93 @@
1
+ ---
2
+ description: 추천 빈도 설정 - 세션/일일 추천 횟수 제한 (한글: 빈도, 횟수, 추천빈도)
3
+ argument-hint: "[session | daily] <count>"
4
+ allowed-tools: [Read, Bash]
5
+ ---
6
+
7
+ # /scout frequency - 추천 빈도 설정
8
+
9
+ 플러그인 추천이 표시되는 빈도를 제어합니다.
10
+
11
+ ## 사용법
12
+
13
+ ```
14
+ /scout frequency # 현재 설정 확인
15
+ /scout frequency session <count> # 세션당 최대 추천 횟수
16
+ /scout frequency daily <count> # 하루 최대 추천 횟수
17
+ /scout frequency cooldown <minutes> # 추천 간 최소 간격
18
+ ```
19
+
20
+ ## 인자: $ARGUMENTS
21
+
22
+ ## 동작
23
+
24
+ ### 현재 설정 확인 (기본)
25
+
26
+ ```bash
27
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/recommendation-controller.sh status
28
+ ```
29
+
30
+ ### 세션당 빈도 설정
31
+
32
+ ```bash
33
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/recommendation-controller.sh frequency session <count>
34
+ ```
35
+
36
+ ### 일일 빈도 설정
37
+
38
+ ```bash
39
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/recommendation-controller.sh frequency daily <count>
40
+ ```
41
+
42
+ ### 쿨다운 설정
43
+
44
+ ```bash
45
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/recommendation-controller.sh frequency cooldown <minutes>
46
+ ```
47
+
48
+ ## 기본값
49
+
50
+ | 설정 | 기본값 | 설명 |
51
+ |------|--------|------|
52
+ | 세션당 | 1 | 한 세션에 1회만 추천 |
53
+ | 일일 | 3 | 하루에 최대 3회 추천 |
54
+ | 쿨다운 | 30분 | 추천 간 최소 30분 간격 |
55
+
56
+ ## 출력 형식
57
+
58
+ ```markdown
59
+ ## 추천 빈도 설정
60
+
61
+ | 설정 | 현재 값 |
62
+ |------|---------|
63
+ | 세션당 최대 | 1회 |
64
+ | 일일 최대 | 3회 |
65
+ | 쿨다운 | 30분 |
66
+ | 오늘 추천 횟수 | 2회 |
67
+
68
+ ### 설정 변경
69
+ - `/scout frequency session 2` - 세션당 2회로 변경
70
+ - `/scout frequency daily 5` - 일일 5회로 변경
71
+ - `/scout frequency cooldown 60` - 1시간 간격으로 변경
72
+ ```
73
+
74
+ ## 예시
75
+
76
+ ```
77
+ /scout frequency
78
+ → 현재 설정 표시
79
+
80
+ /scout frequency session 2
81
+ → 세션당 최대 2회 추천으로 변경
82
+
83
+ /scout frequency daily 5
84
+ → 하루 최대 5회로 변경
85
+
86
+ /scout frequency cooldown 60
87
+ → 추천 간격을 1시간으로 변경
88
+ ```
89
+
90
+ ## 관련 명령어
91
+
92
+ - `/scout quiet` - 무음 모드 (모든 추천 비활성화)
93
+ - `/scout timing` - 스마트 타이밍 설정
@@ -0,0 +1,127 @@
1
+ ---
2
+ description: 플러그인 설치 - 추천된 플러그인을 설치합니다 (한글: 설치, 플러그인설치)
3
+ argument-hint: "<plugin-name[@marketplace]>"
4
+ allowed-tools: [Read, Bash, AskUserQuestion]
5
+ hooks:
6
+ Stop:
7
+ - hooks:
8
+ - type: command
9
+ command: "bash ${CLAUDE_PLUGIN_ROOT}/hooks/track-usage.sh install"
10
+ timeout: 5
11
+ ---
12
+
13
+ # /scout install - 플러그인 설치
14
+
15
+ 추천된 플러그인을 설치합니다.
16
+
17
+ ## 사용법
18
+
19
+ ```
20
+ /scout install <plugin-name> # 기본 설치
21
+ /scout install <plugin-name>@<marketplace> # 마켓플레이스 지정
22
+ /scout install --list # 설치된 플러그인 목록
23
+ ```
24
+
25
+ ## 인자: $ARGUMENTS
26
+
27
+ ## 동작
28
+
29
+ ### Phase 1: 설치 전 확인
30
+
31
+ 1. **플러그인 존재 확인**:
32
+ - 마켓플레이스에서 플러그인 검색
33
+ - 이미 설치되어 있는지 확인
34
+
35
+ 2. **거절 이력 확인**:
36
+ ```bash
37
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/rejection-learner.sh check <plugin-name>
38
+ ```
39
+
40
+ 3. **보안 점검**:
41
+ - 라이선스 확인
42
+ - 저자 신뢰도 확인
43
+ - 알려진 취약점 확인
44
+
45
+ ### Phase 2: 사용자 확인
46
+
47
+ AskUserQuestion으로 설치 확인:
48
+
49
+ ```yaml
50
+ questions:
51
+ - question: "<plugin-name> 플러그인을 설치하시겠습니까?"
52
+ header: "설치 확인"
53
+ options:
54
+ - label: "설치"
55
+ description: "지금 설치합니다"
56
+ - label: "취소"
57
+ description: "설치하지 않습니다"
58
+ - label: "나중에"
59
+ description: "30일 후 다시 추천받습니다"
60
+ multiSelect: false
61
+ ```
62
+
63
+ ### Phase 3: 설치 실행
64
+
65
+ 사용자가 "설치"를 선택한 경우:
66
+
67
+ ```bash
68
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/plugin-manager.sh install <plugin-name>[@marketplace] recommendation
69
+ ```
70
+
71
+ ### Phase 4: 결과 안내
72
+
73
+ 설치 완료 후 메시지:
74
+
75
+ ```markdown
76
+ ## 설치 완료
77
+
78
+ **플러그인**: <plugin-name>
79
+ **마켓플레이스**: <marketplace>
80
+
81
+ Claude Code를 재시작하면 플러그인이 활성화됩니다.
82
+
83
+ ### 사용법
84
+ - 해당 플러그인의 명령어와 기능을 안내
85
+ ```
86
+
87
+ ### Phase 5: 거절 시 기록
88
+
89
+ 사용자가 "취소" 또는 "나중에"를 선택한 경우:
90
+
91
+ ```bash
92
+ # 취소 선택 시
93
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/rejection-learner.sh record <plugin-name> "not-relevant" <category>
94
+
95
+ # 나중에 선택 시
96
+ bash ${CLAUDE_PLUGIN_ROOT}/lib/rejection-learner.sh record <plugin-name> "later" <category>
97
+ ```
98
+
99
+ ## 거절 이유 코드
100
+
101
+ | 코드 | 의미 |
102
+ |------|------|
103
+ | not-relevant | 프로젝트와 관련 없음 |
104
+ | wrong-language | 사용하지 않는 언어 |
105
+ | already-have | 유사한 플러그인 이미 있음 |
106
+ | too-complex | 너무 복잡함 |
107
+ | not-trusted | 신뢰할 수 없음 |
108
+ | later | 나중에 설치 |
109
+
110
+ ## 예시
111
+
112
+ ```
113
+ /scout install typescript-lsp
114
+ → typescript-lsp 설치
115
+
116
+ /scout install code-review@monol
117
+ → monol 마켓플레이스에서 code-review 설치
118
+
119
+ /scout install --list
120
+ → 설치된 플러그인 목록 표시
121
+ ```
122
+
123
+ ## 안전 규칙
124
+
125
+ 1. **항상 사용자 확인 필요** - 자동 설치 금지
126
+ 2. **백업 생성** - 설치 전 settings.json 백업
127
+ 3. **롤백 지원** - 문제 시 복원 가능