Swift Concurrency Agent Skill

Скилл по конкурентности в Swift: безопасная работа с акторами и задачами, разбор гонок данных и миграция на Swift 6

Скилл

Низкий риск

Низкий уровень ставим, когда запись в основном дает агенту инструкции и справочные материалы.

Почему такой уровень

  • Скилл состоит из инструкций и справочников, код меняет агент под контролем пользователя
Все причины и проверки

avdlee/swift-concurrency-agent-skill

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/swift-concurrency-agent-skill

Определит агенты на машине, проверит риск и зафиксирует версию.

Другие способы установки

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a claude-code -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .claude/skills
cp -R "$tmp/skills/swift-concurrency" .claude/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a cursor -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .agents/skills
cp -R "$tmp/skills/swift-concurrency" .agents/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a github-copilot -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .github/skills
cp -R "$tmp/skills/swift-concurrency" .github/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a codex -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .agents/skills
cp -R "$tmp/skills/swift-concurrency" .agents/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a gemini-cli -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .agents/skills
cp -R "$tmp/skills/swift-concurrency" .agents/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .devin/skills
cp -R "$tmp/skills/swift-concurrency" .devin/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Бывший Windsurf.

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a cline -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .cline/skills
cp -R "$tmp/skills/swift-concurrency" .cline/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a roo -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .roo/skills
cp -R "$tmp/skills/swift-concurrency" .roo/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Форк Roo Code, папки .roo те же.

Выполните в терминале в папке проекта

npx skills add avdlee/swift-concurrency-agent-skill --skill swift-concurrency -a opencode -y

Утилита skills ставит текущую версию из репозитория. Чтобы скилл работал во всех проектах, добавьте флаг -g.

Без сторонних утилит, из коммита d577081
tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .agents/skills
cp -R "$tmp/skills/swift-concurrency" .agents/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .agents/skills
cp -R "$tmp/skills/swift-concurrency" .agents/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Выполните в терминале в папке проекта

tmp=$(mktemp -d)
git clone --filter=blob:none --no-checkout https://github.com/avdlee/swift-concurrency-agent-skill.git "$tmp"
git -C "$tmp" sparse-checkout set --no-cone /skills/swift-concurrency/
git -C "$tmp" checkout d5770817d2622e1585b1f7eaebc791a9cb0959c8
mkdir -p .agents/skills
cp -R "$tmp/skills/swift-concurrency" .agents/skills/swift-concurrency

Команды для macOS и Linux, на Windows выполните их в Git Bash.

Понадобится: Node.js

Сверено с репозиторием 25 сент. 2026, коммит d577081.

Текст для агента

Установи скилл командой npx skills@latest add https://github.com/avdlee/swift-concurrency-agent-skill --skill swift-concurrency. В Claude Code можно через /plugin marketplace add AvdLee/Swift-Concurrency-Agent-Skill и /plugin install swift-concurrency@swift-concurrency-agent-skill.

Другие способы из описания автора
npx skills@latest add https://github.com/avdlee/swift-concurrency-agent-skill --skill swift-concurrency

Рекомендуемый способ через менеджер skills.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Скилл дает кодовому агенту экспертные правила по конкурентности в Swift в открытом формате Agent Skills. Он ведет агента по короткому алгоритму: сначала определить языковой режим, уровень строгой конкурентности и границы изоляции по настройкам проекта, затем предложить наименьшее безопасное изменение. Материал разбит на справочники по акторам, задачам, Sendable, async последовательностям, управлению памятью, тестированию, работе с Core Data и миграции. Скилл помогает разбирать ошибки изоляции и гонки данных, переписывать код на async и await и включать строгие проверки постепенно. Отдельно заданы предостережения: не назначать MainActor как универсальное лечение и не рефакторить лишнее при миграции.

Для кого. Для разработчиков на Swift, которые переходят на строгую конкурентность и Swift 6 или разбирают гонки данных.

