[2026-09-26] eagle: personal/plans/balda-mm-phase4-agents.md personal/tech/agents-bridge.md personal/tech/balda-executor-mcp.md personal/tech/music-tags-final-review.md personal/tech/music-tags-repair-truenas.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-26 20:06:18 +06:00
1 parent 8199307531
commit b00eb549bf
5 files changed
+469 -25

No files matched your search

+33 -5
View File
@@ -73,7 +73,7 @@ GET /tasks?limit=N → последние задачи (для дашбор
| Ключ | Дефолт | Смысл |
|---|---|---|
| `BRIDGE_HOST` | `127.0.0.1` | слушать только локально (наружу — через туннель) |
| `BRIDGE_HOST` | `0.0.0.0` | слушать всю LAN (Kraken ходит по LAN). Было `127.0.0.1` |
| `BRIDGE_PORT` | `8790` | порт |
| `BRIDGE_SECRET` | — | **обязателен**, 64 симв. `secrets.token_urlsafe(48)` |
| `EXECUTOR_CONTAINER` | `balda-executor` | имя контейнера |
@@ -93,7 +93,7 @@ GET /tasks?limit=N → последние задачи (для дашбор
|---|---|
| Label | `com.agents.bridge` |
| Plist | `~/Library/LaunchAgents/com.agents.bridge.plist` |
| Program | `~/Developer/eagle-dash/.venv/bin/python -m uvicorn app:app --host 127.0.0.1 --port 8790` |
| Program | `~/Developer/eagle-dash/.venv/bin/python -m uvicorn app:app --host 0.0.0.0 --port 8790` |
| WorkingDirectory | `/Users/admin/Developer/agents-bridge` |
| `RunAtLoad` / `KeepAlive` | `true` / `true` |
| Логи | `~/Library/Logs/agents-bridge.log` (+ `.err.log`) |
@@ -166,10 +166,30 @@ auth-файлов из `~/.claude`/`~/.codex` отклонено, не пред
`EnvironmentVariables.PATH` с `/opt/homebrew/bin` первым. Симптом без него:
`docker не найден в PATH процесса моста` в `stderr` задачи.
### 6. Мост слушает только `127.0.0.1`
### 6. Мост слушает `0.0.0.0` — изменение 2026-09-26
`BRIDGE_HOST=127.0.0.1` — намеренно. Наружу выставляется туннелем (шаг 3), не пробросом
порта. Не менять на `0.0.0.0` без Access Application на стороне Cloudflare.
**Было:** `BRIDGE_HOST=127.0.0.1` («наружу — через туннель»).
**Стало:** `0.0.0.0` — иначе Kraken не достучится по LAN.
Причина: Kraken и Mac в одной сети, `ping` 2.4 мс. Туннель не нужен (см.
[[personal/plans/balda-mm-phase4-agents]] §7). Kraken обращается к
`http://192.168.1.57:8790`.
⚠️ Порт 8790 теперь открыт в LAN. Защита — `X-Bridge-Secret` (без него `POST /task` → 503).
Уходя в недоверенную сеть — вернуть `127.0.0.1` и поднимать туннель.
🔴 **`--host` задаётся в plist, `.env` его НЕ перебивает.** Симптом: поменял `.env`,
перезапустил — `lsof` всё равно показывает `127.0.0.1:8790`. Правка — в
`ProgramArguments` plist. И применять через `bootout` + `bootstrap` (не `kickstart`).
### 7. Обратный SSH-туннель на Kraken невозможен
`ssh -R` падает: `Error: remote port forwarding failed for listen port 18790`,
в verbose — `debug1: Remote: Server has disabled port forwarding.`
Причина: на Kraken в sshd `AllowTcpForwarding no`. Не путать с «порт занят» —
порт свободен, форвард выключен администратором. Обход — Cloudflare Tunnel
(исходящее соединение, не SSH-форвард).
---
@@ -191,6 +211,7 @@ curl -s -o /dev/null -w "%{http_code}\n" -X POST http://127.0.0.1:8790/task \
## Связанное
- [[personal/plans/balda-mm-phase4-agents]] — план Фазы 4 (шаги 1-2 ✅)
- [[personal/tech/balda-executor-mcp]] — MCP-сервер, который ходит в этот мост
- [[personal/tech/macos-docker-virtiofs-mount-limits]] — почему bind-mount вместо symlink
- [[personal/projects/balda/balda-mm-delegation-plan]] — общий план делегирования
- `~/Developer/agents-bridge` — код моста
@@ -201,3 +222,10 @@ curl -s -o /dev/null -w "%{http_code}\n" -X POST http://127.0.0.1:8790/task \
- **2026-09-26** (продолжение): переведён под launchd (`com.agents.bridge`,
`RunAtLoad` + `KeepAlive`, pid 3063), добавлен `EnvironmentVariables.PATH`.
Шаг 3 разблокирован; проверка `KeepAlive` при падении не выполнена (отклонён `kill -9`).
- **2026-09-26** (шаг 5): `BRIDGE_HOST` → `0.0.0.0` (в plist, не в `.env`),
сервис переставлен через `bootout`+`bootstrap`. Проверено с Kraken: `curl` с хоста и
из контейнера в `mattermost_mm-net` дают `status: ok`. Туннель не потребовался —
Kraken и Mac в одной LAN. Обратный SSH-туннель на Kraken невозможен
(`AllowTcpForwarding no`).
- **2026-09-26** (MCP): `executor_health` из контейнера `balda-executor-mcp`
(docker-сеть Kraken) вернул живые данные моста — связка Kraken→Mac работает.