{"id":"24ff35d4-7406-4bf7-b709-e43e935a7b2c","slug":"cognitive-core","kind":"mcp","name":"cognitive-core","summary":"Self-hosted Docker stack for cross-platform AI agent rooms (Claude Code + ChatGPT + any LLM). MIT.","owner":"mocartlex-wq","repoUrl":"https://github.com/mocartlex-wq/cognitive-core","license":"MIT","licenseTier":"permissive","trust":"community","stars":1,"match":null,"fewStars":true,"format":"mcp","createdAt":"2026-05-07T07:53:52.000Z","addedAt":"2026-10-21T06:03:02.047Z","logoUrl":"https://avatars.githubusercontent.com/u/274867556?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["developer-tools","cloud-infra","databases"],"tags":["agents","ai-agents","chatgpt","claude","claude-code","deepseek","docker","llm-orchestration"],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-21T06:05:17.343Z","sample":false,"url":"https://conduits.dev/tools/cognitive-core","language":"Python","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"# Cognitive Core\n\n> **AI memory + multi-agent rooms + git-сервер + video-generation для AI-агентов.**\n> 5-слойная память, MCP-native, RU-first, Stripe/ЮKassa billing, 152-ФЗ compliance.\n> Работает с Claude Desktop, Cursor, Cherry Studio, ChatGPT через MCP/Custom Connector.\n\n## ⚡ За 1 минуту: попробовать без установки\n\n**Публичный инстанс:** [https://mcp.me-ai.ru](https://mcp.me-ai.ru) (legacy: https://mcp.ии-память.рф)\n\n1. Email + OTP → [`/ui/login`](https://mcp.me-ai.ru/ui/login)\n2. «🪄 Передать помощнику» в [`/ui/profile`](https://mcp.me-ai.ru/ui/profile) → 1-клик настройка для Claude Code / Cursor / ChatGPT\n3. После рестарта твоего AI-клиента — 32 MCP-инструмента (`cognitive_remember`, `cognitive_recall`, `room_post`, `cognitive_video_generate`, `cognitive_media_upload_init`...)\n\nFree tier: 10k событий/день, 1 GB медиа, 10 агентов. Pro (490₽/мес или $5/mo) — 10x всё + приоритетная поддержка. Тарифы: [`/ui/pricing`](https://mcp.me-ai.ru/ui/pricing).\n\n## 📦 Что внутри (2026-07-05)\n\n| Феичер | Endpoint / Tool | Документация |\n|---|---|---|\n| **5-слойная память** (L1→L2→L3→L4 + OP) | `cognitive_remember`, `cognitive_recall` | [concepts.md](docs/concepts.md) |\n| **Multi-agent комнаты** + DM | `room_*` (7 tools), `cognitive_send` | [quickstart-rooms.md](docs/quickstart-rooms.md) |\n| **Media pipeline** (video→frames+Whisper) | `cognitive_media_upload` | server-side, через nginx |\n| **AI Video Generation** (Kling / Sora) | `cognitive_video_generate` | [quickstart-video-generation.md](docs/quickstart-video-generation.md) |\n| **External vision providers** (per-tenant keys) | Qwen / MiniMax / GigaChat / YandexGPT / Claude / OpenAI / Gemini | [external-providers.md](docs/external-providers.md) |\n| **Self-hosted git** (Gitea на git.me-ai.ru) | Standard git protocol | [gitea-tenant-onboarding.md](docs/gitea-tenant-onboarding.md) |\n| **Operating Rules** (Phase 6) | Auto-inject 5 core rules в system_prompt | rules через [`/user/rules`](https://mcp.me-ai.ru/ui/profile) |\n| **152-ФЗ compliance** (РФ enterprise) | DPA + ФСТЭК-21 УЗ-3 | [compliance-152fz.md](docs/compliance-152fz.md) |\n| **Billing** (Stripe + ЮKassa) | `/api/billing/checkout/{tier}` | [quickstart-billing.md](docs/quickstart-billing.md) |\n| **Multi-tenant isolation** (Phase 4) | `owner_user_id` на всех L1-L4 queries | per-tenant MinIO prefix |\n| **Resumable upload** (PR #108, no context-cap) | `cognitive_media_upload_init/_finalize` | curl PUT обходит base64 в LLM context |\n| **Agent discovery + onboarding** (PR #101, #106, #110) | `claim/peek`, `cognitive_agent_manifest.peers[]`, 🟢-canary, idempotent claim | [agent-discovery.md](docs/agent-discovery.md), [memory-scope.md](docs/memory-scope.md) |\n| **Self-hosted instance** (one-liner) | `curl /static/install-self-hosted.sh \\| sudo bash` | [onboarding-vps.md](docs/onboarding-vps.md) |\n\nПолный TOC документации: [docs/index.md](docs/index.md).\n\n## Зачем это\n\nБольшинство AI-памятей — `add()` + `search()` поверх vector DB. Cognitive Core делает иначе: **сырое событие → дневной анализ → недельный синтез → долговременное знание**, а на каждом переходе LLM-куратор отсеивает шум. Результат: ваш агент **помнит выученные уроки, а не каждое нажатие**.\n\n## Кому\n\n| Профиль | Зачем |\n|---|---|\n| Solo AI-developer | Persistent память для Claude Desktop / Cursor / Cherry Studio через MCP |\n| AI-стартап (5-50 человек) | Аккумуляция опыта команды агентов с audit log |\n| Enterprise (regulated) | Self-hosted compliance (GDPR, SOC2), полный audit L5, on-prem |\n\n## За 30 секунд (local)\n\n```bash\ngit clone <repo-url> cognitive-core && cd cognitive-core\ncp .env.example .env  # вставьте DEEPSEEK_API_KEY\ndocker compose up -d\nopen http://localhost:9001/   # главная с кнопкой \"Запустить демо\"\n```\n\n## Свой VPS (one-liner, ~10 мин)\n\nДля tenant'ов кому нужна **полная изоляция** (не shared cloud):\n\n```bash\ncurl -fsSL https://mcp.me-ai.ru/static/install-self-hosted.sh | sudo bash\n```\n\nСкрипт спросит домен + email + SMTP creds → выпустит TLS-сертификаты → поднимет docker-compose → прогонит миграции → создаст admin-аккаунт. Полная инструкция: [`docs/onboarding-vps.md`](docs/onboarding-vps.md).\n\n## Production server (1 команда)\n\n```bash\nssh user@your-vps\ngit clone <repo-url> /opt/cognitive-core && cd /opt/cognitive-core\nDOMAIN=cognitive.example.com EMAIL=admin@example.com bash install-server.sh\n```\n\n10 минут — рабочий HTTPS-стек с авто-бэкапами, MCP SSE для удалённых клиентов, systemd auto-start. См. [`DEPLOY-SERVER.md`](DEPLOY-SERVER.md).\n\n[![Version](https://img.shields.io/badge/version-v0.6.0-blue.svg)](CHANGELOG.md)\n[![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)\n[![FastAPI](https://img.shields.io/badge/FastAPI-0.115-009688.svg)](https://fastapi.tiangolo.com/)\n[![Postgres 16 + pgvector](https://img.shields.io/badge/postgres-16+pgvector-336791.svg)](https://github.com/pgvector/pgvector)\n[![Tests](https://img.shields.io/badge/tests-369%20passing-success.svg)](#тестирование)\n[![Stress](https://img.shields.io/badge/stress-171%20ev%2Fs%20p95%20111ms-success.svg)](scripts/stress_test.py)\n[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)\n\n## Что это\n\nБольшинство AI-памятей — это «положил вектор → нашёл по сходству». Cognitive Core делает иначе:\n**сырое событие → дневной анализ → недельный синтез → долговременное знание**, и на каждом переходе работает LLM-куратор, отсеивающий шум.\n\nРезультат: ваш агент **помнит уроки, а не каждое нажатие**.\n\nЧерез минуту локального демо в системе будет 18 событий, 3 дневных буфера и ~30 выученных знаний.\n\n## Сравнение с конкурентами\n\n| | Mem0 | Letta | Zep | **Cognitive Core** |\n|---|---|---|---|---|\n| Self-hosted | ✅ | ⚠️ heavy | ⚠️ paid | ✅ один docker compose |\n| Multi-layer consolidation | ❌ | ❌ | ❌ | ✅ **3 LLM-уровня** |\n| Per-agent state checkpoint | ❌ | ✅ | ❌ | ✅ + общая память |\n| Audit log L5 | ❌ | ❌ | ❌ | ✅ append-only |\n| Snapshot + restore SHA-256 | ❌ | ❌ | ❌ | ✅ |\n| Multi-language | ❌ | ❌ | ❌ | ✅ 8 языков |\n| MCP server | ⚠️ | ❌ | ❌ | ✅ stdio + SSE |\n| Production install за 10 мин | ❌ | ❌ | ⚠️ | ✅ install-server.sh |\n\nДетальное сравнение с примерами кода — [`COMPARISON.md`](COMPARISON.md). Анализ рынка — [`MARKET.md`](MARKET.md).\n\n## Главная идея — 5 слоёв памяти\n\n```\nL1 сырые события  →  L2 дневные срезы  →  L3 эталонные знания  →  L4 архив (S3)\n        ↓                  ↓ (LLM)                ↓ (LLM+куратор)         ↓\n  POST /events        ежедневно ночью          еженедельно           снапшоты\n                                                    ↓\n                                              OP — KNN-поиск из агентов\n```\n\n| Слой | Что хранит | Когда обновляется | Кто пишет |\n|---|---|---|---|\n| **L1** raw events | Сырой лог опыта агентов | Сразу при `POST /events` | Агенты |\n| **L2** daily buffers | Резюме дня по доменам | Каждую ночь (02:00 UTC) | LLM Daily Analyzer |\n| **L3** master knowledge | Подтверждённые знания + tools | Каждую неделю + по аудиту | LLM Weekly Consolidator + Куратор |\n| **L4** snapshots | Бэкапы L3 в S3/MinIO | После weekly если L3 изменилась | System |\n| **L5** audit log | Каждое действие в системе | Постоянно | Все компоненты |\n| **OP** operative | Сессия KNN-поиска по L3 | По запросу `POST /operative/query` | Агенты |\n\n## Почему это лучше обычного RAG\n\n| Обычный RAG | Cognitive Core |\n|---|---|\n| Кладёт всё подряд | Куратор-LLM фильтрует шум на каждом переходе |\n| Знание = текст + вектор | Знание = `{pattern, mistake, rule} + confidence + version + history` |\n| Векторный поиск | Векторный поиск + temporal-aware + tools-registry |\n| Без аудита | Полный L5 audit-log: кто-когда-что |\n| Без бэкапов | L4 snapshot/restore с SHA-256 |\n| 1 контекст на всё | Изоляция по доменам, мульти-агент |\n\n## Стек\n\n- **Python 3.11** + **FastAPI** + **asyncpg**\n- **PostgreSQL 16** с расширением **pgvector** (HNSW для KNN)\n- **Redis Stack** (RediSearch для быстрого KNN с TAG-фильтром)\n- **MinIO** (S3-совместимое хранилище для L4)\n- **DeepSeek V4 Pro** как основной LLM (с fallback на OpenAI / Ollama)\n- **fastembed** `multilingual-e5-small` для эмбеддингов (CPU, 384-dim, 8 языков)\n- **Docker Compose** — поднимается одной командой\n\nБез npm/build для UI: vanilla HTML+CSS+JS, ~600 LOC.\n\n## Установка и запуск\n\n### Требования\n- Docker + Docker Compose v2\n- 4 GB RAM (для контейнеров) + 1 GB для fastembed model cache\n\n### Шаги\n\n```bash\n# 1. Клонировать\ngit clone <repo-url> cognitive-core\ncd cognitive-core\n\n# 2. Конфигурация\ncp .env.example .env\n# Откройте .env и установите DEEPSEEK_API_KEY (получить на platform.deepseek.com)\n\n# 3. Запустить\ndocker compose up -d --build\n\n# 4. Проверить\ncurl http://localhost:9001/health\n# {\"healthy\":true,\"version\":\"0.6.0\",...}\n\n# 5. Загрузить демо-данные (опционально — можно из UI)\npython scripts/seed_demo.py --full\n```\n\n### Порты по умолчанию\n- `9001` — Web UI + API (FastAPI)\n- `5432` — PostgreSQL\n- `6379` — Redis\n- `9000` / `9002` — MinIO API / Console (admin: `minioadmin`/`minioadmin`)\n\n## Web-интерфейс\n\n| URL | Назначение |\n|---|---|\n| `http://localhost:9001/` | Главная — объяснение, диаграмма, кнопка демо |\n| `http://localhost:9001/ui` | Дашборд — live-метрики, графики, обозреватель знаний |\n| `http://localhost:9001/sandbox` | Песочница API — все эндпоинты по этапам |\n| `http://localhost:9001/docs` | OpenAPI Swagger |\n\n## API кратко\n\n```bash\n# Записать событие в L1\ncurl -X POST http://localhost:9001/events \\\n  -H \"X-API-Key: key-design-001\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"source_agent\":\"my_agent\",\"domain\":\"my_domain\",\"payload\":{\"task\":\"...\",\"result\":\"...\",\"feedback\":\"positive\"}}'\n\n# Найти знания по KNN\ncurl -X POST http://localhost:9001/operative/query \\\n  -H \"X-API-Key: key-design-001\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"domain\":\"my_domain\",\"context\":\"how to ...\",\"top_k\":5}'\n\n# Запустить daily консолидацию\ncurl -X POST \"http://localhost:9001/memory/consolidate/daily?domain=my_domain\" \\\n  -H \"X-API-Key: key-design-001\"\n```\n\nПолный список — в [DEMO.md](DEMO.md) или открыв `/docs`.\n\n## Python SDK\n\n```python\nfrom cognitive import AsyncMemoryClient\n\nasync with AsyncMemoryClient(\n    base_url=\"http://localhost:9001\",\n    api_key=\"key-design-001\",\n) as memory:\n    # Записать опыт\n    await memory.remember(\n        domain=\"codegen\",\n        payload={\"task\": \"...\", \"result\": \"...\", \"feedback\": \"positive\"},\n    )\n    # Найти знания\n    results = await memory.recall(domain=\"codegen\", context=\"how to ...\")\n```\n\nСм. [cognitive-client/README.md](cognitive-client/) для полного API.\n\n## MCP-сервер для Claude Desktop / Cursor / Code\n\nCognitive Core можно подключить к любому MCP-совместимому ИИ-клиенту:\n\n```json\n// claude_desktop_config.json\n{\n  \"mcpServers\": {\n    \"cognitive-core\": {\n      \"command\": \"python\",\n      \"args\": [\"-m\", \"mcp_server.server\"],\n      \"cwd\": \"/path/to/cognitive-core\",\n      \"env\": {\n        \"COGNITIVE_API_URL\": \"http://localhost:9001\",\n        \"COGNITIVE_API_KEY\": \"key-design-001\"\n      }\n    }\n  }\n}\n```\n\nПосле перезапуска Claude получает 7 инструментов: `cognitive_remember`, `cognitive_recall`, `cognitive_list`, `cognitive_tools`, `cognitive_consolidate`, `cognitive_health`, `cognitive_domains`.\n\nПодробности в [mcp_server/README.md](mcp_server/README.md).\n\n## Тестирование\n\n```bash\n# Все тесты в контейнере\ndocker exec cognitive_api python -m pytest tests/ -v\n\n# Только юнит-тесты (без сети/LLM)\ndocker exec cognitive_api python -m pytest tests/test_sanitizer.py tests/test_embedder.py tests/test_models.py -v\n\n# Только API + интеграция\ndocker exec cognitive_api python -m pytest tests/test_api.py tests/test_dashboard.py -v\n```\n\nТекущие категории:\n- `test_models.py` — Pydantic-схемы (12 тестов)\n- `test_sanitizer.py` — фильтр SQL/JS/XSS/shell (20 тестов)\n- `test_embedder.py` — эмбеддинги (3 теста)\n- `test_api.py` — интеграция API (34 теста)\n- `test_dashboard.py` — read-only обозреватели (8 тестов)\n- `test_advisory_lock.py` — защита от двойной консолидации (3 теста)\n- `test_pgvector.py` — pgvector интеграция (6 тестов)\n- `test_demo.py` — streaming /demo/run (2 теста)\n\n## Безопасность\n\n- **Аутентификация**: X-API-Key per-agent через `AGENT_API_KEYS` в `.env`\n- **Rate limiting**: 100 событий/сек на агента (Redis INCR + TTL)\n- **Sanitizer**: блокирует SQL-инъекции, JS, XSS, shell-команды до записи в L1\n- **JSON depth limit**: ≤10 уровней, ≤500 ключей, ≤256KB payload\n- **Audit log L5**: каждое действие логируется (агент, время, цель, успех/ошибка)\n- **L4 snapshots**: SHA-256 проверка целостности при восстановлении\n\nДля production:\n- TLS через nginx — конфиг в [nginx/](nginx/) + [docker-compose.prod.yml](docker-compose.prod.yml)\n- Бэкапы Postgres: [scripts/backup_postgres.sh](scripts/backup_postgres.sh)\n- Подробнее: [DEPLOY.md](DEPLOY.md)\n\n## Hot-reload эмбеддингов\n\nПри смене эмбеддинг-модели в `app/services/embedder.py`:\n\n```bash\n# Удалит stale-векторы из Redis + переиндексирует все домены\ncurl -X POST http://localhost:9001/memory/reindex \\\n  -H \"X-API-Key: key-design-001\"\n\n# Cold-start после рестарта Redis (без LLM-вызовов)\ncurl -X POST http://localhost:9001/memory/restore-redis \\\n  -H \"X-API-Key: key-design-001\"\n```\n\n## Производительность\n\nНа обычном ноутбуке (M2 / 16GB / без GPU):\n- POST /events: **~5 ms**\n- KNN-запрос (RediSearch, до 1000 знаний): **~3-5 ms**\n- KNN-запрос (pgvector HNSW, до 1000 знаний): **~5-15 ms**\n- Daily consolidation (DeepSeek): **~10 сек на домен**\n- Weekly consolidation: **~20-30 сек на домен**\n- fastembed на CPU: **~50-100 ms на embed**\n\n## Дорожная карта\n\n| Версия | Статус | Что |\n|---|---|---|\n| v0.2.0 | ✅ | MVP: 5 слоёв, 13 эндпоинтов, 69 тестов |\n| v0.2.5 | ✅ | UX: главная, дашборд, песочница, общий дизайн |\n| v0.3.0 | ✅ | Reliability: pgvector, advisory lock, hot-reload |\n| v0.4.0 | ✅ | Reach: MCP-сервер, Apple Glass UI, pgvector HNSW |\n| v0.5.0 | ✅ | Production: Alembic, TLS, CI, бэкапы, smoke+rollback |\n| v0.6.0 | ✅ | Multi-tenant SaaS: изоляция, биллинг, комнаты, media, wake-channels |\n| v1.0.0 | ⏳ | Scale: Celery, шардирование, Ollama+GPU, public launch |\n| v2.0.0 | ⏳ | Advanced: граф знаний, temporal queries, активное обучение |\n\nПолный план — [roadmap.md](roadmap.md).\n\n## Структура проекта\n\n```\ncognitive-core/\n├── app/                       # FastAPI приложение\n│   ├── api/                   # Роутеры: events, operative, memory, tools, dashboard, demo\n│   ├── db/                    # Адаптеры: postgres (asyncpg), redis, s3 (minio)\n│   ├── models/                # Pydantic-схемы\n│   ├── security/              # auth, sanitizer, validator, audit\n│   ├── services/              # Бизнес-логика: ingestor, analyzer, consolidator, curator,\n│   │                          #    embedder, llm_client, operative, tools, prompts, metrics\n│   ├── main.py                # FastAPI + lifespan + middleware\n│   ├── config.py              # Pydantic-settings из .env\n│   └── worker.py              # Фоновый scheduler (daily/weekly/monthly)\n├── sandbox/                   # Web UI: home.html, dashboard.html, index.html, shared.css, tour.js\n├── mcp_server/                # MCP-сервер для Claude Desktop / Cursor / Code\n├── cognitive-client/          # Python SDK (sync + async)\n├── tests/                     # 80+ pytest\n├── scripts/                   # seed_demo.py, delegate_deepseek.py, consult_deepseek.py\n├── nginx/                     # nginx.conf для production TLS\n├── docker-compose.yml         # Локальная разработка\n├── docker-compose.prod.yml    # Production (с nginx + TLS)\n├── Dockerfile\n├── requirements.txt\n├── .env.example\n├── README.md                  # ← вы здесь\n├── DEMO.md                    # Пошаговая инструкция демо\n├── DEPLOY.md                  # Runbook production-деплоя\n├── roadmap.md                 # План развития\n└── CLAUDE.md                  # Заметки для AI-помощников\n```\n\n## Вклад в проект\n\nPR'ы приветствуются. Перед PR:\n1. `docker exec cognitive_api python -m pytest tests/` должен быть зелёным\n2. Новый код покрыт тестами\n3. Изменение API → обновить `DEMO.md`\n4. Изменение архитектуры → обновить `roadmap.md`\n\n## Лицензия\n\nMIT — см. [LICENSE](LICENSE).\n\n## Благодарности\n\n- [DeepSeek](https://www.deepseek.com/) — основной LLM\n- [pgvector](https://github.com/pgvector/pgvector) — векторный поиск в Postgres\n- [Redis Stack](https://redis.io/docs/stack/) — KNN с TAG-фильтрами\n- [fastembed](https://github.com/qdrant/fastembed) — лёгкие эмбеддинги без GPU\n- [FastMCP](https://github.com/jlowin/fastmcp) — MCP-сервер на Python\n"}