# octopus-blackboard

Локальная доска, через которую несколько ИИ-агентов на одном репозитории видят задачи, правки и решения друг друга. Не оркестратор: только читает и записывает.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 7
- Автор: octoryn
- Лицензия: Apache-2.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/octoryn/octopus-blackboard
- Обновлён: 2026-07-15
- HTML: https://affpapa.org/nevibecode/mcp/octopus-blackboard

## Что делает

Claude, Codex, Cursor и остальные агенты работают в одном репозитории и не знают друг о друге. Один правит авторизацию, второй переписывает тот же файл. Blackboard даёт им общую доску: кто чем занят, что изменилось, какие решения приняты, какие риски открыты, что оставлено кому. Контракт простой — читать доску, писать в доску, оставлять сообщения и прикладывать доказательства.

Каждая запись ложится в append-only `timeline` с хеш-цепочкой. История проверяется командой `octoboard verify`, и правка задним числом ломает верификацию. Доска не блокирует работу: если два агента заявили одну задачу, оба claim записываются, а второй агент получает предупреждение о конфликте. Доска — один файл SQLite в `.octoboard/`, находится поиском вверх по дереву каталогов, как `.git`.

Сборка требует Node ≥ 22. Для запуска примера `examples/two-agents.sh` нужен `octoboard` в `PATH` — без него сценарий не отработает. Идентичность задаётся через `--as <agent>` или переменную `OCTOBOARD_AGENT`, конкретная доска — через `--board <dir>` или `OCTOBOARD_DIR`.

Быстрый старт: `npx octopus-blackboard quickstart` создаёт доску, определяет ваш MCP-клиент и печатает готовый блок конфигурации. Повторный запуск не затирает существующую доску и её историю.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `OCTOBOARD_AGENT`, `OCTOBOARD_DIR` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env OCTOBOARD_AGENT=<OCTOBOARD_AGENT> --env OCTOBOARD_DIR=<OCTOBOARD_DIR> --transport stdio octopus-blackboard -- npx -y octopus-blackboard
```
Вместо <…> подставьте свои значения

### Codex

**Командой платформы**
```bash
codex mcp add octopus-blackboard --env OCTOBOARD_AGENT=<OCTOBOARD_AGENT> --env OCTOBOARD_DIR=<OCTOBOARD_DIR> -- npx -y octopus-blackboard
```
Вместо <…> подставьте свои значения

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "octopus-blackboard": {
            "command": "npx",
            "args": [
                "-y",
                "octopus-blackboard"
            ],
            "env": {
                "OCTOBOARD_AGENT": "<OCTOBOARD_AGENT>",
                "OCTOBOARD_DIR": "<OCTOBOARD_DIR>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "octopus-blackboard": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "octopus-blackboard"
            ],
            "env": {
                "OCTOBOARD_AGENT": "<OCTOBOARD_AGENT>",
                "OCTOBOARD_DIR": "<OCTOBOARD_DIR>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e OCTOBOARD_AGENT=<OCTOBOARD_AGENT> -e OCTOBOARD_DIR=<OCTOBOARD_DIR> octopus-blackboard npx -y octopus-blackboard
```
Вместо <…> подставьте свои значения

## Когда брать
- увидеть, кто из агентов уже взял задачу, до начала работы
- поймать коллизию, когда два агента правят один файл
- зафиксировать решение вместе с причиной, по которой оно принято
- оставить хендофф другому агенту с контекстом по задаче
- проверить, что историю доски не подменили задним числом

## Примеры запросов агенту
- Вызови `board_status` и скажи, кто сейчас на доске
- Запиши в доску: Codex рефакторит middleware авторизации
- Заявори задачу `trust-layer-policy-schema` и предупреди, если её уже держит другой агент

## Похожие
- [REA](https://affpapa.org/nevibecode/mcp/rea.md) — MCP-сервер · ★ 386989
- [GitHub](https://affpapa.org/nevibecode/mcp/github.md) — MCP-сервер · ★ 33918
- [Netdata](https://affpapa.org/nevibecode/mcp/netdata.md) — MCP-сервер · ★ 81115
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119160
- [Codebase Memory](https://affpapa.org/nevibecode/mcp/codebase-memory.md) — MCP-сервер · ★ 47392
- [mcp-server](https://affpapa.org/nevibecode/mcp/mcp-server.md) — MCP-сервер · ★ 43872

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
