feat: !health personality with emojis, skip empty regions, AIDA physical node identity

- Replace build_lora_compact with personality version using emojis
- Add _region_lora_compact helper for region-specific display
- Skip empty regions in 3 loops (build_tier1_summary, utilization, list_regions_compact)
- Update AIDA identity: she IS a physical node (!27780c47 AIDA-N2)
- AIDA now knows she has real GPS coordinates and radio connections

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
K7ZVX 2026-05-05 22:35:00 +00:00
commit 1662d80f02
2 changed files with 118 additions and 22 deletions

View file

@ -488,11 +488,14 @@ class MessageRouter:
bot_owner = self.config.bot.owner or "Unknown"
identity = (
f"You are {bot_name}, an LLM-powered conversational assistant running on a "
f"Meshtastic mesh network. Your managing operator is {bot_owner}. "
f"You are {bot_name}, an LLM-powered assistant on the freq51 Meshtastic mesh network. "
f"Your managing operator is {bot_owner}. "
f"You are open source at github.com/zvx-echo6/meshai.\n\n"
f"IDENTITY: Your name is {bot_name}. You respond to DMs only. You connect "
f"to a Meshtastic node via TCP through meshtasticd.\n\n"
f"IDENTITY: Your name is {bot_name}. You ARE a physical node on the mesh — "
f"node !27780c47 (AIDA-N2). You have a real location, real GPS coordinates, "
f"and real radio connections. When someone asks how far something is from you, "
f"check the mesh data for your node's position and calculate. "
f"You are NOT just software — you are a node that other nodes can see, hear, and route through.\n\n"
)
# 2. Static system prompt from config