@thuanphan2208/paper-pilot 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.
@@ -0,0 +1,260 @@
1
+ ---
2
+ name: paper-teach-results
3
+ description: Teach how to write the Results section of a research paper. Works across all academic majors and paper types. Use when user wants to learn Results structure before writing.
4
+ license: MIT
5
+ metadata:
6
+ author: claude-paper-skills
7
+ version: "2.0"
8
+ ---
9
+
10
+ You are teaching a first-time student researcher how to write the **Results** section. Most beginners just paste numbers — teach them to tell a story with data.
11
+
12
+ **Teaching mode only** — recommend `/paper:write results` at the end.
13
+
14
+ **English only** — Respond in English regardless of what language the user writes in.
15
+
16
+ ---
17
+
18
+ ## Before You Start
19
+
20
+ Read `paper/context.yaml` if it exists. Use `paper_type` to determine the right structure:
21
+
22
+ - **empirical / new-method** → Main results table + analysis + ablation study
23
+ - **review** → Synthesis of findings + taxonomy + open challenges
24
+ - **theoretical** → Framework validation or illustrative application
25
+
26
+ If context.yaml is missing, ask: "Is your paper empirical (runs experiments with numbers), a review, or a theoretical work?"
27
+
28
+ ---
29
+
30
+ ## For Empirical / New-Method Papers
31
+
32
+ ### Structure
33
+
34
+ ```
35
+ RESULTS = 3 PARTS
36
+ ══════════════════════════════════════════════════════════
37
+
38
+ Part 1: MAIN RESULTS TABLE (comparison with baselines)
39
+ ┌─────────────────────────────────────────────────┐
40
+ │ Table comparing all methods across metrics │
41
+ │ Bold the best result in each column │
42
+ │ 1–2 paragraphs of analysis │
43
+ └─────────────────────────────────────────────────┘
44
+
45
+
46
+ Part 2: ANALYSIS & DISCUSSION (why do results look this way?)
47
+ ┌─────────────────────────────────────────────────┐
48
+ │ Don't just restate numbers │
49
+ │ Explain: why is your method better? │
50
+ │ Any surprising findings? Why? │
51
+ └─────────────────────────────────────────────────┘
52
+
53
+
54
+ Part 3: ABLATION STUDY (what does each component add?)
55
+ ┌─────────────────────────────────────────────────┐
56
+ │ Remove/disable one component at a time │
57
+ │ Measure how much performance drops │
58
+ │ Proves each part is necessary │
59
+ └─────────────────────────────────────────────────┘
60
+ ```
61
+
62
+ ### Teach Each Part
63
+
64
+ **Part 1 — Main Results Table** (generic example, phishing detection):
65
+
66
+ ```
67
+ Table 1: Comparison of phishing detection methods
68
+
69
+ Method Accuracy Precision Recall F1-score
70
+ ─────────────────────────────────────────────────────────────
71
+ PhishTank Blacklist 78.3% 91.2% 65.4% 76.2%
72
+ SVM-URL [ref] 92.1% 91.8% 92.4% 92.1%
73
+ PhishGuard-NoWeight 94.3% 93.7% 94.9% 94.3%
74
+ PhishGuard (ours) **97.4%** **97.1%** **97.7%** **97.4%**
75
+ ─────────────────────────────────────────────────────────────
76
+ Bold = best result
77
+ ```
78
+
79
+ Analysis paragraph:
80
+ > "Table 1 presents the performance comparison. PhishGuard achieves the highest F1-score of 97.4%, outperforming the best baseline SVM-URL by 5.3 percentage points. The blacklist-based method shows the lowest recall (65.4%), confirming its inability to detect novel phishing sites."
81
+
82
+ **Common mistakes:**
83
+ - ❌ "Our method is the best" — no margin, no comparison
84
+ - ✅ "Outperforming [baseline] by [X] percentage points / units"
85
+
86
+ **Part 2 — Analysis & Discussion** (3 things to write about):
87
+
88
+ 1. Why your method is better:
89
+ > "The superiority of PhishGuard can be attributed to its feature weighting mechanism, which assigns higher importance to features with strong discriminative power."
90
+
91
+ 2. Why baselines fall short:
92
+ > "The blacklist approach's low recall (65.4%) confirms that static lists cannot detect newly created phishing sites."
93
+
94
+ 3. Surprising findings (if any):
95
+ > "Interestingly, PhishGuard-NoWeight outperforms SVM-URL despite using identical features, suggesting Random Forest's ensemble nature provides robustness even without explicit weighting."
96
+
97
+ **Part 3 — Ablation Study**:
98
+
99
+ ```
100
+ Table 2: Ablation study
101
+
102
+ Configuration F1-score Δ vs Full
103
+ ─────────────────────────────────────────────────
104
+ PhishGuard (full) 97.4% —
105
+ w/o URL features 89.2% -8.2%
106
+ w/o Domain features 94.1% -3.3%
107
+ w/o HTML features 96.2% -1.2%
108
+ w/o feature weighting 94.3% -3.1%
109
+ ─────────────────────────────────────────────────
110
+ ```
111
+
112
+ > "URL features contribute most significantly (8.2% drop when removed). This suggests future work could focus on URL-based feature engineering."
113
+
114
+ **Why reviewers expect ablation**: Without it, there is no evidence that each component is necessary — it could all just be the dataset doing the work.
115
+
116
+ **Personalized example**: Generate a sample results analysis paragraph based on the user's method, baselines, and metrics from context.yaml.
117
+
118
+ **Checkpoint**: "What are your main results? Try stating: 'My method achieves [X] on [metric], outperforming [baseline] by [Y].'"
119
+
120
+ ---
121
+
122
+ ## For Review Papers
123
+
124
+ ### Structure: Synthesis of Findings
125
+
126
+ ```
127
+ RESULTS (SYNTHESIS) = 3 PARTS
128
+ ══════════════════════════════════════════════════════════
129
+
130
+ Part 1: OVERVIEW OF REVIEWED LITERATURE
131
+ ┌─────────────────────────────────────────────────┐
132
+ │ How many papers? Which categories dominate? │
133
+ │ Trends over time (e.g., shift from X to Y)? │
134
+ └─────────────────────────────────────────────────┘
135
+
136
+
137
+ Part 2: SYNTHESIS BY THEME / CATEGORY
138
+ ┌─────────────────────────────────────────────────┐
139
+ │ For each theme: what do papers agree on? │
140
+ │ Where do they disagree or produce mixed results?│
141
+ │ What methods or frameworks recur? │
142
+ └─────────────────────────────────────────────────┘
143
+
144
+
145
+ Part 3: IDENTIFIED GAPS AND OPEN CHALLENGES
146
+ ┌─────────────────────────────────────────────────┐
147
+ │ What questions remain unanswered? │
148
+ │ What limitations appear across multiple papers? │
149
+ │ What should future research prioritize? │
150
+ └─────────────────────────────────────────────────┘
151
+ ```
152
+
153
+ **Principle**: Don't just list what each paper says — synthesize across papers. Find the pattern, not the inventory.
154
+
155
+ **Useful sentence patterns for synthesis:**
156
+ - "A consistent finding across studies is that [X]."
157
+ - "While [theme A] approaches focus on [Y], [theme B] approaches prioritize [Z], leading to [trade-off]."
158
+ - "No existing work has simultaneously addressed [gap 1] and [gap 2]."
159
+
160
+ **Generic example**:
161
+ > "Of the 87 papers reviewed, 42% focus on blacklist-based approaches, 35% on ML-based methods, and 23% on deep learning — reflecting a clear trend away from manual curation toward automated detection since 2018. A consistent finding across all categories is that detection latency remains a critical unsolved challenge. Notably, no existing work simultaneously addresses real-time detection and cross-lingual generalization."
162
+
163
+ **Common mistakes:**
164
+ - ❌ Summarizing each paper one by one (that belongs in Related Work)
165
+ - ✅ Grouping findings thematically and drawing cross-paper conclusions
166
+
167
+ **Personalized example**: Generate a sample synthesis paragraph for the user's review topic and themes.
168
+
169
+ **Checkpoint**: "Looking across the papers you've read — what is one thing almost all of them agree on? And what is one thing they still can't solve?"
170
+
171
+ ---
172
+
173
+ ## For Theoretical Papers
174
+
175
+ ### Structure: Framework Validation / Application
176
+
177
+ ```
178
+ RESULTS (FRAMEWORK APPLICATION) = 3 PARTS
179
+ ══════════════════════════════════════════════════════════
180
+
181
+ Part 1: CASE OR SCENARIO SELECTION
182
+ ┌─────────────────────────────────────────────────┐
183
+ │ Which case(s) did you choose to apply the │
184
+ │ framework to, and why? │
185
+ └─────────────────────────────────────────────────┘
186
+
187
+
188
+ Part 2: APPLICATION OF THE FRAMEWORK
189
+ ┌─────────────────────────────────────────────────┐
190
+ │ Walk through how each component of the │
191
+ │ framework maps onto the case │
192
+ │ What does the framework reveal or explain? │
193
+ └─────────────────────────────────────────────────┘
194
+
195
+
196
+ Part 3: DISCUSSION OF IMPLICATIONS
197
+ ┌─────────────────────────────────────────────────┐
198
+ │ What does this demonstrate about the framework? │
199
+ │ How does it compare to prior conceptualizations?│
200
+ │ What are its boundaries or limitations? │
201
+ └─────────────────────────────────────────────────┘
202
+ ```
203
+
204
+ **Principle**: The goal is not to "prove" the framework experimentally — it's to show it is coherent, useful, and reveals something prior work could not.
205
+
206
+ **Generic example**:
207
+ > "We apply the proposed framework to three educational technology platforms: a MOOC platform, a gamified language app, and a peer-learning forum. In each case, we map the platform's design features onto the framework's three dimensions — autonomy, competence, and relatedness. The analysis reveals that platforms strong in autonomy but weak in relatedness consistently show high initial engagement but low long-term retention — a pattern that prior motivation theory alone could not predict."
208
+
209
+ **Common mistakes:**
210
+ - ❌ Just describing what the framework says without showing it applied to anything
211
+ - ✅ Showing the framework in action on a specific, concrete example
212
+
213
+ **Personalized example**: Generate a sample framework application paragraph for the user's theoretical contribution and field.
214
+
215
+ **Checkpoint**: "What is one concrete case or scenario you could use to demonstrate your framework? Walk me through what the framework would say about it."
216
+
217
+ ---
218
+
219
+ ## When Your Results Are Worse Than Expected
220
+
221
+ This is very common for first-time researchers. Teach what to do:
222
+
223
+ ```
224
+ SCENARIO WHAT TO DO
225
+ ══════════════════════════════════════════════════════════════════
226
+
227
+ My method is worse than Don't hide it. Analyze WHY.
228
+ the baseline "Our method underperforms baseline X
229
+ because [reason]. This suggests that
230
+ [insight], which is itself a finding."
231
+
232
+ My results are inconsistent Report all results honestly. Discuss
233
+ across different datasets what factors cause the inconsistency.
234
+ or settings Inconsistency is a finding, not a failure.
235
+
236
+ My improvement is tiny Check if it's statistically significant.
237
+ (e.g., 0.5% better) If yes, report it. If no, reframe:
238
+ "Our method matches SOTA with X times
239
+ fewer parameters / less data / lower cost."
240
+
241
+ I forgot to run one Be transparent: "Due to [constraint],
242
+ important baseline we were unable to compare with [X].
243
+ We leave this for future work."
244
+
245
+ Nothing works at all Step back: is the problem definition
246
+ right? Is the dataset appropriate?
247
+ Talk to your advisor before writing.
248
+ ```
249
+
250
+ **Key principle**: Reviewers respect honesty far more than inflated results. A paper that clearly explains *why* a method underperforms can still be accepted — a paper that hides failure cannot.
251
+
252
+ **What you should never do**: Cherry-pick the dataset or metric where your method wins and report only that. Reviewers will notice.
253
+
254
+ ---
255
+
256
+ ## Closing
257
+
258
+ After teaching the relevant structure and answering questions:
259
+
260
+ > "You now understand how to write the Results section for your paper type. Use `/paper:write results` to draft yours with my guidance!"
@@ -0,0 +1,122 @@
1
+ ---
2
+ name: paper-write-abstract
3
+ description: Write a draft Abstract for a research paper by synthesizing completed sections. Works across all academic majors. Use LAST, after all other sections are drafted.
4
+ license: MIT
5
+ metadata:
6
+ author: claude-paper-skills
7
+ version: "2.0"
8
+ ---
9
+
10
+ You are helping a student write their **Abstract** — the last section to write, though it appears first. Synthesize from completed sections automatically, adapt the formula to paper type, then confirm with the user.
11
+
12
+ **English only** — Respond in English regardless of what language the user writes in.
13
+
14
+ ---
15
+
16
+ ## Step 1: Read Context and Completed Sections
17
+
18
+ 1. Read `paper/context.yaml` for topic, research_questions, paper_type, contribution_type, target_venue, and `writing_format`. Apply the format throughout the draft:
19
+ - `latex` → no special commands needed for abstract body, but wrap in `\begin{abstract}...\end{abstract}` if requested
20
+ - `word` / `markdown` → plain paragraph, no markup needed
21
+ 2. Read whichever sections exist:
22
+ - `paper/sections/01-introduction.md` — for problem + contributions
23
+ - `paper/sections/05-results.md` — for key numerical results
24
+ - `paper/sections/06-conclusion.md` — for summary framing
25
+
26
+ Check sections_status in context.yaml. If most sections are `not-started`, warn:
27
+ "The Abstract is usually written after all other sections are complete. Which sections have you drafted so far? I can still help write a preliminary abstract if you provide the key information."
28
+
29
+ ---
30
+
31
+ ## Step 2: Auto-Synthesize Draft
32
+
33
+ Select the formula based on paper_type from context.yaml:
34
+
35
+ ### For empirical / new-method:
36
+
37
+ Extract:
38
+ - **Problem** (from Introduction Block 1–2)
39
+ - **Gap** (from Introduction Block 2 or Related Work)
40
+ - **Method** (from Introduction contributions or Methodology overview)
41
+ - **Key result** (from Results — best metric vs. best baseline)
42
+
43
+ Draft:
44
+
45
+ **Sentence 1 (Problem):** "[Domain] faces [problem]. [Scale or impact]."
46
+
47
+ **Sentence 2 (Gap):** "[Existing approaches] [limitation], [consequence]."
48
+
49
+ **Sentence 3 (Approach):** "In this paper, we propose [method/system] that [core mechanism]."
50
+
51
+ **Sentence 4 (Result):** "Experiments on [dataset] demonstrate that [method] achieves [metric], outperforming [baseline] by [margin]."
52
+
53
+ Expand each sentence to 2 sentences to reach 150–200 words.
54
+
55
+ ---
56
+
57
+ ### For review:
58
+
59
+ **Sentence 1 (Topic + motivation):** "[Topic] is an important area because [reason]."
60
+
61
+ **Sentence 2 (Gap in existing reviews):** "Despite growing interest, [no comprehensive synthesis exists / existing reviews are limited by X]."
62
+
63
+ **Sentence 3 (What this review does):** "This paper presents a systematic review of [N] studies on [topic], covering [scope / date range]."
64
+
65
+ **Sentence 4 (Key findings):** "Our analysis reveals [key finding] and identifies [open challenge or gap] as a priority for future research."
66
+
67
+ ---
68
+
69
+ ### For theoretical:
70
+
71
+ **Sentence 1 (Problem):** "[Domain] lacks [a framework / model / theory] for [problem]."
72
+
73
+ **Sentence 2 (Gap):** "Existing work [limitation], leaving [consequence] unaddressed."
74
+
75
+ **Sentence 3 (Contribution):** "This paper proposes [framework name], a [description] grounded in [theory/principles]."
76
+
77
+ **Sentence 4 (Validation + implication):** "We demonstrate the framework's applicability through [case/example] and discuss implications for [theory / practice / policy]."
78
+
79
+ ---
80
+
81
+ ## Step 3: Confirm with User
82
+
83
+ Show the draft and ask:
84
+ "This is the abstract I synthesized from your sections. Does anything need adjusting? (Numbers, method name, wording, emphasis...)"
85
+
86
+ Apply any corrections, then finalize.
87
+
88
+ ---
89
+
90
+ ## Step 4: Check Abstract Rules
91
+
92
+ Before saving, verify:
93
+ - [ ] No citations — no [ref] tags
94
+ - [ ] No undefined acronyms — spell out on first use
95
+ - [ ] Word count within venue limit (check target_venue in context.yaml)
96
+ - [ ] Present or past tense, not future ("we propose", "we demonstrate" — not "we will propose")
97
+ - [ ] Key result includes a specific number (not "significantly improved")
98
+
99
+ ---
100
+
101
+ ## Step 5: Save and Conclude
102
+
103
+ Ask: "Shall I save this to `paper/sections/00-abstract.md`?"
104
+
105
+ Save and update context.yaml: `abstract: draft`.
106
+
107
+ "Abstract saved! You now have drafts for all sections. Use `/paper:review <section>` to review and refine each section before submission."
108
+
109
+ Show final summary:
110
+ ```
111
+ PAPER PROGRESS
112
+ ══════════════════════════════════════
113
+ ✓ 00-abstract.md
114
+ ✓ 01-introduction.md
115
+ ✓ 02-related-work.md
116
+ ✓ 03-methodology.md
117
+ ✓ 04-experiments.md
118
+ ✓ 05-results.md
119
+ ✓ 06-conclusion.md
120
+
121
+ Next step: /paper:review <section> for each section
122
+ ```
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: paper-write-conclusion
3
+ description: Write a draft Conclusion section for a research paper via guided Q&A. Works across all academic majors. Use after completing paper:teach-conclusion.
4
+ license: MIT
5
+ metadata:
6
+ author: claude-paper-skills
7
+ version: "2.0"
8
+ ---
9
+
10
+ You are helping a student write their **Conclusion** section. This is shorter but must be distinct from the abstract — it reflects on what was proven, not just what was done.
11
+
12
+ **English only** — Respond in English regardless of what language the user writes in.
13
+
14
+ ---
15
+
16
+ ## Step 1: Read Context
17
+
18
+ Check `paper/context.yaml` — note the `writing_format` field and apply it throughout the draft:
19
+ - `latex` → use `\section{}`, `\cite{ref}`, `\begin{itemize}`
20
+ - `word` → plain text with labelled headings
21
+ - `markdown` → use `##`, `-` for bullets
22
+
23
+ Also read `paper/sections/01-introduction.md` (especially contributions) and `paper/sections/05-results.md` if available — the Conclusion should echo the Introduction's promises and confirm they were fulfilled.
24
+
25
+ ---
26
+
27
+ ## Step 2: Q&A (one at a time, wait for each answer)
28
+
29
+ Tell the user: "Three short questions to write your Conclusion."
30
+
31
+ **Q1**: "Summarize your main contribution in 1–2 sentences. Focus on what you PROVED or DEMONSTRATED — not just what you proposed."
32
+ *(Example: "We demonstrated that ML-based phishing detection using URL features can outperform traditional blacklists in real-time, achieving 97.4% F1 while classifying each URL in under 50ms.")*
33
+ *(Guide if stuck: "Try: 'We demonstrated that [X] can [result] by [method].' Use a number if you have one.")*
34
+
35
+ **Q2**: "What are the limitations of this research? Name 2–3 specific things that were NOT tested, addressed, or covered."
36
+ *(Example: "1) Only English-language URLs tested. 2) Static dataset — doesn't reflect evolving attacks over time. 3) No visual similarity analysis of page content.")*
37
+ *(If stuck: "What would a skeptical reviewer say your paper doesn't cover?")*
38
+
39
+ **Q3**: "What future research directions do you suggest? Be specific — ideally one direction per limitation."
40
+ *(Example: "1) Extend to multilingual URLs. 2) Develop online learning variant that adapts over time. 3) Integrate computer vision for visual similarity detection.")*
41
+
42
+ ---
43
+
44
+ ## Step 3: Write Draft
45
+
46
+ **Paragraph 1 — Summary (2–3 sentences):**
47
+ "In this paper, we have [demonstrated/shown/established] that [claim with evidence]. [Key numerical or qualitative result]. [What this means for the field or problem]."
48
+
49
+ Do NOT open with "In conclusion," or "In this paper, we proposed" — both are overused. Vary the opening by focusing on what was proven.
50
+
51
+ Adapt framing by paper type:
52
+ - **Review**: "This paper has synthesized [N] studies on [topic], revealing that [key finding]."
53
+ - **Theoretical**: "This paper has proposed [framework] grounded in [theory], and demonstrated its applicability through [case]."
54
+
55
+ **Paragraph 2 — Limitations (2–3 sentences):**
56
+ "Our study has several limitations. First, [limitation 1]. Second, [limitation 2]. [Third, limitation 3 if applicable]."
57
+
58
+ **Paragraph 3 — Future Work (2–3 sentences):**
59
+ "Future work will explore [direction 1], particularly [specifics]. We also plan to [direction 2] to address [limitation]. [Direction 3 if applicable]."
60
+
61
+ ---
62
+
63
+ ## Step 4: Save and Recommend
64
+
65
+ Ask: "Shall I save this draft to `paper/sections/06-conclusion.md`?"
66
+
67
+ Save and update context.yaml: `conclusion: draft`.
68
+
69
+ "Draft saved! You now have drafts for all major sections. The final step: `/paper:teach abstract` to learn how to write the Abstract — the section written LAST but appearing first."
@@ -0,0 +1,83 @@
1
+ ---
2
+ name: paper-write-experiment
3
+ description: Write a draft Experiments section for a research paper via guided Q&A. Applies to empirical and mixed papers across all majors. Use after completing paper:teach-experiment.
4
+ license: MIT
5
+ metadata:
6
+ author: claude-paper-skills
7
+ version: "2.0"
8
+ ---
9
+
10
+ You are helping a student write their **Experiments** section. This section must be detailed enough that another researcher can reproduce the experimental setup exactly.
11
+
12
+ **English only** — Respond in English regardless of what language the user writes in.
13
+
14
+ ---
15
+
16
+ ## Step 1: Read Context
17
+
18
+ Check `paper/context.yaml`. If missing, ask the user to run `/paper:plan` first. Use the topic, field, and paper_type.
19
+
20
+ **Format**: Read `writing_format` from context.yaml and apply throughout the draft:
21
+ - `latex` → use `\section{}`, `\subsection{}`, `\cite{ref}`, tables in `tabular` environment
22
+ - `word` → plain text with labelled headings, no LaTeX commands
23
+ - `markdown` → use `##`, tables in Markdown pipe syntax
24
+
25
+ - If **empirical or mixed** → proceed with this skill.
26
+ - If **review or theoretical** → inform the user: "This skill is designed for empirical papers. For your paper type, this section may be a 'Case Study', 'Validation', or 'Illustrative Example' instead. Would you like me to adapt the Q&A for that?"
27
+
28
+ ---
29
+
30
+ ## Step 2: Q&A (one at a time, wait for each answer)
31
+
32
+ Tell the user: "I'll ask about your experimental setup so I can write this section."
33
+
34
+ **Q1**: "What dataset or data did you use? Give me: the name, source or link, total size, and any class or category breakdown."
35
+ *(Example: "PhishTank — 15,000 phishing URLs from phishtank.com. Alexa Top 1M — 15,000 legitimate URLs. Total: 30,000 balanced samples.")*
36
+ *(If no public dataset: "Describe how you collected data — survey platform, scraping script, lab setup, participant recruitment, etc.")*
37
+
38
+ **Q2**: "How did you split the data? (e.g., 80/10/10 train/validation/test, k-fold cross-validation, etc.)"
39
+ *(Example: "80/10/10 — 24,000 train, 3,000 validation, 3,000 test. Stratified to preserve class balance.")*
40
+
41
+ **Q3**: "What baselines or comparison methods did you evaluate against? Why did you choose them?"
42
+ *(Example: "(1) PhishTank blacklist — traditional approach; (2) SVM-URL from Zhang et al. 2020 — strongest published competitor; (3) our method without feature weighting — to isolate our contribution.")*
43
+ *(If unsure: "Include at least: the method people used before you, and the most recent published method in your area.")*
44
+
45
+ **Q4**: "What metrics did you use to evaluate performance? Why these metrics?"
46
+ *(Example: "Accuracy, Precision, Recall, F1-score. Prioritize F1 because both false positives and false negatives have real costs.")*
47
+
48
+ **Q5**: "What were your implementation details? Hardware, language, framework, key hyperparameters, training time?"
49
+ *(Example: "Intel Core i7-12700H, 16GB RAM. Python 3.10, scikit-learn 1.2.0. n_estimators=100, max_depth=10. Training: ~3 minutes.")*
50
+
51
+ ---
52
+
53
+ ## Step 3: Write Draft
54
+
55
+ Adapt section headings and framing to the user's field. The core structure is:
56
+
57
+ **[Section N].1 Dataset**
58
+ "We [collect/use/construct] our dataset from [source]. [Description of data type and content]. The dataset contains [N] instances [breakdown if applicable]. We apply [split ratio], resulting in [N_train] training, [N_val] validation, and [N_test] test samples."
59
+
60
+ **[Section N].2 Baselines**
61
+ "We compare [system/method] against [N] baselines:
62
+ (1) **[Baseline 1]**: [brief description], representing [approach category];
63
+ (2) **[Baseline 2]**: [brief description];
64
+ ..."
65
+
66
+ **[Section N].3 Evaluation Metrics**
67
+ "We evaluate all methods using [metrics]. We prioritize [primary metric] as the main criterion because [reason]."
68
+
69
+ For classification: briefly define each metric (prose or formula).
70
+ For other tasks: explain why each metric is appropriate for the task.
71
+
72
+ **[Section N].4 Implementation Details**
73
+ "All experiments are conducted on [hardware]. [System] is implemented using [language/framework, version]. Key hyperparameters: [list]. [Training/processing] takes approximately [time]. [Code/data available at URL if applicable]."
74
+
75
+ ---
76
+
77
+ ## Step 4: Save and Recommend
78
+
79
+ Ask: "Shall I save this draft to `paper/sections/04-experiments.md`?"
80
+
81
+ Save and update context.yaml: `experiments: draft`.
82
+
83
+ "Draft saved! Continue with `/paper:teach results` or review this section with `/paper:review experiment`."
@@ -0,0 +1,106 @@
1
+ ---
2
+ name: paper-write-intro
3
+ description: Write a draft Introduction section for a research paper via guided Q&A. Works across all academic majors. Use after completing paper:teach-intro.
4
+ license: MIT
5
+ metadata:
6
+ author: claude-paper-skills
7
+ version: "2.0"
8
+ ---
9
+
10
+ You are helping a student write their **Introduction** section via guided Q&A. Read context, ask questions, then write the draft.
11
+
12
+ **English only** — Respond in English regardless of what language the user writes in.
13
+
14
+ ---
15
+
16
+ ## Step 1: Read Context
17
+
18
+ Check if `paper/context.yaml` exists and read it.
19
+
20
+ - If missing: "I don't see a `paper/context.yaml` file yet. Please run `/paper:plan` first to set up your paper structure."
21
+ - If exists: Use topic, field, paper_type, research_questions, and contribution_type to pre-inform your questions and tailor the draft.
22
+
23
+ **Format**: Read `writing_format` from context.yaml and apply throughout the draft:
24
+ - `latex` → use `\section{}`, `\subsection{}`, `\cite{ref}`, `\textbf{}`, `\begin{itemize}` for bullet lists
25
+ - `word` → plain text with labelled headings, no LaTeX commands
26
+ - `markdown` → use `##`, `**bold**`, `-` for bullets
27
+
28
+ ---
29
+
30
+ ## Step 2: Q&A (ask one at a time, wait for each answer)
31
+
32
+ Tell the user: "I'll ask you 5 questions to gather enough information to write your Introduction. Short answers are fine — I'll expand them when writing."
33
+
34
+ **Q1**: "What is the problem your paper addresses? Describe it briefly."
35
+ *(Example: "Phishing websites trick users into giving away passwords, and current detection systems are too slow to catch newly created ones.")*
36
+
37
+ **Q2**: "Why does this problem matter? Who is affected, and what are the consequences?"
38
+ *(Example: "It affects millions of internet users. Victims lose money — over $43 billion annually worldwide. Banks and companies also spend heavily on fraud recovery.")*
39
+
40
+ **Q3**: "How do existing approaches handle this problem, and what are their main limitations?"
41
+ *(Example: "Most systems use blacklists — databases of known bad URLs. But these lists take hours to update, so brand-new phishing sites slip through for hours before being blocked.")*
42
+ *(If the user is unsure, prompt: "Think about what tools or methods exist today. What can they NOT do?")*
43
+
44
+ **Q4**: "What are your main contributions? List 2–3 specific points."
45
+ *(Example: "1) We propose PhishGuard, a real-time URL classifier using 48 features. 2) We achieve 97.4% F1 on 30,000 URLs, beating the best baseline by 5.3%. 3) We identify the top 10 features most predictive of phishing.")*
46
+ *(Guide if stuck: "Start with: 'We propose...', 'We demonstrate...', 'We achieve...'")*
47
+
48
+ **Q5**: Read the outline from `context.yaml` (sections_status keys) and confirm with the user:
49
+ "Based on your plan, your paper has these sections: [list from context.yaml]. Should I use this structure for the paper structure paragraph, or would you like to adjust it?"
50
+
51
+ ---
52
+
53
+ ## Step 3: Write Draft
54
+
55
+ After all Q&A, write a complete Introduction following the 4-block structure. Adapt language and framing to the user's field and paper_type.
56
+
57
+ **Block 1 — Background (2–3 sentences):**
58
+ - Open with the scale, impact, or significance of the problem domain
59
+ - Narrow from broad context to the specific problem
60
+ - Use numbers or statistics if the user provided them
61
+
62
+ **Block 2 — Problem Statement (2–3 sentences):**
63
+ - State the specific problem clearly
64
+ - Explain the limitations of existing approaches (from Q3)
65
+ - End with a motivating statement: "This motivates the need for [approach]."
66
+
67
+ **Block 3 — Contributions (1 sentence + bullet list):**
68
+
69
+ Adapt the format to paper_type and contribution_type:
70
+
71
+ *For empirical / new-method:*
72
+ ```
73
+ The main contributions of this paper are as follows:
74
+ • We propose [method/system] that [does what] for [problem].
75
+ • We conduct [experiments/evaluation] on [data/context], demonstrating [result].
76
+ • We [release code / identify finding / provide resource].
77
+ ```
78
+
79
+ *For review:*
80
+ ```
81
+ The main contributions of this paper are as follows:
82
+ • We provide a comprehensive review of [N] studies on [topic], covering [scope].
83
+ • We propose a taxonomy of [topic] based on [criteria].
84
+ • We identify key open challenges and future research directions.
85
+ ```
86
+
87
+ *For theoretical:*
88
+ ```
89
+ The main contributions of this paper are as follows:
90
+ • We propose [framework/model] for [problem] grounded in [theory/principles].
91
+ • We demonstrate its applicability through [case/analysis].
92
+ • We discuss implications for [theory / practice / policy].
93
+ ```
94
+
95
+ **Block 4 — Paper Structure (1 paragraph):**
96
+ "The rest of this paper is organized as follows. Section 2 [reviews / describes / ...]. Section 3 [describes / presents / ...]. [Continue per outline.] Section N concludes the paper."
97
+
98
+ ---
99
+
100
+ ## Step 4: Save and Recommend Review
101
+
102
+ After writing, ask: "Shall I save this draft to `paper/sections/01-introduction.md`?"
103
+
104
+ If yes, save the file and update `paper/context.yaml` sections_status: `introduction: draft`.
105
+
106
+ Then: "Draft saved! Use `/paper:review intro` to get feedback, or continue with `/paper:teach related`."