ワンクリックで
markdown
Extract text and tables from Markdown (.md) files. Use when a user uploads a Markdown document that needs to be processed.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Extract text and tables from Markdown (.md) files. Use when a user uploads a Markdown document that needs to be processed.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Extract text and tables from PowerPoint (.pptx) files. Use when a user uploads a PPT or PPTX document that needs to be processed.
当用户请求生成、创建、制作 PPT、演示文稿、课件时使用此技能。这是教育场景中最常用的技能,适合老师备课、课程汇报、学术演讲等需求。
Extract text and tables from Word (.docx) files. Use when a user uploads a Word document that needs to be processed.
Extract text and tables from PDF files. Use when a user uploads a PDF document that needs to be processed.
Summarize and structure raw document text (PDF/Word/Markdown/PPT) into a format optimized for PPT generation. Use when the user uploads a document and wants to generate a presentation from it.
Use this skill any time a .pptx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates, layouts, speaker notes, or comments. Trigger whenever the user mentions "deck," "slides," "presentation," or references a .pptx filename, regardless of what they plan to do with the content afterward. If a .pptx file needs to be opened, created, or touched, use this skill.
| name | markdown |
| description | Extract text and tables from Markdown (.md) files. Use when a user uploads a Markdown document that needs to be processed. |
Extract readable text and structured tables from Markdown files. This skill feeds extracted content into downstream processing such as document summarization for PPT generation.
.md fileMarkdown is plain text, so read it directly.
with open("document.md", "r", encoding="utf-8") as f:
raw_text = f.read().strip()
If UTF-8 fails, try utf-8-sig or gbk.
def strip_frontmatter(text: str) -> str:
if text.startswith("---"):
end = text.find("\n---", 3)
if end != -1:
return text[end + 4 :].lstrip()
return text
text = raw_text.replace("\r\n", "\n").replace("\r", "\n")
text = strip_frontmatter(text)
import re
def extract_markdown_tables(text: str) -> list[list[list[str]]]:
tables: list[list[list[str]]] = []
current_table: list[list[str]] = []
for line in text.split("\n"):
line = line.strip()
if not line.startswith("|"):
if current_table:
tables.append(current_table)
current_table = []
continue
if re.match(r"^\|[\s\-:|]+\|$", line):
continue
cells = [cell.strip() for cell in line.strip("|").split("|")]
if cells:
current_table.append(cells)
if current_table:
tables.append(current_table)
return tables
| Problem | Solution |
|---|---|
| UTF-8 decode fails | Retry with utf-8-sig or gbk |
| YAML frontmatter pollutes content | Strip the opening --- ... --- block |
| Large file | Truncate or summarize in chunks before downstream use |
| No tables present | Return an empty list |
For the upload-to-PPT workflow:
document-summarizergenerate_ppt(content=...)Return (raw_text: str, tables: list[list[list[str]]], estimated_pages: int):
raw_text: normalized markdown texttables: extracted markdown tables as list[list[str]]estimated_pages: rough estimate, e.g. max(1, len(text) // 3000)