Skip to main content
Glama
  • Полка для работ агентов. Страница, прототип, дашборд или целая папка проекта — агент сохраняет её одной фразой. Работа открывается по ссылке без аккаунта и работает в песочнице; каждая правка — новая неизменяемая версия; другой чат или агент находит работу по словам из текста и продолжает.

  • Память сессий. На своей установке сессии Claude Code и Codex уходят на Полку: что делал агент, какие команды запускал, к какому пулл-реквесту пришёл. Секреты скрываются ещё на машине (AGENT_SESSIONS).

  • Для компаний. Своя установка на одной VM, полки отделов с ролями, вход через IdP. Коммерческая редакция добавляет центр управления агентами для службы ИБ: секреты, адреса и MCP-серверы, опасные команды, расход (COMMERCIAL.md).

Быстрый старт

Работу на Полку сохраняет ваш агент. Подключите его один раз — дальше просто скажите в чате «Сохрани это на Полку», и в ответе будет ссылка.

Claude (claude.ai и Claude Desktop): Settings → Connectors → Add custom connector, адрес

https://polochka.app/mcp

→ Add → Connect → «Разрешить» в Полке.

Claude Code — плагин: MCP-сервер и скиллы Полки одной командой.

claude plugin marketplace add artkruglov/polka-plugin && claude plugin install polka@polka

Затем в Claude Code: /mcp → plugin:polka:polka → Authenticate.

Codex — тот же плагин для Codex.

codex plugin marketplace add artkruglov/polka-plugin && codex plugin add polka@polka
codex mcp login polka

Другой MCP-клиент (Cursor, Gemini CLI, Windsurf…): удалённый сервер https://polochka.app/mcp (Streamable HTTP, вход OAuth) и скилл npx skills add artkruglov/polka-plugin.

Везде откроется Полка: войдите в свою полку (или «Начать без регистрации») и нажмите «Разрешить» — токены и пароли через агента не проходят. Или просто скажите агенту в терминале: Подключи Полку: https://polochka.app/connect. Файл с компьютера можно загрузить и без агента. Подробно — подключение агентов.

Related MCP server: vnsh-mcp

Что умеет

Как это выглядит

Как это работает

flowchart LR
  A["Агент<br/>Claude.ai · ChatGPT<br/>Claude Code · Codex"] -- "MCP /mcp<br/>(OAuth 2.1 или токен)" --> P
  S["Скрипт, CI"] -- "POST /api/v1/publish" --> P
  U["Вы в браузере"] -- "загрузка, «Вставить код»" --> P
  P["Полка · polochka.app<br/>версии, ссылки, шаблоны"] --> DB[("PostgreSQL")]
  P --> S3[("Versioned S3")]
  P -- "ссылка /s#…" --> R["Получатель"]
  R -. "iframe, песочница без сети" .-> V["Просмотр · polochka.page"]

Агент передаёт код работы сам — Полка ничего не забирает из чата. Каждое сохранение становится неизменяемой версией; ссылка привязана к версии. Чужой HTML считается враждебным: интерактивная страница открывается на отдельном домене, без cookies, API Полки и сети. Подробно: архитектура, модель угроз.

Пять способов сохранить работу

Откуда

Как

Подробно

Claude (claude.ai, Claude Desktop), ChatGPT (проверка идёт)

Коннектор https://polochka.app/mcp со входом через OAuth 2.1. Модель вызывает polka_publish и возвращает ссылку

Коннектор

Claude Code, Codex

Плагин Полки одной командой: MCP-сервер и скиллы. Вход и «Разрешить» в браузере — без токена

Подключение агентов

Другие MCP-клиенты

Токен со страницы «Агенты», Streamable HTTP на /mcp

Подключение агентов

Скрипты, CI, внутренние агенты

POST /api/v1/publish или CLI scripts/polka-publish.mjs без зависимостей

HTTP API

Вручную

Загрузка файла (HTML, текст, PNG/JPEG/WebP до 5 МБ) или «Вставить код» на странице «Сохранить»

FAQ

С Claude.ai сохранение и ссылка проверены вручную, с ChatGPT — ещё нет (состояние). Сохранения по ссылке на артефакт Claude или ChatGPT нет: сервер не может забрать его сам (FAQ), поэтому работу передаёт агент.

