aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-28 12:24:59 -0400
committerCraig Jennings <c@cjennings.net>2026-06-28 12:24:59 -0400
commitd4e9d7d63916aae12b6b640e1bbdacb7de9a50b2 (patch)
tree2b4fccbb6f53e83e8fcc85156cb6edffa5222b6f
parentb621914b3a748f42ddb6ae82c385e26174c982be (diff)
downloadrulesets-d4e9d7d63916aae12b6b640e1bbdacb7de9a50b2.tar.gz
rulesets-d4e9d7d63916aae12b6b640e1bbdacb7de9a50b2.zip
feat(rules): add locating-craig rule
When a task needs Craig's location, run whereami on velox instead of asking. On any other host, fall back to asking. The rule covers the whereami-fails case (never fabricate a location) and keeps the geolocated address out of shared artifacts.
-rw-r--r--claude-rules/locating-craig.md48
1 files changed, 48 insertions, 0 deletions
diff --git a/claude-rules/locating-craig.md b/claude-rules/locating-craig.md
new file mode 100644
index 0000000..c327e3f
--- /dev/null
+++ b/claude-rules/locating-craig.md
@@ -0,0 +1,48 @@
+# Locating Craig
+
+Applies to: `**/*`
+
+When a task needs to know where Craig physically is — a local guide, "what's
+near me", travel logistics, the timezone or weather for his actual spot,
+distance to an appointment — don't ask him. Run the `whereami` command and read
+the result.
+
+## The Rule
+
+`whereami` scans nearby WiFi access points and geolocates the machine it runs
+on. That only tracks *Craig* on the machine that travels with him: **velox**,
+his laptop. On any other machine (ratio, the desktop) it reports that machine's
+fixed location, not Craig's, so the result is only meaningful on velox.
+
+The gate is the machine, stated positively:
+
+1. Check the host with `uname -n`.
+2. **On velox** — run `whereami` whenever location matters, instead of asking.
+ Treat its reverse-geocoded address as Craig's current location.
+3. **Any other host** — don't trust `whereami` as Craig's location. Fall back to
+ asking, or to known context (trip notes, calendar, reminders).
+
+Prefer running it over asking — Craig confirmed he'd rather the agent just
+check. The output gives coordinates, a reverse-geocoded address, and an
+OpenStreetMap link; WiFi-centroid drift of a block or two is normal.
+
+## When whereami can't answer
+
+If `whereami` fails — no WiFi to scan, no network, the geolocation API or its
+BeaconDB fallback unreachable — it can't locate Craig. Fall back to asking or to
+known context, exactly as on a non-velox host. Never fabricate or guess a
+location from a stale reading.
+
+## Keep the location out of shared artifacts
+
+A reverse-geocoded address is personal data. It can drive a task, but it must
+not leak into anything team-visible — commit messages, PR descriptions, tickets,
+or public docs (see the content-scope rule in `commits.md`).
+
+## Why
+
+Craig travels with velox, so on that machine the agent can know his location for
+free rather than interrupting to ask. The command and its design (WiFi BSSID
+scan → Google Geolocation API with a BeaconDB fallback → OSM reverse-geocode)
+were built 2026-06-24 specifically to replace useless cellular-IP lookup that
+reported the carrier gateway instead of the device.