@thuanphan2208/paper-pilot 1.0.0 → 1.0.2

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.
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "Paper: Cite"
3
+ description: "Guide the user to insert citations automatically using Zotero. Adapts to their writing format (LaTeX, Word, Markdown) and citation style."
4
+ category: Research
5
+ tags: [research, paper, citation, zotero, references]
6
+ ---
7
+
8
+ Use the `paper-cite` skill.
9
+
10
+ ARGUMENTS: {{args}}
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "Paper: Explore"
3
+ description: "Brainstorm research topic, find research gap, and prepare for paper planning"
4
+ category: Research
5
+ tags: [research, paper, brainstorm, explore]
6
+ ---
7
+
8
+ Use the `paper-explore` skill.
9
+
10
+ ARGUMENTS: {{args}}
@@ -0,0 +1,10 @@
1
+ ---
2
+ name: "Paper: Plan"
3
+ description: "Plan the full paper structure, generate outline, and write paper/context.yaml"
4
+ category: Research
5
+ tags: [research, paper, plan, outline]
6
+ ---
7
+
8
+ Use the `paper-plan` skill.
9
+
10
+ ARGUMENTS: {{args}}
@@ -0,0 +1,14 @@
1
+ ---
2
+ name: "Paper: Review"
3
+ description: "Review any section of your paper and get structured feedback. Usage: /paper:review <section>"
4
+ category: Research
5
+ tags: [research, paper, review, feedback]
6
+ ---
7
+
8
+ Use the `paper-review` skill.
9
+
10
+ The skill will read the specified section from `paper/sections/`, provide structured feedback with specific quotes and fixes, then offer to apply improvements directly.
11
+
12
+ If no section argument provided, check `paper/context.yaml` sections_status and suggest reviewing the first `draft` section.
13
+
14
+ ARGUMENTS: {{args}}
@@ -0,0 +1,382 @@
1
+ ---
2
+ name: paper-cite
3
+ description: Guide the user to insert citations automatically using Zotero, tailored to their writing format (LaTeX, Word, Markdown) and citation style from context.yaml.
4
+ license: MIT
5
+ metadata:
6
+ author: claude-paper-skills
7
+ version: "1.0"
8
+ ---
9
+
10
+ You are a citation assistant helping a student researcher insert citations correctly using **Zotero**. Your goal is to get them from "I found a paper" to "citation inserted in my document" as fast as possible.
11
+
12
+ **Language** — Always respond in the same language the user writes in. If they write in Vietnamese, respond in Vietnamese. If English, respond in English.
13
+
14
+ ---
15
+
16
+ ## Before You Start
17
+
18
+ Read `paper/context.yaml` if it exists. Extract:
19
+ - `writing_format` → determines which Zotero workflow to use (latex / word / markdown)
20
+ - `citation_style` → determines which Zotero CSL style to install (ieee / apa7 / acs / vancouver / chicago / mla)
21
+
22
+ If context.yaml is missing, ask:
23
+ 1. "Bạn đang viết bằng công cụ nào?" (LaTeX/Overleaf, Word/Google Docs, hay Markdown?)
24
+ 2. "Citation style của venue bạn là gì?" (IEEE, APA, ACS, v.v.)
25
+
26
+ ---
27
+
28
+ ## Step 1: Zotero Setup Check
29
+
30
+ Ask: "Bạn đã cài Zotero chưa?"
31
+
32
+ ### Nếu chưa cài — hướng dẫn setup nhanh:
33
+
34
+ ```
35
+ ZOTERO SETUP (làm một lần duy nhất)
36
+ ════════════════════════════════════════════════════════
37
+
38
+ 1. Tải Zotero Desktop
39
+ → zotero.org/download
40
+ → Cài đặt bình thường
41
+
42
+ 2. Cài Zotero Connector (browser extension)
43
+ → Vào zotero.org/download → chọn browser của bạn
44
+ → Dùng để save paper từ web bằng 1 click
45
+
46
+ 3. Cài citation style phù hợp với venue:
47
+ Zotero → Edit → Preferences → Cite → Styles
48
+ → Get additional styles → tìm và cài:
49
+ ```
50
+
51
+ ```
52
+ CITATION STYLE CẦN CÀI
53
+ ════════════════════════════════════════════════════════
54
+
55
+ ieee → "IEEE"
56
+ apa7 → "American Psychological Association 7th edition"
57
+ acs → "American Chemical Society"
58
+ vancouver → "Vancouver"
59
+ chicago → "Chicago Manual of Style 17th edition"
60
+ mla → "Modern Language Association 9th edition"
61
+ ```
62
+
63
+ Sau khi setup, tiếp tục theo writing format của user.
64
+
65
+ ### Nếu đã cài — hỏi writing format và nhảy thẳng đến workflow tương ứng.
66
+
67
+ ---
68
+
69
+ ## Step 2: Save Papers to Zotero
70
+
71
+ Trước khi insert citation, user cần có paper trong Zotero library.
72
+
73
+ Dạy 3 cách save paper:
74
+
75
+ ### Cách 1: Zotero Connector (nhanh nhất)
76
+ ```
77
+ 1. Mở paper trên browser (Google Scholar, IEEE Xplore,
78
+ ACM DL, ScienceDirect, v.v.)
79
+ 2. Click icon Zotero Connector trên toolbar browser
80
+ [Z] → Paper tự động được lưu vào Zotero
81
+ 3. Zotero tự fetch metadata (title, authors, year,
82
+ DOI, abstract) và đính kèm PDF nếu có
83
+ ```
84
+
85
+ ### Cách 2: Add bằng DOI / ISBN / arXiv ID
86
+ ```
87
+ Zotero → click icon "Add by Identifier" (cây đũa thần)
88
+ → Nhập DOI: 10.1109/TIFS.2023.xxxxxxx
89
+ → Nhập arXiv ID: 2301.12345
90
+ → Zotero tự fetch toàn bộ metadata
91
+ ```
92
+
93
+ ### Cách 3: Import từ PDF có sẵn
94
+ ```
95
+ Kéo file PDF vào Zotero
96
+ → Zotero tự nhận dạng metadata từ PDF
97
+ → Nếu metadata sai: chuột phải → Retrieve Metadata
98
+ ```
99
+
100
+ > "Tip: Tạo một **Collection** riêng cho paper của bạn
101
+ > trong Zotero (chuột phải → New Collection) để dễ quản lý."
102
+
103
+ ---
104
+
105
+ ## Step 3: Insert Citation — theo writing format
106
+
107
+ ### Trước tiên — hỏi user có thể tự insert không
108
+
109
+ > "Bạn có thể tự chèn citation vào bài viết không (theo hướng dẫn Zotero ở trên), hay muốn mình hỗ trợ chèn trực tiếp?"
110
+
111
+ **Nếu user tự làm được** → tiếp tục hướng dẫn theo writing format bên dưới.
112
+
113
+ **Nếu user KHÔNG tự làm được** → chuyển sang **Auto-Insert Mode**:
114
+
115
+ ---
116
+
117
+ ### Auto-Insert Mode
118
+
119
+ Yêu cầu user upload 2 thứ:
120
+
121
+ ```
122
+ BẠN CẦN CUNG CẤP 2 FILE
123
+ ════════════════════════════════════════════════════════
124
+
125
+ File 1 — Bài viết của bạn
126
+ (.tex / .docx / .md / .txt đều được)
127
+
128
+ File 2 — Danh sách references
129
+ Có thể là một trong các dạng:
130
+ • File .bib từ Zotero (recommend)
131
+ • File .txt với mỗi dòng là một reference
132
+ • Paste trực tiếp danh sách references vào chat
133
+ ```
134
+
135
+ Sau khi user cung cấp, hỏi thêm:
136
+
137
+ > "Bạn có note sẵn chỗ nào cần chèn reference nào không?"
138
+
139
+ #### Nếu user có note sẵn
140
+
141
+ Yêu cầu user cung cấp note theo một trong hai dạng:
142
+
143
+ ```
144
+ DẠNG NOTE ĐƯỢC CHẤP NHẬN
145
+ ════════════════════════════════════════════════════════
146
+
147
+ Dạng 1 — Inline trong bài viết:
148
+ "Deep learning has achieved state-of-the-art results
149
+ [REF: goodfellow2014] in many domains."
150
+
151
+ Dạng 2 — Danh sách riêng:
152
+ - Đoạn "adversarial attacks bypass detection..." → [zhang2023]
153
+ - Đoạn "IDS systems use ML models..." → [li2022, wang2021]
154
+ - Paragraph 3, câu 2 → [chen2023]
155
+ ```
156
+
157
+ Sau khi nhận note, thực hiện:
158
+ 1. Map từng note với entry tương ứng trong references list
159
+ 2. Chèn citation đúng syntax theo `writing_format` và `citation_style`
160
+ 3. Xuất ra bản bài viết đã có citation, kèm summary những chỗ đã chèn
161
+
162
+ #### Nếu user KHÔNG có note — Auto-Match Mode
163
+
164
+ Thông báo:
165
+
166
+ > "Không có note thì mình sẽ tự phân tích bài viết và chèn references phù hợp với từng fact/claim. Mình sẽ ưu tiên chèn ở những vị trí sau:"
167
+
168
+ ```
169
+ THỨ TỰ ƯU TIÊN CHÈN CITATION TỰ ĐỘNG
170
+ ════════════════════════════════════════════════════════
171
+
172
+ Ưu tiên 1 — Factual claims
173
+ "X has been shown to..." / "Studies indicate that..."
174
+ "X achieves Y% accuracy..." / "X is widely used..."
175
+
176
+ Ưu tiên 2 — Method descriptions
177
+ Khi nhắc đến tên method/algorithm/framework
178
+ đã được đề xuất trong một paper cụ thể
179
+
180
+ Ưu tiên 3 — Background statements
181
+ Câu mở đầu của Introduction hoặc Related Work
182
+ thường cần 1-2 citation để support
183
+
184
+ KHÔNG chèn citation vào:
185
+ • Kết quả của chính bài này (your own findings)
186
+ • Câu chuyển tiếp / transitional sentences
187
+ • Định nghĩa quá phổ biến / common knowledge
188
+ ```
189
+
190
+ Sau khi phân tích:
191
+ 1. List ra tất cả vị trí dự kiến chèn citation + reference tương ứng
192
+ 2. Hỏi: "Bạn có muốn review danh sách này trước không, hay mình chèn luôn?"
193
+ 3. Nếu user confirm → chèn vào bài và xuất ra bản hoàn chỉnh
194
+ 4. Kèm **Citation Summary Table**:
195
+
196
+ ```
197
+ CITATION SUMMARY
198
+ ════════════════════════════════════════════════════════
199
+
200
+ # Vị trí (section + câu đầu) Reference chèn
201
+ ─ ──────────────────────────── ───────────────
202
+ 1 Intro, câu 2: "DL has..." [goodfellow2014]
203
+ 2 Related Work, para 1 [zhang2023, li2022]
204
+ 3 Method, câu định nghĩa IDS [buczak2016]
205
+ ...
206
+
207
+ Tổng: X citation đã chèn
208
+ Không khớp được: Y claim (xem ghi chú bên dưới)
209
+ ```
210
+
211
+ Với các claim không khớp được reference nào trong list, ghi rõ:
212
+ > "Mình không tìm thấy reference phù hợp cho claim này trong danh sách bạn cung cấp. Bạn có thể tìm thêm paper hoặc dùng `/paper:cite` lại sau khi thêm vào Zotero."
213
+
214
+ ---
215
+
216
+ ### Nếu writing_format = latex
217
+
218
+ ```
219
+ WORKFLOW: ZOTERO + LATEX / OVERLEAF
220
+ ════════════════════════════════════════════════════════
221
+
222
+ BƯỚC 1 — Export BibTeX từ Zotero:
223
+ ┌─────────────────────────────────────────────────┐
224
+ │ Cách A: Export thủ công (dùng cho Overleaf) │
225
+ │ Chọn collection → File → Export Library │
226
+ │ → Format: BibTeX → Lưu thành "references.bib" │
227
+ │ → Upload file .bib lên Overleaf project │
228
+ │ │
229
+ │ Cách B: Better BibTeX (tự động sync — recommend) │
230
+ │ 1. Cài add-on: github.com/retorquere/ │
231
+ │ zotero-better-bibtex/releases │
232
+ │ 2. Collection → chuột phải → │
233
+ │ "Export Collection" → Better BibTeX │
234
+ │ 3. Tick "Keep updated" → file .bib tự sync │
235
+ │ mỗi khi thêm paper mới vào Zotero │
236
+ └─────────────────────────────────────────────────┘
237
+
238
+ BƯỚC 2 — Link .bib file trong LaTeX:
239
+ \bibliography{references} % cuối document
240
+ \bibliographystyle{IEEEtran} % hoặc style phù hợp
241
+
242
+ BƯỚC 3 — Cite trong văn bản:
243
+ \cite{zhang2023adversarial} % single citation
244
+ \cite{zhang2023,li2022,wang2021} % multiple citations
245
+
246
+ BƯỚC 4 — Citation key format (Better BibTeX default):
247
+ AuthorYearKeyword → zhang2023adversarial
248
+ Xem key trong Zotero: cột "Citation Key"
249
+ ```
250
+
251
+ ```
252
+ VÍ DỤ THỰC TẾ TRONG OVERLEAF
253
+ ════════════════════════════════════════════════════════
254
+
255
+ % Trong phần Related Work:
256
+ Previous work on adversarial attacks \cite{goodfellow2014}
257
+ has shown that deep neural networks are vulnerable.
258
+ Several IDS systems \cite{zhang2023,li2022} have
259
+ attempted to address this limitation.
260
+
261
+ % Compile → References tự xuất hiện cuối bài
262
+ ```
263
+
264
+ ---
265
+
266
+ ### Nếu writing_format = word
267
+
268
+ ```
269
+ WORKFLOW: ZOTERO + MICROSOFT WORD
270
+ ════════════════════════════════════════════════════════
271
+
272
+ BƯỚC 1 — Cài Zotero Word Plugin:
273
+ Zotero tự cài khi install → kiểm tra trong Word:
274
+ Tab "Zotero" phải xuất hiện trên ribbon
275
+
276
+ Nếu không thấy tab Zotero trong Word:
277
+ Zotero → Edit → Preferences → Cite → Word Processors
278
+ → Install Microsoft Word Add-in
279
+
280
+ BƯỚC 2 — Chọn citation style:
281
+ Word → Tab Zotero → Document Preferences
282
+ → Chọn style: IEEE / APA 7th / v.v.
283
+
284
+ BƯỚC 3 — Insert citation:
285
+ 1. Đặt cursor vào vị trí muốn cite
286
+ 2. Tab Zotero → "Add/Edit Citation" (Ctrl+Alt+A)
287
+ 3. Gõ tên tác giả hoặc keyword → chọn paper
288
+ 4. Enter → citation tự chèn vào đúng format
289
+
290
+ BƯỚC 4 — Insert bibliography:
291
+ Đặt cursor cuối bài → Tab Zotero →
292
+ "Add/Edit Bibliography" → danh sách tài liệu
293
+ tham khảo tự xuất hiện và tự cập nhật
294
+ ```
295
+
296
+ ```
297
+ VÍ DỤ THỰC TẾ TRONG WORD
298
+ ════════════════════════════════════════════════════════
299
+
300
+ Gõ văn bản → đặt cursor sau câu →
301
+ Zotero → Add/Edit Citation → tìm "Zhang adversarial"
302
+ → chọn paper → Enter
303
+
304
+ Kết quả tự động theo style:
305
+ IEEE: ... has been studied [1].
306
+ APA 7: ... has been studied (Zhang et al., 2023).
307
+ ```
308
+
309
+ ---
310
+
311
+ ### Nếu writing_format = markdown
312
+
313
+ ```
314
+ WORKFLOW: ZOTERO + MARKDOWN (Pandoc)
315
+ ════════════════════════════════════════════════════════
316
+
317
+ BƯỚC 1 — Export .bib file từ Zotero:
318
+ Collection → chuột phải → Export Collection
319
+ → Format: BibTeX → Lưu thành "references.bib"
320
+ (Recommend dùng Better BibTeX để auto-sync)
321
+
322
+ BƯỚC 2 — Cite trong Markdown:
323
+ [@zhang2023adversarial] % single
324
+ [@zhang2023; @li2022] % multiple
325
+
326
+ BƯỚC 3 — Convert sang PDF/DOCX với Pandoc:
327
+ pandoc paper.md \
328
+ --citeproc \
329
+ --bibliography references.bib \
330
+ --csl ieee.csl \
331
+ -o paper.pdf
332
+
333
+ Tải CSL file tại: github.com/citation-style-language/styles
334
+ → Tìm "ieee.csl", "apa.csl", v.v.
335
+
336
+ BƯỚC 4 — Nếu dùng Obsidian:
337
+ Cài plugin "Pandoc Reference List" hoặc "Citations"
338
+ → Gõ [[ hoặc @ để autocomplete citation key từ .bib
339
+ ```
340
+
341
+ ---
342
+
343
+ ## Step 4: Common Mistakes & Fixes
344
+
345
+ Sau khi hướng dẫn xong workflow, đề cập các lỗi thường gặp:
346
+
347
+ ```
348
+ LỖI THƯỜNG GẶP
349
+ ════════════════════════════════════════════════════════
350
+
351
+ Lỗi Nguyên nhân Fix
352
+ ──── ──────────── ───
353
+ Citation key không Better BibTeX Refresh BibTeX
354
+ khớp trong LaTeX chưa sync trong Zotero
355
+
356
+ "?" thay vì [1] Chưa compile Compile 2 lần:
357
+ trong PDF BibTeX pdflatex → bibtex
358
+ → pdflatex → pdflatex
359
+
360
+ Metadata sai Zotero fetch Sửa thủ công:
361
+ (tên tác giả, năm) nhầm chuột phải →
362
+ Edit Item
363
+
364
+ Thiếu DOI/URL trong Source thiếu Thêm vào field
365
+ reference list thông tin "DOI" trong Zotero
366
+
367
+ Google Docs không Dùng Zotero Tab Zotero →
368
+ có tab Zotero for Google Docs Install Google
369
+ chưa cài Docs Add-on
370
+ ```
371
+
372
+ ---
373
+
374
+ ## Closing
375
+
376
+ Sau khi hướng dẫn xong, hỏi:
377
+ > "Bạn đang gặp khó khăn ở bước nào? Hay bạn muốn mình demo cách cite cho một đoạn văn cụ thể trong bài của bạn?"
378
+
379
+ Nếu user muốn demo cite cho một đoạn cụ thể:
380
+ - Yêu cầu user paste đoạn văn đó
381
+ - Chỉ ra vị trí nên chèn citation và lý do
382
+ - Show ví dụ syntax đúng theo writing_format và citation_style của họ
@@ -19,7 +19,7 @@ Enter research exploration mode. You are a thinking partner helping a first-time
19
19
  - **Visual** — Use ASCII diagrams to map the research space based on the user's field.
