flowio — скилл для Claude Code: чтение и запись FCS-файлов
Разбирает и создаёт файлы проточной цитометрии FCS 2.0, 3.0 и 3.1: метаданные, каналы, события в NumPy. Пригодится, когда нужно заглянуть внутрь FCS или подготовить данные для pandas.
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a claude-codeЧто делает flowio
Скилл учит агента работать с FlowIO 1.4.0 — библиотекой для чтения и записи Flow Cytometry Standard. Через него можно вытащить HEADER, TEXT, ANALYSIS и метаданные каналов, получить события двумерным массивом NumPy, открыть старые файлы с несколькими наборами данных и собрать новый FCS 3.1.
Перед загрузкой событий скилл советует смотреть метаданные отдельно, через only_text=True — это заметно легче для больших и незнакомых файлов. При извлечении событий надо явно выбрать режим: as_array(preprocess=True) применяет усиление, логарифмическое и временное масштабирование из метаданных, preprocess=False отдаёт раскодированные значения без этих шагов. Ключи в flow.text хранятся в нижнем регистре и без ведущего $, поэтому искать нужно date, а не $DATE. Учтите: FlowIO 1.4.0 вырезает все символы $ из декодированного TEXT, включая те, что были внутри значений, — если важна точность метаданных, сохраняйте исходный файл.
Компенсацию, logicle-преобразования, гейтинг и работу с FlowJo скилл не делает — для этого нужен FlowKit. Нужны Python 3.9–3.13, uv и FlowIO 1.4.0; NumPy ставится вместе с библиотекой, pandas опционален. Разбор идёт локально, без ключей и сети. Запись create_fcs() требует уже открытого бинарного файлового дескриптора и одномерного массива событий в порядке строка-событие/канал, а обязательные ключи интерпретации FlowIO генерирует сам и переопределить их через метаданные нельзя.
Какие задачи решает
- посмотреть версию, число событий и каналов в FCS-файле
- вытащить метаданные TEXT без загрузки событий
- получить события двумерным массивом NumPy
- открыть legacy-файл с несколькими наборами данных
- записать новый FCS 3.1 в list-mode
Примеры запросов агенту
- Посмотри метаданные файла
sample.fcsчерезonly_text=Trueи покажи версию, число событий и метки каналов - Извлеки события из
sample.fcsсpreprocess=Trueи проверь, что форма массива совпадает с$TOTи$PAR - Открой
legacy-multi-dataset.fcsчерезread_multiple_data_setsи выведи число событий по каждому набору
Как установить flowio
1Через Skills CLI (Vercel)
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a claude-code2Вручную: положить файлы
~/.claude/skills/flowio/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/flowio/
1Через Skills CLI (Vercel)
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a codex2Вручную: положить файлы
.agents/skills/flowio/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a cursor2Вручную: положить файлы
.cursor/skills/flowio/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install K-Dense-AI/scientific-agent-skills flowio2Вручную: положить файлы
.github/skills/flowio/SKILL.md1Через Skills CLI (Vercel)
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a gemini-cli2Командой платформы
gemini skills install https://github.com/K-Dense-AI/scientific-agent-skills --path skills/flowioВручную: положить файлы
.devin/skills/flowio/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о flowio
Как установить flowio в Claude Code?
Выполните npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a claude-code. Скилл окажется в ~/.claude/skills/flowio/SKILL.md.
Что делает flowio?
Даёт агенту доступ к FlowIO 1.4.0: чтение FCS 2.0, 3.0 и 3.1, разбор метаданных и каналов, извлечение событий в NumPy, чтение файлов с несколькими наборами данных и запись FCS 3.1.
Чем flowio отличается от FlowKit?
FlowIO работает на низком уровне: метаданные, каналы, события, запись файлов. Компенсацию, logicle/biexponential-преобразования, гейтинг и FlowJo-воркспейсы он не выполняет — для этого нужен FlowKit.