oh-my-llmwikimode 1.0.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 (60) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +494 -0
  3. package/bin/llmwiki.js +1493 -0
  4. package/docs/INSTALLATION.md +228 -0
  5. package/docs/SCOPE_LOCK.md +79 -0
  6. package/docs/STAGE1_GUIDE.md +265 -0
  7. package/docs/STAGE2_AGENT_TEAM_GUIDE.md +141 -0
  8. package/docs/STAGE3_CONVERSATIONAL_GROWTH_GUIDE.md +50 -0
  9. package/docs/TEST_WORKSHEET.md +120 -0
  10. package/docs/github-private-bootstrap.md +53 -0
  11. package/docs/release.md +79 -0
  12. package/docs/stage4-slice1-manual-test.md +259 -0
  13. package/docs/stage4-slice1-user-guide.md +269 -0
  14. package/docs/user-guide-ko.md +452 -0
  15. package/package.json +76 -0
  16. package/scripts/install-llmwiki.ps1 +229 -0
  17. package/src/config.js +74 -0
  18. package/src/curator/browser-data.js +134 -0
  19. package/src/curator/queue.js +324 -0
  20. package/src/curator/schema.js +237 -0
  21. package/src/curator/scoring.js +83 -0
  22. package/src/hooks.js +199 -0
  23. package/src/librarian/schema.js +218 -0
  24. package/src/librarian/weekly-digest.js +478 -0
  25. package/src/security.js +127 -0
  26. package/src/server.js +860 -0
  27. package/src/stage4/graph-reasoning/analyzer.js +255 -0
  28. package/src/stage4/graph-reasoning/browser-data.js +130 -0
  29. package/src/stage4/graph-reasoning/index.js +35 -0
  30. package/src/stage4/graph-reasoning/loader.js +122 -0
  31. package/src/stage4/graph-reasoning/queue.js +154 -0
  32. package/src/stage4/graph-reasoning/schema.js +190 -0
  33. package/src/team/browser-data.js +142 -0
  34. package/src/team/capabilities.js +79 -0
  35. package/src/team/dispatch.js +108 -0
  36. package/src/team/queue.js +290 -0
  37. package/src/team/schema.js +225 -0
  38. package/src/team/shared-memory.js +183 -0
  39. package/src/todo/browser-data.js +71 -0
  40. package/src/todo/queue.js +159 -0
  41. package/src/todo/schema.js +90 -0
  42. package/src/utils/embedding-model.js +111 -0
  43. package/src/wiki/alias-suggestions.js +180 -0
  44. package/src/wiki/browser-data.js +284 -0
  45. package/src/wiki/doctor.js +218 -0
  46. package/src/wiki/entry-normalizer.js +139 -0
  47. package/src/wiki/ingest.js +443 -0
  48. package/src/wiki/lesson-proposal-analyzer.js +463 -0
  49. package/src/wiki/lesson-proposal-manager.js +331 -0
  50. package/src/wiki/lesson-template.js +182 -0
  51. package/src/wiki/lint.js +294 -0
  52. package/src/wiki/notebooklm-adapter.js +264 -0
  53. package/src/wiki/query.js +304 -0
  54. package/src/wiki/raw-manager.js +400 -0
  55. package/src/wiki/search-feedback.js +211 -0
  56. package/src/wiki/semantic-index.js +333 -0
  57. package/src/wiki/semantic-search.js +170 -0
  58. package/src/wiki/source-ledger.js +370 -0
  59. package/src/wiki/store.js +1329 -0
  60. package/src/wiki/usage-events.js +144 -0
