supplementary-table

Write supplementary tables in xlsx, csv, and tsv with embedded figure provenance metadata.

Updated Apr 18, 2026
One-click install
npx skills add https://github.com/ppavlidis/skillz --skill supplementary-table-ppavlidis
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: supplementary-table
Source: https://github.com/ppavlidis/skillz/tree/main/skills/supplementary-table
Command: npx skills add https://github.com/ppavlidis/skillz --skill supplementary-table-ppavlidis

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires openpyxl, and includes scripts (resource) components.

What problem does it solve? Supplementary tables often lose their connection to the figures they back, forcing reviewers and collaborators to guess which sheet belongs to which panel. This Skill stamps every table with provenance metadata (figure_id, build script, source path, sha256, timestamp) so the link between data and figure is never lost. ## Core Features & Use Cases - Dual-format output: Write the same data as xlsx (with a dedicated Provenance sheet and per-sheet banner rows) and csv/tsv (with #-prefixed comment headers) in one call, with matching sha256 hashes proving the formats contain identical data. - Per-sheet figure mapping: Multi-sheet workbooks support panel-level granularity via per-sheet figure, source, and description overrides. - Library and CLI interfaces: Call write_csv, write_tsv, or write_xlsx from Python figure-build scripts, or use the CLI for ad-hoc post-hoc stamping of existing files. - Use Case: A bioinformatics pipeline generates figure 3 panel b from a summary JSON; the build script calls write_xlsx so the exported table_s1.xlsx carries a banner reading "Backs Figure 3 Panel B" plus a Provenance sheet with the script path and content hash. ## Quick Start Ask the AI to write your analysis rows to a supplementary table xlsx and csv stamped with the figure id, build script, and source path using the supplementary-table skill.

Frequently Asked Questions about supplementary-table

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add provenance metadata to a supplementary table in Python?

Call write_csv, write_tsv, or write_xlsx from the supp_table module with your rows plus figure, script, source, and description arguments. The functions stamp a sha256 hash and UTC timestamp automatically and return a metadata dict.

How do I write a multi-sheet xlsx with a provenance sheet?

Pass a dict of sheet names to row lists into write_xlsx. It appends a Provenance sheet listing sheet_name, figure_id, script, source, sha256, stamped_at, and description for every data sheet, with optional per-sheet overrides.

Does pandas read csv files with comment header lines?

Yes, pandas.read_csv with comment='#' skips the #-prefixed provenance lines, as do R read.csv with comment.char='#', polars, duckdb, and Julia CSV.jl. The data rows parse normally below the header block.

Does writing xlsx require pandas or openpyxl?

Only openpyxl is required for xlsx output; csv and tsv writing use the Python standard library alone. Pandas is deliberately not a dependency so the helper stays light enough to drop into any build script.

Why do the csv and xlsx outputs have the same sha256 hash?

The sha256 is computed over the canonical data rows only, excluding comment headers and the Provenance sheet. Identical data therefore hashes identically across formats, proving the two files contain the same content.

When should I use provenance-stamp instead of supplementary-table?

Use provenance-stamp when the artifact is not a table, such as a model file or downloaded ontology, since it writes generic *_meta.json sidecars. Use supplementary-table when the artifact itself is the table.