4eb69cbce5
Follow-up to the salvaged #110786 commit: - `_is_bot_mode_session` mirrors the system-prompt gate (`agent._session_title_hint` first, then the live DB title) instead of reading `pending_title`/`title` off the session dict: `pending_title` is cleared after turn 1 and the record never carries `title`, so the contributor's gate matched only the very first Bot Chat turn. - `tools/bot_mode_dm.py::_run_local_turn` (the `hermes -p X chat -c "Bot Chat" -Q` transport behind `message_agent` when no live owner holds the target) re-emits "" for a successful bare marker — the third delivery path of the same class. - Tests trimmed to one invariant per surface (live completion, relay RPC, one-shot transport), each proven red on origin/main sources. - Bot Mode docs gain a "Staying silent" line pointing at the shared token list.