Instructions
1. Initial Setup & File Discovery
- •Identify Request Type: Confirm the user is a student needing help with course materials (presentations, PDFs, notes).
- •Locate Files: The user will typically mention specific filenames (e.g.,
Compile.pptx,HW.PDF).- •Use
filesystem-list_directoryto verify file existence and correct paths in the workspace. - •Handle case sensitivity or extension variations (e.g.,
.pdfvs.PDF).
- •Use
2. Content Extraction & Analysis
- •Open Presentation: Use
pptx-open_presentationon the specified.pptxfile to get a presentation ID. - •Extract Presentation Text: Use
pptx-extract_presentation_textwithinclude_slide_info: trueon the obtained ID. This provides structured slide data including titles, text, and tables. - •Read PDF Content: Use
pdf-tools-read_pdf_pageson the specified.pdffile (e.g., homework). Extract all relevant pages.
3. Structured Note Creation
- •Create Output File: Use
filesystem-write_fileto create a new markdown file (e.g.,NOTE.md). - •Build Note Structure: Synthesize the extracted content into a well-organized study note. Follow this template:
- •Header: Course name and chapter/topic.
- •Overview: Summarize the main topic's purpose (from early slides).
- •Core Definitions: Clearly define key terms (e.g., "Symbol Table", "Environment").
- •Comparative Analysis: When concepts have different styles/implementations (e.g., Functional vs. Imperative), create a dedicated section comparing them. Use a table for clear contrast.
- •Code Integration: For all code snippets found in the materials:
- •Create a dedicated "Code Examples" section.
- •Group related code blocks logically.
- •For each block: Provide the exact code and a concise Explanation beneath it, detailing what it does and why it's important.
- •Assignment Analysis: For homework/assignment PDFs:
- •List each question.
- •Provide a clear, step-by-step explanation of the solution.
- •State the final answer.
- •Summary: Add a final summary or comparison table recapping the most critical takeaways.
4. Principles for Content Synthesis
- •Clarity Over Comprehensiveness: Prioritize explaining the "why" behind concepts, not just listing "what".
- •Connect Theory & Practice: Explicitly link definitions to their code implementations.
- •Answer Directly: For assignment questions, provide the answer clearly after the explanation.
- •Verify Output: Optionally, use
filesystem-read_fileto confirm the note was created successfully.
5. Final Response
- •Inform the user the note has been created and provide a brief summary of its contents, highlighting the definitions, comparisons, code explanations, and homework answers you included.