Research Folder Synthesizer
This skill synthesizes a folder of heterogeneous local files (markdown notes, plain-text articles, research excerpts) into a structured thematic report. It clusters ideas across files, surfaces key findings and contradictions, and produces a single research-synthesis.md ready to use as a foundation for reports, PRDs, or strategy documents.
Input:
- A folder path or list of local file paths (
.md, .txt, plain text)
- Optional: a focus question or research angle to guide thematic clustering
Output:
research-synthesis.md — structured markdown with executive summary, named themes, key findings, contradictions/gaps, and source index
Language Detection
Detect the user's language from their message:
- If Russian (or contains Cyrillic): respond in Russian
- If English (or other Latin-script language): respond in English
- If ambiguous: respond in the language of the trigger phrase used
Instructions
Step 1: Validate Input
Check that the user has provided a folder path or a list of files.
- If nothing provided: stop and report — "No files found. Provide a folder path or paste file contents directly."
Attempt to read all files at the provided path.
- Log each file name and detected type (
.md, .txt, or plain text) in the report preamble.
- Skip unreadable files (binary, images, etc.); add them to a "Skipped files" list — do not stop the pipeline.
- If all files are unreadable: stop and report — "No readable text found. Provide
.md, .txt, or plain-text files."
If only one file is provided: note that cross-source comparison will be unavailable; proceed with single-source synthesis.
If >20 files: note that depth per file will be reduced for brevity; proceed.
Negative Cases:
- Folder path not provided or folder empty → stop with clear message (Step 1.1).
- All files unreadable → stop with clear message (Step 1.2).
- User provides a URL instead of local files → clarify: "This skill works with local files. Paste the text directly or save it as a
.txt file first."
Step 2: Extract Content from Each File
Read each accessible file fully.
For each file, extract:
- Main claims — central arguments or conclusions the source makes.
- Data points — specific facts, numbers, quotes, or named entities.
- Notable phrases — distinctive language worth preserving in attribution.
If the user provided a focus question, flag which files directly address it.
Build an internal per-file summary (not shown in output, used in Steps 3–4).
Step 3: Identify Cross-File Themes
Compare per-file summaries and cluster related ideas.
- Group by shared topic, argument direction, or domain.
- Assign a short descriptive label to each cluster (e.g., "Market sizing", "User pain points", "Competitive landscape").
Aim for 2–5 themes; merge closely related clusters.
For each theme, note which files contribute and what they each say.
Edge Case:
- If files cover entirely unrelated topics with no clear overlap: create one theme per topic; note in the executive summary that the research collection is heterogeneous.
Step 4: Detect Contradictions and Gaps
Within each theme, look for:
- Contradictions — two sources making conflicting claims about the same fact or trend.
- Gaps — topics implied by the research question or by some sources but absent from all others.
Log each contradiction as: "[Source A] says X; [Source B] says Y."
Log each gap as: "[Topic] not addressed in any source."
If neither contradictions nor gaps are found: write "No contradictions detected across sources."
Step 5: Assemble and Write Report
Compose the report following the Output Format below.
Write the executive summary last (after themes and findings are complete).
Save the report as research-synthesis.md in the working directory.
Confirm the save path to the user.
Output Format
# Research Synthesis: [topic or folder name]
**Date:** YYYY-MM-DD
**Files processed:** N
**Skipped files:** N (or "none")
**Focus question:** [question or "none"]
---
## Executive Summary
[3–5 sentences covering: scope of research, main conclusion, and key tension across sources]
---
## Themes
### Theme 1: [Label]
[2–4 sentences. Key claim derived from this theme. Supporting sources listed.]
**Sources:** file-a.md, file-b.txt
### Theme 2: [Label]
[2–4 sentences.]
**Sources:** file-c.md
---
## Key Findings
- [Finding 1] *(Source: file-a.md)*
- [Finding 2] *(Source: file-b.txt)*
...
---
## Contradictions & Gaps
- **Contradiction:** [Description] — file-a.md says X; file-b.txt says Y.
- **Gap:** [Topic area] not addressed in any source.
*(Or: "No contradictions detected across sources.")*
---
## Source Index
| File | Type | Main Topic | Language |
|------|------|------------|----------|
| file-a.md | Markdown | UX research | EN |
| file-b.txt | Plain text | Competitor notes | RU |
---
## Skipped Files
- image.png — unreadable format
*(Or omit section if no files were skipped)*
Field rules:
- Executive summary: 3–5 sentences; no bullet points.
- Theme labels: 2–5 words, title case, descriptive.
- Key findings: one concrete, specific statement per bullet; always attributed to a source.
- Contradictions/gaps: always present; state "none" explicitly if clean.
Edge Cases
- Files in multiple languages (e.g., EN + RU mix): Detect predominant language for the report; note language of each file in the source index; do not translate source content.
- Single file provided: Produce internal theme clustering from that file alone; note "Cross-source comparison unavailable — only one file processed."
- Very large folder (>20 files): Process all; condense per-file summary to 3 key points max; add a note that depth is reduced.
- User provides focus question: Weight and flag content relevant to the question in each theme section; add a "Focus Answer" paragraph after the executive summary.
Negative Cases
- Folder path not provided or folder is empty → "No files found. Provide a folder path or paste file contents directly." Stop.
- All files are unreadable (binary, images only) → "No readable text found. Provide
.md, .txt, or plain-text files." Stop.
- User asks to synthesize a URL or web page → "This skill works with local files. Paste the text directly or save it as a
.txt file first." Stop.
1---2name: research-folder-synthesizer3description: Synthesize a folder of mixed local files (articles, notes, excerpts) into a structured thematic report with key findings and gaps. Use when consolidating research before writing a report, PRD, or strategy doc. Triggers: 'synthesize my research folder', 'research synthesis', 'turn my notes into a report', 'синтезируй папку с исследованиями', 'синтез ресёрча', 'сведи файлы в отчёт'.4---56# Research Folder Synthesizer78This skill synthesizes a folder of heterogeneous local files (markdown notes, plain-text articles, research excerpts) into a structured thematic report. It clusters ideas across files, surfaces key findings and contradictions, and produces a single `research-synthesis.md` ready to use as a foundation for reports, PRDs, or strategy documents.910**Input:**11- A folder path or list of local file paths (`.md`, `.txt`, plain text)12- Optional: a focus question or research angle to guide thematic clustering1314**Output:**15- `research-synthesis.md` — structured markdown with executive summary, named themes, key findings, contradictions/gaps, and source index1617---1819## Language Detection2021Detect the user's language from their message:22- If Russian (or contains Cyrillic): respond in Russian23- If English (or other Latin-script language): respond in English24- If ambiguous: respond in the language of the trigger phrase used2526---2728## Instructions2930### Step 1: Validate Input31321. Check that the user has provided a folder path or a list of files.33 - If nothing provided: stop and report — "No files found. Provide a folder path or paste file contents directly."34352. Attempt to read all files at the provided path.36 - Log each file name and detected type (`.md`, `.txt`, or plain text) in the report preamble.37 - Skip unreadable files (binary, images, etc.); add them to a "Skipped files" list — do not stop the pipeline.38 - If all files are unreadable: stop and report — "No readable text found. Provide `.md`, `.txt`, or plain-text files."39403. If only one file is provided: note that cross-source comparison will be unavailable; proceed with single-source synthesis.41424. If >20 files: note that depth per file will be reduced for brevity; proceed.4344**Negative Cases:**45- Folder path not provided or folder empty → stop with clear message (Step 1.1).46- All files unreadable → stop with clear message (Step 1.2).47- User provides a URL instead of local files → clarify: "This skill works with local files. Paste the text directly or save it as a `.txt` file first."4849---5051### Step 2: Extract Content from Each File52531. Read each accessible file fully.54552. For each file, extract:56 - **Main claims** — central arguments or conclusions the source makes.57 - **Data points** — specific facts, numbers, quotes, or named entities.58 - **Notable phrases** — distinctive language worth preserving in attribution.59603. If the user provided a focus question, flag which files directly address it.61624. Build an internal per-file summary (not shown in output, used in Steps 3–4).6364---6566### Step 3: Identify Cross-File Themes67681. Compare per-file summaries and cluster related ideas.69 - Group by shared topic, argument direction, or domain.70 - Assign a short descriptive label to each cluster (e.g., "Market sizing", "User pain points", "Competitive landscape").71722. Aim for 2–5 themes; merge closely related clusters.73743. For each theme, note which files contribute and what they each say.7576**Edge Case:**77- If files cover entirely unrelated topics with no clear overlap: create one theme per topic; note in the executive summary that the research collection is heterogeneous.7879---8081### Step 4: Detect Contradictions and Gaps82831. Within each theme, look for:84 - **Contradictions** — two sources making conflicting claims about the same fact or trend.85 - **Gaps** — topics implied by the research question or by some sources but absent from all others.86872. Log each contradiction as: "[Source A] says X; [Source B] says Y."88893. Log each gap as: "[Topic] not addressed in any source."90914. If neither contradictions nor gaps are found: write "No contradictions detected across sources."9293---9495### Step 5: Assemble and Write Report96971. Compose the report following the Output Format below.98992. Write the executive summary last (after themes and findings are complete).1001013. Save the report as `research-synthesis.md` in the working directory.1021034. Confirm the save path to the user.104105---106107## Output Format108109```110# Research Synthesis: [topic or folder name]111**Date:** YYYY-MM-DD112**Files processed:** N113**Skipped files:** N (or "none")114**Focus question:** [question or "none"]115116---117118## Executive Summary119[3–5 sentences covering: scope of research, main conclusion, and key tension across sources]120121---122123## Themes124125### Theme 1: [Label]126[2–4 sentences. Key claim derived from this theme. Supporting sources listed.]127**Sources:** file-a.md, file-b.txt128129### Theme 2: [Label]130[2–4 sentences.]131**Sources:** file-c.md132133---134135## Key Findings136- [Finding 1] *(Source: file-a.md)*137- [Finding 2] *(Source: file-b.txt)*138...139140---141142## Contradictions & Gaps143- **Contradiction:** [Description] — file-a.md says X; file-b.txt says Y.144- **Gap:** [Topic area] not addressed in any source.145*(Or: "No contradictions detected across sources.")*146147---148149## Source Index150| File | Type | Main Topic | Language |151|------|------|------------|----------|152| file-a.md | Markdown | UX research | EN |153| file-b.txt | Plain text | Competitor notes | RU |154155---156157## Skipped Files158- image.png — unreadable format159*(Or omit section if no files were skipped)*160```161162**Field rules:**163- Executive summary: 3–5 sentences; no bullet points.164- Theme labels: 2–5 words, title case, descriptive.165- Key findings: one concrete, specific statement per bullet; always attributed to a source.166- Contradictions/gaps: always present; state "none" explicitly if clean.167168---169170## Edge Cases1711721. **Files in multiple languages (e.g., EN + RU mix):** Detect predominant language for the report; note language of each file in the source index; do not translate source content.1732. **Single file provided:** Produce internal theme clustering from that file alone; note "Cross-source comparison unavailable — only one file processed."1743. **Very large folder (>20 files):** Process all; condense per-file summary to 3 key points max; add a note that depth is reduced.1754. **User provides focus question:** Weight and flag content relevant to the question in each theme section; add a "Focus Answer" paragraph after the executive summary.176177---178179## Negative Cases180181- Folder path not provided or folder is empty → "No files found. Provide a folder path or paste file contents directly." Stop.182- All files are unreadable (binary, images only) → "No readable text found. Provide `.md`, `.txt`, or plain-text files." Stop.183- User asks to synthesize a URL or web page → "This skill works with local files. Paste the text directly or save it as a `.txt` file first." Stop.