[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KJ93F1WJ8PHSCEAMJY9VGH":3,"skill-same:01M6KJ93F1WJ8PHSCEAMJY9VGH":67},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":40,"commitSha":41,"skillDirectory":42,"forksCount":13,"repositoryHtmlUrl":43,"repositoryHomepageUrl":6,"ownerHtmlUrl":44,"ownerBlogUrl":6,"ownerDescription":45,"updatedAt":46,"install":47,"resources":60},"01M6KJ93F1WJ8PHSCEAMJY9VGH","pdf-checklist-generator",null,"Generate structured PDF checklists and reports with tables, sections, and scoring criteria using Python libraries","AG064\u002FOpenSpace","AG064","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F184930299?v=4","01M6KHVFG7TB73NHX3RDYSTMH2","01M6KHVFMM7XA2PZA9Z83PHS3V",0,"MIT","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fpdf-checklist-generator\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34],"PDF","checklist","generator","pdf checklist generator","python","libraries","generate","reports","scoring","structured","with","tables","2026-11-10 10:12:30",false,"---\nname: pdf-checklist-generator\ndescription: Generate structured PDF checklists and reports with tables, sections, and scoring criteria using Python libraries\n---\n\n# PDF Checklist\u002FReport Generator\n\nThis skill provides a reusable pattern for creating professional PDF documents (checklists, reports, scorecards) using Python libraries within `execute_code_sandbox`.\n\n## When to Use This Skill\n\n- Need to generate structured PDF documents programmatically\n- Creating checklists with scoring criteria\n- Building reports with tables, sections, and formatted content\n- Producing downloadable artifacts for workflow tasks\n\n## Library Selection\n\nChoose the appropriate library based on your needs:\n\n| Library | Best For | Installation |\n|---------|----------|--------------|\n| **reportlab** | Complex layouts, tables, precise control | `pip install reportlab` |\n| **fpdf2** | Simple documents, easy API | `pip install fpdf2` |\n| **matplotlib** | Charts\u002Fgraphs in PDFs | `pip install matplotlib` |\n\n## Step-by-Step Procedure\n\n### Step 1: Plan Document Structure\n\nDefine the sections, tables, and scoring criteria before coding:\n- Document title and metadata\n- Section headers\n- Table columns and rows\n- Scoring rubric (if applicable)\n\n### Step 2: Write Python Code in execute_code_sandbox\n\nUse `execute_code_sandbox` with the appropriate library. Here are templates:\n\n#### Template A: Using reportlab (recommended for tables)\n\n```python\nfrom reportlab.lib import colors\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.platypus import SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer\nfrom reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle\nfrom reportlab.lib.units import inch\n\n# Create PDF\ndoc = SimpleDocTemplate(\"checklist.pdf\", pagesize=letter)\nelements = []\nstyles = getSampleStyleSheet()\n\n# Title\ntitle_style = ParagraphStyle('CustomTitle', parent=styles['Heading1'], alignment=1)\nelements.append(Paragraph(\"Compliance Checklist\", title_style))\nelements.append(Spacer(1, 0.25*inch))\n\n# Create table data\ndata = [\n    ['Criteria', 'Status', 'Score', 'Notes'],\n    ['Security Review', 'Pass', '10', 'All checks passed'],\n    ['Code Quality', 'Pass', '8', 'Minor improvements'],\n    ['Documentation', 'Pending', '5', 'Needs updates'],\n]\n\n# Create and style table\ntable = Table(data, colWidths=[3*inch, 1*inch, 1*inch, 2*inch])\ntable.setStyle(TableStyle([\n    ('BACKGROUND', (0, 0), (-1, 0), colors.grey),\n    ('TEXTCOLOR', (0, 0), (-1, 0), colors.whitesmoke),\n    ('ALIGN', (0, 0), (-1, -1), 'CENTER'),\n    ('GRID', (0, 0), (-1, -1), 1, colors.black),\n    ('BACKGROUND', (0, 1), (-1, -1), colors.beige),\n]))\nelements.append(table)\n\n# Build PDF\ndoc.build(elements)\nprint(\"PDF created: checklist.pdf\")\nprint(f\"ARTIFACT_PATH:\u002Fworkspace\u002Fchecklist.pdf\")\n```\n\n#### Template B: Using fpdf2 (simpler API)\n\n```python\nfrom fpdf import FPDF\n\npdf = FPDF()\npdf.add_page()\npdf.set_font(\"Arial\", \"B\", 16)\npdf.cell(0, 10, \"Project Report\", ln=True, align='C')\n\npdf.set_font(\"Arial\", size=12)\npdf.ln(10)\n\n# Add sections\nsections = [\n    (\"Executive Summary\", \"Project completed successfully.\"),\n    (\"Key Findings\", \"All milestones achieved on time.\"),\n    (\"Recommendations\", \"Continue current practices.\"),\n]\n\nfor title, content in sections:\n    pdf.set_font(\"Arial\", \"B\", 14)\n    pdf.cell(0, 10, title, ln=True)\n    pdf.set_font(\"Arial\", size=12)\n    pdf.multi_cell(0, 8, content)\n    pdf.ln(5)\n\npdf.output(\"report.pdf\")\nprint(\"PDF created: report.pdf\")\nprint(f\"ARTIFACT_PATH:\u002Fworkspace\u002Freport.pdf\")\n```\n\n#### Template C: Checklist with Scoring\n\n```python\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.platypus import SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer\nfrom reportlab.lib.styles import getSampleStyleSheet\nfrom reportlab.lib import colors\n\ndoc = SimpleDocTemplate(\"scorecard.pdf\", pagesize=letter)\nelements = []\nstyles = getSampleStyleSheet()\n\n# Title\nelements.append(Paragraph(\"Evaluation Scorecard\", styles['Heading1']))\nelements.append(Spacer(1, 0.25*inch))\n\n# Scoring criteria table\ncriteria = [\n    ['Category', 'Weight', 'Score (0-10)', 'Weighted'],\n    ['Functionality', '30%', '9', '2.7'],\n    ['Performance', '25%', '8', '2.0'],\n    ['Security', '25%', '10', '2.5'],\n    ['Documentation', '20%', '7', '1.4'],\n    ['TOTAL', '100%', '-', '8.6\u002F10'],\n]\n\ntable = Table(criteria, colWidths=[2.5*inch, 1*inch, 1.5*inch, 1.5*inch])\ntable.setStyle(TableStyle([\n    ('BACKGROUND', (0, 0), (-1, 0), colors.darkblue),\n    ('TEXTCOLOR', (0, 0), (-1, 0), colors.whitesmoke),\n    ('ALIGN', (0, 0), (-1, -1), 'CENTER'),\n    ('GRID', (0, 0), (-1, -1), 1, colors.black),\n    ('FONTNAME', (0, -1), (-1, -1), 'Helvetica-Bold'),\n    ('BACKGROUND', (0, -1), (-1, -1), colors.lightgrey),\n]))\nelements.append(table)\n\ndoc.build(elements)\nprint(\"ARTIFACT_PATH:\u002Fworkspace\u002Fscorecard.pdf\")\n```\n\n### Step 3: Include ARTIFACT_PATH in Output\n\nAlways include the artifact path in your print output so the system can locate the generated file:\n\n```python\nprint(f\"ARTIFACT_PATH:\u002Fworkspace\u002Fyour_filename.pdf\")\n```\n\n### Step 4: Verify Output\n\nAfter generation, verify the PDF was created successfully:\n\n**Option A: Use read_file**\n```\nread_file with filetype=\"pdf\" and file_path=\"\u002Fworkspace\u002Fchecklist.pdf\"\n```\n\n**Option B: Use shell inspection**\n```\nrun_shell with command=\"ls -la \u002Fworkspace\u002F*.pdf\"\n```\n\n## Common Patterns\n\n### Pattern 1: Multi-Section Report\n```python\nsections = [\n    (\"Introduction\", \"Overview text...\"),\n    (\"Methodology\", \"Process description...\"),\n    (\"Results\", \"Findings summary...\"),\n    (\"Conclusion\", \"Final recommendations...\"),\n]\n\nfor title, content in sections:\n    elements.append(Paragraph(title, styles['Heading2']))\n    elements.append(Paragraph(content, styles['Normal']))\n    elements.append(Spacer(1, 0.2*inch))\n```\n\n### Pattern 2: Status Indicator Table\n```python\nstatus_colors = {\n    'Pass': colors.green,\n    'Fail': colors.red,\n    'Pending': colors.orange,\n    'N\u002FA': colors.grey,\n}\n\n# Apply conditional coloring in table style\nfor row_idx, row_data in enumerate(data[1:], 1):\n    status = row_data[1]\n    if status in status_colors:\n        table.setStyle(TableStyle([\n            ('BACKGROUND', (1, row_idx), (1, row_idx), status_colors[status]),\n        ]))\n```\n\n### Pattern 3: Page Breaks for Long Documents\n```python\nfrom reportlab.platypus import PageBreak\n\nelements.append(PageBreak())  # Insert page break\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| Library not found | Add `pip install \u003Clibrary>` at start of code |\n| Font errors | Use built-in fonts: Arial, Helvetica, Times-Roman |\n| Table overflow | Adjust `colWidths` or split into multiple tables |\n| PDF not created | Check ARTIFACT_PATH is correct and file is written |\n\n## Best Practices\n\n1. **Always verify**: Check the PDF exists and is readable after generation\n2. **Use ARTIFACT_PATH**: Include it in output for system discovery\n3. **Keep it readable**: Use adequate spacing (`Spacer`) between elements\n4. **Test incrementally**: Build complex PDFs section by section\n5. **Handle errors**: Wrap file operations in try\u002Fexcept blocks\n\n## Example Complete Workflow\n\n```python\n# 1. Install library\n!pip install reportlab -q\n\n# 2. Generate PDF\nfrom reportlab.platypus import SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer\nfrom reportlab.lib.styles import getSampleStyleSheet\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.lib import colors\n\ndoc = SimpleDocTemplate(\"\u002Fworkspace\u002Fchecklist.pdf\", pagesize=letter)\nelements = []\nstyles = getSampleStyleSheet()\n\nelements.append(Paragraph(\"Task Completion Checklist\", styles['Heading1']))\nelements.append(Spacer(1, 0.25*inch))\n\ndata = [['Task', 'Complete', 'Notes'],\n        ['Setup environment', 'Yes', ''],\n        ['Run tests', 'Yes', 'All passed'],\n        ['Documentation', 'No', 'In progress']]\n\ntable = Table(data)\ntable.setStyle(TableStyle([('GRID', (0,0), (-1,-1), 1, colors.black)]))\nelements.append(table)\n\ndoc.build(elements)\nprint(\"ARTIFACT_PATH:\u002Fworkspace\u002Fchecklist.pdf\")\n\n# 3. Verify\nimport os\nprint(f\"File exists: {os.path.exists('\u002Fworkspace\u002Fchecklist.pdf')}\")\nprint(f\"File size: {os.path.getsize('\u002Fworkspace\u002Fchecklist.pdf')} bytes\")\n```","# PDF Checklist\u002FReport Generator\n\nThis skill provides a reusable pattern for creating professional PDF documents (checklists, reports, scorecards) using Python libraries within `execute_code_sandbox`.\n\n## When to Use This Skill\n\n- Need to generate structured PDF documents programmatically\n- Creating checklists with scoring criteria\n- Building reports with tables, sections, and formatted content\n- Producing downloadable artifacts for workflow tasks\n\n## Library Selection\n\nChoose the appropriate library based on your needs:\n\n| Library | Best For | Installation |\n|---------|----------|--------------|\n| **reportlab** | Complex layouts, tables, precise control | `pip install reportlab` |\n| **fpdf2** | Simple documents, easy API | `pip install fpdf2` |\n| **matplotlib** | Charts\u002Fgraphs in PDFs | `pip install matplotlib` |\n\n## Step-by-Step Procedure\n\n### Step 1: Plan Document Structure\n\nDefine the sections, tables, and scoring criteria before coding:\n- Document title and metadata\n- Section headers\n- Table columns and rows\n- Scoring rubric (if applicable)\n\n### Step 2: Write Python Code in execute_code_sandbox\n\nUse `execute_code_sandbox` with the appropriate library. Here are templates:\n\n#### Template A: Using reportlab (recommended for tables)\n\n```python\nfrom reportlab.lib import colors\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.platypus import SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer\nfrom reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle\nfrom reportlab.lib.units import inch\n\n# Create PDF\ndoc = SimpleDocTemplate(\"checklist.pdf\", pagesize=letter)\nelements = []\nstyles = getSampleStyleSheet()\n\n# Title\ntitle_style = ParagraphStyle('CustomTitle', parent=styles['Heading1'], alignment=1)\nelements.append(Paragraph(\"Compliance Checklist\", title_style))\nelements.append(Spacer(1, 0.25*inch))\n\n# Create table data\ndata = [\n    ['Criteria', 'Status', 'Score', 'Notes'],\n    ['Security Review', 'Pass', '10', 'All checks passed'],\n    ['Code Quality', 'Pass', '8', 'Minor improvements'],\n    ['Documentation', 'Pending', '5', 'Needs updates'],\n]\n\n# Create and style table\ntable = Table(data, colWidths=[3*inch, 1*inch, 1*inch, 2*inch])\ntable.setStyle(TableStyle([\n    ('BACKGROUND', (0, 0), (-1, 0), colors.grey),\n    ('TEXTCOLOR', (0, 0), (-1, 0), colors.whitesmoke),\n    ('ALIGN', (0, 0), (-1, -1), 'CENTER'),\n    ('GRID', (0, 0), (-1, -1), 1, colors.black),\n    ('BACKGROUND', (0, 1), (-1, -1), colors.beige),\n]))\nelements.append(table)\n\n# Build PDF\ndoc.build(elements)\nprint(\"PDF created: checklist.pdf\")\nprint(f\"ARTIFACT_PATH:\u002Fworkspace\u002Fchecklist.pdf\")\n```\n\n#### Template B: Using fpdf2 (simpler API)\n\n```python\nfrom fpdf import FPDF\n\npdf = FPDF()\npdf.add_page()\npdf.set_font(\"Arial\", \"B\", 16)\npdf.cell(0, 10, \"Project Report\", ln=True, align='C')\n\npdf.set_font(\"Arial\", size=12)\npdf.ln(10)\n\n# Add sections\nsections = [\n    (\"Executive Summary\", \"Project completed successfully.\"),\n    (\"Key Findings\", \"All milestones achieved on time.\"),\n    (\"Recommendations\", \"Continue current practices.\"),\n]\n\nfor title, content in sections:\n    pdf.set_font(\"Arial\", \"B\", 14)\n    pdf.cell(0, 10, title, ln=True)\n    pdf.set_font(\"Arial\", size=12)\n    pdf.multi_cell(0, 8, content)\n    pdf.ln(5)\n\npdf.output(\"report.pdf\")\nprint(\"PDF created: report.pdf\")\nprint(f\"ARTIFACT_PATH:\u002Fworkspace\u002Freport.pdf\")\n```\n\n#### Template C: Checklist with Scoring\n\n```python\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.platypus import SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer\nfrom reportlab.lib.styles import getSampleStyleSheet\nfrom reportlab.lib import colors\n\ndoc = SimpleDocTemplate(\"scorecard.pdf\", pagesize=letter)\nelements = []\nstyles = getSampleStyleSheet()\n\n# Title\nelements.append(Paragraph(\"Evaluation Scorecard\", styles['Heading1']))\nelements.append(Spacer(1, 0.25*inch))\n\n# Scoring criteria table\ncriteria = [\n    ['Category', 'Weight', 'Score (0-10)', 'Weighted'],\n    ['Functionality', '30%', '9', '2.7'],\n    ['Performance', '25%', '8', '2.0'],\n    ['Security', '25%', '10', '2.5'],\n    ['Documentation', '20%', '7', '1.4'],\n    ['TOTAL', '100%', '-', '8.6\u002F10'],\n]\n\ntable = Table(criteria, colWidths=[2.5*inch, 1*inch, 1.5*inch, 1.5*inch])\ntable.setStyle(TableStyle([\n    ('BACKGROUND', (0, 0), (-1, 0), colors.darkblue),\n    ('TEXTCOLOR', (0, 0), (-1, 0), colors.whitesmoke),\n    ('ALIGN', (0, 0), (-1, -1), 'CENTER'),\n    ('GRID', (0, 0), (-1, -1), 1, colors.black),\n    ('FONTNAME', (0, -1), (-1, -1), 'Helvetica-Bold'),\n    ('BACKGROUND', (0, -1), (-1, -1), colors.lightgrey),\n]))\nelements.append(table)\n\ndoc.build(elements)\nprint(\"ARTIFACT_PATH:\u002Fworkspace\u002Fscorecard.pdf\")\n```\n\n### Step 3: Include ARTIFACT_PATH in Output\n\nAlways include the artifact path in your print output so the system can locate the generated file:\n\n```python\nprint(f\"ARTIFACT_PATH:\u002Fworkspace\u002Fyour_filename.pdf\")\n```\n\n### Step 4: Verify Output\n\nAfter generation, verify the PDF was created successfully:\n\n**Option A: Use read_file**\n```\nread_file with filetype=\"pdf\" and file_path=\"\u002Fworkspace\u002Fchecklist.pdf\"\n```\n\n**Option B: Use shell inspection**\n```\nrun_shell with command=\"ls -la \u002Fworkspace\u002F*.pdf\"\n```\n\n## Common Patterns\n\n### Pattern 1: Multi-Section Report\n```python\nsections = [\n    (\"Introduction\", \"Overview text...\"),\n    (\"Methodology\", \"Process description...\"),\n    (\"Results\", \"Findings summary...\"),\n    (\"Conclusion\", \"Final recommendations...\"),\n]\n\nfor title, content in sections:\n    elements.append(Paragraph(title, styles['Heading2']))\n    elements.append(Paragraph(content, styles['Normal']))\n    elements.append(Spacer(1, 0.2*inch))\n```\n\n### Pattern 2: Status Indicator Table\n```python\nstatus_colors = {\n    'Pass': colors.green,\n    'Fail': colors.red,\n    'Pending': colors.orange,\n    'N\u002FA': colors.grey,\n}\n\n# Apply conditional coloring in table style\nfor row_idx, row_data in enumerate(data[1:], 1):\n    status = row_data[1]\n    if status in status_colors:\n        table.setStyle(TableStyle([\n            ('BACKGROUND', (1, row_idx), (1, row_idx), status_colors[status]),\n        ]))\n```\n\n### Pattern 3: Page Breaks for Long Documents\n```python\nfrom reportlab.platypus import PageBreak\n\nelements.append(PageBreak())  # Insert page break\n```\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| Library not found | Add `pip install \u003Clibrary>` at start of code |\n| Font errors | Use built-in fonts: Arial, Helvetica, Times-Roman |\n| Table overflow | Adjust `colWidths` or split into multiple tables |\n| PDF not created | Check ARTIFACT_PATH is correct and file is written |\n\n## Best Practices\n\n1. **Always verify**: Check the PDF exists and is readable after generation\n2. **Use ARTIFACT_PATH**: Include it in output for system discovery\n3. **Keep it readable**: Use adequate spacing (`Spacer`) between elements\n4. **Test incrementally**: Build complex PDFs section by section\n5. **Handle errors**: Wrap file operations in try\u002Fexcept blocks\n\n## Example Complete Workflow\n\n```python\n# 1. Install library\n!pip install reportlab -q\n\n# 2. Generate PDF\nfrom reportlab.platypus import SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer\nfrom reportlab.lib.styles import getSampleStyleSheet\nfrom reportlab.lib.pagesizes import letter\nfrom reportlab.lib import colors\n\ndoc = SimpleDocTemplate(\"\u002Fworkspace\u002Fchecklist.pdf\", pagesize=letter)\nelements = []\nstyles = getSampleStyleSheet()\n\nelements.append(Paragraph(\"Task Completion Checklist\", styles['Heading1']))\nelements.append(Spacer(1, 0.25*inch))\n\ndata = [['Task', 'Complete', 'Notes'],\n        ['Setup environment', 'Yes', ''],\n        ['Run tests', 'Yes', 'All passed'],\n        ['Documentation', 'No', 'In progress']]\n\ntable = Table(data)\ntable.setStyle(TableStyle([('GRID', (0,0), (-1,-1), 1, colors.black)]))\nelements.append(table)\n\ndoc.build(elements)\nprint(\"ARTIFACT_PATH:\u002Fworkspace\u002Fchecklist.pdf\")\n\n# 3. Verify\nimport os\nprint(f\"File exists: {os.path.exists('\u002Fworkspace\u002Fchecklist.pdf')}\")\nprint(f\"File size: {os.path.getsize('\u002Fworkspace\u002Fchecklist.pdf')} bytes\")\n```",{"name":5,"description":7},"main","ff671ef61ed6587c49bd54c81cdc751c0b99e363","gdpval_bench\u002Fskills\u002Fpdf-checklist-generator","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace","https:\u002F\u002Fgithub.com\u002FAG064","AG064, E.Mi.\r\n\r\nA person who thinks all the time, yet all they have to think is nothing. I want to improve the world and work on open source projects","2026-10-08 06:53:48",{"source":8,"skillName":5,"commands":48,"prompt":58,"zipAvailable":59},[49,52,55],{"tool":50,"command":51},"npx","npx skills add AG064\u002FOpenSpace --skill pdf-checklist-generator",{"tool":53,"command":54},"bunx","bunx skills add AG064\u002FOpenSpace --skill pdf-checklist-generator",{"tool":56,"command":57},"pnpm","pnpm dlx skills add AG064\u002FOpenSpace --skill pdf-checklist-generator","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fpdf-checklist-generator\u002FSKILL.md",true,[61],{"path":62,"resourceType":63,"resourceTypeDesc":64,"sizeBytes":65,"sourceHtmlUrl":66},".skill_id","OTHER","其他",37,"https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fgdpval_bench\u002Fskills\u002Fpdf-checklist-generator\u002F.skill_id",[68,91,107,116,146,162],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":35},"01M6KKMPWA0B5SCCH766F8M5EA","write-special-chars-ts-check","Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, plus a reliable TypeScript type-checking step that filters output to only the newly-written files to avoid being misled by pre-existing errors.","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fshowcase\u002Fskills\u002Fwrite-special-chars-ts-check\u002FSKILL.md",[],[75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,27,90],"write special chars ts check","check","write","filters","Existing","type-checking","for","errors","script","output","type","files","only","template","file","typescript",{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":35},"01M6KKMJXVBNVEY3TRK055F4A7","write-special-chars-readback","Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, with mandatory post-write verification via read_file and cleanup of \u002Ftmp helper scripts.","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fshowcase\u002Fskills\u002Fwrite-special-chars-readback\u002FSKILL.md",[],[98,99,77,88,100,101,89,27,102,103,104,105,106,81,83,33],"readback","write special chars readback","cleanup","read","scripts","verification","via","post","helper",{"skillNo":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":35},"01M6KKMEGX9M9NC105J0W3Q5B9","write-special-chars-heredoc","Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) by using a Python heredoc script executed via shell.","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fshowcase\u002Fskills\u002Fwrite-special-chars-heredoc\u002FSKILL.md",[],[77,114,27,81,104,88,115,89,83],"write special chars heredoc","shell",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":127,"publishedAt":35},"01M6KKM8EJ2AATVHZBNB916WT0","worldmonitor-reference","Curated architecture index of the WorldMonitor open-source dashboard. Reference for extracting patterns — vanilla TypeScript, Panel class hierarchy, service layer, CSS grid, API edge functions, refresh scheduler, and 60+ data source integrations.","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fshowcase\u002Fskills\u002Fworldmonitor-reference\u002FSKILL.md",[122],{"categoryNo":123,"categoryName":124,"taxonomyType":125,"taxonomyTypeDesc":126},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[128,129,130,131,90,132,133,134,135,136,81,137,138,139,140,141,142,143,144,145],"reference","worldmonitor","worldmonitor reference","dashboard","css","architecture","extracting","hierarchy","source","layer","panel","patterns","edge functions","integrations","open","api","data","scheduler",{"skillNo":147,"name":148,"nameZh":6,"description":149,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":150,"categories":151,"keywords":152,"publishedAt":35},"01M6KKM39PHYK627F19GE2B9XN","virtual-list","Implement efficient virtual scrolling for rendering large lists with DOM recycling, chunk-based rendering, and performance optimizations","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fshowcase\u002Fskills\u002Fvirtual-list\u002FSKILL.md",[],[153,154,155,156,81,157,33,158,159,160,161],"virtual list","list","virtual","chunk","dom","rendering","recycling","implement","performance",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":35},"01M6KKKY7T2P61Y0JH54CDEJKQ","verify-directory-structure","Diagnose and resolve file access issues by first verifying the directory structure.","https:\u002F\u002Fgithub.com\u002FAG064\u002FOpenSpace\u002Fblob\u002Fmain\u002Fshowcase\u002Fskills\u002Fverify-directory-structure\u002FSKILL.md",[],[169,170,171,172,173,174,89,175,176,177],"directory","verify","structure","verify directory structure","access","first","issues","diagnose","file access"]