# genotoxic

Скилл разбирает выжившие мутанты и слабые тесты по графу вызовов: что писать юнит-тестами, что отдать фаззингу, а что отбросить.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 3800 установок · ★ 7805
- Автор: trailofbits
- Лицензия: CC-BY-SA-4.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/trailofbits/skills/tree/HEAD/plugins/trailmark/skills/genotoxic/SKILL.md
- Обновлён: 2026-10-24
- HTML: https://affpapa.org/nevibecode/skills/genotoxic

## Что делает

genotoxic строит граф кода через Trailmark, гоняет мутационное тестирование и necessist, а потом раскладывает находки по четырём категориям: подтверждённые обоими инструментами, ложные срабатывания, пропущенные юнит-тесты и цели для фаззинга. Работа идёт в три фазы: сначала `uv run trailmark analyze --language auto --summary {targetDir}` и обязательный `engine.preanalysis()`, затем прогон фреймворка мутаций, затем разбор с опорой на граф.

Перед запуском нужен установленный Trailmark: если `uv run trailmark` не работает, ставьте `uv tool install trailmark`. Ещё понадобится фреймворк мутационного тестирования под ваш язык и проходящий набор тестов. necessist необязателен, но полезен — он ищет лишние операторы в тестах, то есть слабые проверки. Ставится через `cargo install necessist` и поддерживает Go, Rust, Solidity/Foundry, TypeScript/Hardhat, TypeScript/Vitest и Rust/Anchor.

На macOS есть подводный камень: перед каждым вызовом `mull-runner` выполните `ulimit -n 1024`. Tahoe (26+) выставляет неограниченное число файловых дескрипторов, и Mull падает при запуске подпроцессов. Если тестов в проекте нет вообще, скилл не поможет — сначала придётся их написать.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add trailofbits/skills --skill genotoxic -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add trailofbits/skills --skill genotoxic -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add trailofbits/skills --skill genotoxic -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install trailofbits/skills genotoxic
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add trailofbits/skills --skill genotoxic -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/trailofbits/skills --path plugins/trailmark/skills/genotoxic
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add trailofbits/skills --skill genotoxic -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/trailofbits/skills/tree/HEAD/plugins/trailmark/skills/genotoxic/SKILL.md

## Когда брать
- разложить выжившие мутанты на ложные срабатывания и реальные пробелы в тестах
- найти функции, которым нужен фаззинг, а не юнит-тесты
- вычистить лишние операторы в тестах, которые создают видимость проверки
- расставить приоритеты доработки тестов по данным о потоках
- отделить мутанты в мёртвом коде и отправить код на удаление

## Примеры запросов агенту
- Прогони мутационное тестирование по `src/` и разбери выжившие мутанты через genotoxic
- Построй граф кода Trailmark и покажи, где юнит-тесты дадут наибольший эффект
- Запусти necessist и найди ненужные операторы в тестах

## Похожие
- [improve-codebase-architecture](https://affpapa.org/nevibecode/skills/improve-codebase-architecture.md) — скилл · 1163035 установок
- [design-taste-frontend](https://affpapa.org/nevibecode/skills/design-taste-frontend.md) — скилл · 678700 установок
- [tdd](https://affpapa.org/nevibecode/skills/tdd.md) — скилл · 1141062 установки
- [skill-creator](https://affpapa.org/nevibecode/skills/skill-creator.md) — скилл · 414180 установок
- [agent-browser](https://affpapa.org/nevibecode/skills/vercel-labs-agent-browser.md) — скилл · 1200000 установок
- [prototype](https://affpapa.org/nevibecode/skills/prototype.md) — скилл · 986201 установка

Из того же набора: [trailofbits/skills](https://affpapa.org/nevibecode/by/trailofbits/skills.md) — 77 карточек

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