Self-hosted remote command runner with an optional personal-assistant layer

Fix persist-nudge: actually write memory + announce on save master

The Stop hook fired but the background pass could never write memory: it ran in cwd=workspace, so the shared home-project memory dir was a foreign project's .claude data and Claude Code blocked the write as a "sensitive path" — and it passed no --permission-mode/--allowedTools. Net result: the bot had never persisted a single memory. - Run the pass from $HOME (like bin/dream) so the shared memory is this project's own auto-memory and writes go through. - Pass --permission-mode acceptEdits and an explicit tool whitelist (Read/Glob/Grep/Edit/Write + Bash for bin/tg-send only). - Review the conversation via the hook payload's transcript_path instead of --resume (which won't resolve the workspace session from $HOME). - Announce: send a one-line Telegram note via tg-send IFF a memory was actually saved/changed; otherwise stay silent. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NmXCGpuAQygFi3HnF8fsDD


+53 -18
1 changed file