# flowio

Разбирает и создаёт файлы проточной цитометрии FCS 2.0, 3.0 и 3.1: метаданные, каналы, события в NumPy. Пригодится, когда нужно заглянуть внутрь FCS или подготовить данные для pandas.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1900 установок · ★ 54652
- Автор: K-Dense-AI
- Лицензия: LicenseRef-BSD-3-Clause-license · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/K-Dense-AI/scientific-agent-skills/tree/HEAD/skills/flowio/SKILL.md
- Обновлён: 2026-10-19
- HTML: https://affpapa.org/nevibecode/skills/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 генерирует сам и переопределить их через метаданные нельзя.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/flowio/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/flowio/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/flowio/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/flowio/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install K-Dense-AI/scientific-agent-skills flowio
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/flowio/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/K-Dense-AI/scientific-agent-skills --path skills/flowio
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/flowio/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add K-Dense-AI/scientific-agent-skills --skill flowio -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/K-Dense-AI/scientific-agent-skills/tree/HEAD/skills/flowio/SKILL.md

## Когда брать
- посмотреть версию, число событий и каналов в 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` и выведи число событий по каждому набору

## Похожие
- [anysearch](https://affpapa.org/nevibecode/skills/anysearch.md) — скилл · 38500 установок
- [academic-paper](https://affpapa.org/nevibecode/skills/academic-paper.md) — скилл · 10800 установок
- [nature-figure](https://affpapa.org/nevibecode/skills/nature-figure.md) — скилл · 18800 установок
- [academic-paper-reviewer](https://affpapa.org/nevibecode/skills/academic-paper-reviewer.md) — скилл · 9800 установок
- [nature-polishing](https://affpapa.org/nevibecode/skills/nature-polishing.md) — скилл · 17500 установок
- [nature-citation](https://affpapa.org/nevibecode/skills/nature-citation.md) — скилл · 15600 установок

Из того же набора: [k-dense-ai/scientific-agent-skills](https://affpapa.org/nevibecode/by/k-dense-ai/scientific-agent-skills.md) — 159 карточек

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
