yandex-office

Набор скиллов для Яндекс 360: Почта, Календарь, Контакты, Директория, Телемост, Диск, Формы и Трекер

СкиллВысокий рискРоссийский стек

bizyumov/yandex-office

Установка

git clone https://github.com/bizyumov/yandex-office.git

Полная установка всех подскиллов.

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

Что делает

Восемь подскиллов с Python-скриптами дают агенту доступ к офисным сервисам Яндекса. Почта забирает и отправляет письма через IMAP и SMTP с XOAUTH2, Календарь и Контакты работают через CalDAV и CardDAV, Директория через API Яндекс 360. Диск умеет листинг, загрузку, скачивание, импорт по URL и публичные ссылки, Телемост обрабатывает письма с транскриптами встреч, Формы выгружают ответы, Трекер ведет задачи и доски. Авторизация идет по OAuth с выбором минимально нужного приложения и хранением токенов вне репозитория.

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

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

  • Нужно разобрать транскрипт утренней встречи из Телемоста и завести задачи
  • Нужно назначить встречу в Календаре со ссылкой на Телемост и пригласить коллег из Директории
  • Нужно выложить документ на Диск и получить публичную ссылку
  • Нужно выгрузить ответы Яндекс Форм

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

  • Нужен поиск Яндекса или инфраструктура Yandex Cloud: они вынесены в отдельные репозитории
  • Нет возможности выдать OAuth-доступ к аккаунту Яндекса

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

Забери из почты транскрипт сегодняшнего дейли в Телемосте и составь список задач

Ограничения

Нужны Python 3.10+, зависимости подскиллов и OAuth-токены под каждый сервис. Приложение office-core покрывает Почту, Диск, Календарь и Телемост, для Контактов, Трекера, Форм и Директории нужны отдельные приложения. Прямая загрузка больших файлов на Диск медленная, для них есть опциональный мост через S3 с boto3.

Как отключить. Удалите каталог yandex-office из папки скиллов. Токены удаляются командой oauth_setup.py --accounts delete --account <alias>, их также можно отозвать в настройках Яндекс ID.

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

  • Получает OAuth-доступ к почте, диску, календарю и задачам аккаунта
  • Может отправлять письма и публиковать файлы
  • Запускает Python-скрипты с сетевыми вызовами к API Яндекса

Коротко о README

yandex-office оформлен по спецификации agentskills.io и использует датированные версии. README описывает подскиллы, общую двухуровневую конфигурацию, фильтры почты, маршрутизацию OAuth через экранный код и структуру каталога данных. Последний релиз расширил работу с Диском: приватные пути, публичные папки, импорт по URL и загрузку больших файлов через S3. Поиск Яндекса и Yandex Cloud вынесены в отдельные репозитории. Есть регрессионный набор тестов.

SKILL.md

---
name: yandex-office
description: Shared Yandex skill pack for Mail, Disk, Telemost, Calendar, Contacts, Directory, Forms, and Tracker. Yandex Search and Yandex Cloud live in separate standalone skill repos.
homepage: https://github.com/bizyumov/yandex-office
license: MIT
compatibility: Python 3.10+, per-skill dependencies, network access for Yandex APIs
metadata:
  author: bizyumov
  version: "2026.08.31"
---

# yandex-office

## Command shorthand

Set once in the shell before running the examples in this document:

```bash
YO="python3 <full-path-to-yandex-office>"
```

Replace the placeholder with the absolute skill path. Commands below reuse `$YO`;
they do not change the working directory or runtime data-directory resolution.

## Account-First Workflow

Run first:
`$YO/scripts/oauth_setup.py --accounts list`

If aliases print, choose only an exact listed alias. If no alias is suitable,
pause the business task and set up or import the account through `yandex-office`
under user authorization.

Then choose the sub-skill:
- Mail: `mail/mail.md`
- Calendar: `calendars/calendar.md`
- Telemost: `telemost/telemost.md`
- Disk: `disk/disk.md`
- Contacts: `contacts/contacts.md`
- Directory: `directory/directory.md`
- Forms: `forms/forms.md`
- Tracker: `tracker/tracker.md`

## OAuth App Selector

Use the default/read app unless the user requests a write-capable operation or
explicitly approves broader access.

- Mail read/fetch: default `mail-readonly`; IMAP mutation/delete: `mail-readwrite`; SMTP send: `mail-smtp`.
- Disk read/download: default `disk-read`; app-folder-only: `disk-app`; write-capable `disk-full`.
- Tracker read/search: default `tracker-read`; write-capable `tracker-full`.

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

Можно установить только один сервис?

Да, через sparse checkout: git sparse-checkout set mail и затем git sparse-checkout add для других подскиллов.

Где хранятся токены?

В ~/secrets/yandex-office. Рабочие данные лежат в ./yandex-data текущего каталога или по пути из --data-dir.

Скиллы для работы агента с Obsidian: Markdown с викиссылками, Bases, JSON Canvas, Obsidian CLI, Defuddle и Knap

СкиллСредний риск48,3 тыс.

Поиск туров, отелей, авиабилетов, поездов и экскурсий через Aviasales, Travelata, Level.Travel, Tutu.ru, Tripster и Sputnik8

СкиллСредний рискРоссийский стек16

Удаленный MCP-сервер для поиска дешевых авиабилетов туда и обратно в гибком диапазоне дат, без ключа и регистрации

MCP-серверСредний риск3

Неофициальный Python-клиент и скилл для личного кабинета СберМобайл: тариф, остатки пакетов, услуги и бонусы

СкиллСредний рискРоссийский стек1