Для разработчиков агентов: плагин Claude Code и Codex (.claude-plugin/, .codex-plugin/, .mcp.json, skills/) лежит здесь, а ставится из лёгкой копии artkruglov/polka-plugin, её собирает scripts/plugin-repo.mjs, скилл отдельно — npx skills add artkruglov/polka-plugin, справка для агентов — /llms.txt, HTTP API — /openapi.json.

Быстрый запуск

Нужны Node.js ≥ 22.16, npm и запущенный Docker.

git clone https://github.com/artkruglov/polka.git && cd polka
npm ci
npm run local:setup              # .env с уникальными секретами и локальным интерактивным просмотром (HTML_LIVE_MODE=local)
npm run infra:up                 # PostgreSQL 16 + MinIO, только 127.0.0.1; первый раз MinIO собирается из исходников, ~10 минут
npm run db:migrate
npm run storage:bootstrap-local  # versioned bucket и проверка его возможностей
npm run admin -- account create demo --generate   # логин и пароль в .local/demo-account.txt
npm run build
npm run dev                      # http://127.0.0.1:4390

local:setup в конце печатает эту же последовательность. Если порты по умолчанию заняты (или это второй клон), задайте свои при создании .env: POLKA_LOCAL_PROJECT=polka-two POLKA_LOCAL_PG_PORT=55432 POLKA_LOCAL_S3_PORT=9138 PORT=4490 VIEWER_PORT=4491 npm run local:setup.

WARNING

Еслиdb:migrate падает с ошибкой аутентификации, остались volumes от прошлой установки со старым паролем. Сброс с удалением локальных данных: docker compose --env-file=.env -f deploy/compose.local.yml down -v, затем снова с npm run infra:up (подробнее).

Интерактивный просмотр, вход по коду и отдельные наборы тестов описаны в docs/local-development.md.

npm run check          # слои frontend + TypeScript
npm run build
npm test               # временные БД и bucket, после прогона удаляются
npm test -- --live     # наборы с включённым локальным viewer
npm run verify         # всё перед push; то же проверяет GitHub Actions на каждый pull request

Своя установка

Пошагово для компании — Полка в компании: запуск за один день: какой вариант выбрать, что подготовить, установка одной командой, первый администратор, настройки и подключение сотрудников.

Поставка состоит из одного Docker-образа и внешних PostgreSQL и versioned S3. Образ собирается из исходников (docker build), опубликованного образа пока нет. Интерактивный viewer должен работать на отдельном registrable domain. Рекомендуемый путь — deploy/hosted/README.md (одна VM с Caddy, как на polochka.app; там же обновление и откат). deploy/BASE.md, deploy/RESTORE.md и deploy/VIEWER_STAGING.md — черновики для опытных операторов. Как устроена система: docs/architecture.md.

Для компаний

Облако polochka.app

Своя установка (открытое ядро)

Коммерческая редакция (не в этом репозитории)

Цена

Бесплатно на время пилота

Бесплатно по AGPL-3.0

По договору

Где данные

Yandex Cloud, Россия

На ваших серверах

На ваших серверах

Что есть

Открытое ядро: полки отделов с ролями (администратора компании назначаем по письму на hello@polochka.app), сервисные доступы для cron и CI, вебхуки

Всё открытое ядро: полки отделов, роли, агенты по полкам, администратор компании, вход через IdP по OpenID Connect, вебхуки

Ядро и закрытое расширение для организаций: центр управления агентами (сессии сотрудников, секреты, адреса и MCP, опасные команды, расход), ссылки только для сотрудников, политика ссылок, агент только к папке, журнал агентов с выгрузкой в SIEM, комментарии в Jira и Битрикс24, выгрузка принятых версий, вход через SAML и каталог сотрудников по SCIM; дальше — установка без интернета

Свои изменения кода

—

Даёте пользоваться изменённой Полкой — публикуете их по AGPL-3.0

Можно не публиковать

Поддержка и SLA

—

—

По договору

