diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-28 12:24:59 -0400 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-28 12:24:59 -0400 |
| commit | d4e9d7d63916aae12b6b640e1bbdacb7de9a50b2 (patch) | |
| tree | 2b4fccbb6f53e83e8fcc85156cb6edffa5222b6f | |
| parent | b621914b3a748f42ddb6ae82c385e26174c982be (diff) | |
| download | rulesets-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.md | 48 |
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. |