@@ -0,0 +1,269 @@
1
+ # Stage 4 Slice 1 — 실사용 가이드 (일상 사용 관점)
2
+
3
+ > "이 기능이 내 일상에서 어떻게 쓰이는가?" 관점에서 작성했습니다.
4
+
5
+ ---
6
+
7
+ ## 이 기능이 뭔가요?
8
+
9
+ 당신이 위키에 쌓아둔 메모/노트/버그기록 등을 **자동으로 분석**해서 아래처럼 알려줍니다:
10
+
11
+ - 🏝️ **고립된 메모**: "이 메모는 다른 메모와 연결이 안 되어 있어요"
12
+ - 🔗 **허브 메모**: "이 메모는 너무 많은 메모와 연결되어 있어요"
13
+ - 📦 **묶음 제안**: "이 두 메모는 관련있어 보여요, 정리필요"
14
+ - ⏰ **오래된 메모**: "이 메모는 30일 넘게 방치됐어요"
15
+
16
+ **중요**: 자동으로 아무것도 수정하지 않습니다. 알림만 주고 **사용자가 직접 판단**합니다.
17
+
18
+ ---
19
+
20
+ ## 설치 및 설정 (처음 한 번)
21
+
22
+ ### 1. 위키 폴드 준비
23
+
24
+ ```powershell
25
+ # 위키 폴드를 만듭니다 (이미 있으면 스킵)
26
+ $wikiRoot = "C:\Users\USER\Documents\llm-wiki"
27
+ New-Item -ItemType Directory -Path "$wikiRoot\inbox" -Force
28
+ New-Item -ItemType Directory -Path "$wikiRoot\problems" -Force
29
+ New-Item -ItemType Directory -Path "$wikiRoot\editorial\lessons" -Force
30
+ ```
31
+
32
+ ### 2. llmwiki CLI 확인
33
+
34
+ ```powershell
35
+ cd C:\Users\USER\Desktop\OpenCode_Modes\plugins\oh-my-llmwikimode
36
+
37
+ # 버전 확인
38
+ node bin/llmwiki.js --help
39
+ # 출력에 "stage4"가 보이면 OK
40
+ ```
41
+
42
+ ### 3. 환경 변수 등록 (선택)
43
+
44
+ 매번 긴 경로 치기 귀찮으면:
45
+
46
+ ```powershell
47
+ # PowerShell 프로필에 추가
48
+ notepad $PROFILE
49
+
50
+ # 아래 내용 추가:
51
+ function llmwiki {
52
+ node "C:\Users\USER\Desktop\OpenCode_Modes\plugins\oh-my-llmwikimode\bin\llmwiki.js" @args
53
+ }
54
+ ```
55
+
56
+ 이제 `llmwiki stage4 graph-reasoning analyze`처럼 간단히 사용 가능합니다.
57
+
58
+ ---
59
+
60
+ ## 일상 사용 시나리오
61
+
62
+ ### 시나리오 1: 주말 위키 정리 타임
63
+
64
+ **언제**: 주말 아침, 위키를 정리하고 싶을 때
65
+
66
+ **무엇을**:
67
+ ```powershell
68
+ # 1. 그래프 최신화 (새로 추가한 메모 반영)
69
+ llmwiki rebuild
70
+
71
+ # 2. 분석 실행
72
+ llmwiki stage4 graph-reasoning analyze
73
+
74
+ # 3. 결과 확인
75
+ llmwiki stage4 graph-reasoning list --json
76
+ ```
77
+
78
+ **결과 해석**:
79
+ ```json
80
+ {
81
+ "graph_reasoning": {
82
+ "insights": [
83
+ {
84
+ "id": "insight-orphaned-...",
85
+ "kind": "orphaned_entry_review",
86
+ "title": "Review isolated entry: 메모1",
87
+ "artifact_path": ".system/stage4/graph-reasoning/insights/..."
88
+ }
89
+ ]
90
+ }
91
+ }
92
+ ```
93
+
94
+ **행동**:
95
+ - orphaned → "이 메모에 링크를 추가할까?" 고민
96
+ - high_connectivity → "이 메모가 너무 중심이네, 정리가 필요한가?"
97
+ - stale → "이 메모 오래됐는데, 아직 유효한가?"
98
+
99
+ ---
100
+
101
+ ### 시나리오 2: 새 메모를 추가한 후
102
+
103
+ **언제**: 새 메모를 추가한 직후
104
+
105
+ **무엇을**:
106
+ ```powershell
107
+ # 새 메모 추가
108
+ llmwiki ingest --stdin --title "새로운 아이디어"
109
+ # Ctrl+V로 내용 붙여넣기 → Ctrl+D (또는 Ctrl+Z Enter)
110
+
111
+ # 그래프 리빌드
112
+ llmwiki rebuild
113
+
114
+ # 이 새 메모가 어디에 연결될 수 있는지 분석
115
+ llmwiki stage4 graph-reasoning analyze
116
+ ```
117
+
118
+ **기대 효과**:
119
+ - "새 메모"가 orphaned로 잡히면 → 다른 메모와 연결 필요
120
+ - 기존 메모들 중 연결 가능한 게 있으면 → backlog_cluster로 제안됨
121
+
122
+ ---
123
+
124
+ ### 시나리오 3: 큐레이터 워크벤치와 함께 사용
125
+
126
+ **언제**: Stage 3 큐레이터에서 "이 메모를 레슨으로 승격할까?" 고민할 때
127
+
128
+ **무엇을**:
129
+ ```powershell
130
+ # 큐레이터 queue 확인
131
+ llmwiki curator list --json
132
+
133
+ # 그래프 분석 (이 메모가 위키에서 얼마나 중요한지 확인)
134
+ llmwiki stage4 graph-reasoning analyze
135
+ ```
136
+
137
+ **결과 해석**:
138
+ - high_connectivity로 잡힌 메모 → 레슨으로 승격 가치 있음
139
+ - orphaned로 잡힌 메모 → 더 많은 연결 필요, 아직 레슨 아님
140
+
141
+ ---
142
+
143
+ ### 시나리오 4: 월간 위키 건강 체크
144
+
145
+ **언제**: 매월 1일, 위키 전체 상태 파악
146
+
147
+ **무엇을**:
148
+ ```powershell
149
+ # 분석 실행
150
+ llmwiki stage4 graph-reasoning analyze --json | ConvertFrom-Json
151
+
152
+ # 결과를 변수에 저장해서 통계 확인
153
+ $result = llmwiki stage4 graph-reasoning list --json | ConvertFrom-Json
154
+
155
+ # 통계 출력
156
+ Write-Host "총 Insight: $($result.graph_reasoning.summary.insight_count)"
157
+ Write-Host "고립된 메모: $($result.graph_reasoning.insights | Where-Object { $_.kind -eq 'orphaned_entry_review' }).Count"
158
+ Write-Host "허브 메모: $($result.graph_reasoning.insights | Where-Object { $_.kind -eq 'high_connectivity_review' }).Count"
159
+ Write-Host "오래된 메모: $($result.graph_reasoning.insights | Where-Object { $_.kind -eq 'stale_review_candidate' }).Count"
160
+ ```
161
+
162
+ ---
163
+
164
+ ## 결과 해석 가이드
165
+
166
+ ### Insight 종류별 의미
167
+
168
+ | 종류 | 제목 예시 | 의미 | 내가 할 일 |
169
+ |------|-----------|------|------------|
170
+ | `orphaned_entry_review` | "Review isolated entry: 메모1" | 이 메모는 아물와 연결 안 됨 | 다른 메모와 링크 연결 검토 |
171
+ | `high_connectivity_review` | "Review highly connected entry: 메모2" | 이 메모는 너무 많이 연결됨 | 과잉 연결 정리 필요 |
172
+ | `curator_backlog_cluster` | "Review related curator cards: A / B" | 큐레이터 큐에 관련 메모 2개 | 통합/정렬 검토 |
173
+ | `stale_review_candidate` | "Review stale candidate: 메모3" | 7일 넘게 업데이트 안 됨 | 내용 갱신 또는 상태 변경 |
174
+
175
+ ### Browser Data 확인 (VS Code 확장 사용 시)
176
+
177
+ VS Code 확장이 설치되어 있다면, 명령 팔레트에서:
178
+
179
+ ```
180
+ LLM Wiki: Stage 4 Graph Reasoning
181
+ ```
182
+
183
+ 현재는 UI가 없으므로, 터미널에서 확인:
184
+
185
+ ```powershell
186
+ # browser-data.json에서 stage4 섹션만 보기
187
+ Get-Content "$env:USERPROFILE\Documents\llm-wiki\.system\browser-data.json" |
188
+ ConvertFrom-Json |
189
+ Select-Object -ExpandProperty stage4_graph_reasoning
190
+ ```
191
+
192
+ ---
193
+
194
+ ## 실패했을 때
195
+
196
+ ### "insight_count: 0"이 나와요
197
+
198
+ - 위키 항목이 3개 미만 → 더 추가하세요
199
+ - `rebuild` 안 했음 → `llmwiki rebuild` 먼저 실행
200
+ - 모든 메모가 서로 연결됨 → 고립된 게 없어서 orphaned 안 나옴 (정상)
201
+
202
+ ### 명령어가 안 먹어요
203
+
204
+ ```powershell
205
+ # 프로젝트 폴드로 이동했는지 확인
206
+ cd C:\Users\USER\Desktop\OpenCode_Modes\plugins\oh-my-llmwikimode
207
+
208
+ # Node.js 설치 확인
209
+ node --version
210
+ # v18 이상 필요
211
+ ```
212
+
213
+ ### 권한 에러가 나요
214
+
215
+ ```powershell
216
+ # 위키 폴드 권한 확인
217
+ $wiki = "$env:USERPROFILE\Documents\llm-wiki"
218
+ Test-Path "$wiki\.system" # false면 권한 문제
219
+ ```
220
+
221
+ ---
222
+
223
+ ## 팁
224
+
225
+ ### 1. 매일 아침 간단히 확인
226
+
227
+ ```powershell
228
+ # PowerShell 프로필에 함수 등록핸 경우
229
+ function wiki-health {
230
+ cd C:\Users\USER\Desktop\OpenCode_Modes\plugins\oh-my-llmwikimode
231
+ llmwiki rebuild | Out-Null
232
+ $result = llmwiki stage4 graph-reasoning analyze --json | ConvertFrom-Json
233
+ Write-Host "오늘의 Insight: $($result.insight_count)개" -ForegroundColor Green
234
+ }
235
+ ```
236
+
237
+ ### 2. 결과를 파일로 저장
238
+
239
+ ```powershell
240
+ llmwiki stage4 graph-reasoning list --json |
241
+ Out-File "$env:USERPROFILE\Documents\llm-wiki\.system\weekly-report.json"
242
+ ```
243
+
244
+ ### 3. 특정 종류만 필터링
245
+
246
+ ```powershell
247
+ # orphaned만 보기
248
+ llmwiki stage4 graph-reasoning list --json |
249
+ ConvertFrom-Json |
250
+ Select-Object -ExpandProperty graph_reasoning |
251
+ Select-Object -ExpandProperty insights |
252
+ Where-Object { $_.kind -eq 'orphaned_entry_review' }
253
+ ```
254
+
255
+ ---
256
+
257
+ ## 다음 단계
258
+
259
+ 이 가이드대로 일상적으로 써보시고, 아래 중 필요한 것을 말씀해주세요:
260
+
261
+ 1. **잘못된 insight가 너무 많이 나와요** → 임계값 조정 (ex: 고립 판정 기준 변경)
262
+ 2. **원하는 분석이 안 나와요** → 새로운 규칙 추가 (ex: 특정 태그끼리 묶기)
263
+ 3. **VS Code에서 보고 싶어요** → Slice 2: UI 워크벤치 구현
264
+ 4. **자동으로 주기적으로 분석하고 싶어요** → 스케줄러 연동 가이드
265
+
266
+ ---
267
+
268
+ *문서 버전: Stage 4 Slice 1 (2026-05-08)*
269
+ *GitHub: https://github.com/wjdtmddn325-maker/oh-my-llmwikimode*