polka
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Полка для работ агентов. Страница, прототип, дашборд или целая папка проекта — агент сохраняет её одной фразой. Работа открывается по ссылке без аккаунта и работает в песочнице; каждая правка — новая неизменяемая версия; другой чат или агент находит работу по словам из текста и продолжает.
Память сессий. На своей установке сессии 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 (проверка идёт) | Коннектор | |
Claude Code, Codex | Плагин Полки одной командой: MCP-сервер и скиллы. Вход и «Разрешить» в браузере — без токена | |
Другие MCP-клиенты | Токен со страницы «Агенты», Streamable HTTP на | |
Скрипты, CI, внутренние агенты |
| |
Вручную | Загрузка файла (HTML, текст, PNG/JPEG/WebP до 5 МБ) или «Вставить код» на странице «Сохранить» |
С 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:4390local: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.
Если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.
Статус
Текущий релиз — 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.
This server cannot be deployed
Maintenance
Related MCP Connectors
Artifact store for AI agents — read, write, and search files by path; share by rendered URL.
Shared workspace for AI artifacts: your agents publish, search and cite each other's work.
Private, expiring artifact hosting for AI agents. Upload via API or MCP; links die on their own.
Private, expiring artifact hosting for AI agents. Upload via API or MCP; links die on their own.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables multi-agent systems to store large tool outputs and share only artifact IDs between agents, with access control, TTL, and audit logging.-
- AlicenseNot gradedqualityAmaintenanceEnables 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 npmMIT
- AlicenseNot gradedqualityAmaintenanceLets 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 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables users and AI agents to create, read, update, list, restore, renew, and share encrypted, versioned workspaces and artifacts through editable or read-only links and one-shot content.7 npmMIT