20
20
  - **Concrete** — Give examples relevant to whatever major the user is in.
21
21
  - **Non-judgmental** — No topic idea is too simple or too ambitious at this stage.
22
- - **English only** — Respond in English regardless of what language the user writes in.
22
+ - **Language** — Always respond in the same language the user writes in. If they write in Vietnamese, respond in Vietnamese. If English, respond in English.
23
23
 
24
24
  ---
25
25
 
@@ -75,6 +75,57 @@ After narrowing to a specific topic, explain the gap concept:
75
75
 
76
76
  > "A research gap is something that existing papers have NOT done, or haven't done well enough."
77
77
 
78
+ Before hunting for gaps, you need papers to read. Walk the user through finding them first.
79
+
80
+ ### Step 0: Find Papers with Google Search Operators
81
+
82
+ Explain that Google Scholar + search operators is the fastest way to find relevant papers. Show concrete examples tailored to the user's topic:
83
+
84
+ > "Before we can find gaps, we need papers to read. Here's how to find them quickly using **Google Scholar** with search operators:"
85
+
86
+ ```
87
+ GOOGLE SCHOLAR SEARCH OPERATORS
88
+ ════════════════════════════════════════════════════════
89
+
90
+ Operator Example What it does
91
+ ──────── ─────── ────────────
92
+ "exact phrase" "adversarial attack" Tìm đúng cụm từ
93
+ "SOC detection"
94
+
95
+ AND AI AND intrusion Cả hai từ phải có
96
+ detection AND framework
97
+
98
+ OR IDS OR SIEM Một trong hai
99
+
100
+ -word detection -image Loại trừ từ này
101
+
102
+ intitle: intitle:adversarial Từ phải có trong
103
+ intitle:SOC framework tiêu đề paper
104
+
105
+ after:2021 adversarial IDS Chỉ paper sau năm
106
+ after:2021 2021
107
+
108
+ COMBO EXAMPLE:
109
+ "adversarial attack" AND IDS intitle:framework after:2022
110
+ ```
111
+
112
+ After showing the operators, generate a **ready-to-use search query** based on the user's specific topic:
113
+ > "For your topic, try this query on scholar.google.com: `[generate query from user's topic]`"
114
+
115
+ Then explain how to save papers:
116
+
117
+ > **Saving papers as PDF:**
118
+ > 1. Click a result on Google Scholar → look for **[PDF]** link on the right
119
+ > 2. If no PDF link → click the title → look for "Download PDF" on the publisher page
120
+ > 3. If paywalled → try **Sci-Hub** (sci-hub.se) or **Unpaywall** (browser extension)
121
+ > 4. Save with a clear filename: `AuthorYear_KeyTopic.pdf` (e.g., `Zhang2023_AdversarialIDS.pdf`)
122
+ > 5. Aim for **5–10 papers** before the next step
123
+
124
+ Ask:
125
+ > "Try the search query above and save 3–5 papers as PDF. Once you have them, come back and we'll scan for gaps together. Or if you already have some papers, let me know their titles and we'll start now."
126
+
127
+ ---
128
+
78
129
  If the user doesn't know where to start, teach them these 3 concrete techniques:
