# axum

Скилл с готовыми паттернами Axum: типизированные обработчики, Tower-мидлварь, ошибки, трейсинг и корректное завершение сервера.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 485 установок · ★ 78
- Автор: Claude MPM Team
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/bobmatnyc/claude-mpm-skills/tree/HEAD/toolchains/rust/frameworks/axum/SKILL.md
- Обновлён: 2026-07-18
- HTML: https://affpapa.org/nevibecode/skills/axum

## Что делает

Скилл собирает рабочие примеры для HTTP-сервисов на Rust: роутеры и вложенные маршруты, экстракторы `Path`, `Query`, `Json`, `State`, общее состояние через `Arc<AppState>`. Отдельный блок — превращение доменной ошибки в HTTP-ответ через `IntoResponse`.

Мидлварь описывается слоями `tower-http`: трейсинг, таймауты, CORS. Есть паттерн graceful shutdown по SIGINT и SIGTERM, чтобы запросы в обработке успевали завершиться. Тестирование роутера идёт через `ServiceExt`.

В примерах фигурируют `axum` 0.7, `tower-http` 0.5 и `tokio` с фичей `full`, так что версии стоит сверить со своим `Cargo.toml` до того, как копировать код. Если крейт публикуется и как библиотека, скилл советует вынести HTTP-стек в необязательную фичу — иначе потребители библиотеки потянут веб-зависимости.

## Установка

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

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

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add bobmatnyc/claude-mpm-skills --skill axum -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add bobmatnyc/claude-mpm-skills --skill axum -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install bobmatnyc/claude-mpm-skills axum
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add bobmatnyc/claude-mpm-skills --skill axum -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/bobmatnyc/claude-mpm-skills --path toolchains/rust/frameworks/axum
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add bobmatnyc/claude-mpm-skills --skill axum -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/bobmatnyc/claude-mpm-skills/tree/HEAD/toolchains/rust/frameworks/axum/SKILL.md

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

## Примеры запросов агенту
- Собери роутер на axum с вложенным `/api/v1` и типизированными обработчиками
- Добавь в сервис `AppError` с `IntoResponse` и маппингом на статусы
- Настрой graceful shutdown по SIGTERM для axum-сервера

## Похожие
- [mcp-builder](https://affpapa.org/nevibecode/skills/mcp-builder.md) — скилл · 130949 установок
- [claude-api](https://affpapa.org/nevibecode/skills/claude-api.md) — скилл · 74198 установок
- [lark-im](https://affpapa.org/nevibecode/skills/lark-im.md) — скилл · 472900 установок
- [lark-event](https://affpapa.org/nevibecode/skills/lark-event.md) — скилл · 466800 установок
- [caveman-discover](https://affpapa.org/nevibecode/skills/caveman-discover.md) — скилл · 104400 установок
- [migration](https://affpapa.org/nevibecode/skills/migration.md) — скилл · 103900 установок

Из того же набора: [bobmatnyc/claude-mpm-skills](https://affpapa.org/nevibecode/by/bobmatnyc/claude-mpm-skills.md) — 73 карточки

_Часть страницы не вошла по размеру — она есть в HTML-версии._

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