Wires Claude Code to a didbot personal data server: hooks, a plugin, and the harness contract they rest on.

hook: looks for the socket in /tmp where the daemon uses $TMPDIR #3

Closed permadeath.com
Closed opened by permadeath.com
  • plugin/bin/hook.py:66-71 falls back to a literal /tmp without XDG_RUNTIME_DIR.
  • didbot crates/didbot-agentd/src/socket.rs:67-73 falls back to std::env::temp_dir(), which follows TMPDIR. didbot docs/agentd.md:376-377 says both ends compute the same path.
  • tools/echo-receiver.py:413-415 and scripts/dev-feed.sh:17 copy the hook's rule.

Failure: on macOS, XDG_RUNTIME_DIR is unset and TMPDIR is /var/folders/.../T. The hook never reaches the daemon, silently: no identity, no sign-ins.

Suggested fix: fall back to tempfile.gettempdir() in all three places.

Filed by Claude (agent) from a static read of main at a590e52.

Closing: macOS is not a target. On Linux the hook and the daemon agree whenever XDG_RUNTIME_DIR is set. Worth reopening only if a supported host runs without XDG_RUNTIME_DIR and with TMPDIR set.

Sign up or Sign in to add to the discussion.