Medical-research-skills note-summarizer
Organize study notes into a structured knowledge-point outline and export to a .docx summary when you need a shareable, hierarchical document from Word/PPT/Text/Markdown inputs.
install
source · Clone the upstream repo
git clone https://github.com/aipoch/medical-research-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/aipoch/medical-research-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/scientific-skills/Other/note-summarizer" ~/.claude/skills/aipoch-medical-research-skills-note-summarizer && rm -rf "$T"
manifest:
scientific-skills/Other/note-summarizer/SKILL.mdsource content
Note Summarizer
When to Use
- Use this skill when you need organize study notes into a structured knowledge-point outline and export to a .docx summary when you need a shareable, hierarchical document from word/ppt/text/markdown inputs in a reproducible workflow.
- Use this skill when a others task needs a packaged method instead of ad-hoc freeform output.
- Use this skill when the user expects a concrete deliverable, validation step, or file-based result.
- Use this skill when
is the most direct path to complete the request.scripts/note_summarizer.py - Use this skill when you need the
package behavior rather than a generic answer.note-summarizer
Key Features
- Scope-focused workflow aligned to: Organize study notes into a structured knowledge-point outline and export to a .docx summary when you need a shareable, hierarchical document from Word/PPT/Text/Markdown inputs.
- Packaged executable path(s):
.scripts/note_summarizer.py - Structured execution path designed to keep outputs consistent and reviewable.
Dependencies
:Python
. Repository baseline for current packaged skills.3.10+
:Third-party packages
. Add pinned versions if this skill needs stricter environment control.not explicitly version-pinned in this skill package
Example Usage
cd "20260316/scientific-skills/Others/note-summarizer" python -m py_compile scripts/note_summarizer.py python scripts/note_summarizer.py --help
Example run plan:
- Confirm the user input, output path, and any required config values.
- Edit the in-file
block or documented parameters if the script uses fixed settings.CONFIG - Run
with the validated inputs.python scripts/note_summarizer.py - Review the generated output and return the final artifact with any assumptions called out.
Implementation Details
- Execution model: validate the request, choose the packaged workflow, and produce a bounded deliverable.
- Input controls: confirm the source files, scope limits, output format, and acceptance criteria before running any script.
- Primary implementation surface:
.scripts/note_summarizer.py - Parameters to clarify first: input path, output path, scope filters, thresholds, and any domain-specific constraints.
- Output discipline: keep results reproducible, identify assumptions explicitly, and avoid undocumented side effects.
1. When to Use
- When you have class notes (Word/Markdown/text) and need a clean outline with key takeaways per section.
- When you need to merge notes from multiple sources (e.g., Word + PPT + Markdown) into one unified study summary.
- When you want to preserve the original heading hierarchy (H1/H2/H3) while summarizing content into bullet points.
- When you need to include images from the source materials in the corresponding sections of the exported Word document.
- When you need an offline, local-file-only summarization workflow for study materials.
2. Key Features
- Multi-format input support: .docx, .pptx, .txt, .md.
- Exports a Word (.docx) document with a structured outline (Heading 1/2/3).
- Generates key-point bullet summaries per section with a configurable limit.
- Optional heading hierarchy preservation to keep the original structure.
- Optional image handling: copy images into the output or skip them.
- Local-only processing (no network access) and minimal logging of user content.
3. Dependencies
- Python (recommended): 3.9+
- Python packages:
- python-docx (latest compatible)
- python-pptx (latest compatible)
- Pillow (latest compatible)
Install:
python -m pip install python-docx python-pptx pillow
4. Example Usage
Interactive run
python scripts/note_summarizer.py
Run with a JSON config (recommended)
- Create
:input.json
{ "inputs": ["notes.docx", "slides.pptx", "notes.md"], "output": "summary.docx", "keep_headings": true, "max_bullets_per_section": 6, "image_mode": "copy", "max_image_long_edge": 1600 }
- Execute:
python scripts/note_summarizer.py --json input.json
5. Implementation Details
Input schema
Required
: array of input file paths (Word/PPT/Text/Markdown)inputs
: outputoutput
file path.docx
Optional
(boolean, default:keep_headings
): attempts to preserve heading hierarchy from source documents.true
(int, default:max_bullets_per_section
): maximum number of summary bullets generated per section.6
(image_mode
|"copy"
, default:"skip"
): whether to copy images into the output document."copy"
(int, default:max_image_long_edge
): maximum pixel size for the long edge when copying images.1600
Output structure
- A Word document containing:
- Heading levels (Heading 1/2/3) representing the outline
- Bullet lists of key points under each section
- Images copied into the relevant sections when
image_mode: "copy"
Security / compliance notes
- Processes local files only and does not access the network.
- Reads only user-provided paths and writes only to the specified output path.
- Avoids logging or emitting sensitive content from user files into logs.
Basic verification
python scripts/note_summarizer.py --json examples/example.json
Success criteria:
- The output
exists and opens successfully..docx - The heading hierarchy and per-section key points are present and correctly structured.