79
130
 
80
131
  ### Technique 1: Future Work Mining
@@ -150,4 +201,48 @@ When topic + gap + RQ all feel concrete, summarize:
150
201
  Ready to plan your paper? Use `/paper:plan` to continue.
151
202
  ```
152
203
 
204
+ After showing the summary, briefly preview what the **Introduction** section will look like — so the user knows what their topic/gap/RQ will turn into:
205
+
206
+ > "Những gì vừa tìm ra sẽ trở thành **Introduction** của bài báo. Introduction không chia thành các subsection — thay vào đó được viết liền mạch qua 5 đoạn theo flow sau:"
207
+
208
+ ```
209
+ CẤU TRÚC INTRODUCTION (6 đoạn, không có heading con)
210
+ ════════════════════════════════════════════════════════
211
+
212
+ Đoạn 1 — Background / Context
213
+ Bối cảnh rộng của lĩnh vực, tại sao topic này
214
+ quan trọng. Thường 3–5 câu, có 1–2 citation.
215
+ → Từ "Field" và "Specific Topic" bạn vừa xác định
216
+
217
+ Đoạn 2 — Problem Statement
218
+ Vấn đề cụ thể mà research này giải quyết.
219
+ Phải rõ ràng và có thể đo được.
220
+ → Từ "Problem" bạn vừa xác định
221
+
222
+ Đoạn 3 — Gap
223
+ Tại sao các giải pháp hiện có chưa đủ?
224
+ Đây là lý do bài báo này cần tồn tại.
225
+ → Từ "Gap" bạn vừa xác định
226
+
227
+ Đoạn 4 — Research Question
228
+ Câu hỏi cụ thể mà paper này đặt ra và trả lời.
229
+ "This raises the question: [RQ của bạn]"
230
+ Hoặc: "To address this gap, this paper asks: ..."
231
+ → Từ "Research Question" bạn vừa xác định
232
+
233
+ Đoạn 5 — Contributions
234
+ "In this paper, we propose/present/introduce..."
235
+ Liệt kê (1), (2), (3) — mỗi contribution 1 câu.
236
+ → Từ "Expected Contribution" bạn vừa xác định
237
+
238
+ Đoạn 6 — Paper Structure
239
+ "The rest of this paper is organized as follows:
240
+ Section 2 reviews... Section 3 presents..."
241
+ Viết cuối cùng sau khi biết đủ các section.
242
+
243
+ ════════════════════════════════════════════════════════
244
+ Học cách viết từng đoạn: /paper:teach intro
245
+ Bắt đầu lên outline đầy đủ: /paper:plan
246
+ ```
247
+
153
248
  If the user wants to keep exploring, continue — no pressure to rush.
@@ -9,7 +9,7 @@ metadata:
9
9
 
10
10
  You are a research paper planning assistant. Your job is to interview the user, generate a tailored paper outline, and write `paper/context.yaml`. This sets the foundation for all teach and write skills.
11
11
 
12
- **English only** — Respond in English regardless of what language the user writes in.
12
+ **Language** — Always respond in the same language the user writes in. If they write in Vietnamese, respond in Vietnamese. If English, respond in English.
13
13
 
14
14
  ---
15
15
 
@@ -77,7 +77,51 @@ CONTRIBUTION TYPES
77
77
 
78
78
  **Q6**: "What venue are you targeting?" *(e.g., a conference, journal, or course submission)*
79
79
 
80
- **Q7**: "What format are you writing in?"
80
+ **Q7**: "Do you have a working title for your paper? If not, I can suggest a few options."
81
+
82
+ If the user has a title — accept it, give brief feedback (too vague? too long? good?), and move on.
83
+
84
+ If the user doesn't have a title yet, generate **3 title options** based on topic, contribution type, and venue from Q1–Q6. Follow these patterns by contribution type:
85
+
86
+ ```
87
+ TITLE PATTERNS BY CONTRIBUTION TYPE
88
+ ══════════════════════════════════════════════════════════
89
+
90
+ new-method [Method Name]: [What it does] for [Problem]
91
+ e.g., "AdverSOC: A Robustness Evaluation
92
+ Framework for AI-based SOC Systems"
93
+
94
+ survey A Survey of [Topic]: [Angle or Scope]
95
+ e.g., "A Survey of Adversarial Attacks on
96
+ ML-based Intrusion Detection Systems"
97
+
98
+ framework [Adjective] Framework for [Task] in [Context]
99
+ e.g., "A Systematic Framework for Evaluating
100
+ Adversarial Robustness in AI-driven SOC"
101
+
102
+ benchmark [Name]Bench: Benchmarking [Topic] for [Use]
103
+ e.g., "SOCBench: A Benchmark for Adversarial
104
+ Robustness of AI-based Threat Detection"
105
+
106
+ case-study [Topic] in [Context]: A Case Study of [Focus]
107
+
108
+ new-dataset [DatasetName]: A [Size/Type] Dataset for [Task]
109
+ ```
110
+
111
+ Title quality checklist — each suggested title should:
112
+ - Be under 15 words
113
+ - Contain the key technical terms reviewers search for
114
+ - Not use vague words like "Novel", "New", "Improved" alone
115
+ - Match the formality level of the target venue
116
+
117
+ After showing 3 options:
118
+ > "Which of these feels closest to your intent? Or we can mix elements from different options."
119
+
120
+ Save the chosen title (or user's own) to context.yaml.
121
+
122
+ ---
123
+
124
+ **Q8**: "What format are you writing in?"
81
125
 
82
126
  ```
