# permiso-accessibility-permissions

Скилл для агентов, который подсказывает, как встроить в macOS-приложение панель с просьбой выдать доступ к универсальному доступу.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 386 установок · ★ 88
- Автор: reason-machines
- Лицензия: не указана · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/reason-machines/trending-skills/tree/HEAD/skills/permiso-accessibility-permissions/SKILL.md
- Обновлён: 2026-10-09
- HTML: https://affpapa.org/nevibecode/skills/permiso-accessibility-permissions

## Что делает

Permiso — это Swift-библиотека, которая показывает пользователю анимированную панель и ведёт его в «Системные настройки», чтобы включить нужное разрешение. Скилл описывает, как подключить её к проекту и вызывать из кода.

Внутри — примеры на Swift: вызов `PermisoAssistant.shared.present(panel: .accessibility)`, проверка `AXIsProcessTrusted()`, опрос состояния разрешения по таймеру и вставка кнопки в SwiftUI-экран настроек. Есть разбор частых сбоев: панель не появляется, если вызвать не из главного потока, а `AXIsProcessTrusted()` может возвращать false, пока приложение не перезапустят.

Нужен Swift 5.9+ и macOS. Для работы с API универсального доступа приложение не должно быть в песочнице либо требует отдельных entitlements. Вызов `present(panel:)` обязан идти из `@MainActor`, иначе панель просто не отрисуется.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add reason-machines/trending-skills --skill permiso-accessibility-permissions -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add reason-machines/trending-skills --skill permiso-accessibility-permissions -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add reason-machines/trending-skills --skill permiso-accessibility-permissions -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install reason-machines/trending-skills permiso-accessibility-permissions
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add reason-machines/trending-skills --skill permiso-accessibility-permissions -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/reason-machines/trending-skills --path skills/permiso-accessibility-permissions
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add reason-machines/trending-skills --skill permiso-accessibility-permissions -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/reason-machines/trending-skills/tree/HEAD/skills/permiso-accessibility-permissions/SKILL.md

## Когда брать
- показать пользователю, куда идти за разрешением универсального доступа
- встроить в приложение панель в стиле Codex Computer Use
- проверить `AXIsProcessTrusted()` перед действием, зависящим от доступа
- дождаться выдачи разрешения без перезапуска приложения
- добавить в SwiftUI-настройки кнопку запроса доступа

## Примеры запросов агенту
- покажи, как вызвать `PermisoAssistant.shared.present(panel: .accessibility)` при запуске приложения
- добавь в мой SwiftUI-экран настроек кнопку запроса универсального доступа через Permiso
- сделай опрос `AXIsProcessTrusted()` по таймеру, чтобы поймать момент выдачи разрешения

## Похожие
- [accessibility](https://affpapa.org/nevibecode/skills/affaan-m-accessibility.md) — скилл · 5100 установок
- [clerk-swift](https://affpapa.org/nevibecode/skills/clerk-swift.md) — скилл · 14500 установок
- [swiftui-patterns](https://affpapa.org/nevibecode/skills/affaan-m-swiftui-patterns.md) — скилл · 4600 установок
- [swiftui-whats-new-27](https://affpapa.org/nevibecode/skills/swiftui-whats-new-27.md) — скилл · 737 установок
- [axiom-accessibility](https://affpapa.org/nevibecode/skills/axiom-accessibility.md) — скилл · 1200 установок
- [ios-accessibility](https://affpapa.org/nevibecode/skills/dadederk-ios-accessibility.md) — скилл · 911 установок

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

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