К основному содержанию
скилл GitHub Copilot официальный · GitHub

gh-attach — скилл для GitHub Copilot: вложения в GitHub

Загружает локальные файлы во вложения GitHub, вставляет их в PR, задачи и комментарии, а также скачивает уже прикреплённые файлы.

Установить в GitHub Copilot · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add github/awesome-copilot --skill gh-attach
Открыть на GitHub

Что делает gh-attach

Скилл работает через расширение gh-attach: загружает скриншоты, изображения, PDF, архивы и видео во внутреннее хранилище GitHub. После загрузки он получает URL, который GitHub отображает как вложение при вставке в PR, задачу или комментарий.

Для загрузки нужен абсолютный путь к файлу в кавычках. В репозитории параметр -R необязателен, а для GHES указывают адрес сервера вместе с владельцем и репозиторием. Для комментариев с вложением используется --body-file -; скачивание сохраняет файл по явно заданному пути.

Загрузка использует cookie браузерной сессии, а не токен gh. Переменная GH_ATTACH_SESSION_TOKEN содержит учётные данные полного доступа к аккаунту, поэтому её нельзя считать обычным ключом для командной строки. Вложения из приватного репозитория видят только авторизованные пользователи.

Какие задачи решает

  • прикрепить скриншот к PR
  • добавить изображение в задачу GitHub
  • вставить снимки до и после в комментарий
  • загрузить PDF или архив во вложения GitHub
  • скачать файл из вложения GitHub

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

  • Прикрепи скриншот к этому PR.
  • Добавь изображение в комментарий к задаче GitHub.
  • Скачай это вложение GitHub в указанный файл.

Как установить gh-attach

1Через Skills CLI (Vercel)

npx skills add github/awesome-copilot --skill gh-attach

2GitHub CLI

gh skill install github/awesome-copilot gh-attach

3Вручную: положить файлы

.github/skills/gh-attach/SKILL.md

Из того же набора554

Весь набор →
git-commit официальный github Скилл разбирает изменения Git, выбирает связанные файлы и создаёт коммит в формате Conventional Commits. Пригодится, когда нужно закоммитить одну или несколько логических частей изменений. GitHub Copilot 47 165установок excalidraw-diagram-generator официальный github Скилл превращает описание на обычном языке в диаграмму Excalidraw. Подойдёт, когда нужно показать процесс, связи между объектами или устройство системы. GitHub Copilot 31 639установок multi-stage-dockerfile официальный github Скилл помогает создавать многоэтапные Dockerfile для разных языков и фреймворков. Пригодится, когда важны размер и состав runtime-образа. GitHub Copilot 29 688установок documentation-writer официальный github Скилл для создания технической документации по фреймворку Diátaxis: туториалы, гайды, справки и объяснения. Предлагает структуру перед написанием. GitHub Copilot 27 757установок prd официальный github Собирает из идеи структурированный PRD с пользовательскими историями, техническими требованиями и рисками. Подходит для планирования новых функций, в том числе с AI. GitHub Copilot 24 035установок refactor официальный github Скилл помогает менять структуру кода без изменения внешнего поведения. Подойдёт для постепенной уборки сложных функций, дублирования и кодовых запахов. GitHub Copilot 22 321установок java-springboot официальный github Задаёт практики разработки Spring Boot-приложений: от структуры проекта до тестов и безопасности. Пригодится, когда Copilot пишет или проверяет Java-код. GitHub Copilot 21 272установок create-readme официальный github Скилл изучает проект и создаёт структурированный README.md. Подойдёт, когда документацию нужно собрать по коду и файлам проекта. GitHub Copilot 19 081установок

Похожие