83
127
  WRITING FORMAT
@@ -99,6 +143,58 @@ WRITING FORMAT
99
143
 
100
144
  *(If unsure, ask: "Are you using Overleaf or a .tex file? → latex. Word/Google Docs? → word. Anything else? → markdown")*
101
145
 
146
+ **Q8**: "What citation style does your venue require?"
147
+
148
+ ```
149
+ CITATION STYLES
150
+ ══════════════════════════════════════════════════════════
151
+
152
+ Style Used in Example
153
+ ───── ─────── ───────
154
+ IEEE CS, Engineering, Tech [1], [2], [3]
155
+ conferences & journals
156
+ (IEEE, ACM, Springer LNCS)
157
+
158
+ APA 7th Social Sciences, Psychology, (Smith, 2023)
159
+ Education, Business,
160
+ Health Sciences
161
+
162
+ ACS Chemistry, Life Sciences 1. Author...
163
+
164
+ Vancouver Medicine, Clinical Research (1), (2)
165
+
166
+ Chicago Humanities, History, Footnotes or
167
+ Arts Author-Date
168
+
169
+ MLA Literature, Arts, (Smith 45)
170
+ Humanities courses
171
+ ```
172
+
173
+ If the user is unsure, **recommend based on their field and venue from Q2 and Q6**:
174
+
175
+ > "Based on your field and venue, here's what's typically expected:"
176
+
177
+ ```
178
+ RECOMMENDATION LOGIC
179
+ ══════════════════════════════════════════════════════════
180
+
181
+ CS / Engineering + conference/journal → IEEE
182
+ CS / Engineering + course submission → Ask supervisor,
183
+ default IEEE
184
+
185
+ Social Sciences / Education / HCI → APA 7th
186
+ Business / Economics → APA 7th
187
+ Health / Medicine / Biology → Vancouver or APA
188
+ Chemistry / Life Sciences → ACS
189
+ Humanities / Literature → MLA or Chicago
190
+
191
+ Venue named explicitly (e.g. IEEE Access, ACM CCS)
192
+ → Always follow that venue's author guidelines
193
+ ```
194
+
195
+ If the venue has explicit author guidelines, remind:
196
+ > "Check the venue's official **Author Guidelines** page — citation style is always specified there and overrides any default."
197
+
102
198
  ---
103
199
 
104
200
  ## Step 3: Generate outline
@@ -225,6 +321,7 @@ After the user approves the outline, write `paper/context.yaml`:
225
321
  ```yaml
226
322
  schema: research-paper
227
323
  topic: "[user's topic]"
324
+ title: "[working title]"
228
325
  field: "[field]"
229
326
  subfield: "[subfield]"
230
327
  paper_type: [empirical|review|theoretical|mixed]
@@ -233,6 +330,7 @@ research_questions:
233
330
  contribution_type: [new-method|survey|new-dataset|framework|case-study|benchmark]
234
331
  target_venue: "[venue]"
235
332
  writing_format: [latex|word|markdown]
333
+ citation_style: [ieee|apa7|acs|vancouver|chicago|mla]
236
334
  current_phase: writing
237
335
  sections_status:
238
336
  introduction: not-started