Use this skill when reading sensor data from CSV files, writing simulation results to CSV, processing time-series data with pandas, or handling missing values in datasets.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Redact text from PDF documents for blind review anonymization
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Redact identifying information from academic papers for blind review.
# ❌ WRONG - This removes ALL text from the page:
for block in page.get_text("blocks"):
page.add_redact_annot(fitz.Rect(block[:4]))
# ❌ WRONG - Drawing rectangles over text:
page.draw_rect(fitz.Rect(0, 0, 600, 100), fill=(0,0,0))
# ✅ CORRECT - Only redact specific search matches:
for rect in page.search_for("John Smith"):
page.add_redact_annot(rect)
IMPORTANT: Use FULL names/phrases, not partial matches!
*@*.edu, *@*.comarXiv:XXXX.XXXXX10.XXXX/...import fitz
import os
def redact_with_pymupdf(input_path: str, output_path: str, patterns: list[str]):
"""Redact specific patterns from PDF using PyMuPDF."""
doc = fitz.open(input_path)
original_len = sum(len(p.get_text()) for p in doc)
# Find References page - stop redacting there
references_page = None
for i, page in enumerate(doc):
if "references" in page.get_text().lower():
references_page = i
break
for page_num, page in enumerate(doc):
if references_page is not None and page_num >= references_page:
continue # Skip References section
for pattern in patterns:
# ONLY redact exact search matches
for rect in page.search_for(pattern):
page.add_redact_annot(rect, fill=(0, 0, 0))
page.apply_redactions()
os.makedirs(os.path.dirname(output_path), exist_ok=True)
doc.save(output_path)
doc.close()
# MUST verify after saving
verify_redaction(input_path, output_path)
Always run this after ANY redaction to catch errors early:
import fitz
def verify_redaction(original_path, output_path):
"""Verify redaction didn't corrupt the PDF."""
orig = fitz.open(original_path)
redc = fitz.open(output_path)
orig_len = sum(len(p.get_text()) for p in orig)
redc_len = sum(len(p.get_text()) for p in redc)
print(f"Original: {len(orig)} pages, {orig_len} chars")
print(f"Redacted: {len(redc)} pages, {redc_len} chars")
print(f"Retained: {redc_len/orig_len:.1%}")
# DEFENSIVE CHECKS - fail fast if something went wrong
if len(redc) != len(orig):
raise ValueError(f"Page count changed: {len(orig)} -> {len(redc)}")
if redc_len < 1000:
raise ValueError(f"PDF corrupted: only {redc_len} chars remain!")
if redc_len < orig_len * 0.7:
raise ValueError(f"Too much removed: kept only {redc_len/orig_len:.0%}")
orig.close()
redc.close()
print("✓ Verification passed")
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Use this skill when reading sensor data from CSV files, writing simulation results to CSV, processing time-series data with pandas, or handling missing values in datasets.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
DC power flow analysis for power systems. Use when computing power flows using DC approximation, building susceptance matrices, calculating line flows and loading percentages, or performing sensitivity analysis on transmission networks.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
A library for building, validating, visualizing, and serializing dialogue graphs. Use this when parsing scripts or creating branching narrative structures.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of "Word doc", "word document", ".docx", or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a "report", "memo", "letter", "template", or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Generator economic dispatch and cost optimization for power systems. Use when minimizing generation costs, computing optimal generator setpoints, calculating operating margins, or working with generator cost functions.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Design effective excitation signals (step tests) for system identification and parameter estimation in control systems.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.