evnict-kit 0.2.2 → 0.2.4
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.md +39 -2
- package/bin/cli.js +7 -1
- package/package.json +1 -1
- package/scripts/patch-workflows.js +142 -0
- package/scripts/postinstall.js +1 -1
- package/src/commands/init.js +18 -9
- package/src/commands/sync.js +317 -0
- package/src/commands/upgrade.js +7 -1
- package/src/utils/config.js +2 -2
- package/templates/GETTING-STARTED.md +23 -2
- package/templates/content/skills/evnict-kit-bug-fix/SKILL.md +1 -1
- package/templates/content/skills/evnict-kit-git-worktrees/SKILL.md +0 -2
- package/templates/content/skills/evnict-kit-onboard/SKILL.md +0 -1
- package/templates/content/skills/evnict-kit-spec/SKILL.md +1 -1
- package/templates/content/skills/evnict-kit-wiki/SKILL.md +16 -54
- package/templates/content/workflows/evnict-kit-archive-wiki.md +4 -5
- package/templates/content/workflows/evnict-kit-attt.md +1 -1
- package/templates/content/workflows/evnict-kit-bug-fix.md +1 -1
- package/templates/content/workflows/evnict-kit-feature-large.md +2 -2
- package/templates/content/workflows/evnict-kit-feature-small.md +1 -1
- package/templates/content/workflows/evnict-kit-init-wiki.md +18 -47
- package/templates/content/workflows/evnict-kit-wiki-archive-feature.md +2 -3
- package/templates/content/workflows/evnict-kit-wiki-query.md +3 -3
- package/templates/content/workflows/evnict-kit-wiki-scan-project.md +3 -4
- package/templates/skills/evnict-kit-bug-fix/SKILL.md +1 -1
- package/templates/skills/evnict-kit-create-component/SKILL.md +23 -0
- package/templates/skills/evnict-kit-create-page/SKILL.md +23 -0
- package/templates/skills/evnict-kit-frontend-design/SKILL.md +161 -0
- package/templates/skills/evnict-kit-spec/SKILL.md +1 -1
- package/templates/skills/evnict-kit-wiki/SKILL.md +16 -54
- package/templates/wiki/AGENTS.md +280 -0
- package/templates/wiki/CLAUDE.md +280 -0
- package/templates/wiki/FAQ.md +168 -0
- package/templates/wiki/README.md +272 -35
- package/templates/wiki/config.example.yaml +145 -17
- package/templates/wiki/scripts/run-wiki.sh +17 -0
- package/templates/wiki/scripts/setup-scheduler.ps1 +29 -0
- package/templates/wiki/skills/llm-wiki/SKILL.md +341 -0
- package/templates/wiki/wiki/INDEX.md +9 -0
- package/templates/wiki/wiki/INDEX.template.md +29 -0
- package/templates/wiki/wiki/LOG.md +3 -0
- package/templates/wiki/wiki/LOG.template.md +7 -0
- package/templates/wiki/wiki-viewer.html +408 -0
- package/templates/workflows/antigravity/evnict-kit-archive-wiki.md +24 -5
- package/templates/workflows/antigravity/evnict-kit-attt.md +21 -1
- package/templates/workflows/antigravity/evnict-kit-bug-fix.md +24 -1
- package/templates/workflows/antigravity/evnict-kit-feature-large.md +26 -2
- package/templates/workflows/antigravity/evnict-kit-feature-small.md +24 -1
- package/templates/workflows/antigravity/evnict-kit-handoff.md +23 -0
- package/templates/workflows/antigravity/evnict-kit-implement.md +23 -0
- package/templates/workflows/antigravity/evnict-kit-init-check.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-init-context.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-init-rules.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-init-wiki.md +26 -8
- package/templates/workflows/antigravity/evnict-kit-plan.md +24 -0
- package/templates/workflows/antigravity/evnict-kit-review.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-spec-archive.md +20 -0
- package/templates/workflows/antigravity/evnict-kit-wiki-archive-feature.md +22 -3
- package/templates/workflows/antigravity/evnict-kit-wiki-query.md +23 -3
- package/templates/workflows/antigravity/evnict-kit-wiki-scan-project.md +23 -4
- package/templates/workflows/claude/evnict-kit-archive-wiki.md +24 -5
- package/templates/workflows/claude/evnict-kit-attt.md +21 -1
- package/templates/workflows/claude/evnict-kit-bug-fix.md +24 -1
- package/templates/workflows/claude/evnict-kit-feature-large.md +26 -2
- package/templates/workflows/claude/evnict-kit-feature-small.md +24 -1
- package/templates/workflows/claude/evnict-kit-handoff.md +23 -0
- package/templates/workflows/claude/evnict-kit-implement.md +23 -0
- package/templates/workflows/claude/evnict-kit-init-check.md +20 -0
- package/templates/workflows/claude/evnict-kit-init-context.md +20 -0
- package/templates/workflows/claude/evnict-kit-init-rules.md +20 -0
- package/templates/workflows/claude/evnict-kit-init-wiki.md +25 -7
- package/templates/workflows/claude/evnict-kit-plan.md +24 -0
- package/templates/workflows/claude/evnict-kit-review.md +20 -0
- package/templates/workflows/claude/evnict-kit-spec-archive.md +20 -0
- package/templates/workflows/claude/evnict-kit-wiki-archive-feature.md +22 -3
- package/templates/workflows/claude/evnict-kit-wiki-query.md +23 -3
- package/templates/workflows/claude/evnict-kit-wiki-scan-project.md +23 -4
- package/templates/wiki/package.json +0 -17
- package/templates/wiki/raw/notes/.gitkeep +0 -1
- package/templates/wiki/scripts/ingest.js +0 -66
package/templates/wiki/README.md
CHANGED
|
@@ -1,35 +1,272 @@
|
|
|
1
|
-
# LLM Wiki
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
1
|
+
# LLM Wiki
|
|
2
|
+
|
|
3
|
+
Hệ thống knowledge base cá nhân hoàn toàn tự động, vận hành bởi LLM. Dựa trên pattern [LLM Wiki](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) của Andrej Karpathy.
|
|
4
|
+
|
|
5
|
+
LLM tự tìm nguồn, tự tổng hợp thành wiki có cấu trúc, tự duy trì cross-references, phát hiện mâu thuẫn, và giữ mọi thứ cập nhật — bạn chỉ cần đọc và hỏi.
|
|
6
|
+
|
|
7
|
+
> **Hỗ trợ:** [Claude Code](https://claude.ai/code) | [Antigravity](https://antigravity.codes) / Codex | [GitHub Copilot](https://github.com/features/copilot)
|
|
8
|
+
>
|
|
9
|
+
> Mỗi tool tự đọc file config riêng: `CLAUDE.md` | `AGENTS.md` | `.github/copilot-instructions.md` — cùng nội dung, không conflict.
|
|
10
|
+
|
|
11
|
+
## Khác gì so với RAG?
|
|
12
|
+
|
|
13
|
+
| | RAG truyền thống | LLM Wiki |
|
|
14
|
+
|---|---|---|
|
|
15
|
+
| Kiến thức | Tìm lại từ đầu mỗi lần hỏi | Biên dịch 1 lần, duy trì liên tục |
|
|
16
|
+
| Cross-references | Không có | Tự động tạo và duy trì |
|
|
17
|
+
| Mâu thuẫn | Không phát hiện | Đánh dấu ngay khi ingest |
|
|
18
|
+
| Tích lũy | Không | Compound theo thời gian |
|
|
19
|
+
| Hạ tầng | Vector DB + embeddings | Chỉ cần folders + markdown |
|
|
20
|
+
|
|
21
|
+
## Bắt đầu nhanh
|
|
22
|
+
|
|
23
|
+
### 1. Clone & Cài đặt
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
git clone https://github.com/mduongvandinh/llm-wiki.git
|
|
27
|
+
cd llm-wiki
|
|
28
|
+
|
|
29
|
+
# Copy file cấu hình mẫu
|
|
30
|
+
cp config.example.yaml config.yaml
|
|
31
|
+
|
|
32
|
+
# Cài skill vào Claude Code
|
|
33
|
+
cp -r skills/llm-wiki ~/.claude/skills/llm-wiki
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### 2. Cấu hình chủ đề quan tâm
|
|
37
|
+
|
|
38
|
+
Sửa `config.yaml` — thêm topics, keywords, và nguồn theo dõi:
|
|
39
|
+
|
|
40
|
+
```yaml
|
|
41
|
+
topics:
|
|
42
|
+
- name: "Chủ đề của bạn"
|
|
43
|
+
keywords: ["từ khóa 1", "từ khóa 2"]
|
|
44
|
+
priority: high
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### 3. Chạy
|
|
48
|
+
|
|
49
|
+
Tùy tool bạn dùng:
|
|
50
|
+
|
|
51
|
+
**Claude Code** (slash command):
|
|
52
|
+
```bash
|
|
53
|
+
/llm-wiki run # Chạy full cycle
|
|
54
|
+
/llm-wiki query "..." # Hỏi đáp
|
|
55
|
+
/llm-wiki status # Xem trạng thái
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**Antigravity** (slash command hoặc chat):
|
|
59
|
+
```
|
|
60
|
+
@llm-wiki run
|
|
61
|
+
# hoặc chat: "chạy llm-wiki full cycle"
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**GitHub Copilot** (chat tự nhiên — tự đọc .github/copilot-instructions.md):
|
|
65
|
+
```
|
|
66
|
+
"Đọc CLAUDE.md rồi chạy discover, ingest, lint cho wiki này"
|
|
67
|
+
"Tìm nguồn mới về AI agents rồi tổng hợp vào wiki"
|
|
68
|
+
"Hỏi dựa trên wiki: so sánh RAG vs LLM Wiki"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**Codex CLI**:
|
|
72
|
+
```bash
|
|
73
|
+
codex "Đọc AGENTS.md và chạy full cycle: discover → ingest → lint"
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**Cursor** (chat trong IDE):
|
|
77
|
+
```
|
|
78
|
+
"Follow AGENTS.md. Chạy discover tìm nguồn mới, ingest vào wiki, rồi lint kiểm tra"
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### Tóm tắt cách gọi theo tool
|
|
82
|
+
|
|
83
|
+
| Tool | Cách gọi | File config | Cài skill |
|
|
84
|
+
|------|----------|-------------|-----------|
|
|
85
|
+
| Claude Code | `/llm-wiki run` | `CLAUDE.md` | `cp -r skills/llm-wiki ~/.claude/skills/` |
|
|
86
|
+
| Antigravity | `@llm-wiki run` | `AGENTS.md` | `cp -r skills/llm-wiki ~/.antigravity/skills/` |
|
|
87
|
+
| GitHub Copilot | Chat tự nhiên | `.github/copilot-instructions.md` | Không cần — tự đọc khi mở project |
|
|
88
|
+
| Codex CLI | `codex "..."` | `AGENTS.md` | Không cần — đọc AGENTS.md ở root |
|
|
89
|
+
| Cursor | Chat trong IDE | `AGENTS.md` hoặc `.cursorrules` | Không cần — đọc AGENTS.md ở root |
|
|
90
|
+
|
|
91
|
+
> **Lưu ý:**
|
|
92
|
+
> - Chỉ Claude Code và Antigravity có slash command (`/llm-wiki`). Các tool khác bạn chat bằng ngôn ngữ tự nhiên.
|
|
93
|
+
> - `/loop` chỉ có ở Claude Code. Các tool khác muốn chạy tự động thì dùng Task Scheduler (Windows) hoặc crontab (macOS/Linux).
|
|
94
|
+
|
|
95
|
+
### Chạy tự động theo tool
|
|
96
|
+
|
|
97
|
+
| Tool | Cách chạy tự động |
|
|
98
|
+
|------|-------------------|
|
|
99
|
+
| Claude Code | `/loop 1h /llm-wiki run` (trong session) |
|
|
100
|
+
| Antigravity | Task Scheduler / crontab |
|
|
101
|
+
| Codex CLI | crontab gọi `codex "Đọc AGENTS.md và chạy discover → ingest → lint"` |
|
|
102
|
+
| GitHub Copilot | Không hỗ trợ — chỉ chat trong IDE |
|
|
103
|
+
| Cursor | Không hỗ trợ — chỉ chat trong IDE |
|
|
104
|
+
|
|
105
|
+
Xem thêm phần [Chạy tự động](#chạy-tự-động) bên dưới để cấu hình Task Scheduler / crontab.
|
|
106
|
+
|
|
107
|
+
### 4. Xem wiki
|
|
108
|
+
|
|
109
|
+
- **Obsidian**: File → Open vault → chọn folder `llm-wiki` → Graph View
|
|
110
|
+
- **Browser**: mở `wiki-viewer.html` để xem dashboard + graph (hỗ trợ mobile)
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Danh sách lệnh
|
|
115
|
+
|
|
116
|
+
| Lệnh | Mô tả |
|
|
117
|
+
|-------|--------|
|
|
118
|
+
| `/llm-wiki init "Topic"` | Thêm chủ đề mới |
|
|
119
|
+
| `/llm-wiki ingest` | Xử lý nguồn mới trong `raw/` |
|
|
120
|
+
| `/llm-wiki query "..."` | Hỏi đáp dựa trên wiki, tự lưu kết quả |
|
|
121
|
+
| `/llm-wiki lint` | Kiểm tra sức khỏe: mâu thuẫn, orphans, gaps |
|
|
122
|
+
| `/llm-wiki discover` | Tự tìm nguồn mới từ internet |
|
|
123
|
+
| `/llm-wiki run` | Full cycle: discover → ingest → lint |
|
|
124
|
+
| `/llm-wiki status` | Xem trạng thái tổng quan |
|
|
125
|
+
| `/llm-wiki digest` | Bản tin hàng ngày: nguồn mới, insights, pain points |
|
|
126
|
+
| `/llm-wiki pain-rank` | Xếp hạng pain points theo tiềm năng kinh doanh |
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## Chạy tự động
|
|
131
|
+
|
|
132
|
+
### Cách 1: `/loop` trong Claude Code (khuyến nghị)
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
/loop 1h /llm-wiki run # Mỗi 1 giờ
|
|
136
|
+
/loop 30m /llm-wiki run # Mỗi 30 phút
|
|
137
|
+
/loop 2h /llm-wiki run # Mỗi 2 giờ
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
Chạy trong session hiện tại. Không tốn thêm chi phí. Dừng khi đóng session.
|
|
141
|
+
|
|
142
|
+
### Cách 2: Lập lịch hệ thống (chạy nền, không cần mở Claude Code)
|
|
143
|
+
|
|
144
|
+
**Windows** (PowerShell, chạy với quyền Admin):
|
|
145
|
+
```powershell
|
|
146
|
+
powershell -ExecutionPolicy Bypass -File "scripts/setup-scheduler.ps1"
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
**macOS/Linux** (crontab):
|
|
150
|
+
```bash
|
|
151
|
+
# Thêm vào crontab -e:
|
|
152
|
+
0 */2 * * * cd /path/to/llm-wiki && claude --print "/llm-wiki run" >> outputs/auto-run.log 2>&1
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### So sánh
|
|
156
|
+
|
|
157
|
+
| | `/loop` (trong session) | Lập lịch hệ thống |
|
|
158
|
+
|---|---|---|
|
|
159
|
+
| Khi nào chạy | Khi mở Claude Code/VS Code | Bất cứ lúc nào máy bật |
|
|
160
|
+
| Tần suất | Linh hoạt (10 phút đến 2 giờ) | Cố định (VD: mỗi 2 giờ) |
|
|
161
|
+
| Chi phí token | Thấp (cùng session) | Cao hơn (mỗi lần = session mới) |
|
|
162
|
+
| Cài đặt | Gõ lệnh là xong | Chạy script 1 lần (quyền admin) |
|
|
163
|
+
|
|
164
|
+
---
|
|
165
|
+
|
|
166
|
+
## Thêm nguồn
|
|
167
|
+
|
|
168
|
+
### Thủ công
|
|
169
|
+
|
|
170
|
+
Tạo file markdown rồi bỏ vào `raw/articles/`, `raw/reddit/`, hoặc `raw/notes/`:
|
|
171
|
+
|
|
172
|
+
```markdown
|
|
173
|
+
---
|
|
174
|
+
title: "Tiêu đề bài viết"
|
|
175
|
+
url: "https://example.com/article"
|
|
176
|
+
author: "Tên tác giả"
|
|
177
|
+
discovered: 2026-04-07
|
|
178
|
+
topic: "Tên chủ đề"
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
Nội dung bài viết ở đây...
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
Sau đó chạy `/llm-wiki ingest`.
|
|
185
|
+
|
|
186
|
+
### Qua Obsidian Web Clipper
|
|
187
|
+
|
|
188
|
+
1. Cài extension [Obsidian Web Clipper](https://obsidian.md/clipper)
|
|
189
|
+
2. Thấy bài hay → click icon clipper → lưu vào `raw/articles/`
|
|
190
|
+
3. Chạy `/llm-wiki ingest`
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## Cấu trúc thư mục
|
|
195
|
+
|
|
196
|
+
```
|
|
197
|
+
llm-wiki/
|
|
198
|
+
├── CLAUDE.md ← Schema cho Claude Code
|
|
199
|
+
├── AGENTS.md ← Schema cho Antigravity / Codex
|
|
200
|
+
├── .github/
|
|
201
|
+
│ └── copilot-instructions.md ← Schema cho GitHub Copilot
|
|
202
|
+
├── config.yaml ← Cấu hình chủ đề, nguồn, lịch chạy
|
|
203
|
+
├── config.example.yaml ← File mẫu cho người dùng mới
|
|
204
|
+
├── wiki-viewer.html ← Trình xem wiki (mobile-first, dark theme, graph)
|
|
205
|
+
├── raw/ ← Nguồn thô (LLM KHÔNG ĐƯỢC SỬA)
|
|
206
|
+
│ ├── articles/ ← Bài viết, papers
|
|
207
|
+
│ ├── reddit/ ← Pain points, use cases từ Reddit
|
|
208
|
+
│ ├── twitter/ ← Tweets (follow-builders + Web Clipper)
|
|
209
|
+
│ ├── notes/ ← Ghi chú cá nhân
|
|
210
|
+
│ └── media/ ← Ảnh chụp, sơ đồ
|
|
211
|
+
├── wiki/ ← Wiki do LLM viết & duy trì
|
|
212
|
+
│ ├── INDEX.md ← Danh mục tất cả trang wiki
|
|
213
|
+
│ ├── LOG.md ← Nhật ký hoạt động
|
|
214
|
+
│ ├── entities/ ← Người, tổ chức, công cụ, dự án
|
|
215
|
+
│ ├── concepts/ ← Khái niệm, pattern, phương pháp
|
|
216
|
+
│ ├── sources/ ← Tóm tắt từng nguồn thô
|
|
217
|
+
│ └── syntheses/ ← Phân tích tổng hợp, so sánh
|
|
218
|
+
├── outputs/ ← Kết quả hỏi đáp, báo cáo, xếp hạng
|
|
219
|
+
├── .discoveries/ ← Metadata cho auto-discovery
|
|
220
|
+
├── scripts/ ← Scripts tự động
|
|
221
|
+
│ ├── run-wiki.sh ← Cho lập lịch hệ thống
|
|
222
|
+
│ └── setup-scheduler.ps1
|
|
223
|
+
├── skills/ ← Claude Code skill (copy vào ~/.claude/skills/)
|
|
224
|
+
│ └── llm-wiki/
|
|
225
|
+
│ └── SKILL.md
|
|
226
|
+
└── docs/plans/ ← Tài liệu thiết kế
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## Kiến trúc
|
|
232
|
+
|
|
233
|
+
```
|
|
234
|
+
┌──────────────────────────────────────────────────────┐
|
|
235
|
+
│ BẠN (đọc & hỏi) │
|
|
236
|
+
├──────────────────────────────────────────────────────┤
|
|
237
|
+
│ wiki/ │ outputs/ │ wiki-viewer │
|
|
238
|
+
│ (Obsidian) │ (bản tin, rank) │ (.html) │
|
|
239
|
+
├──────────────────────────────────────────────────────┤
|
|
240
|
+
│ LLM (viết & duy trì) │
|
|
241
|
+
├──────────┬───────────┬──────────┬────────────────────┤
|
|
242
|
+
│ discover │ ingest │ query │ lint │
|
|
243
|
+
│ (tìm) │ (xử lý) │ (đáp) │ (kiểm tra) │
|
|
244
|
+
├──────────┴───────────┴──────────┴────────────────────┤
|
|
245
|
+
│ raw/ │ config.yaml │ CLAUDE.md │
|
|
246
|
+
│ (nguồn thô) │ (cấu hình) │ (quy tắc) │
|
|
247
|
+
└──────────────────────────────────────────────────────┘
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
**Luồng chính:** discover → raw/ → ingest → wiki/ → query → outputs/
|
|
251
|
+
|
|
252
|
+
**Vòng lặp tự cải thiện:** lint phát hiện gaps → discover tìm nguồn → ingest lấp đầy → wiki ngày càng giàu
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Câu hỏi thường gặp
|
|
257
|
+
|
|
258
|
+
Xem [FAQ.md](FAQ.md) — bao gồm: wiki phình to truy vấn thế nào, versioning schema, dùng cho tài liệu nội bộ (Confluence), chi phí token, dùng cho team, dùng model khác, hallucination.
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## Tác giả & Nguồn cảm hứng
|
|
263
|
+
|
|
264
|
+
- Pattern gốc: [Andrej Karpathy — LLM Wiki](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f)
|
|
265
|
+
- Hướng dẫn thực hành: [Nick Spisak — How to Build Your Second Brain](https://x.com/NickSpisak_/status/2040448463540830705)
|
|
266
|
+
- Engine: [Claude Code](https://claude.ai/code) (Anthropic)
|
|
267
|
+
- Xem wiki: [Obsidian](https://obsidian.md/)
|
|
268
|
+
- Bản tin Twitter: [follow-builders](https://github.com/zarazhangrui/follow-builders)
|
|
269
|
+
|
|
270
|
+
## Giấy phép
|
|
271
|
+
|
|
272
|
+
MIT
|
|
@@ -1,17 +1,145 @@
|
|
|
1
|
-
# LLM Wiki Configuration
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
#
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
#
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
# LLM Wiki — Configuration Template
|
|
2
|
+
# Copy this file to config.yaml and customize for your needs:
|
|
3
|
+
# cp config.example.yaml config.yaml
|
|
4
|
+
|
|
5
|
+
# ============================================================
|
|
6
|
+
# Wiki Info
|
|
7
|
+
# ============================================================
|
|
8
|
+
wiki:
|
|
9
|
+
name: "My LLM Wiki"
|
|
10
|
+
description: "Personal knowledge base — change this to your focus area"
|
|
11
|
+
language: "en" # en | vi | zh | ja | ...
|
|
12
|
+
max_pages_per_ingest: 15
|
|
13
|
+
|
|
14
|
+
# ============================================================
|
|
15
|
+
# Topics — what you want to learn about
|
|
16
|
+
# The system auto-discovers sources based on these keywords
|
|
17
|
+
# ============================================================
|
|
18
|
+
topics:
|
|
19
|
+
- name: "Your Topic 1"
|
|
20
|
+
keywords: ["keyword1", "keyword2", "keyword3"]
|
|
21
|
+
priority: high # high | medium | low
|
|
22
|
+
|
|
23
|
+
- name: "Your Topic 2"
|
|
24
|
+
keywords: ["keyword1", "keyword2"]
|
|
25
|
+
priority: medium
|
|
26
|
+
|
|
27
|
+
# Add more topics:
|
|
28
|
+
# - name: "Topic Name"
|
|
29
|
+
# keywords: ["keyword1", "keyword2"]
|
|
30
|
+
# priority: medium
|
|
31
|
+
|
|
32
|
+
# ============================================================
|
|
33
|
+
# Feeds — automated source collection
|
|
34
|
+
# ============================================================
|
|
35
|
+
feeds:
|
|
36
|
+
# GitHub Trending
|
|
37
|
+
github_trending:
|
|
38
|
+
enabled: true
|
|
39
|
+
languages: ["python", "typescript", "rust", "go"]
|
|
40
|
+
since: "daily"
|
|
41
|
+
min_stars: 100
|
|
42
|
+
topics_filter: ["ai", "llm", "agent"]
|
|
43
|
+
|
|
44
|
+
# GitHub Orgs to watch
|
|
45
|
+
github_orgs: []
|
|
46
|
+
# - org: "anthropics"
|
|
47
|
+
# watch: ["new_repos", "releases"]
|
|
48
|
+
# note: "Anthropic"
|
|
49
|
+
|
|
50
|
+
# GitHub People to follow
|
|
51
|
+
github_people: []
|
|
52
|
+
# - user: "karpathy"
|
|
53
|
+
# watch: ["new_repos", "releases", "stars"]
|
|
54
|
+
# note: "Andrej Karpathy"
|
|
55
|
+
|
|
56
|
+
# GitHub Repos to track
|
|
57
|
+
github_repos: []
|
|
58
|
+
# - repo: "owner/repo-name"
|
|
59
|
+
# watch: ["releases", "readme"]
|
|
60
|
+
|
|
61
|
+
# Reddit — pain points & use cases
|
|
62
|
+
reddit:
|
|
63
|
+
enabled: false # Set to true and configure subreddits below
|
|
64
|
+
sort: "hot"
|
|
65
|
+
time_filter: "week"
|
|
66
|
+
min_upvotes: 20
|
|
67
|
+
max_posts_per_sub: 3
|
|
68
|
+
subreddits_pain_points: []
|
|
69
|
+
# - sub: "r/SaaS"
|
|
70
|
+
# search: ["pain point", "need a tool", "frustrated with"]
|
|
71
|
+
# note: "SaaS pain points"
|
|
72
|
+
|
|
73
|
+
# RSS feeds
|
|
74
|
+
rss: []
|
|
75
|
+
# - url: "https://blog.example.com/rss"
|
|
76
|
+
# name: "Example Blog"
|
|
77
|
+
|
|
78
|
+
# Hacker News
|
|
79
|
+
hackernews:
|
|
80
|
+
enabled: true
|
|
81
|
+
min_score: 50
|
|
82
|
+
keywords: [] # Empty = use keywords from topics
|
|
83
|
+
|
|
84
|
+
# Twitter/X accounts
|
|
85
|
+
twitter_accounts: []
|
|
86
|
+
# - handle: "username"
|
|
87
|
+
# note: "Description"
|
|
88
|
+
|
|
89
|
+
# ============================================================
|
|
90
|
+
# Schedule
|
|
91
|
+
# ============================================================
|
|
92
|
+
schedule:
|
|
93
|
+
run:
|
|
94
|
+
loop_interval: "1h" # For /loop when using Claude Code
|
|
95
|
+
fallback_interval: "2h" # For Windows Task Scheduler (CLI)
|
|
96
|
+
max_sources: 5
|
|
97
|
+
|
|
98
|
+
ingest:
|
|
99
|
+
trigger: "on_new_file"
|
|
100
|
+
batch_size: 5
|
|
101
|
+
|
|
102
|
+
lint:
|
|
103
|
+
interval: "6h"
|
|
104
|
+
auto_fix: false
|
|
105
|
+
|
|
106
|
+
recompile:
|
|
107
|
+
interval: "weekly"
|
|
108
|
+
cron: "0 10 * * 0"
|
|
109
|
+
|
|
110
|
+
# ============================================================
|
|
111
|
+
# Discovery Settings
|
|
112
|
+
# ============================================================
|
|
113
|
+
discovery:
|
|
114
|
+
strategies:
|
|
115
|
+
- web_search
|
|
116
|
+
- feed_poll
|
|
117
|
+
- gap_fill
|
|
118
|
+
# - reddit_scan # Enable after configuring reddit feeds
|
|
119
|
+
# - github_trending
|
|
120
|
+
# - github_watch
|
|
121
|
+
# - snowball
|
|
122
|
+
|
|
123
|
+
web_search:
|
|
124
|
+
engine: "websearch"
|
|
125
|
+
max_results_per_topic: 5
|
|
126
|
+
recency: "month"
|
|
127
|
+
|
|
128
|
+
scraping:
|
|
129
|
+
tool: "webfetch"
|
|
130
|
+
save_images: true
|
|
131
|
+
max_article_length: 50000
|
|
132
|
+
|
|
133
|
+
dedup:
|
|
134
|
+
check_url: true
|
|
135
|
+
check_title: true
|
|
136
|
+
similarity_threshold: 0.9
|
|
137
|
+
|
|
138
|
+
# ============================================================
|
|
139
|
+
# Output Formats
|
|
140
|
+
# ============================================================
|
|
141
|
+
outputs:
|
|
142
|
+
formats:
|
|
143
|
+
- markdown
|
|
144
|
+
save_queries: true
|
|
145
|
+
save_syntheses: true
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# LLM Wiki — Auto Run Script
|
|
3
|
+
# Called by system scheduler (Task Scheduler / cron)
|
|
4
|
+
# Edit WIKI_ROOT below to match your installation path
|
|
5
|
+
|
|
6
|
+
WIKI_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
|
7
|
+
LOG_FILE="$WIKI_ROOT/outputs/auto-run.log"
|
|
8
|
+
|
|
9
|
+
mkdir -p "$WIKI_ROOT/outputs"
|
|
10
|
+
echo "$(date '+%Y-%m-%d %H:%M:%S') — Starting /llm-wiki run" >> "$LOG_FILE"
|
|
11
|
+
|
|
12
|
+
cd "$WIKI_ROOT" || exit 1
|
|
13
|
+
|
|
14
|
+
claude --print --dangerously-skip-permissions "/llm-wiki run" 2>>"$LOG_FILE" | tail -20 >> "$LOG_FILE"
|
|
15
|
+
|
|
16
|
+
echo "$(date '+%Y-%m-%d %H:%M:%S') — Completed /llm-wiki run" >> "$LOG_FILE"
|
|
17
|
+
echo "---" >> "$LOG_FILE"
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# LLM Wiki - Windows Task Scheduler Setup
|
|
2
|
+
# Run: powershell -ExecutionPolicy Bypass -File "scripts/setup-scheduler.ps1"
|
|
3
|
+
|
|
4
|
+
$taskName = "LLM-Wiki-AutoRun"
|
|
5
|
+
$bashPath = "C:\Program Files\Git\bin\bash.exe"
|
|
6
|
+
$scriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
|
|
7
|
+
$projectDir = Split-Path -Parent $scriptDir
|
|
8
|
+
$scriptPath = Join-Path $scriptDir "run-wiki.sh"
|
|
9
|
+
|
|
10
|
+
# Remove old task
|
|
11
|
+
Unregister-ScheduledTask -TaskName $taskName -Confirm:$false -ErrorAction SilentlyContinue
|
|
12
|
+
|
|
13
|
+
# Trigger: every 2 hours, repeat for 365 days
|
|
14
|
+
$trigger = New-ScheduledTaskTrigger -Once -At (Get-Date) -RepetitionInterval (New-TimeSpan -Hours 2) -RepetitionDuration (New-TimeSpan -Days 365)
|
|
15
|
+
|
|
16
|
+
# Action: run bash script
|
|
17
|
+
$action = New-ScheduledTaskAction -Execute $bashPath -Argument $scriptPath -WorkingDirectory $projectDir
|
|
18
|
+
|
|
19
|
+
# Settings
|
|
20
|
+
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -StartWhenAvailable -RunOnlyIfNetworkAvailable
|
|
21
|
+
|
|
22
|
+
# Register task
|
|
23
|
+
Register-ScheduledTask -TaskName $taskName -Trigger $trigger -Action $action -Settings $settings -Description "LLM Wiki auto run every 2 hours" -RunLevel Limited
|
|
24
|
+
|
|
25
|
+
Write-Host "OK - Task '$taskName' created!"
|
|
26
|
+
Write-Host "Project: $projectDir"
|
|
27
|
+
Write-Host "Check: Get-ScheduledTask -TaskName '$taskName'"
|
|
28
|
+
Write-Host "Run now: Start-ScheduledTask -TaskName '$taskName'"
|
|
29
|
+
Write-Host "Delete: Unregister-ScheduledTask -TaskName '$taskName'"
|