Подходит, если

  • Компилятор ругается на изоляцию актора или Sendable
  • Нужно перевести проект на строгую конкурентность или Swift 6
  • Нужно переписать код с замыканиями на async и await без гонок

Не подходит, если

  • Задача не связана со Swift и его конкурентностью
  • Нужен инструмент, который меняет код сам, а не справочник и правила для агента

Пример запроса к агенту

Используй скилл swift-concurrency и разбери ошибку изоляции актора в этом файле, предложи минимальную безопасную правку

Ограничения

Скилл дает правила и справочники, код меняет сам агент под вашим контролем. Часть ссылок ведет на платный курс автора и нужна только для углубленного изучения, сам скилл распространяется по лицензии MIT. По границам изоляции и настройкам проекта скилл просит подтверждения, а не угадывает.

Как отключить. Удалите скилл командой менеджера, которым ставили, например npx skills@latest, или уберите папку skills/swift-concurrency из каталога скиллов. При установке плагином удалите его через /plugin.

Проверка безопасности

  • Скилл состоит из инструкций и справочников, код меняет агент под контролем пользователя

Коротко о README

README представляет скилл экспертных рекомендаций по конкурентности в Swift для любого агента, поддерживающего открытый формат Agent Skills. Репозиторий упакован как переносимый Agent Plugin с манифестами для Claude Code, Cursor, Codex и pi, а установка описана через skills.sh, каталог плагинов OpenAI, плагин Claude Code, Cursor, Gemini CLI и вручную. Скилл охватывает выбор инструментов конкурентности, безопасный код без гонок, оптимизацию, миграцию на Swift 6, тестирование и работу с Core Data. Материал основан на курсе автора по конкурентности в Swift и сведен в краткие справочники. Лицензия MIT.

SKILL.md

---
name: swift-concurrency
description: Diagnose Swift Concurrency issues, refactor callback-based code to async/await, and guide Swift 6 migration when working with tasks, actors, @MainActor, Sendable, data races, thread safety, or concurrency-related compiler and linter warnings.
---
# Swift Concurrency

## Fast Path

Before proposing a fix:

1. Analyze `Package.swift` or `.pbxproj` to determine Swift language mode, strict concurrency level, default isolation, and upcoming features. Do this always, not only for migration work.
2. Capture the exact diagnostic and offending symbol.
3. Determine the isolation boundary: `@MainActor`, custom actor, actor instance isolation, or `nonisolated`.
4. Confirm whether the code is UI-bound or intended to run off the main actor.

Guardrails:

- Do not recommend `@MainActor` as a blanket fix. Justify why the code is truly UI-bound.
- Prefer structured concurrency over unstructured tasks. Use `Task.detached` only with a clear reason.
- If recommending `@preconcurrency`, `@unchecked Sendable`, or `nonisolated(unsafe)`, require a documented safety invariant and a follow-up removal plan.
- Optimize for the smallest safe change. Do not refactor unrelated architecture during migration.

Частые вопросы

С какими агентами работает скилл?

С любыми, кто поддерживает открытый формат Agent Skills. В репозитории есть манифесты для Claude Code, Cursor, Codex и pi, установка возможна через skills.sh, Gemini CLI и вручную.

Скилл платный?

Нет, сам скилл под лицензией MIT. Платный только курс автора, ссылки на который приведены для углубленного изучения.

Выбор редакции

Набор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода

ПлагинСредний рискБез VPN292,5 тыс.Звезды репозитория
Выбор редакции

Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура

СкиллНизкий риск271,4 тыс.Звезды репозитория
Выбор редакции

Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации

CLIСредний рискБез VPN139,3 тыс.Звезды репозитория

Референсные MCP-серверы

Model Context Protocol servers

Официальный

Официальные референсные MCP-серверы: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time и Everything

MCP-серверСредний риск90,6 тыс.Звезды репозитория
Foxx AISwift Concurrency Agent Skill

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.