Подробнее — на странице «Для компаний» и в COMMERCIAL.md: открытое ядро, коммерческая редакция и коммерческая лицензия на ядро. Вход через OpenID Connect (IdP компании), Яндекс ID, VK ID и Google и доступ к библиотеке шаблонов по домену почты уже есть в ядре. SAML и SCIM — в коммерческой редакции (с 0.9.0); командных аккаунтов пока нет (дорожная карта).

Ограничения

  • Страница до 5 МБ, без сети. Всё нужное должно быть внутри одного HTML или пакета: стили, картинки и шрифты в data:. Внешние скрипты, fetch и формы у получателя не работают.

  • Интерактивный режим требует отдельного домена для viewer. Без него (HTML_LIVE_MODE=disabled) получатель видит статичную страницу без скриптов.

  • Ссылки Claude/ChatGPT не импортируются. Нужно сохранить работу через коннектор, скачать файл или вставить код.

  • Скачанные копии нельзя отозвать. Отзыв закрывает ссылку, но не удаляет то, что получатель уже скачал.

  • Вход — по коду из письма (нужен SMTP), по паролю от оператора, через Яндекс ID, VK ID, Google или IdP компании по OpenID Connect (SIGN_IN_PROVIDERS). Регистрацию можно открыть, ограничить списком адресов, почтовыми доменами или суточным потолком. SAML и SCIM в открытом ядре нет, они в коммерческой редакции.

  • Импорт по URL (URL_IMPORT_ENABLED) и удаление аккаунта (ACCOUNT_DELETION_ENABLED) по умолчанию выключены.

Подробнее: docs/faq.md.

Статус

NOTE

Текущий релиз — v0.19.0 (CHANGELOG). Hosted-пилот работает на https://polochka.app; регистрация по почте открыта для любого адреса, до 50 новых полок в сутки. API, схема БД и интерфейс ещё могут меняться.

Что сделано и что нет — docs/status.md; что дальше — docs/roadmap.md: эксплуатация пилота (проверка восстановления на отдельной VM, алерты мониторинга), публикация расширения браузера и проверка коннектора ChatGPT, затем варианты работы, снимок полки на дату и polka pull/push; позже — Telegram-бот.

Документация

Карта документов · Архитектура · Подключение агентов · Коннектор · HTTP API · FAQ · Состояние · Дорожная карта · Изменения

Участие

Issues и pull requests принимаются на русском и на английском. Как запустить проект, какие проверки нужны и какие правила действуют — в CONTRIBUTING.md. Pull requests принимаются по CLA: достаточно один раз написать в описании «Я принимаю CLA (CLA.md)». Участники следуют кодексу поведения. Где задать вопрос — SUPPORT.md.

Безопасность

Об уязвимостях сообщайте приватно через GitHub Security Advisories, не в публичном issue. Порядок и модель угроз — в SECURITY.md.

Лицензия

GNU AGPL-3.0 или коммерческая лицензия (двойное лицензирование). С версии 0.1.0 — AGPL-3.0; версии до v0.1.0-rc.5 включительно — Apache-2.0, и для них это не меняется.

Пользоваться Полкой без изменений, в том числе как сервисом для своей команды, и дорабатывать её открыто можно бесплатно по AGPL-3.0. Кто даёт пользоваться изменённой Полкой по сети, должен предложить пользователям её исходный код: укажите ссылку на него в настройке SOURCE_URL (deploy/hosted). Коммерческая лицензия нужна, чтобы не публиковать свои изменения, встроить Полку в закрытый продукт или получить поддержку и SLA; подробности в COMMERCIAL.md.

См. также NOTICE и THIRD_PARTY_NOTICES.md. Проект вырос из опыта Lanka, подробнее в ACKNOWLEDGEMENTS.md.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables multi-agent systems to store large tool outputs and share only artifact IDs between agents, with access control, TTL, and audit logging.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to create, read, update, list, restore, and share encrypted workspaces and artifacts with version-aware writes, view-only links, and optional public documents.
    7 npm
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Lets agents create, read, update, list, and restore shared encrypted workspaces and artifacts, exchanging a single link that both people and other AI agents can open and edit. Content is encrypted client-side with version-checked writes, so concurrent writers can't silently clobber each other and links can be shared as read-only or editable.
    7 npm
    MIT