Files
obsidian-vault/personal/projects/balda/setup.md
T

90 lines
8.2 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Balda — актуальный локальный запуск
Проверено: **2026-10-14** по обоим работающим контейнерам, Compose, конфигурации и реальным MCP-вызовам.
Обзор: [[personal/projects/balda/balda|Balda]]. Broker, готовность кандидата и оставшаяся работа: [[personal/projects/balda/execution-broker|Execution Broker — текущий локальный контур]].
## Что работает сейчас
| Параметр | Фактическое значение |
| --- | --- |
| Хост / контейнер | Mac / `balda-mm-mac` |
| Канал | Mattermost |
| Provider | `codex`, type `codex_acp`, reasoning effort `medium` |
| Образ обоих инстансов | `balda-balda:upstream-2eed2ce8`, image ID `sha256:32f76bce909d7688f54cabc194b31ae85718bc958639671ce6147402b650d37d` |
| Balda source | `2eed2ce880591ccc2b9dbe15c1ac3ade7874cf8f`; Linux ARM64 binary SHA256 `f9a420e1bad17bc37f2087736f7530f40cddb6e50db9bccc51764be9bdb5ecc1` |
| Compose | `/Users/admin/Docker/balda-mm-mac/docker-compose.yml` |
| Активный конфиг | `/Users/admin/Docker/balda-mm-mac/config/config.yaml` |
| State / plugins | `/Users/admin/Docker/balda-mm-mac/state` |
| Workspace | `/Users/admin/Docker/balda-mm-mac/work` |
| Home volume | `balda_balda-home`, mounted в `/home/node` |
Config bind-mounted в `/workspace/.config/balda` read-only для контейнера; state и work доступны ему на запись. Файл `~/Developer/balda/.config/balda/config.yaml` относится к отдельному dev checkout и не управляет этим контейнером.
## Eagle и общие инструменты
Eagle работает на том же Mac в `balda-mm-eagle`; Compose, config, state и work находятся в `/Users/admin/Docker/balda-mm-eagle/`, service — `eagle`, отдельный home volume — `balda_eagle-home`. Образы обоих инстансов одинаковы. Авторизации Codex раздельные; при обновлении они сохранены.
У обоих включены одинаковые Obsidian, Execution Broker и Prism MCP, одинаковые права runtime и managed plugin `execution-broker` rc.26. Проверены реальные initialize/tools-list: Obsidian — 15, Broker — 21, Prism — 5 инструментов; списки совпадают. Eagle дополнительно имеет `asana-readonly`, URL `http://asana-readonly:3100/mcp` в приватной Docker-сети. Отдельный контейнер `balda-eagle-asana-readonly` не публикует порт на хост. Реальное чтение Asana прошло; все пять операций изменения и запись заметок в файл отклоняются сервером.
В обоих конфигурациях provider `codex_acp`, reasoning `medium`, явный model отсутствует. Последние записи Codex подтверждают `gpt-6.1-sol` у обоих. При выравнивании инструментов настройки основной модели не менялись. `balda.nats.max_store` у обоих — `16gb`.
## Продолжение задач
В этой версии generic webhooks выполняют изолированные задания. Они не продолжают исходную сессию. Старые `routes.*.path`, `envelope.target`, `key_from_body`, `mode` и `fallback_to` удалены из конфигурации; listener задаётся через `balda.http`. Сейчас он слушает loopback `127.0.0.1:8095`.
Штатный механизм возврата в исходную сессию — `balda.session.wait`. Миграция Broker observer на него ещё проходит отдельную приёмку; старый callback на `:8090` не работает. Наличие MCP или обновлённого плагина не доказывает автоматическую доставку будущего результата. Состояние Broker и недоставленные cursors сохраняются.
## Изменения и перезапуск
| Изменение | Действие |
| --- | --- |
| Только host `config/config.yaml` | `docker restart balda-mm-mac`: процесс перечитывает конфигурацию при старте |
| `.env`, environment, mounts, service definition | Из каталога Compose: `docker-compose up -d balda` |
| Новый image | Сначала получить или собрать выбранный образ, затем `docker-compose up -d balda`; в действующем Compose нет build-секции |
| Код в checkout | Сам по себе не обновляет образ; нужен отдельный build и применение выбранного image |
| Изменение catalog / skills существующей беседы | Обычный `/reset` для выбора текущего capability snapshot |
`docker restart` не применяет изменения Compose или `.env`. `--force-recreate` для изменения только config.yaml не требуется. До смены image сохраняют согласованный state backup и прежний image/config для отката.
## Plugins, skills и инструкции
Managed plugin revisions неизменяемые; вручную редактировать их содержимое в state нельзя. Документация проекта описывает управление пакетами через **Backoffice → Operations → Plugins**: Installed/Marketplaces, review exact revision, install/upgrade/enable/disable/rollback/remove. Проверять доступность поверхности на используемой версии, а не переносить команды из архивных runbooks: [plugins reference](https://github.com/baldaworks/balda/blob/main/docs/reference/plugins.md).
Management не сбрасывает существующие сессии. Новая сессия выбирает текущий catalog; существующая принимает capabilities через обычный `/reset`. Standalone skills также редактируются отдельно от уже закреплённого session snapshot.
[[personal/projects/balda/soul|Global instruction]] содержит сверенный снимок `balda.global_instruction`. [[personal/projects/balda/workspace-context|Provider context]] описывает `runtime.providers.codex.system_instructions`; сейчас отдельное значение не настроено. Редактирование заметки не меняет работающий конфиг.
## Codex ACP
Reasoning effort в активном конфиге — `medium`. Авторизация CLI хранится в home volume. Для отдельного headless-входа используется команда из каталога Compose:
```bash
docker-compose run --rm --entrypoint codex balda login --device-auth
```
## Obsidian MCP
Проверенный блок активной конфигурации находится в `runtime.mcp_servers`:
```yaml
runtime:
mcp_servers:
obsidian:
type: http
url: http://host.docker.internal:3101/mcp
```
Используется Streamable HTTP. Для Codex ACP SSE-конфигурацию из старых заметок не переносить. После изменения этого блока нужен перезапуск Balda.
## Диагностика
```bash
docker ps --filter name=balda-mm-mac
docker logs --tail 120 balda-mm-mac
```
Проверять успешный startup provider и подключение Mattermost. Не копировать токены, cookie или login URLs из логов в заметки.
Архив старых схем и шаблонов: [[personal/projects/archive/balda-reference-before-2026-10-14]].