Claude Skill MartBrowse skillsWhat is a Skill?
Back to list

FlowIO FCS Reader/Writer

Teaches Claude to read, inspect, and write flow cytometry FCS 2.0/3.0/3.1 files correctly with FlowIO 1.4.0.

Data & AnalyticsAdvanced33,0303,248AI score 8/10Last updated: Aug 9, 2026

What it does

Gives Claude a precise playbook for low-level Flow Cytometry Standard (FCS) file work using FlowIO 1.4.0.

  • Read FCS 2.0 / 3.0 / 3.1 files and inspect HEADER, TEXT, ANALYSIS, and per-channel metadata
  • Extract events as a NumPy array of shape (event_count, channel_count), with explicit preprocess=True/False semantics
  • Read legacy files containing multiple datasets via $NEXTDATA
  • Create, copy, or de-identify FCS 3.1 list-mode files with create_fcs() / write_fcs()
  • Run the bundled scripts/inspect_fcs.py for offline inventory, TEXT dumps, and finite-value statistics with size/memory guards

It also locks in the easy-to-miss rules: TEXT keys are lowercased with $ stripped, as_array(preprocess=True) is not compensation or a logicle transform, and create_fcs() needs a flattened array plus an open binary handle. Compensation, gating, and FlowJo workspaces are explicitly out of scope — use FlowKit instead.

Who it's for

  • Flow cytometry researchers and bioinformatics engineers building preprocessing pipelines
  • Data analysts moving instrument FCS output into pandas or ML workflows
  • Anyone fighting offset errors, vendor format quirks, or multi-dataset legacy files
  • Teams that must strip sample/subject/operator identifiers before sharing data

Examples

  1. Fast triage of large files — "Inventory every FCS in this folder: instrument, acquisition date, channel labels" → metadata-only parsing with only_text=True plus the inspector script, no event loading.
  2. Array/DataFrame export — "Load sample.fcs preprocessed and write a CSV whose columns are the channel names" → as_array(preprocess=True) mapped onto pnn_labels.
  3. De-identified re-export — "Write a copy without identifying metadata, then reopen it and verify event and channel counts match" → write_fcs(metadata={...}) followed by round-trip validation.

· · · Install guide · · ·

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on Claude Skill Mart.
Copy the skills/flowio folder from the GitHub repo K-Dense-AI/scientific-agent-skills into my ~/.claude/skills/flowio/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/K-Dense-AI/scientific-agent-skills.git && cp -r scientific-agent-skills/skills/flowio ~/.claude/skills/flowio

This is a third-party skill. Check the source repository before installing.

  1. Open a terminal and make sure Claude Code is installed.
  2. Clone the skill repository: git clone https://github.com/K-Dense-AI/scientific-agent-skills.git
  3. Copy the skill into your Claude skills folder: mkdir -p ~/.claude/skills && cp -r scientific-agent-skills/skills/flowio ~/.claude/skills/flowio
  4. Install uv if you don't have it: curl -LsSf https://astral.sh/uv/install.sh | sh
  5. Install the pinned library: uv pip install "flowio==1.4.0" (requires Python 3.9–3.13)
  6. Verify the runtime: uv run python -c "import flowio; print(flowio.__version__)" should print 1.4.0.
  7. Restart Claude Code and ask something like "inspect the metadata of this FCS file" to trigger the skill.
  8. (Optional) Try the bundled inspector: uv run --no-project --with "flowio==1.4.0" python ~/.claude/skills/flowio/scripts/inspect_fcs.py sample.fcs --help