# sas-packages

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

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 750 установок · ★ 3
- Автор: sasjs
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/sasjs/skills/tree/HEAD/sas-packages/SKILL.md
- Обновлён: 2026-10-21
- HTML: https://affpapa.org/nevibecode/skills/sas-packages

## Что делает

Пакет SAS — это один zip с набором макросов, функций и data step'ов плюс сгенерированные файлы описания, загрузки, выгрузки и справки. Фреймворк SPF (SAS Packages Framework) ставит такие пакеты из папки с архивами, поэтому версию можно зафиксировать и менять пакет, не трогая `SASAUTOS` и каталог макросов. Скилл описывает работу с фреймворком со стороны потребителя: он не привязан к SASjs, пакеты могут быть от любого автора.

Внутри — правила по fileref `packages` и разбор четырёх макросов: `%installPackage`, `%helpPackage`, `%loadPackage`, `%unloadPackage`. Имя fileref обязательно должно быть `packages`, указывать нужно на существующую папку, а не на zip. Для разовой сессии подойдёт `%sysfunc(pathname(work))`, для повторного использования — постоянный каталог. Версия пакета фиксируется в скобках: `%installPackage(baseplus(1.17))`.

Отдельный блок — ловушки. Код `rc=20006` означает провал установки, хотя строка выглядит как отчёт об успехе; настоящая причина обычно в том, что папки из fileref нет. На Linux пример `C:/SAS_PACKAGES` из документации превращается в относительный путь, и установка падает. Сетевой доступ нужен из самой сессии SAS, а не с рабочей машины. Скилл ничего не исполняет: примеры кода нужно самому отправлять в сессию SAS.

## Установка

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

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

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

### Codex

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

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

### Cursor

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

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install sasjs/skills sas-packages
```

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

### Gemini CLI

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

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

### Windsurf (Devin Desktop)

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

### OpenCode

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

### Claude.ai

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

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

## Когда брать
- поставить пакет вроде `sasjscore` в сессию SAS
- разобраться, почему `%installPackage` вернул `rc=20006`
- настроить папку пакетов и fileref `packages`
- подключить макросы на одну задачу, не трогая `SASAUTOS` сервера
- зафиксировать версию пакета при установке

## Примеры запросов агенту
- Помоги поставить пакет `sasjscore` через SPF и проверить, что макросы живые
- Установка упала с `rc=20006`, найди причину и почини
- Как загрузить макросы на одну сессию и потом выгрузить их обратно?

## Похожие
- [SAS Viya](https://affpapa.org/nevibecode/mcp/sas-viya.md) — MCP-сервер · ★ 66
- [link-workspace-packages](https://affpapa.org/nevibecode/skills/link-workspace-packages.md) — скилл · 3100 установок
- [freecad-scripts](https://affpapa.org/nevibecode/skills/freecad-scripts.md) — скилл · 1200 установок
- [go-packages](https://affpapa.org/nevibecode/skills/go-packages.md) — скилл · 1200 установок
- [bun-macros](https://affpapa.org/nevibecode/skills/bun-macros.md) — скилл · 385 установок
- [uv](https://affpapa.org/nevibecode/skills/uv.md) — скилл · 4900 установок

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

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

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