triage Matt Pocock Скилл проводит issue и внешние PR через роли триажа, проверку и подготовку брифа для агента. Подойдёт мейнтейнеру, который разбирает очередь задач. Claude Code 990 453установок code-review Matt Pocock Проверяет изменения от выбранной точки по стандартам репозитория и требованиям задачи. Нужен для ревью ветки, PR или незавершённой работы. Claude Code 789 521установок implement Matt Pocock Выполняет задачу по спецификации или тикетам, ведёт работу через тесты и завершает её ревью с коммитом. Подходит для задач, где нужен дисциплинированный цикл разработки. Claude Code 774 700установок git-guardrails-claude-code Matt Pocock Скилл ставит хук Claude Code, который останавливает опасные Git-команды до их запуска. Нужен, если агент не должен делать push или удалять изменения. Claude Code 499 069установок setup-pre-commit Matt Pocock Скилл настраивает pre-commit для JavaScript-репозитория: Husky запускает форматирование, проверку типов и тесты перед коммитом. Claude Code 489 289установок scaffold-exercises Matt Pocock Скилл создаёт структуру учебных упражнений с секциями, задачами, решениями и пояснениями. Пригодится при запуске нового раздела курса. Claude Code 480 196установок

Вопросы о gh-attach

Как установить gh-attach в GitHub Copilot?

Выполните npx skills add github/awesome-copilot --skill gh-attach, затем gh skill install github/awesome-copilot gh-attach. Файл скилла будет доступен по пути .github/skills/gh-attach/SKILL.md.

Что делает gh-attach?

Скилл загружает локальные файлы в GitHub user-attachments, возвращает URL и помогает вставить его в PR, задачи и комментарии. Он также скачивает вложения GitHub.

Какая авторизация нужна для загрузки?

gh-attach использует cookie браузерной сессии. Для работы без браузера задайте GH_ATTACH_SESSION_TOKEN со значением cookie user_session.

Исходный текст

SKILL.md · MIT
---
name: gh-attach
description: 'Uploads a local file (screenshot, image, PDF, zip, video) to GitHub user-attachments, downloads GitHub user-attachments, and embeds local files in a PR, issue, or comment. Use when asked to "attach a screenshot to the PR", "add an image to the issue", "embed before/after screenshots", "attach this file", or "download this GitHub attachment". Powered by `gh-attach`.'
---

# gh-attach

`gh attach` uploads a file to GitHub's internal user-attachments endpoint (no public API exists) and prints the URL, which GitHub auto-renders (image/video/file) wherever it's pasted. The URL inherits the repo's visibility, so private-repo uploads stay private.

## Prerequisites

```sh
gh extension list | grep -q 'gh attach' || gh extension install sudosubin/gh-attach
```

Uploads use a GitHub browser session cookie, not the `gh` token. By default, `gh` must be authenticated so `gh-attach` can select the matching browser account. If the wrong account is selected, add `--browser <name> --profile <name>`. For headless use, set `GH_ATTACH_SESSION_TOKEN` to the bare `user_session` cookie value. Treat it as a full account credential.

## Steps

**1. Upload**: Use an absolute quoted path. `-R` is optional inside a repository. For GHES, use `-R host/owner/repo`. The command prints the URL on one line. GitHub auto-renders it (image/video/file), so use it as-is:

```sh
URL=$(gh attach "$FILE" -R <owner>/<repo>)
```

**2. Embed** (always `--body-file -`, e.g. `gh pr comment/edit`, `gh issue comment/edit`):

```sh
printf '## Screenshots\n\n%s\n' "$URL" | gh pr comment <pr> -R <owner>/<repo> --body-file -
```

**3. Download**: Specify the destination explicitly. Private attachments use the active `gh` token, with browser cookies as an authorization fallback:

```sh
gh attach download "$URL" -O "$FILE"
```

## Notes

- Private repo: URL renders only for authorized viewers. An anonymous fetch is expected to return 404 or 403.
- Sizing: embed `<img width="800" src="$URL">` instead of the bare URL.
- GitHub Cloud and GHES decide which file extensions and content types they accept.

© github · MIT · github/awesome-copilot

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой