claude.symlink/skills/meta-manuscript-assembly/SKILL.md
Assemble publication-ready meta-analysis manuscripts with tables, figures, and references. Use when completing systematic review/meta-analysis manuscripts for journal submission.
npx skillsauth add htlin222/dotfiles meta-manuscript-assemblyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Complete systematic review and meta-analysis manuscripts for journal submission by creating publication-ready tables, figures, and references.
Before using this skill, ensure you have:
Create comprehensive tables from analysis results:
Table 1: Trial Characteristics
Table 2: Efficacy Outcomes Summary
Table 3: Safety Outcomes Summary
Risk of Bias Assessment
GRADE Evidence Profile
Detailed Results Tables
Create multi-panel publication-ready figures:
# Create assemble_figures.py
from PIL import Image, ImageDraw, ImageFont
from pathlib import Path
def add_panel_label(img, label, position='top-left', font_size=80, offset=(40, 40)):
"""Add A, B, C labels to panels"""
draw = ImageDraw.Draw(img)
# Try to use system font
try:
font = ImageFont.truetype("/System/Library/Fonts/Helvetica.ttc", font_size)
except:
font = ImageFont.load_default()
x, y = offset
# Draw white background box for visibility
bbox = draw.textbbox((x, y), label, font=font)
padding = 10
draw.rectangle(
[bbox[0] - padding, bbox[1] - padding,
bbox[2] + padding, bbox[3] + padding],
fill='white',
outline='black',
width=2
)
draw.text((x, y), label, fill='black', font=font)
return img
def create_multi_panel_figure(images_list, output_path, labels=['A', 'B', 'C'], spacing=40):
"""Combine multiple images vertically with labels"""
# Add labels to images
labeled_images = [add_panel_label(img, label) for img, label in zip(images_list, labels)]
# Calculate dimensions
max_width = max(img.width for img in labeled_images)
total_height = sum(img.height for img in labeled_images) + spacing * (len(labeled_images) - 1)
# Create combined image
combined = Image.new('RGB', (max_width, total_height), 'white')
# Paste images
y_offset = 0
for img in labeled_images:
combined.paste(img, (0, y_offset))
y_offset += img.height + spacing
# Save at 300 DPI
combined.save(output_path, dpi=(300, 300))
return output_path
Main Text:
Supplementary:
Create comprehensive BibTeX file:
Extract all citations from manuscript using grep
grep -E "¹|²|³|⁴|⁵|⁶|⁷|⁸|⁹|⁰|\[\d+\]" manuscript_sections.md
Create BibTeX entries for each reference
Create mapping document
Create usage guide
Write comprehensive legends for all figures:
**Panel A. Outcome Name**
Description of what the panel shows. Forest plot showing [effect measure] for [outcome]
across [N] trials ([total participants]). [Statistical method used]. [Key result].
Horizontal lines represent 95% confidence intervals; diamond represents pooled effect.
Vertical line at [null value] indicates no treatment effect.
**Abbreviations**: List all abbreviations used.
Include:
Before submission, verify:
07_manuscript/
├── tables/
│ ├── Table1_Trial_Characteristics.md
│ ├── Table2_Efficacy_Summary.md
│ ├── Table3_Safety_Summary.md
│ ├── SupplementaryTable1_RiskOfBias.md
│ ├── SupplementaryTable2_GRADE_Profile.md
│ └── ...
├── figures/
│ ├── Figure1_Efficacy.png (300 DPI)
│ ├── Figure2_Subgroup.png (300 DPI)
│ ├── Figure3_Safety.png (300 DPI)
│ ├── SupplementaryFigure1_Sensitivity.png
│ └── ...
├── references.bib
├── FIGURE_LEGENDS.md
├── CITATION_MAPPING.md
└── REFERENCES_USAGE_GUIDE.md
/meta-analysis - Perform the statistical analyses/prisma-flow - Create PRISMA flow diagram/grade-assessment - Complete GRADE evidence profiles/risk-of-bias - Assess trial quality with RoB 2 tool/meta-manuscript-assembly
Or with specific phase:
/meta-manuscript-assembly tables
/meta-manuscript-assembly figures
/meta-manuscript-assembly references
testing
Converts narrative medical text into Pocket Medicine bullet-style notes with proper abbreviations, then modularizes sections exceeding 20 lines into linked standalone files.
devops
Use when deploying Docker services on the local VM (hostname: vm, Pop!_OS) with Traefik reverse proxy and Homepage dashboard. Covers crane image workflow, Traefik file-provider registration, Homepage services.yaml entries, and compose templates on the traefik-proxy network.
development
Use when reviewing a data visualization or figure for clarity, checking if a graph communicates its message without additional context, or iterating on R/Python plot scripts until a naive reader can fully understand the figure.
development
Runs Vale prose linter on markdown/text files and auto-fixes issues. Use when the user asks to lint, proofread, or improve writing quality of markdown or text files.