aboutsummaryrefslogtreecommitdiff
path: root/.ai/protocols.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-13 18:30:48 -0500
committerCraig Jennings <c@cjennings.net>2026-07-13 18:30:48 -0500
commit49be354ff18d6739e478ee4f5ab46de6cb9e4f81 (patch)
tree80bffd6f32c39c2f98a0cd8dea86aba766b8d43b /.ai/protocols.org
parent0de6e09a4a6014270b0a8b77cfac7661b8cdf5dd (diff)
downloadrulesets-49be354ff18d6739e478ee4f5ab46de6cb9e4f81.tar.gz
rulesets-49be354ff18d6739e478ee4f5ab46de6cb9e4f81.zip
feat(pager): add agent-page, the runtime-neutral phone pager
The Signal pager reconcile found one pager identity, registered in velox's signal-cli, reachable from other machines only by hand-rolled ssh. agent-page wraps that: direct signal-cli on velox, ssh relay over the tailnet from everywhere else, a desktop-fallback hint when the relay fails, and the UUID target baked in so nobody pages the unregistered phone number again. Four bats tests stub ssh/uname/signal-cli to verify command construction; the real path was verified with a live phone push today. protocols.org's Paging Craig section now teaches both channels (notify for the desk, agent-page for the phone) and demotes signal-mcp to a velox-local nicety; page-me.org, work-the-backlog, and the INDEX carry the same two-channel story. Every project inherits on its next startup sync and make install.
Diffstat (limited to '.ai/protocols.org')
-rw-r--r--.ai/protocols.org21
1 files changed, 17 insertions, 4 deletions
diff --git a/.ai/protocols.org b/.ai/protocols.org
index ebe14d1..5cd69d4 100644
--- a/.ai/protocols.org
+++ b/.ai/protocols.org
@@ -412,14 +412,27 @@ Full usage: =notify --help= or see =~/.local/bin/notify=
- =atq= - list all scheduled alarms
- =atrm [number]= - remove an alarm by its queue number
-** Paging Craig — desktop vs. away from the machine
+** Paging Craig — the agent pager
-"Page me" has two channels; pick by where Craig is.
+"Page me" has two channels; pick by where Craig is. Both work from any agent runtime — nothing here is Claude-specific.
- *At his laptop/desktop* — desktop =notify ... --persist= (above). It reaches him on the machine and stays up until dismissed.
-- *Away from his laptop/desktop* — page his phone over Signal via the *signal-mcp* tool =send_message_to_user=, addressed to Craig's account UUID =b1b5601e-6126-47f8-afaa-0a59f5188fde= (his primary number reads as unregistered in Signal's directory — never page a phone number). The message goes out from the dedicated pager account (+15045173983) and fires a normal mobile push. This is the live cross-device path, verified working 2026-06-30.
-Do *not* use the old =page-signal= shell script — it was removed from the rulesets canonical 2026-06-12 and its =~/.local/bin/page-signal= symlink no longer exists. The signal-mcp tool is the only supported Signal path; =notify --persist= is the only supported desktop path.
+ #+begin_src bash
+ notify info "Title" "Message" --persist
+ #+end_src
+
+- *Away from his laptop/desktop* — page his phone over Signal with the *agent pager*:
+
+ #+begin_src bash
+ agent-page "Message for Craig's phone"
+ #+end_src
+
+ =agent-page= (in =~/.local/bin= via the rulesets install) sends from the dedicated pager identity (+15045173983, registered in velox's signal-cli) to Craig's Signal account UUID, firing a normal mobile push. On velox it sends directly; on any other tailnet machine it ssh-relays the send to velox. Verified end to end 2026-07-13. Never page Craig's phone *number* — it reads as unregistered in Signal's directory; the script already targets the UUID.
+
+ Caveats: velox must be up and on the tailnet (the script says so and names the desktop fallback when the relay fails), and the signal-cli account wants a periodic =receive= — both tracked on the rulesets Signal-pager task, which owns the full runbook.
+
+On velox, Claude sessions may also have the *signal-mcp* tool (=send_message_to_user=, same pager identity) — fine to use there, but it exists only in velox's local MCP config, so =agent-page= is the portable habit. Do *not* use the old =page-signal= shell script (removed 2026-06-12).
* Session Protocols